Making Custom Gauges for an Old International 4700 Truck
Kyle set out to make his own custom replacement gauges for a commercial truck.
As your projects scale, your equipment has to scale with them. If, for example, you get into machining and decide you want a “real” mill, you’ll then need a truck, trailer, and forklift (or an alternative) capable of moving 2,000-5,000lbs. Kyle at Motiv8 Labs knows that and bought a 1999 International 4700 truck to move the cars and boats he works on, but its gauges are failing. So, he set out to make his own custom replacement gauges.
The gauges are a known issue on these trucks. Kyle mentions that the “circuit board” goes bad, but it isn’t clear if the actual problem is bursting capacitors, fatigued solder joints failing, or something else. What is clear is that many modern off-the-shelf solutions are wildly expensive — possibly costing more than the truck itself is worth. Kyle’s DIY gauges are much more affordable.
If this were a newer passenger vehicle, it would have a CAN bus with OBD-II and important data would be easy to retrieve. But this is an older commercial truck and it uses the J1708 protocol. That predates the adoption of the CAN bus, but Kyle was still able to get a TTL adapter to read J1708 data using an ESP32 development board.
That was just raw data and Kyle couldn’t find any libraries for decoding the J1708 protocol, but he was able to procure documentation that let him program his own parser. With that, he was able to gather all of the relevant data from the truck, like engine RPM and coolant temperature.
With that information available, Kyle just had to display it. For that, he chose an interesting display from a company called 4D Systems. It is a self-contained unit with its own microcontroller and 4D Systems provides software for users to create GUIs with simple drag-and-drop tools. That is user-friendly, but the GUIs it spits out aren’t exactly performant. Kyle found that it was attempting to draw the gauges as a series of images, with one image for every needle position on the gauge. That is, frankly, absurd. But Kyle was able to find a workaround to only redraw the needle image on each gauge, which drastically improved performance.
That display and the ESP32 went into a 3D-printed enclosure installed in the truck, and it works great. The primary gauge screen shows critical information, but there are also additional screens for all of the other relevant data that is available.
Writer for Hackster News. Proud husband and dog dad. Maker and serial hobbyist. Check out my YouTube channel: Serial Hobbyism