Series: Azure Aquarium Monitor

Happy new year everyone! A new year, time for some new things! Somewhere back in 2015 I decided to buy a couple of Raspberry Pi’s, two Arduino nano devices and some other IoT stuff (sensors, cables, etc). The goal I have is to build a device which can monitor my fish tank, keeping track of things like temperature and pH value of the water. Now to be clear; there are already some very sophisticated projects out there which do exactly this and more. But I wanted to do it myself to have a better understanding of IoT technology and how it can be used. Now that Microsoft released Windows 10 IoT, I thought this would be an awesome opportunity to get me going on my existing C# skill set. I’ll be keeping track of my progress in a few blogs. I’m not quite sure where this will end yet, guess we’ll find out over the next months 🙂

Hi there! This is post #2 in my Aquarium monitor series. In this post, I’ll explain how I wired the different sensors to my Raspberry Pi and Arduino devices. Now you probably do not have exactly the same set-up as I have, as there are all kinds of different devices out there which all require their own set-up / configuration. So this post is written as general guidance of how to connect sensors in general. Read More

Hi there! This is post #3 in my Aquarium monitor series. In the previous post I showed how I linked some sensors to my Arduino Nano and coupled that with a Raspberry Pi 2 via I2C. However, I didn’t yet show you how you can now get the data that the Arduino is sending. We’ll get to that in this post, along with details on how to push this data into the cloud, being an Azure IoT event hub. Enjoy! Read More

Things are progressing well in my quest to create an Azure connected aquarium monitor! This is post #4 in my blog series about the subject. In the previous post we ended up sending messages with measurements to an Azure IoT hub. In this post we’ll take a look at what happens next, since we’re not actually doing anything with the data now.

This is post #5 in my blog series about the subject. In the previous post I explained how Azure stream analytics processes all of the incoming messages and places them in the sinks you configure. In my case, messages are now being written to Azure storage blobs, where they reside as CSV files. In this post, we’ll take a look at the other side of things, getting out the data again for display purposes.

Finally! Post #6 in my blog series on building an aquarium monitor solution using Azure! In my last post we created a Web API project which provides an API for any application to use. In this post, we’ll take a look at creating an Apache Cordova application for use on mobile phones. This app will consume the API and voila, we’ll then have our readings displayed in a smartphone app. This will complete the journey from reading data, sending it to the cloud and then consuming it on a mobile phone (or any other app for that matter). In a next post, I’ll describe how to build out this scenario and for instance add notifications to alert you when certain readings appear to be off. Read More

Hey there! Welcome back again to post #7 in my Internet of Things aquarium monitor series. In this series I’m explaining how to use Windows 10 IoT and Azure to read out sensor data, process it and act on it. And that “act on it” part is what we’ll take a look at in this post! Read More

In this blog post I will not be adding any new functionality to my aquarium monitor project. Instead, I’m going to replace already existing functionality. Not because that’s needed, but just because I can 😉 We’ll be looking at replacing our webjob instance using something new which is called Azure Functions.

If you didn’t read it or do not recall, check out the post I wrote on how I implemented notifications. I made use of a webjob to monitor the event hub for incoming notifications (generated by Azure Stream Analytics) and sending those to the notification hub. A few lines of code also constructed the message to send. Read More

In my aquarium monitor series I showed how to build an application to monitor a fish tank. The use of the Azure IoT components allow us to easily build these kinds of solutions based on generic components. It also allows us to scale, which makes it very suitable for scenarios with lots of devices or data.

Should you want to make your application multi-tenant, there’s no reason why you shouldn’t… or is there? What if you don’t have complete control over the clients and someone starts to send way more data then expected? Hmm… Read More