PH and Temperature Hydroponic Monitor using MQTT

There have been quite a few requests for the code for my MQTT posting IOT project for testing PH and Temperature of my hydroponic towers. This code is several years old and I haven’t looked at it for at least 2. But, I figured I would put it out on GitHub.

The main purpose of this code is to monitor the PH and temperature in a water tank for my hydroponics and then use MQTT to post to io.adafruit for a dashboard.

Scheduling MQTT Messages to from Windows Task Scheduler

Often times, I want to send an MQTT message to a device so that it can automatically do something on a timed basis.  Example, say I want to turn on my greenhouse lights for my seedlings in the morning, at a certain time, and then turn them off in the evening at a certain time.  If you are using Adafruit, it has a trigger that wakes up every so many minutes, hours, days, weeks.  But, I want to have things to trigger at the same time every day.

I could use cron on one of my linux boxes.  But, in my case, I wanted to use a windows box to do the time triggering.  An easy way to do this is to use Windows Task Scheduler that comes with Windows.

Continue Reading

Azure Event Hub to Adafruit Bridge

Ok, this might be a round about way to do something, but I really wanted to experiment with MQTT and Azure Event Hubs.  I wrote a bridge that would bridge data between several MQTT brokers and then queue that data up on an Azure Event Hub.  These MQTT brokers are fed by data from several ESP8266 boards reporting different environmental conditions (temperature, etc).

After I got the MQTT to Azure Event Hub bridge done, I then found Adafruit’s dashboarding service (  It is pretty cool.  So, what I then wanted to do is write a bridge between my Azure Event Hub to Adafruit to show data on a dashboard.

1. Creating my MQTT listener to bridge data to Azure

Continue Reading