Chevy Colorado Dashboard with M5Stack and OBD-II

I recently built a small project for my Chevy Colorado that displays real-time vehicle data using an OBD adapter and an M5Stack display. I also integrated external BLE temperature/humidity sensors so I can monitor both the passenger cabin and the truck bed environment.

Hardware Used

  • M5Stack Tab5 and Atom for the main display (ble)
  • Jaalee BLE temperature & humidity sensors
  • Vgate vLinker MC+ OBD-II adapter
  • Wi-Fi/LTE hotspot with VPN connection to Home Assistant

Features

Through the OBD-II adapter, I’m able to display common vehicle metrics such as:

  • Speed
  • Fuel level
  • Engine load
  • Battery Voltage
  • RPM
  • Coolant temperature
  • Driving time
  • Other standard OBD-II parameters

The system is connected to an externally installed LTE dongle (Wi-Fi device) and linked to Home Assistant via VPN.

Since the M5Stack Tab5 project was built before native BLE support was available, I’m currently using an M5Stack Atom to receive all BLE data. I haven’t migrated the system to a Tab5 firmware version that supports built-in BLE yet.

I’m also looking to find out whether anyone knows how to access GM/ Chevrolet-specific PIDs, such as the total odometer reading or current gear position, beyond the standard OBD-II data.

Here is the YAML configuration file used for this setup:

2 Likes

Looks good. Are you having any current draw issues when the Chevy is off, that may flatten the battery?
Do you have a list of the PIDs codes you wish to interrogate and expected responses?

The OBD adapter has a battery-drain protection feature, so I haven’t had any issues with a dead battery so far.
Still, I’m a bit concerned that it might drain the battery.
I’m currently collecting the GM manufacturer-specific 0x22 PID list, but it’s not confirmed yet and I haven’t tested it.
I was wondering if there’s anyone who has actually used it.

# GM Odometer,22,A6F3,7E2,4,(C*65536)+(B*256)+A,0,42949672.9,km
# GM Vehicle Odometer,22,221367,7E2,4,(C*65536)+(B*256)+A,0,42949672.9,km
# GM ODO Distance,22,25AE,7E2,4,(C*65536)+(B*256)+A,0,42949672.9,km
# [GM]Oil Life (Engine)	Oil.Life	0x22119f	(A/255)*100
# [GM]Transmission Fluid Temp (GM Method 1)	Trans.Fl.Tmp	0x221940	A-40
# ~Displayed Fuel Level %	Fuel%_Disp	0x12	A/2.55	0	100	Percent	A982F1			1	0
# ~Displayed Oil Pressure	Oil_Display	0x11	A*4*.14503778
# ~Fuel Level % (tank)	Fuel Level	0x221155	A/255*100