GM LS3 CAN message decrypting

GM LS3 CAN message decrypting

Author
Discussion

100SRV

Original Poster:

2,134 posts

242 months

Wednesday 15th April 2015
quotequote all
Hi,
a while since I've asked questions regarding this...I have a running GM LS3 and a crate engine which I am using to work out which CAN messages and bits pertain to specific parameters and how they are scaled and offset.

I've been looking at crank position sensor with a view to working out engine RPM data. The crank position sensor is seeing a revolving object but none of the CAN messages appears to show a change in data when this occurs.

Is it feasible that the ECU, not seeing the accompanying cam position signal, has decided there is a fault and so not broadcast RPM?

100SRV

anonymous-user

54 months

Wednesday 15th April 2015
quotequote all
100SRV said:
Hi,
a while since I've asked questions regarding this...I have a running GM LS3 and a crate engine which I am using to work out which CAN messages and bits pertain to specific parameters and how they are scaled and offset.

I've been looking at crank position sensor with a view to working out engine RPM data. The crank position sensor is seeing a revolving object but none of the CAN messages appears to show a change in data when this occurs.

Is it feasible that the ECU, not seeing the accompanying cam position signal, has decided there is a fault and so not broadcast RPM?

100SRV
Simple answer> NO.


Then general form of OEM CAN protocols is to always broadcast data, but to include sufficient range in the scaling chosen to be able to broadcast a value that is equivalent to "unreliable value".

For example, 8 bit unsigned values that can be between 0 and 255, are generally limited to 250, with 255 (0xFF) being reserved for fault state.

As such, the CAN message containing engine speed WILL be being broadcast all the time, just with a fixed value.

As it's engine speed, i'd be surprised if you can't find the message ID with some Googling! It'll be a fairly low number, as it's relatively important (CAN messages have a built in priority set by there ID, with zero being dominant)

Having said all that however, CAN includes a hardware acknowledgment bit, so you need to have two valid modules on the bus otherwise there is a good chance that all CAN Tx will be suspended. If you are just sniffing the output of the ECU directly, make sure your CAN sniffer is not in "Listen only" mode (ie, it will not ack messages). If you are seeing any messages though, you can be fairly sure you are seeing all of them.

(Some very specific messages are not broadcast but polled by external modules (things like immo seed/key etc) but engine speed will definately be a broadcast message (as it's used by more than one module (transmission, ABS,Dash,Nav etc etc)