I build car gauges as a sort of on again and off again hobby. See https://www.instructables.com/id/Remote-Car-Monit… and https://www.instructables.com/id/Remote-Car-Monit… for two more recent examples. I especially like ones that blend in with the original parts of the car. So, why is this one different and what inspired me to build it. The answer is two things:
1) ESP32 - I wanted to try out the new kid on the block chip, especially since the arduino-based toolchain for it is fairly mature. One of the interesting things that the ESP32 enables is IOT with its built in wifi and bluetooth capabilities. The community has written multiple libraries to make this somewhat straightforward (webservers, APs, wifi clients, mDNS, etc, etc.).
2) Cheap OLED screens - Back in 2007 I made a gauge using a TFT that sat in the place of the clock on a GD (2004-2007) WRX. TFT come in various flavors. Some work better at night, some work better in the day, etc. But none of them work in all conditions. I didnt realize the error of my ways until one of the gauges I used was useless during a forum members sunny track day. Enter OLED, which are awesome for automotive applications. They are not too bright at night and (more importantly) are visible in most sunlight conditions.
This is a two for one instructable as I wrote everything for two common car gauges, oil pressure and turbo pressure. Both are essentially the same thing: a small form factor gauge with an animate analog-look OLED display with discrete numbers and maximums displayed. Both also function as wifi APs and webservers. When one connects to them via a computer or cell phone a moving EKG stype chart is viewable (this is the somewhat innovative part).
Supplies:HELTEC ESP32 module - get the wifi variant https://www.amazon.com/MakerFocus-Development-0-9…
Oil Pressure specific parts:
Oil Pressure sensor - I used an automter 5222Oil pressure sensor hookup parts - this varies by car and location of install. Please consult service manuals, forums, mechnics, etc. and do this correctly so there are no oil leaks. Boost gauge specific parts:
Air pressure sensor (only if you wish to make a boost gauge) - Air hoseT fittingsLibraries I used that were indispensable:
Smoothiecharts - http://smoothiecharts.org/- Excellent and lightweight live updating charts. Very customizable and does not rely on referencing a js library somewhere else on the internet. This allows for a local-IOT type setup and the whole library fit in single string for the web server statement in code!
ESPAsyncWebServer -https://github.com/me-no-dev/ESPAsyncWebServer- does what it says on the box and does it well
ThingPulse OLED graphics library (sometimes call the squix library) - https://github.com/ThingPulse/esp8266-oled-ssd130… - very efficient and straightforward graphics for the ESP chips. Allowed me to do some lazy programming and still get convincing animations.
soldering iron - used to make long cable runs for sensors, install headers on board, shrink shrink wrap, etc.
screwdriver/sockets/other car tools - necessary to install sensors on car
double sided tape - to install gauges in housings and install housing in car (hot glue and other things might work, but I prefer the 3M double sided exterior trim tape. It holds well and can be pulled off without damaging things.)
scissors - for tape and cutting tubing and zip ties
zip ties - for holding things together, bundling wires under dash and in engine compartment, holding sensors in place, etc.”