Skip to content

PegorK/uCHT

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CoverRender

uCHT is a very small cylinder head temperature digital gauge based on the ATMega32u4 microcontroller and the MAX31855 K-Type thermocouple IC. It was designed mainly for a 1978 VW Bus to replace the much larger Dakota Digital gauge I had hiding in the glove compartment.

The problem

Knowing your engine head temperature on an aircooled vehicle is essential. Especially if you are driving to the mountains. When I first purchased my bus I scoured the forums and came to the conclusion that the Dakota Digital CHT gauge was the highly recommended option for these buses, so I picked one up. I was never a big fan of a bunch of gauges around my dash so I hooked the thing up in my glove compartment and popped it open when I was doing uphill/highway driving to keep an eye on things. This all worked great, but I thought it would look much sleeker and more functional to have a tiny display blend in with the rest of my dash and so uCHT was born.

Finished product
uCHT in action


Finished product
Original setup - Dakota Digital gauge hiding in glove compartment

Notes

  • uCHT is based on the Atmel ATMega32u4 Microcontroller running a slightly customized Arduino bootloader.
  • I used an Arduino bootloader and added a micro USB to make it easier for customizations.
  • Works with any K-Type thermocouple. The one on my bus can be found here and is mounted underneath the sparkplug of the third cylinder.
  • The display is a 0.49" OLED display and uses a custom seven segment font created using Fony to give it a more classic digital look. The overall code is fairly simple and utilizes the U8g2 library for the display and Adafruit's MAX31855 library for the thermocouple chip.
  • The display can be configured to either fahrenheit or celsius by setting the TEMPERATURE_SCALE to either F or C. There is also a high temperature warning feature that can be set by the TEMPERATURE_WARN value. When this limit is reached the display will start blinking to warn the user they are running too hot.
Warning gif
High temperature warning!


  • The gauge should be connected to accessory line so it is only powered on when car is on.
Boot gif
Gotta have a boot screen.

  • One of the reasons why the Dakota Digital gauge is so popular is due to it's CJC circuitry (Cold Junction Compensation), the MAX31855 also has this feature built in and is why it was selected to be used. However one hurdle I experienced when using this chip was it's capability to detect ground shorts. This caused problems since the thermocouple was mounted on the engine which is also grounded. To get around this one of the voltage regulators used (HALO DC13-V0503SLF) was a DC to DC isolated converter which creates a separate ground circuit that was then used by the microcontroller and any component connected to it. More details and the schematic can be found in the hardware folder.
  • To handle blips and glitches in the power there's some input voltage filtering and also an external watchdog timer that is disabled when being powered by the micro USB connector to avoid issues during programming. More details on programming and the code can be found in the firmware folder
  • The entire enclosure was 3D printed in ASA and designed to fit into an existing spot that originally housed a brake warning light. An additional hole was created to keep this warning light but at a higher position as seen in the picture above.

Render 1
Render of Assembly

Improvements

Something I overlooked while developing this was the capability to dim the display when headlights were turned on. This wouldn't be too much work to add on, the only thing to keep in mind is the isolated ground circuit so the best bet would be to use something like an optocoupler, but I forgot and don't feel like spinning up another board. When more issues pop up I'll get V2 going with this included.

About

Digital cylinder head temperature gauge for K-Type thermocouple

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published