Just wanted to share a new project I started. It's using the Arduino to control a hydroponics setup I made. There are pictures here:

The Arduino sketch was initially just very simple to control a pump for a few seconds every 10 minutes. I adapted it though to use Firmata so that I could later add temperature and light sensors so those things could be logged to some computer that acts as a 'server' to support the hydroponics setup. I'm imagining it could be web-enabled with a router-like interface to adjust grow parameters for plants: the intervals for pumping, controlling lights, etc.

For this reason I'm working on getting the Arduino to talk to an old Fon2100 Fonera router I have sitting around. I got them both happily chatting over serial using the OpenWRT firmware on the router. It comes with the Lua scripting language and I got that to sort of interface with the serial port too. So I could hopefully port Processing's Firmata host software to Lua and it could then control everything like that. The firmware already has a web-enabled interface so I'm planning to modify it so the hydroponics-related things could have such a GUI for adjusting them.

I modified the StandardFirmata Arduino sketches and put the pumping interval code in there. I wanted to have the Arduino control a critical thing such as water-pumping rather than the host computer. This is just in case the host crashes or something happens to the connection, so a thing like water which is so critical for plants does not get interrupted. I have that code hosted here and it's under an MIT license:

There is still a lot of work to do for all this but just wanted to mention it here in case anyone is curious. I'm working on it in my spare time from full-time job and all that so updates might be slow, but it's an exciting project for me.

I'd also appreciate any suggestions or criticisms on it.

Thanks, nemik

Just a few suggestions for additions, although they might be for a setup a little larger than a window ledge.

Control over reservoir water level, automatic top up and redundant overflow indicators (we don't want a flood)

If using a hydroponic system then control over nutrients, pH and water temperature become important. That will require: - One bottle plus stepper motor controlled pump (found in old inkjet printers) for acid buffer solution - One bottle plus stepper motor controlled pump for base buffer solution - Two bottles plus stepper motor controlled pumps for two part nutrient solution. - one TDS probe to measure nutrient concentration - one pH probe to measure current pH - one aquarium heater for reservoir water temperature control

Control over lights is a good idea. I addition to their timing they need to be kept as close as possible to the plants without burning them as they grow. Some method of automatically raising the lights would be necessary.

If you wanted to go crazy you could add monitoring and control for the humidity (misting), temperature (fans/venting) and CO2 levels as well.

Finally if you upgrade to the newer foneras with usb you could add a web cam although they have some problems with grow lights.


Thanks a lot for those suggestions! A lot of the small stuff like buffering solution pumps I didn't think of.

I still have a very simple setup and plan to add lights first. I'll probably just do CFL's (any maybe 3W LEDs later) so there's little worry about burning plants as there would be with MH or HPS bulbs.

Thanks for the tip about the new Fonera and its USB port, that could indeed be very useful. I'm just for now trying to use what I have.

Thanks again!