Aquarium Controller: Will Dimmit and Kinoma Create

The Kinoma Team

The Kinoma Team

May 30, 2014

We’re passionate about the maker movement because projects solve real problems that hold great meaning for their creators. And we believe that with Kinoma Create, most anyone with basic engineering skills can innovate and be part of the revolutionary explosion going on in product development.

The Ultimate Aquarium Controller, developed with Kinoma Create by early adopter Will Dimmit out of Missouri, is a perfect example of the creativity and practicality of the maker movement.

Aquarium Crash

Two heaters in Will’s saltwater aquarium failed, killing most of his corals and fish.

Will searched for a commercial aquarium monitoring system, but couldn’t find one that fit the bill. Configuring a commercial system to make it function as needed would have skyrocketed the cost to over a thousand dollars. Additionally, equipment failure monitoring does not even appear to be available on any commercial aquarium control system, and yet this was the original cause of Will’s aquarium “crash.”

So when Will heard about Kinoma Create, he knew exactly what he wanted to do — create his own aquarium control and monitoring system that was better, more cost-effective, more customizable and flexible, and more expandable.

With Kinoma Create, Will was able to develop the Ultimate Aquarium Controller, which not only monitors water level, pH, salinity, and temperature, but can also take corrective action on all four of these water parameters.

He did all of this in only about two weeks, even though he was new to JavaScript.

Will describes his “biggest little triumph” as getting his sensors integrated into his software and doing something within 20 minutes of unboxing his Kinoma Create. He said that compared to his experience with bare board development devices, “that’s nuts!”


We are eager to showcase this aquarium control and monitoring project because it uses a number of sensors and peripherals that interface with Kinoma Create and the Kinoma Platform Runtime (KPR), something many Kinoma Create developers have in mind for their own projects. Will puts this into good practice to monitor:

  • Temperature, using an analog Atlas Scientific “ENV-TMP” temperature sensor that plugs into Kinoma Create’s analog input pins
  • Water level, using an eTape Liquid Level sensor
  • pH, using an Atlas Scientific pH sensor that communicates via serial (UART) to the Kinoma Create
  • Salinity, using an Atlas Scientific Salinity Sensor
  • Power consumption, using the Ubiquity mPower Pro 8 port power strip

And to control:

  • Water levels, with three pumps for dosing fresh-, salt-, and lime-water to control water, salinity, and pH levels
  • Water movement, using two pumps to provide a simulated tide for tank wildlife
  • Water temperature, using any number of standard aquarium heaters
  • Power, with a Wi-Fi power strip controlled with KPR’s HTTP stack
  • Light, using a three-way (day, twilight, night) 92W Skkye Light, also controlled by the powerstrip

The serial-based pH sensor is worth a closer look, because the serial standard is both complicated and old, and using it looks slightly trickier than either analog input or I2C. Will shared the following with us:

// Initialize the serial port pins
var pins = [ 33, 31 ];
serial.init( pins, 38400 );
serial.flush( pins );

//Send the command to read the pH
serial.writeChar( pins, "\r" );
serial.writeChar( pins, "R" );
serial.writeChar( pins, "\r" );

// Wait 400ms for the data to become available
sensorUtils.mdelay( 400 );

// Read the data from the sensor, formatted as a JSON-encoded string
var rawValue = serial.readAll( pins, "'jsonstring'" );

The added complexity comes primarily from the more elaborate communication pattern of serial sensors, since each sensor read involves a series of short writes, a delay, and then a true read. But each of these steps remains very simple with the Kinoma platform — the serial sensor “drivers” came in at under 10 lines of code!

Acquarium temp sensor

Companion App

With Kinoma, Will was able to easily create a companion app for his phone that allowed him to calibrate the system. He called it “ridiculously simple” to code, since he was able to leverage everything he’d learned creating his aquarium controller.

Empowering Makers

We designed Kinoma Create as a flexible solution for a range of projects, from custom development to mass-market product design. Will’s Ultimate Aquarium Controller is a convincing example of what’s possible when makers have the tools available to build projects that far exceed the capabilities of store-bought products, at a fraction of the cost.

Aquarium full view

Get Your Own Kinoma Create!

You can pre-order Kinoma Create right now. The product will be shipping this fall, and in the meantime you can get started with Kinoma Studio today.