Combining Azure StreamAnalytics with Azure Function Sink

There are many ways to collect data from an IoTHub and pass it through Azure Functions:

  • Trigger an Azure Function directly by the IoTHub events or operations monitoring
  • Trigger an Azure Function using an EventHub or message bus as endpoints of IoTHub routing
  • Trigger an Azure Function using an EventHub as output sink of a Stream Analytics job

All these solutions serve their own purpose.

But the last one, using an EventHub, can be pretty annoying. Yes, this is a great way if you will use the security policies and/or consumer groups of the Eventhub. But otherwise, there is a lot of administration.

Let’s check out how life is becoming much easier with a new Azure functionality which is still in public preview called Azure Function Sink.

Continue reading “Combining Azure StreamAnalytics with Azure Function Sink”


IoT at Microsoft Ignite 2017

The Microsoft Ignite just finished and what show it was again!

The Microsoft Ignite was held in Orlando and it’s a great event for Enterprise developers and IT Pros.

But if you are IoT minded like me, it’s also a great event regarding Windows 10 IoT and azure IoT.

And the best news is, a lot of break-out sessions are recorded and available already.

I counted 50+ Breakout sessions, Hands-on labs, Meetups, Microsoft Cloud Show en even a Cert Exam Prep. And there is also an Ignite channel on youtube.

Here are the videos and slides of sessions which are already available (or are available soon, only a teaser is shown on the page)

Continue reading “IoT at Microsoft Ignite 2017”

Introduction to the IoT Edge SDK, part 5: Watchdog

In the past weeks, I have shown how to work with the basics of the current Azure Edge SDK.

Today we will look at a more specific need, a watchdog.

Using this watchdog, we have more control over the quality of the service.

I created my watchdog when I discovered I was depending on the time-out of an HTTP request to find out the sensors were not working correctly. These timeouts can take a long time (there is an example of 100 seconds).

Because I expect a message every five seconds, I want to be warned if a message is not generated in nine seconds!

Continue reading “Introduction to the IoT Edge SDK, part 5: Watchdog”

New IoT community in The Nederlands, focussed on Microsoft IoT Stack

Just last week, Sander van de Velde, Jan Willem Groenenberg and Remco Ploeg have started a new community.

We named our community:

Our goal is to bring people together, people who are working with IoT technology on the Microsoft IoT Stack.

Microsoft is targeting IotT in numerous ways, from Windows 10 IoT Core, Windows 10 IoT Enterprise, the Azure IoT Platform, Development kits, Certified devices, IoT suites, Edge support, Reference Architecture, Open Source projects, e-learning, etc.

If you are interested in one or more of these areas, this community is the place to be!

Continue reading “New IoT community in The Nederlands, focussed on Microsoft IoT Stack”

Azure IoTHub routing revisited, Blob Storage Endpoints

Recently, Microsoft added some extra features to the IoTHub routing abilities:

  1. Support for routing using the message body
  2. Support for Blob Storage as endpoint

In this blog, we will look at both features using the Visual Studio 2017 extension called the IoT Hub Connected Service, which is updated also.

But first, let’s look at the new Blob Storage endpoint.

Sending telemetry to a Blob Storage container is a simple and efficient way for cold path analytics:

Until recently, there were a few ways to do this:

  • Sending IoTHub output to a Stream Analytics job, which filled some blob
  • Sending IoTHub output to an Azure Function, which filled some blob
  • Making use of the IoT Hub ability to receive blobs

The first two ways can be done using extra Azure resources so additional costs are involved. The third one is only used in very specific circumstances.

The new Blob Storage endpoint is a simple but very powerful way of making Cold path analytics available, right from the IoTHub.

Continue reading “Azure IoTHub routing revisited, Blob Storage Endpoints”

Introduction to the IoT Edge SDK, part 4

We have already made great progress understanding and using the Azure Gateway SDK.

What do we have right now? We can send telemetry data from multiple ‘offline’ devices and accept commands from the IoT Hub.

The data we send is well-formatted JSON so we are good to go.

But I am a bit worried. While reading all documentation regarding the transformation from Azure Gateway SDK towards the IoT Edge SDK, it is clear that multiple types of messages are sent to the IoT Hub. For example, I can imagine that a Stream Analytics module generates other data.

And let’s look at a more ‘close to earth’ example. The gateway itself is a potential device too! But I do not want to mix data coming from the gateway and from sensor devices.

Of course, we recently got the ability to route messages using the message sent. But what about using the properties? This keeps the message content clean.

Will this be working?

Continue reading “Introduction to the IoT Edge SDK, part 4”

Introduction to the IoT Edge SDK, part 3

In the previous blogs of this series, you have been introduced to the Module architecture of the IoT Edge SDK. In my last blog, we have sent data to the IoT Hub.

But the IoTHub has more capabilities for devices. Think of ‘device twins’, ‘direct methods’ and ‘message to device’. Are these supported too?

At this moment, the IoTHub module supports commands, messages to devices, coming from the IoT Hub.

Let’s see what we have to do to get this working.

Continue reading “Introduction to the IoT Edge SDK, part 3”