I once had a Jeep Grand Cherokee WJ. It had a 4.7L PowerTech V8 engine with a Selec-Trac transmission. I loved it. One downside of this engine however, was a design flaw in the head that gave it the tendency to drop valve seats. This becomes more likely to occur when the engine’s been over-heated, even slightly. Worried about my old gal, I decided to make a somewhat simple digital coolant gauge that I could tap into the engine coolant pathway to display the temperature and allow me to set a buzzer/alarm to signal me when temperatures go above a set point. The design is based around an ATmega328P MCU. Schematics below:
This is same chip found in the Arduino Nano and some others. I wanted a lower part count, so the display is driven/multiplexed directly from the micro-controller. The common cathode for each digit has it’s current sunk through a few NPN transistors, but the current is low enough that I could have sourced it directly through the ATmega328p’s pins. Firmware for this is pretty basic: Read the ADC pin attached to the temperature probe, display it, and sound the buzzer it’s if above a threshold. I 3D printed a case in PETG to withstand in-car temperatures during summer and also cut some film negative to help mask the visibility of display segments that are not active.
The installation was quite easy, this being an old vehicle. Passing wires through the firewall and getting access to 12VDC by tapping the power port below the A/C was a lot easier than drilling and tapping the thermistor such that I can screw it into the coolant bleed line coming directly from the water pump.
Thanks for stopping by!