Liquid Monitor

This is my homemade 5.25″ bay LCD display to show temperature and flow rate. The display runs independently of the computer on an Atmel ATMega168 AVR MCU. The color LCD shows a graph of water temperature, the minimum/maximum range and the flow in liters per minute. The AVR works very well because it has a external interrupt counter that can read the flow meter without any additional components. It also has an ADC which with the addition of a single resistor, can read the temperature sensor.
Display Panel

The display is mounted in my liquid cooled rig. Here’s some day and night shots
Liquid Cooled PCLiquid Cooled PCLiquid Cooled PC
A 3D render of the circuit board using POV-Ray.
Board Render
Here are the Eagle board and schematics. Sorry they are a little sloppy because I built the board before I had the sensors and I had to go back and make some adjustments.
Board DrawingSchematics
I used an old 3.5″ to 5.25″ hard drive adapter for the chassis. I attached the bottom plate of a dead hard drive with some angle aluminum to make the floor. I mounted the inverter for my CCFL on the plate.
I etched the main board using toner transfer and muriatic acid. Here are my etching notes and this is a great website for more info on etching. All the parts on the board are recycled except the AVR.
The 130×130 pixel color LCD is for a Nokia cell phone. These displays are very inexpensive and are easily found on eBay. I decided to save time by purchasing the Spark Fun breakout board for this display. It costs more but comes with a built in boost regulator for the backlight and obviates the need for any SMD solders.
Nokia Display
Here is a pic with all 3 boards mounted. I also installed a latching illuminated switch that powers the display and also controls the case lighting. I am powering the board, LCD, inverter and LED lights from a SATA power splitter cable which conveniently provides 3.3, 5 and 12 volts. I found that the SparkFun boost diode gets too hot at 3.3 volts so I am powering it at 5 volts with a 51 ohm resistor. This keeps everything cool. The 2nd pic shows the final board with a new inverter.
Board and InverterBoard and Inverter

The analog temperature sensor is a Koolance SEN-AP006G.   It has male G1/4 BSPP threads.

Koolance Temperature Sensor

The flow meter is a Koolance INS-FM16.  I chose Koolance temperature and flow meters because they are inexpensive and Koolance provides the necessary temperature resistance chart and flow frequency conversions on their website to integrate them.    Here are pics of the illuminated flow meter.
Flow MeterFlow Meter
The AVR code was written using Bascom by MCS Electronics. I mounted the Nokia display at a 90 degree angle. The Bascom code does not support font rotation, but I was able to write a conversion function based on code found at Evert Dekker’s website.


Liquid monitor code v.1.0 – Released 12/22/2009 – For ATMega168
Modified Epson LCD Controller Library (Required, place in Bascom lib folder)
The SparkFun LCD controller is not compatible with the Bascom library, but fortunately I found a modified version here.
Eagle files.