Pretty much the only thing I thought of once I started with the arduino was automating my aquarium. There's a thread here with somebody did one up too, but it wasn't enough for me.
May I present the Arduarium... the open aquarium controller.
Features:
4 BNC inputs for PH,ORP,Calcium, Nitrates (MCP3208, MCP3304 in the future)
4 12bit inputs pinned out (salinity mostly, but I haven't gotten a method for it yet)
3 PWM pins for lighting control
2 digital pins (fans for LEDs, but are multi-purpose)
Support for Ethernet Shield (just plug it in on top)
Support for ladyada's Xbee shield (plugs right in. The 10 pin one which is pretty cheap)
DS1307 RTC
32Kb EEPROM
8 digital outs for SSR control
6 DS18B20 temp sensor inputs
8 I2C ports (1 used by lcd/keypad)
4 Arduino analogue ins (probably for float sensors)
Alarm (can be added easily)
I've just finished breadboarding everything together and except for 1 mistake in my schematic (not reading the datasheet) everything plays nicely.
All of the I2C devices that have jumpers for addresses have them pinned out just in case.
One of the cool things with the xbee module is I added in the circuit from ladyada so that it's possible to wirelessly program the arduino.
I have a couple more tests to run and than it's getting sent to fab.
I'm working on the code right now and it's going to be pretty cool. It will have config options to enable disable stuff, find which ports things are on etc. etc. Basically a very expensive controller that you can modify any way you want.
Right now it's looking like parts are about $45 and boards are ~$40.
If you guys think I missed anything or would like to see something added please let me know because I want to get this out to fab so I can have a new toy to play with.
For now the project page is going to live here:
http://www.diy-labs.com/projects/arduarium-controller
Questions and comments are welcome. I'll be releasing eagle files shortly (after I do some more tests).
Another note: All of the smoothing is going to be done in software. There's room enough for the code. I've seen the phduino which uses an additional stage for filtering, but adding that in on 4 inputs blows the board up huge making it a lot more expensive. All that happens for inputs is a 10X gain which gets sent to the ADC. We don't worry about what it should output, but rather take 100 measurements each of 2 solutions and store those values. Take the current measurement 10 times, average it, and than use our stored values to calculate the current value. It saves quite a bit of money for board parts and it will be pretty accurate.