Previous: Fully working prototyle
With a controller connected to my Vehicles CAN-bus, I don’t want to limit the use of it to song-title and music controls. So I started to look for some more interesting values to get from the bus.
Sadly the “MS-CAN” (entertainment bus), which I am connected to cause of the info display, doesn’t allow communication to the ECU (also, this factprevents me from messing with the engine or other critical components).
The components connected to the bus do have some interresting informations and GM built a diagnostic protocol that lets you ask the controller for the actual values. This leads to the folling data:
248 # 06 AA 01 01 07 10 11 - Ask the A/C controller (0x0248) for measuringblocks 01, 07, 10 and 11 Answer: 548 # 01 03 A5 00 00 01 9C 00 - 01: 0x03A5: Solar sensor: 4.665V - 0x019C: Indoor temp sensor: 2.06V 548 # 07 00 90 04 3D FE 70 00 - 07: 0x90: Voltage: 14.4V 548 # 10 00 91 02 B2 03 1E 96 - 10: 0x0091: Out-temp: 14.5°C - 0x02B2: Engine temp: 69.0°C 548 # 11 08 ED 00 30 01 FE 23 - 11: 0x08ED: RPM: 2285 - 0x30: Speed: 48 km/h - 0x23: LED: 35%
The described values are only the ones that I already figured out.
My software now listens for this data on the bus and writes the values on the display.
The displaymode can be switched with the number keys on the headunit (which are also unused in aux mode)