You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 4 Next »

Introduction

The following document contains details and steps on how to configure the MQTT Communication Protocol Driver and Azure IoT Hub. For more information see MQTT Protocol and Introduction to Microsoft IoT Hub.

System Requirements

Below is listed the requirements for a successful configuration.

  • MQTT Driver version 0.2.1;
  • Microsoft Azure IoT Hub Account;
  • Visual Studio Code with an Azure IoT Hub



Configuration Settings

In this section, we will describe how to configure each program.

Visual Studio Code

Visual Studio Code is an open-source, streamlined code editor with support for development operations like debugging, task running, and version control. Visual Studio Code can be downloaded here.

To download the extension that allows interaction with Azure IoT Hub and IoT Device Management, click here.

This guide assumes that an IoT Hub already exists within the Azure Portal account.


After installing the extension, open VSCode application. In Explorer of VS Code, click ”Azure IoT Hub” tab in the bottom left corner (1) and Click ”Select IoT Hub” (2) in context menu.

If you have not signed in to Azure, a pop-up will show in the bottom right corner to let you sign in to Azure (3).

Azure IoT Extension Setup.


After you sign in, your Azure Subscription list will be shown, then select Azure Subscription and IoT Hub. The devices and endpoints list will be shown in ”Azure IoT Hub” tab in a few seconds.

Devices in IoT Hub.


New IoT Devices can be created through this extension. From the context menu (1), click Create Device (2) and enter a Device ID for the new IoT device.


Device creation.


Now that we have our Devices created, we will need to get our Connection String and SAS Token.

Right-Click on the Device and select ”Get Device Info”. You should see some information displayed at the Output Window.

Connection String.


Review the Connection String created for the device and record the following pieces of information from this string:

HostName = TatsoftTestHub.azure-devices.net DeviceId = NewDevice


Again, right-click the device and select ”Generate SAS token for device” and enter the expiration time. You should see some information displayed at the Output Window.

SAS Token.


Record the following pieces of information from this string:

Password = SharedAccessSignature sr=TatsoftTestHub.azure-devices.net&sig=pzzXCZK%2 BQ6dJUe2Hf1SptTR1oPMbfyip0K9M4TQPZc4%3D&skn=iothubowner&se=1593008673


To verify that data is flowing from MQTT Driver to the cloud-based Azure IoT Hub, right-click the device entry and select ”Start Monitoring Built-In Event Endpoint”.

Enable Device Endpoint.


MQTT Driver

On your Project’s Engineering Environment, navigate to Devices > Channels and add a new MQTT channel.

MQTT Channel creation.


On Devices > Nodes, add a node for the newly created MQTT Channel. The Primary Station configuration is done as follows:

URL = <Host Name> Port = <Port Number>
Client ID = <Device Id>
Username = <Host Name>/<Device Id> Password = <SAS Token>
TLS Version = <TLSv1.0>
X059 Certificate = <Certificate thumbprint>  (optional)  QoS = <Quality of Service>
Keep Alive = <Message sent to Broker to prevent the link from being broken> (in seconds)


For our IoT Hub and Device configured in VSCode, the parameters are as follows.

URL = TatsoftTestHub.azure-devices.net Port = 8883
Client ID = NewDevice
Username = TatsoftTestHub.azure-devices.net/NewDevice
Password = SharedAccessSignature sr=TatsoftTestHub.azure-devices.net&sig=pzzXCZK%2 BQ6dJUe2Hf1SptTR1oPMbfyip0K9M4TQPZc4%3D&skn=iothubowner&se=1593008673

TLS Version = <TLSv1.0> X059 Certificate =
QoS = AtMostOnce Keep Alive = 1


MQTT Node creation.


Lastly, on Devices > Points the Address information is filled according to the syntax below

devices/<Device Id>/messages/events/

For our device, the correct topic is

devices/NewDevice/messages/events/


MQTT Point creation.


Once the Device configuration is complete, go to Run > Startup and execute the project. Open the Trace Window (with Debug and Devices options enabled) and monitor the communication exchange.

Trace Window logs.


Back on VSCode, you can see the received messages on the Output Window.

Messages received in VSCode.


  • No labels