Azure IoT Hub cloud connection (Legacy WebUI): Difference between revisions
Azure IoT Hub cloud connection (Legacy WebUI) (view source)
Revision as of 17:10, 6 February 2020
, 6 February 2020no edit summary
Oscar.morao (talk | contribs) No edit summary |
Oscar.morao (talk | contribs) No edit summary |
||
Line 4: | Line 4: | ||
==Introduction== | ==Introduction== | ||
This article contains instructions on how to configure a RUT router in order to connect to the Azure IoT Hub. | This article contains instructions on how to configure a RUT router in order to connect to the Azure IoT Hub.<br> | ||
{{Template:Networking_rutxxx_manual_fw_disclosure | |||
| fw_version = RUT9XX_R_00.06.05.3 | |||
}} | |||
==Prerequisites== | ==Prerequisites== | ||
Line 22: | Line 24: | ||
<li>First you will want to create a Resource group for easier management of resources that you will add later. In Microsoft Azure home page.</li> | <li>First you will want to create a Resource group for easier management of resources that you will add later. In Microsoft Azure home page.</li> | ||
<ul>Select '''Resource groups''' <br>If it is not in very first page, click '''More services''' and locate it there. </ul> | <ul>Select '''Resource groups''' <br>If it is not in very first page, click '''More services''' and locate it there. </ul> | ||
<div>[[File:Azure01.png| | <div>[[File:Azure01.png|border|class=tlt-border|800px]]</div> | ||
<li>In new window, select '''Add'''</li> | <li>In new window, select '''Add'''</li> | ||
[[File:Azure02.png|border|class=tlt-border]] | |||
<li>And then finish creating yours Resource group </li> | <li>And then finish creating yours Resource group </li> | ||
<li>Select your subscription, we are using '''Free Trial''' for this test. | <li>Select your subscription, we are using '''Free Trial''' for this test. | ||
# Name your group | #Name your group | ||
# Finally, choose server location for meta data. We will choose '''''(South America) Brazil South''''' and will use it during test where available.</li> | #Finally, choose server location for meta data. We will choose '''''(South America) Brazil South''''' and will use it during test where available.</li> | ||
[[File:Azure03.png|border|class=tlt-border]] | |||
<li>At this moment we will skip adding Tags since we will be able to do that later if needed, so simply press Review + create at the bottom of screen and then click Create to finish setup.</li> | |||
|- | [[File:Azure04.png|border|class=tlt-border]] | ||
<br> | |||
[[File:Azure05.png|border|class=tlt-border]] | |||
<li>You will be redirected to Homepage, then click on Resource groups. You should see yours newly created group, select it, and press Add.</li> | <li>You will be redirected to Homepage, then click on Resource groups. You should see yours newly created group, select it, and press Add.</li> | ||
[[File:Azure06.png|border|class=tlt-border|800px]] | |||
<li>Select Internet of Things or simply search IoT Hub and press '''Create'''.</li> | <li>Select Internet of Things or simply search IoT Hub and press '''Create'''.</li> | ||
[[File:Azure07.png|border|class=tlt-border|800px]] | |||
<li>We leave default subscription and resource group and choose: | <li>We leave default subscription and resource group and choose: | ||
<div>1. Region – (South America) Brazil South as before</div> | <div>1. Region – (South America) Brazil South as before</div> | ||
Line 64: | Line 54: | ||
<div>3. Then go to '''Size and scale tab''' </div> | <div>3. Then go to '''Size and scale tab''' </div> | ||
</li> | </li> | ||
[[File:Azure08.png|border|class=tlt-border|800px]] | |||
[[File:Azure08.png| | |||
<li>For testing purposes, we are using '''F1: Free tier''' </li> | <li>For testing purposes, we are using '''F1: Free tier''' </li> | ||
<div>At the bottom of the screen '''Review + create'''</div> | <div>At the bottom of the screen '''Review + create'''</div> | ||
[[File:Azure09.png|border|class=tlt-border|800px]] | |||
[[File:Azure09.png| | |||
<div>And finally, Click on >> '''Create''' </div> | <div>And finally, Click on >> '''Create''' </div> | ||
[[File:Azure10.png|border|class=tlt-border|400px]] | |||
[[File:Azure10.png| | |||
<div>'''Note:''' Wait until resource deploys and press Go to '''Resources''' </div> | <div>'''Note:''' Wait until resource deploys and press Go to '''Resources''' </div> | ||
Line 88: | Line 65: | ||
<li> Inside IoT Hub list: | <li> Inside IoT Hub list: | ||
<div>Scroll down to Explorers and select '''IoT devices''' </div> | <div>Scroll down to Explorers and select '''IoT devices''' </div> | ||
[[File:Azure11.png|border|class=tlt-border|300px]] | |||
[[File:Azure11.png| | |||
<li>Press '''New''' </li> | <li>Press '''New''' </li> | ||
[[File:Azure12.png|border|class=tlt-border|800px]] | |||
[[File:Azure12.png| | |||
<li> | <li> | ||
<div>In new device creation</div> | <div>In new device creation</div> | ||
Line 104: | Line 73: | ||
<div>2. Leave everything else on default and press '''Save'''</div> | <div>2. Leave everything else on default and press '''Save'''</div> | ||
</li> | </li> | ||
[[File:Azure13.png|border|class=tlt-border|400px]] | |||
[[File:Azure13.png| | |||
<li>After you finish creation, you will be redirected back to IoT devices select yours newly created Device ID</li> | <li>After you finish creation, you will be redirected back to IoT devices select yours newly created Device ID</li> | ||
[[File:Azure14.png|border|class=tlt-border|800px]] | |||
[[File:Azure14.png| | |||
<li>In your device window you will find information needed to connect RUT devices to Azure IoT Hub.</li> | <li>In your device window you will find information needed to connect RUT devices to Azure IoT Hub.</li> | ||
<div>For now, we will only need connection string. Copy Primary Connection string by pressing copy icon next to it. </div> | <div>For now, we will only need connection string. Copy Primary Connection string by pressing copy icon next to it. </div> | ||
[[File:Azure16.png|border|class=tlt-border|800px]] | |||
[[File:Azure16.png| | |||
</ul> | </ul> | ||
==Configuring RUT955 Azure IoT Hub== | ==Configuring RUT955 Azure IoT Hub== | ||
< | <ul> | ||
<li>First open router WebUI, go to System > '''Package Manager''' and install Azure IoT Hub package </li> | |||
[[File:Azure17.png|border|class=tlt-border|600px]] | |||
<li>Now navigate to Services > '''IoT Platforms''' </li> | |||
<div>1. Select Enable '''Azure IoT Hub monitoring'''</div> | |||
<div>2. Paste previously copied Connection String (For this test we leave other values as default)</div> | |||
<div>3. Select what kind of information you want to send to Azure IoT Hub</div> | |||
<div>4. Press '''Save''' </div> | |||
[[File:Azure18.png|border|class=tlt-border]] | |||
[[File:Azure19-1.png|border|class=tlt-border|800px]] | |||
</ul> | |||
==Checking if Data reaches Azure IoT Hub== | ==Checking if Data reaches Azure IoT Hub== | ||
<ul> | |||
<li>From router side, connect to it with CLI or SSH client and write in command azure_iothub and press Enter </li> | |||
<div>- You should get answer that looks something like that, depending on what information you chose to send. </div> | |||
[[File:Azure19.png|border|class=tlt-border]] | |||
<li>From Azure IoT Hub side you can check if it receives data. Go to IoT Hub that you created previously. Select Overview, there you can see: | |||
</li> | |||
<div>1. How many devices are connected to hub, and how many messages it sent during chosen period of time.</div> | |||
<div>2. Device to cloud messages, that your router is sending.</div><br> | |||
<div>It should look something like that if IoT Hub is receiving data. </div> | |||
[[File:Azure20.png|border|class=tlt-border|800px]] | |||
<li>To capture logs you will need '''Device Explorer''' for IoT Hub Devices.</li> | |||
<div>For Windows you can get here: <nowiki>https://github.com/Azure/azure-iot-sdk-csharp/releases/tag/2019-1-4</nowiki> </div><br> | |||
<div>Scroll down to Assets, download and install '''SetupDeviceExplorer.msi''' </div> | |||
[[File:Azure21.png|border|class=tlt-border]] | |||
<li>Now you will need connection string of yours Azure IoT Hub, Not device. Navigate to IoT hub in your browser, then:</li> | |||
<div>1. Click '''Shared access policies'''</div> | |||
<div>2. Next choose '''iothubowner'''</div> | |||
<div>3. And copy '''Connection string – primary key'''</div> | |||
[[File:Azure22-1.png|border|class=tlt-border|800px]] | |||
<li>After that go back to Device Explorer: </li> | |||
<div>1. In Configuration tab paste in Connection string that you just copied</div> | |||
<div>2. Copy HostName part from connection string and paste it in '''Protocol Gateway HostName'''</div> | |||
<div>3. Click '''Update''' </div> | |||
[[File:Azure23.png|border|class=tlt-border|600px]] | |||
<li>Open Management tab </li> | |||
<div>1. Click Update </div> | |||
<div>2. You should see your device in the list below and '''Connection state''' </div> | |||
[[File:Azure24.png|border|class=tlt-border|800px]] | |||
<li>Go to Data tab</li> | |||
<div>1. Click monitor, and wait for '''Event Hub Data''' to update (Depends on yours chosen interval)</div> | |||
<div>2. Messages like this should start appearing. </div> | |||
[[File:Azure25.png|border|class=tlt-border|600px]] | |||
==Setting router to Forward MQTT messages/commands to Azure IoT Hub== | |||
<div>First you will need MQTT broker to subscribe to, for testing purposes we will set MQTT Broker in same router, and will use PC from LAN to sent MQTT messages.</div> | |||
<li>Go to Services > MQTT </li> | |||
<div>1. Click '''Enable'''</div> | |||
<div>2. Use same port in MQTT Broker and Azure IoT Hub settings.</div> | |||
<div>3. Press '''Save'''</div> | |||
[[File:Azure26.png|border|class=tlt-border]] | |||
<li>Go to Service > '''IoT Platforms'''</li> | |||
<div>1. Enable monitoring </div> | |||
<div>2. Use same Connection string as before (GSM values configuration) </div> | |||
<div>3. Messages Type choose '''MQTT messages''' </div> | |||
<div>4. Enter MQTT Host address, we are using 127.0.0.1 since our broker is set up on same router.</div> | |||
<div>5. Port '''Same as MQTT Broker'''</div> | |||
<div>6. And Topic under which router will subscribe to MQTT Broker</div> | |||
<div>7. Press '''Save''', we will not need username or password.</div> | |||
[[File:Azure27.png|border|class=tlt-border]] | |||
</ul> | |||
==Checking if MQTT messages are being forwarded to Azure IoT Hub== | |||
===Linux=== | ===Linux=== | ||
<ul> | |||
<div>Connect to router with SSH, in logread you should see Router establishing connection to Azure IoT Hub: </div> | |||
[[File:Azure27-1.png|border|class=tlt-border]] | |||
<li>Open terminal and publish to MQTT Broker message with previously chosen topic.<br> | |||
For our example we are using example: '''mosquito_pub -h 192.168.1.1 -p 8883 -m ‘testing Azure MQTT messages’ -t test''' </li> | |||
<br><div>If everything was configured correctly in Device Explorer Data tab you should receive message like: </div> | |||
[[File:Azure28.png|border|class=tlt-border|1000px]] | |||
<div>This means our router Forwards MQTT messages to Azure IoT Hub. </div> | |||
</ul> | |||
===Windows=== | ===Windows=== | ||
<ul> | |||
<li>Install a MQTT client software to do the test, for this example we used MQTT.fx</li> | |||
<div>Setup your Router IP Address</div> | |||
<div>Use the '''same broker port'''</div> | |||
<div>Paste your '''Connection string – primary key''' and click '''Apply'''</div> | |||
[[File:Azure29-1.png|border|class=tlt-border|800px]] | |||
<div>1. Connect to the server broker</div> | |||
<div>2. Use the created topic. For this example '''test'''</div> | |||
<div>3. Send a message</div> | |||
[[File:Azure30.png|border|class=tlt-border|1000px]] | |||
<li>If you did everthing right this message will be shown in the device explorer</li> | |||
[[File:Azure31.png|border|class=tlt-border]] | |||
</ul> | |||
==Checking if Modbus Data to Server is sent to Azure IoT Hub== | |||