# Wednesday, June 26, 2019

Azure IoT Hub allows you to route incoming messages to specific endpoints without having to write any code.

Refer to previous articles (here, here, and here, to learn how to create an Azure IoT Hub and how to add a device to that hub.

To perform automatic routing, you must

  1. Create an endpoint
  2. Create and configure a route that points to that endpoint
  3. Specify the criteria to invoke that route

Navigate to the Azure Portal and log in.

Open your IoT Hub, as shown in Fig. 1.

ir01-IotHubOverviewBlade
Fig. 1

Click the [Message routing] button (Fig. 2) under the "Messaging" section to open the "Routing" tab, as shown in Fig. 3

ir02-RoutingButton
Fig. 2

ir03-RoutingBlade
Fig. 3

Click the [Add] button to open the "Add a route" blade, as shown in Fig. 4.

ir04-AddRouteBlade
Fig. 4

At the "Name" field, enter a name for your route. I like to use something descripting, like "SendAllMessagesToBlobContainer".

At the "Endpoint" field, you can select an existing endpoint to which to send messages. An Endpoint is a destination to send any messages that meet the specified criteria. By default, only the "Events" endpoint exists. For a new hub, you will probably want to create a new endpoint. To create a new endpoint, click the [Add] button. This displays the "Add Endpoint" dialog, as shown in Fig. 5.

ir05-AddEndpoint
Fig. 5

At the "Endpoint" dropdown, select the type of endpoint you want to create. Fig. 6 shows the "Add a storage endpoint" dialog that displays if you select "Blob Storage".

ir06-AddStorageEndpointBlade
Fig. 6

At the "Endpoint name", enter a descriptive name for the new endpoint.

Click the [Pick a container] button to display a list of Storage accounts, as shown in Fig. 7.

ir07-PickStorageAccount
Fig. 7

Select an existing storage account or click the [+ Storage account] button to create a new one. After you select a storage account, the "Containers" dialog displays, listing all blob containers in the selected storage account, as shown in Fig. 8.

ir08-PickContainer
Fig. 8

Select an existing container or click the [+Container] button to create a new container. Messages matching the specified criteria will be stored in this blob container.

Back at the "Add a storage endpoint" dialog (Fig. 6), you have options to set the Batch frequency, Chunk size window, and Blob file name format.

Multiple blob messages are bundled together into a single blob.

The Batch frequency determines how frequently messages get bundled together. Lowering this value decreases latency; but doing so creates more files and requires more compute resources.

Chunk size window sets the maximum size of a blob. If a bundle of messages would exceed this value, the messages will be split into separate blobs.

The Blob file name format allows you to specify the name and folder structure of the blob. Each value within curly braces ({}) represents a variable. Each of the variables shown is required, but you can reorder them or remove slashes to change folders into file name parts or add more to the name, such as a file extension.

Click the [Create] button to create the endpoint and return to the "Add a route" blade, as shown in Fig. 9.

ir09-SaveRoute
Fig. 9

At the "Endpoint" dropdown, select the endpoint you just created.

At the "Data source" dropdown, you can select exactly what data gets routed to the endpoint. Choices are "Device Telemetry Messages"; "Device Twin Change Events"; and "Device Lifecycle Events".

The "Routing query" field allows you to specify the conditions under which messages will be routed to this endpoint.

If you leave this value as 'true', all messages will be routed to the specified endpoint.

But you can filter which messages are routed by entering something else in the "Routing query" field. Query syntax is described here.

Click the [Save] button to create this route.

In this article, you learned how to perform automatic routing for an Azure IoT Hub.

IoT
Wednesday, June 26, 2019 8:55:00 AM (GMT Daylight Time, UTC+01:00)
# Monday, April 15, 2019

Episode 559

Lwin Maung on IoT Hardware Options

Lwin Maung shows us various IoT devices and describes the differences between them and the uses for each.

Monday, April 15, 2019 9:46:00 AM (GMT Daylight Time, UTC+01:00)
# Monday, March 25, 2019

Episode 554

Bret Stateham on IoT Edge

Bret Stateham describes how to effectively use IoT Edge to move some of your processing and logic closer to your IoT devices.

Monday, March 25, 2019 8:20:00 AM (GMT Standard Time, UTC+00:00)
# Tuesday, March 12, 2019

In a previous article, we saw how to create an Azure IoT Hub.    

In this article, we will show how to add devices to the IoT Hub.

When I first began working with IoT hub devices, I was confused by language that suggested I was "Adding" or "Creating" a device. What we are really doing is registering a device with the hub, so that a physical device of the same name can communicate with this hub. When you see words like "Add" and "Create", think of the fact that it is adding and creating the registration entry.

To begin, log into the Azure Portal and navigate to your IoT Hub, as shown in Fig. 1.

id01-IotHubOverviewBlade
Fig. 1

Click "IoT devices" to open the "IoT devices" blade, as shown in Fig. 2.

id02-IotDevicesBlade
Fig. 2

If this hub has any devices, you will see them listed. You can use the fields at the top to filter the list to more quickly find one or more devices.

To add a new device, click the [Add] button (Fig. 2) to display the "Create a device" blade, as shown in Fig. 3.

id03-AddDeviceButton
Fig. 3

id04-CreateADevice
Fig. 4

At the "Device ID", enter a name for this device. The name must be unique among this hub's devices.

At the "Authentication type", select the type of authentication you wish this device to use. If you select "Symmetric key", you have the option to enter your keys or allow the system to generate keys for you.

Click the [Save] button to create this device.

After a few seconds, the device is created and displays in the device list of the "IoT devices" blade, as shown in Fig. 5.

id05-IotDevicesBlade
Fig. 5

If you click on the device, you can see the "Device details" for this device, as showin in Fig. 6.

id06-DeviceDetails
Fig. 6

The connection string is required to target this specific device.

Now that you have a device registered, a device of that name can communicate with this hub.

Azure | IoT
Tuesday, March 12, 2019 9:48:00 AM (GMT Standard Time, UTC+00:00)
# Friday, March 8, 2019

The Internet of Things, or IoT, allows you to capture data from devices across the planet and use the power of the cloud to store and manage that data.

Microsoft Azure offers IoT Hubs as a way to capture data from Internet-connected devices.

To create a new IoT hub, navigate to the Azure portal and log in.

Click the [Create a resource] button (Fig. 1) and select Internet of Things | IoT hub from the menu, as shown in Fig. 2.

ih01-CreateNew
Fig. 1

ih02-Menu
Fig. 2

The "IoT hub" blade displays, as shown in Fig. 3.

ih03-IoTBlade
Fig. 3

At the "Subscription" field, select the subscription in which you want to store this hub. Many of you will have only one subscription and it will already be selected.

At the "Resource Group" field, select a Resource Group in which to store this hub. You can create a new Resource Group by clicking the "Create new" link and entering a name for the new group, as shown in Fig. 4.

ih04-NewResourceGroup
Fig. 4

At the "Region" field, select the geographic region in which you want your hub to be located. Considerations include the location of the devices that will connect to this hub and the location other systems with which the hub will interact.

At the "IoT Hub Name" field, enter a unique name for this hub.

After you have completed the form, click the [Review + create] button. A summary page displays, as shown in Fig. 5.

ih05-iotHubConfirmation
Fig. 5

If any errors display, click the [Previous] button and correct them; Otherwise, click the [Create] button to create a new IoT Hub. It will take several minutes to deploy all the necessary resources and create this hub.

After the hub is created, you can navigate to it, as showing in Fig. 6.

ih06-IotHubOverviewBlade
Fig. 6

The "Overview" blade is selected by default and displays summary information about your hub, as well as links to documentation, so you can learn more about managing and working with this hub.

In this article, you learned how to create a new Azure IoT hub. A hub requires more configuration to be useful. We will cover this configuration in a future article.

Azure | IoT
Friday, March 8, 2019 9:47:00 AM (GMT Standard Time, UTC+00:00)
# Wednesday, March 6, 2019

The Internet of Things (or IoT) has revolutionized the way we think of computing.

In the past, computers were self-contained, general purpose machines that could load complex operating systems, run multiple applications, and perform a wide variety of tasks. They could communicate with one another in order to either share data or distribute workloads.

Now, tiny computers can be found in a huge number of devices around one's home or workplace. When these devices are connected to the cloud, they become far more powerful because much of the processing and storage traditionally done on the computer is moved to the massively-scalable cloud.

At home, refrigerators, thermostats, and automobile contain computers that send and receive information, making them better able to adapt to the world around them.

Businesses take advantage of devices connected to manufacturing machines or vehicles or weather detectors to monitor local conditions and productivity. Capturing data from these devices allows them to respond to anomalies in the data that may indicate a need for action. Imagine a monitor on a factory floor that monitors the health of an assembly line and sends an alert to a repair team if the line breaks down. Or, better still, if the data indicates a strong probability it will break down soon. Imagine a shipping company being able to track the exact location and health of every one of their trucks and to re-route them as necessary.

Industries as disparate as transportation, clothing, farming, and healthcare have benefited from the IoT revolution.

Cloud tools, such as Microsoft Azure IoT Hub allow businesses to capture data from many devices, store that data, analyze, and route it to a particular location or application. As applications become more complex, cloud tools become both more powerful and simpler to create.

These tools offer things like real-time analytics, message routing, data storage, and automatic scalability.

This IoT revolution has enabled companies to capture huge amounts of data. Tools like Machine Learning allow these same companies to find patterns in that data to facilitate things like predictive analysis.

The cost of both hardware and cloud services has fallen dramatically, which has accelerated this trend.

The trend shows no signs of slowing and companies continue to think of new ways to connect devices to the cloud and use the data collected.

The next series of articles will explore how to process IoT data using the tools in Microsoft Azure.

Wednesday, March 6, 2019 9:46:00 AM (GMT Standard Time, UTC+00:00)
# Monday, September 10, 2018
Monday, September 10, 2018 9:29:00 AM (GMT Daylight Time, UTC+01:00)
# Monday, January 1, 2018
Monday, January 1, 2018 12:48:00 PM (GMT Standard Time, UTC+00:00)
# Monday, June 26, 2017
Monday, June 26, 2017 12:55:57 PM (GMT Daylight Time, UTC+01:00)
# Monday, May 8, 2017
Monday, May 8, 2017 1:58:38 PM (GMT Daylight Time, UTC+01:00)
# Monday, April 3, 2017
Monday, April 3, 2017 4:51:06 PM (GMT Daylight Time, UTC+01:00)
# Monday, February 13, 2017
Monday, February 13, 2017 4:14:00 PM (GMT Standard Time, UTC+00:00)
# Monday, January 2, 2017
Monday, January 2, 2017 9:02:00 AM (GMT Standard Time, UTC+00:00)
# Tuesday, August 9, 2016
Tuesday, August 9, 2016 1:14:51 AM (GMT Daylight Time, UTC+01:00)
# Monday, July 18, 2016
Monday, July 18, 2016 6:51:39 AM (GMT Daylight Time, UTC+01:00)
# Monday, June 20, 2016
# Monday, March 14, 2016
Monday, March 14, 2016 4:05:00 PM (GMT Standard Time, UTC+00:00)
# Monday, November 9, 2015
Monday, November 9, 2015 8:39:28 PM (GMT Standard Time, UTC+00:00)
# Monday, September 7, 2015
Monday, September 7, 2015 4:20:00 PM (GMT Daylight Time, UTC+01:00)
# Thursday, May 7, 2015

Throughout this past semester, teams of Purdue University students built projects with controllers, circuit boards, and other hardware. On Friday May 1, the teams gathered at Wang Hall on Campus to show off their finished projects. I was invited to be one of six judges to select the best projects.

I got to see some amazing projects. For example:

  • 2 robots playing soccer controlled via multiple users on the Internet.
  • An unmanned tank-like vehicle with sensors to map out walls and terrain (this could be sent into a disaster area that is too dangerous for people).
  • An electric car that automatically followed a light path and stopped and whistled at any object that interrupted that path.
  • A motorized reclining chair for the lazy person on the go.
  • First place ($1000 cash)went to a student who created a custom keyboard as a controller to play his game "TagPro".

Much of the funding came from General Motors, but Microsoft Recruiting sponsored as well.

I didn't see a lot of Microsoft technology but I saw some very clever ideas for both hardware and software.

This was the first Spark Challenge and the organizers were confident that it was successful enough to justify planning more.

Overall it was a great opportunity for me to see the potential of these college students.

IMG_1184
Robots playing soccer

IMG_1205
A car that follows a beam of light

IMG_1224   
The winners are announced

Thursday, May 7, 2015 2:33:19 PM (GMT Daylight Time, UTC+01:00)
# Monday, February 2, 2015
Monday, February 2, 2015 3:31:00 PM (GMT Standard Time, UTC+00:00)