IoT Hub Raspberry Pi 3 Client application
This repo contains the source code to help you get started with Azure IoT using the Microsoft IoT Pack for Raspberry Pi 3 Starter Kit. You will find the full tutorial on Docs.microsoft.com.
This repo contains an arduino application that runs on Raspberry Pi 3 with a BME280 temperature&humidity sensor, and then sends these data to your IoT hub. At the same time, this application receives Cloud-to-Device messages from your IoT hub, and takes actions according to the C2D command.
Set up your Pi
Enable SSH on your Pi
Follow this page to enable SSH on your Pi.
Enable SPI on your Pi
Follow this page to enable SPI on your Pi
Connect your sensor with your Pi
Connect with a physical BEM280 sensor and LED
You can follow the image to connect your BME280 and a LED with your Raspberry Pi 3.
Download and setup the client app
- Clone the client application to local:
sudo apt-get install git-core git clone https://github.com/Azure-Samples/iot-hub-c-raspberrypi-client-app.git
- Run setup script:
cd ./iot-hub-c-raspberrypi-client-app sudo chmod u+x setup.sh sudo ./setup.sh
If you don't have a physical BME280, you can use '--simulated-data' as command line parameter to simulate temperature&humidity data.
sudo ./setup.sh --simulated-data
Run your client application
Run the client application with root priviledge, and you also need provide your Azure IoT hub device connection string, note your connection should be quoted in the command.
sudo ./app '<your Azure IoT hub device connection string>'
Send Cloud-to-Device command
You can send a C2D message to your device. You can see the device prints out the message and blinks once when receiving the message.
Send Device Method command
You can send
stop device method command to your Pi to start/stop sending message to your IoT hub.