ble2azure
ble2azure copied to clipboard
IoT Gateway concept from BLE (Bluetooth Low Energy) devices to Azure (Event Hubs)
BLE2Azure
IoT Gateway concept from BLE (Bluetooth Low Energy) devices to Azure (Event Hubs)
This concept is a demo I used for a session at MEC Internet of Things Conference 2015 in Naples. It shows how to build a simple IoT Gateway from BLE devices to Azure using :
FEZ Spider by GHI Electronics

Netduino 3 Wi-Fi by Secret Labs
The BLE devices supported are :
- TI Sensor Tag : provides temperature, humidity, accelerometer and other useful information
- STM32 Nucleo Board (with BLE shield) : using a firmware that emulates a standard BLE HRM (Heart Rate Monitoring) device
Projects
Projects inside the ble2azure solution :
- IoTClient : class that contains the logic to acquire data from the BLE device and sends them to the Azure Event Hubs. It contains a base client for TI Sensor Tag, a Health client for STM32 and a ConnectTheDots client (it's like tha base client but sends information in JSON format useful to the ConnectTheDots project).
- FEZSpiderToEventHub : IoT gateway .Net Gadgeteer based project (.Net Micro Framework) with a FEZ Spider board with BLE module by Innovactive(Lorenzo Maiorfi) for acquiring data and sending them to Azure Event Hubs using the IoTClient.
- **NetduinoToEventHub : IoT gateway based on Netduino 3 Wi-Fi (.Net Micro Framework) with same BLE module as above for acquiring data and sending them to Azure Event Hubs using the IoTClient.
- FEZSpiderMonitor : Windows Forms application that acquires data from Event Hubs (data sent by the gateway) using Event Hub Processor and uses Telerik chart controls to show them.
- FEZSpiderEventHubProcessor : simple console application that used an Event Hub Processor to acquire data from Event Hubs (data sent by the gateway). It's like the previous monitor but without a UI.
- FEZSpiderEmulToEventHub : console application for emulating the real board IoT gateway (useful for testing and sending data from a PC)
Other projects needed for this solution :
- Azure SB Lite : library for connecting to the Azure Service Bus services (Queues, Topics/Subscriptions and Event Hubs) using AMQP protocol. It's based on AMQP .Net Lite library
- BLE for .Net MF : BLE Class Library for BLE (aka Bluetooth Low Energy, aka Bluetooth 4.0) support targeted to .NET Micro Framework
- JSON.NetMF : library for parsing JSON