Connect Raspberry Pi online simulator to Azure IoT Hub (Node.js)
- Raspberry Pi web simulator
- Simulated device with .NET
- Simulated device with Java
- Simulated device with Node.js
- IoT DevKit AZ3166 with VS Code
- Raspberry Pi with Node.js
- Raspberry Pi with Python
- Raspberry Pi with C
- Intel Edison with Node.js
- Intel Edison with C
- Adafruit Feather HUZZAH ESP8266 with Arduino IDE
- Sparkfun ESP8266 Thing Dev with Arduino IDE
- Adafruit Feather M0 with Arduino IDE
In this tutorial, you begin by learning the basics of working with Raspberry Pi online simulator. You then learn how to seamlessly connect the Pi simulator to the cloud by using Azure IoT Hub.
If you have physical devices, visit Connect Raspberry Pi to Azure IoT Hub to get started.
What you do
- Learn the basics of Raspberry Pi online simulator.
- Create an IoT hub.
- Register a device for Pi in your IoT hub.
- Run a sample application on Pi to send simulated sensor data to your IoT hub.
Connect simulated Raspberry Pi to an IoT hub that you create. Then you run a sample application with the simulator to generate sensor data. Finally, you send the sensor data to your IoT hub.
What you learn
- How to create an Azure IoT hub and get your new device connection string. If you don't have an Azure account, create a free Azure trial account in just a few minutes.
- How to work with Raspberry Pi online simulator.
- How to send sensor data to your IoT hub.
Overview of Raspberry Pi web simulator
Click the button to launch Raspberry Pi online simulator.
There are three areas in the web simulator.
- Assembly area - The default circuit is that a Pi connects with a BME280 sensor and an LED. The area is locked in preview version so currently you cannot do customization.
- Coding area - An online code editor for you to code with Raspberry Pi. The default sample application helps to collect sensor data from BME280 sensor and sends to your Azure IoT Hub. The application is fully compatible with real Pi devices.
- Integrated console window - It shows the output of your code. At the top of this window, there are three buttons.
- Run - Run the application in the coding area.
- Reset - Reset the coding area to the default sample application.
- Fold/Expand - On the right side there is a button for you to fold/expand the console window.
Create an IoT hub
- Sign in to the Azure portal.
Select New > Internet of Things > IoT Hub.
In the IoT hub pane, enter the following information for your IoT hub:
- Name: Create a name for your IoT hub. If the name you enter is valid, a green check mark appears.
The IoT hub will be publicly discoverable as a DNS endpoint, so make sure to avoid any sensitive information while naming it.
Pricing and scale tier: For this tutorial, select the F1 - Free tier. For more information, see the Pricing and scale tier.
Resource group: Create a resource group to host the IoT hub or use an existing one. For more information, see Use resource groups to manage your Azure resources
Location: Select the closest location to you.
Pin to dashboard: Check this option for easy access to your IoT hub from the dashboard.
Click Create. Your IoT hub might take a few minutes to create. You can monitor the progress in the Notifications pane.
Now that you have created an IoT hub, locate the important information that you use to connect devices and applications to your IoT hub.
After your IoT hub is created, click it on the dashboard. Make a note of the Hostname, and then click Shared access policies.
In the Shared access policies pane, click the iothubowner policy, and then copy and make a note of the Connection string of your IoT hub. For more information, see Control access to IoT Hub.
You will not need this iothubowner connection string for this set-up tutorial. However, you may need it for some of the tutorials on different IoT scenarios after you complete this set-up.
Register a device in the IoT hub for your device
In the Azure portal, open your IoT hub.
Click Device Explorer.
In the Device Explorer pane, click Add to add a device to your IoT hub. Then do the following:
Device ID: Enter the ID of the new device. Device IDs are case sensitive.
Authentication Type: Select Symmetric Key.
Auto Generate Keys: Select this check box.
Connect device to IoT Hub: Click Enable.
The device ID may be visible in the logs collected for customer support and troubleshooting, so make sure to avoid any sensitive information while naming it.
- After the device is created, open the device in the Device Explorer pane.
Make a note of the primary key of the connection string.
Run a sample application on Pi web simulator
In coding area, make sure you are working on the default sample application. Replace the placeholder in Line 15 with the Azure IoT hub device connection string.
Click Run or type
npm startto run the application.
You should see the following output that shows the sensor data and the messages that are sent to your IoT hub
You’ve run a sample application to collect sensor data and send it to your IoT hub.
To continue to get started with Azure IoT Hub and to explore other IoT scenarios, see the following:
- Manage cloud device messaging with iothub-explorer
- Save your Azure IoT hub messages to Azure data storage
- Use Power BI to visualize real-time sensor data from your IoT hub
- Use the Web Apps feature of Azure App Service to visualize real-time sensor data from your IoT hub
- Forecast weather by using the sensor data from your IoT hub in Azure Machine Learning
- Manage devices with iothub-explorer
- Use Logic Apps for remote monitoring and notifications