Enginursday: Aquaponics and the Internet-of-Things

A brief overview of the numerous internet-enabled devices I've used to monitor my aquaponic systems.

First off, happy belated Earth Day to all my fellow Earthlings. Earth Day seems to have morphed into Earth Week, and I for one welcome a week-long celebration of our dear planet over something like Spring Black Friday – yeesh.

The aquaponics community has taken note of the growing celebration, and, for the past three years, the Aquaponics Association has hosted the Tour de Tanks, a celebration of all things aquaponics, which takes place the weekends before and after Earth Day.

alt text

Image courtesy of the Aquaponics Association.

During this time, aquaponic enthusiasts across the country are encouraged to show off their systems to anyone and everyone who is interested in viewing them. For the second year in a row, I will be hosting a few tours of my own, one of my home systems and one of the Boulder Hackerspace's system. If you are in the Denver/Boulder area, you can find more info about the tours on our Meetup. And, be sure to visit the Tour de Tanks Map above to see if there are any tours near you.

Along with showcasing my systems and their inhabitants, I will also be showing off the many methods for monitoring my aquariums. I will also be highlighting those methods in this blog post in the hopes that, should you be on the fence about starting your own system, this post might help push you closer to making the plunge. Knowing what's happening in your water doesn't need to be a chore. Rather, it should be one more element of the project that draws you to the hobby.

Raspberry Pi

The Raspberry Pi single board computer has been one of the go-to choices for many hobbyists who want to have their project connected to the Internet. The price-point and the vast collection of tutorials available for the Pi alone make it a great choice. On top of that, you can write your software in Python, C, C++, Java, Scratch, and Ruby, giving you many options for how to collect and handle your data. I also enjoy having the option to connect to WiFi or Ethernet.

I currently have two tanks using Raspberry Pis to collect data. The first is connected to the tank housed at Solid State Depot, the Boulder Hackerspace. I highlighted this system in a blog post several months back.

Shortly after that post went live, I created a similar setup for my home system, which houses four tilapia, this time for measuring the water and room temperatures, as well as the pH of the water.

alt text

It's been a huge help to not only be able to test the pH of my tank daily, but also to be able to see trends over time, as well as have a visual record of past events such as water changes.

I was worried about the calibration of the probe drifting over time, but after six months it's still producing reliable readings. I check the pH once every few weeks using traditional reagent tests to compare the two, and they remain neck and neck thus far. We'll see how much algea accumulates before it needs to be treated.

alt text

An Atlas Scientific pH Probe and a Waterproof DS18B20 temperature probe held to the side of the tank with a custom 3D printed holder.

Spark Core

The folks over at Spark.io have created a fantastic product, the Core. And with their next product, the Photon, poised to hit soon with a price point of $20, they are making waves in the IoT realm. I'm currently using two Cores to monitor my 10 gal. aquaponics system and my 60 gal. non-aquaponic fish tank, which houses two cichlids. One of the main appeals for me was the creation of the Spark Channel on the IFTTT web service, of which I was already a user. Now, I can get text message alerts should the tank temperature drift above or below the thresholds I set (you'd be surprised how many tank heaters I've seen malfunction!), and I can now set similar alerts for other parameters such as pH and oxygen levels.

alt text

The Core connected to a waterproof and standard DS18B20 temp sensor via a Mini Solder-able Breadboard, housed in a 3D printed enclosure.

alt text

The final enclosed unit mounted near the tank. A 2.4GH adhesive antenna was used to connect the u.FL Core to the web.

I was having some issues with pH crashes in my cichlid tank, so I created a similar setup as the one in the tilapia tank, this time using the Core as the brain to monitor and collect data on the pH in the tank.

alt text

I wrote up a full tutorial on the creation of that project over on my website. Thus far, I've been impressed with the Core's performance, and I look forward to incorporating the Core, the Photon and the recently Kickstarted Electron into my future projects.

ESP8266

If you are looking for the cheapest option possible, the ESP8266 WiFi module might be right up your alley. Working with this module requires a little patience and a lot of searching. However, the community for it is growing fast, with numerous articles, tutorials, and even its own IDE.

I haven't directly integrated it into one of my systems yet, but it's next on my to-do list. I currently have a MicroView pulling in weather data via an 8266, so it's only a matter of time before I'm pushing data out.

Visualizing Your Data

I've primarily been using Google Charts to graph my data.sparkfun streams. I have a page on my site dedicated to housing all my tank information in one place. It works well on my mobile phone, and it plays nice with most browsers. The one downfall is long load times when looking at long time periods.

Recently, I began using Analog.io to visualize my data. One of the great features of using that site is being able to pull multiple streams into one graph using the collections feature. And having a wider variety of time frames in which to see your data makes for easier trend spotting.

alt text

Five different temperature collections viewed on one Analog.io graph.


No matter which of the numerous methods for collecting or visualizing your data you choose, the important thing to take away is that all the buzz around IoT and Big Data can help us on small, individual levels. It helps make the aquaponics hobby that much more scientific and documentable, and it's not just for the fishes. Humanity can and is using this new set of data collection tools to make scientific discoveries and hypotheses, to see trends and new patterns in life. We can use these tools to help us better understand this Earth we live on and the creatures we interact with on a daily basis. But, it's up to us to choose how we use those tools.