jmccorm
Well-Known Member
- Thread starter
- #16
More discoveries:
The 13-way star connectors on the CAN-C and CAN-IHS bus are self-terminating. When connecting a microcontroller, you shouldn't need to add a terminating resistor of your own.
When a vehicle is "asleep", sending a message, any message, on the CAN-C bus will partially wake the vehicle up. During wake-up and sleep operations, you'll often see messages in the 400-402 range. Those appear to be status messages for the CAN bus itself.
The CAN-C bus does not appear to acknowledge or reply to OBD-2 parameter queries. (There's actually yet another diagnostic bus connection for that.)
The majority of active CAN IDs seem to transmit on a very regular basis. In fact, you can usually time to the millisecond when their next broadcast will be. With only a few exceptions, how often they update is tied to their CAN ID number. Here is a rough chart I made of how often they refresh:
CAN BUS IDS TIME BETWEEN UPDATES
ID 000 - 06F 0.01 sec (1/100th seconds)
ID 070 - 0BF 0.02 sec (1/50th seconds)
ID 0D0 - 0DF 0.05 sec (1/20th seconds)
ID 100 - 1ff 0.10 sec (1/10th seconds)
ID 200 - FFF 1.00 sec (with exceptions) and ad-hoc
(NOTE: There are exceptions, but this table is 95%+ accurate.)
Based on this, we might assume that the most critical engine/system data is going to have lower CAN ID numbers, and the slower human or non-critical electromechanical systems will have the higher CAN ID numbers.
Still, it's difficult to find something as simple as RPM because when you give it some gas, all sorts of numbers start moving up in unison. It'll take time (or a cheat sheet) to figure out which field is which! It is highly recommended that you do NOT write to numbers that you do not understand. I suspect some of the lower numbers will revolve around airbag operations!
UPDATE (DECEMBER 2021): On page four I finally discovered and shared how to send and receive OBD-II messages over the CAN-C bus.
The 13-way star connectors on the CAN-C and CAN-IHS bus are self-terminating. When connecting a microcontroller, you shouldn't need to add a terminating resistor of your own.
When a vehicle is "asleep", sending a message, any message, on the CAN-C bus will partially wake the vehicle up. During wake-up and sleep operations, you'll often see messages in the 400-402 range. Those appear to be status messages for the CAN bus itself.
The CAN-C bus does not appear to acknowledge or reply to OBD-2 parameter queries. (There's actually yet another diagnostic bus connection for that.)
The majority of active CAN IDs seem to transmit on a very regular basis. In fact, you can usually time to the millisecond when their next broadcast will be. With only a few exceptions, how often they update is tied to their CAN ID number. Here is a rough chart I made of how often they refresh:
CAN BUS IDS TIME BETWEEN UPDATES
ID 000 - 06F 0.01 sec (1/100th seconds)
ID 070 - 0BF 0.02 sec (1/50th seconds)
ID 0D0 - 0DF 0.05 sec (1/20th seconds)
ID 100 - 1ff 0.10 sec (1/10th seconds)
ID 200 - FFF 1.00 sec (with exceptions) and ad-hoc
(NOTE: There are exceptions, but this table is 95%+ accurate.)
Based on this, we might assume that the most critical engine/system data is going to have lower CAN ID numbers, and the slower human or non-critical electromechanical systems will have the higher CAN ID numbers.
Still, it's difficult to find something as simple as RPM because when you give it some gas, all sorts of numbers start moving up in unison. It'll take time (or a cheat sheet) to figure out which field is which! It is highly recommended that you do NOT write to numbers that you do not understand. I suspect some of the lower numbers will revolve around airbag operations!
UPDATE (DECEMBER 2021): On page four I finally discovered and shared how to send and receive OBD-II messages over the CAN-C bus.
Sponsored
Last edited: