Connect a Sigfox IoT device to the Microsoft Azure IoT Hub

Connect a Sigfox IoT device to  the Microsoft Azure IoT Hub

Since this week I have a Arduino Sigfox Snootlab IoT device connected to the ‘real’ Sigfox Backend system.(before I used an other backend system of Snootlab). With a device like this you can monitor anywhere in the Netherlands (IoT network) for example if a trashcan is full or not.

One of the reasons for doing this move to the Sigfox Backend system, is that I want to have an integration between the Sigfox IoT network and the Microsoft Azure IoT Hub. The Azure IoT Hub that we are using a lot in our IoT projects at Winvision. Since a couple of weeks Sigfox has a ‘connector’ to connect your IoT device to the Microsoft Azure IoT hub, and it’s really simple. In this small tutorial I will explain how it works.

First of all, if you are using the Akene board(like below) with Arduino, here you can find the library for the board.

Sigfox Akene Arduino board
Sigfox Akene Arduino board

First of all go to the Sigfox backend:

Here you see all your Sigfox connected devices. Click on the name to get the details of the device.

Devicelist in Sigfox Backend

On the right top you can find a New button, where you can create a new callback to another system.


Select the Microsoft Azure IoT Hub

Select Azure IoT Hub

After selecting the Microsoft Azure IoT hub you get in the screen where you only need to fill two configurations items(and that’s it!)

Configuration screen of the Microsoft Azure IoT Hub

You need to fill in the Connection string of your IoT Hub (you can find this in de Microsoft Azure Portal) I choose the iothubowner connection string.

After that you need a JSON body for receiving the right data (and you can use off course use your custom data)

“device” : “{device}”,
“data” : “{data}”,
“time” : {time},
“duplicate” : {duplicate},
“snr” : {snr},
“station” : “{station}”,
“avgSignal” : {avgSnr},
“lat” : {lat},
“lng” : {lng},
“rssi” : {rssi},
“seqNumber” : {seqNumber}

Click save and that’s it 🙂 !

Turn your Arduino device on and it will send the data to Sigfox and Sigfxo will send it to the Microsoft Azure IoT Hub.

To test if your data is received by the Azure IoT Hubyou can off course use Azure Stream Analytics with Microsoft Power BI. But for this post I just use the Iot-hub Explorer

With this tool you can see the messages that the Microsoft Azure IoT Hub is receiving in realtime.

Below you see the data of my device 77D3C on the Microsoft Azure IoT Hub. I have made the keys red. And it’s working!

IoT Hub Explorer screen

Afer all Sigfox made it really SIMPLE to connect you Sigfox IoT device to the Microsoft Azure IoT Hub!

Power BI Nofication Center

Power BI Nofication Center

For Internet of Things projects I use a lot Microsoft Power BI to display the telemetry of sensors of predictions from Azure Machine Learning. One thing that was always difficult when I share (or somebody shared) a dashboard with somebody else, you didn’t get any notification in Microsoft Power BI. But that changed with the Power BI Notification Center. In the menu of Power BI you see a new icon with new and old notifications:

Microsoft Power BI Notification Center
Microsoft Power BI Notification Center

The great thing with Power BI that is available on all platforms (like iOS). The notifications are shown on all platforms! See below for a iPhone screenshot:

Microsoft Power BI Notifications on the iPhone
Microsoft Power BI Notifications on the iPhone

In the menu you will also see the history of all notifications. In the future more types of notifications will be available!

Several IoT network standards, great or not?

Several IoT network standards, great or not?

Here in the Netherlands we are lucky to have Internet of Things networks available. We have a complete coverage of Sigfox from Aerea and hopefully this year coverage of LoRa from KPN. Off course we also have The Things Network (Lora based) community network in some cities.

All these ‘standards’ have great functionality for IoT sensors:

  • Long distance; several km’s
  • Low energy for sensors
  • Low costs
  • Indoor coverage (not always)

Last week T-Mobile in the Netherlands announced an extra IoT network named NB-IoT (NarrowBand-IoT). This standard is based on the 3GPP (3rd Generation Partnership Project) telecommunications associations, like GMS, UMTS and LTE.

I don’t know if it is great again that an extra operator is creating a new IoT network or not, they all use different standards now.
We know that not every (new) sensor will support every standard that is on the market. So sensor makers must think before releasing with network(s) they will support. I think it would be much better if we had one standard for sensor communication. So we can focus to have the best and cheapest sensors. Yes, I know that completion is also good, but the competition would be better if they all use the same standard like with the telephone market.

I like the idea of the NB-IoT what T-Mobile has launched. It’s based on the current 3G and 4G networks and it’s easy (just software) to add this new IoT network. They will have directly whole covered in the Netherlands, but even better it’s simple to launch in every country. And that would be great for Asset management or other IoT propositions. No big investments in new hardware for T-Mobile and maintain extra hardware. During the launch of the new network T-Mobile showed also a new use case for IoT: Smart Paving Stone. They put a sensor in the paving stone at parking places in a city. The sensor can see if a car is on the parking spot and via an APP a other person can see where a space is available to park. Great use case, because we have a lot of paving stones here in the NL for parking spaces.

What do you think of the several IoT networks? Good or not?

The differenent Windows 10 IoT versions

The differenent Windows 10 IoT versions

Like you maybe know Windows 10 IoT has several versions available:

  • Windows 10 IoT Core
  • Windows 10 IoT Mobile Enterprise
  • Windows 10 IoT Enterprise

Windows 10 IoT Core
This free version has no shell, but supports Universal Windows Apps and Drivers. It can run on X86 and ARM devices like the Raspberry PI 2 and 3(only on Insider Build). It is at the moment lot used for proof of concept in my work. The devices are cheap and we don’t need any shell to run other apps on it. This version is really for the small factor devices.

Technical specs: 512MB RAM, 2GB storage

Windows 10 Mobile Enterprise
This version has a modern shell(like Windows Mobile 10), supports Universal Windows Apps and Drivers. It’s focused on mobile device, like handheld scanners, mobile device for credit card payment etc. It’s only supports ARM devices

Technical specs: 512MB RAM, 4GB storage

Windows 10 IoT Enterprise
This version has a full desktop shell. It can run also Win32 apps and Universal Apps. It’s only supporting X86 devices. It is focused on devices that need more capabilities and power of the device

Technical specs: 1GB RAM, 16GB storage

The great thing about these version, if you build an Universal App, it will run on all Windows 10 devices.