Jeep Cherokee 3.7 / 2005 PCI bus (J1850) data packets
Juha Niinikoski 01.06.2007

Added some new unknown messages 15.06.2007
Added some new unknown messages, 0xF0 (VIN) message  20.06.2007
Added instrument panel intensity 0x60 07.07.2007

Decoded packets are presented in first header byte order.  More leading zero bits  in the first byte means higner priority in bus arbitration(seeJ1850 standard). Sample packet is shown and interpretation of its content. 

Message bytes
[0] [1] [2] [3] [4] [5] [6] etc

___________________________________________________________________________________

Message 0x10 Transmission RPM & MAP
10 1C D3 17 D3 3A B9

[0] = message type
[1],[2] = engine RPM, example 1C D3 = 7379,  7379/4 = 1844,75 RPM
[3],[4] = transmission output  RPM, example 17 D3, scaling as above
[5] = MAP, example 0x3A =  58 kPa
[6] = CRC

___________________________________________________________________________________

Message 0x1A Cruise control
1A 14 00 00 67 F1

[0] = message type
[1] = TPS 0…100%, example 0x14 = 20%
[2] = Cruise ste value, example 0x00 = no set value
[3} = status, known bit masks 0x04 = Brake, 0x02 = Cruise control on
[4] = unknown
[5] = CRC

___________________________________________________________________________________

Message 0x37 shifter position
37 05 00 32

[0] = message type
[1] = Shifter position, known bit masks 0x01=P, 0x02=R, 0x03=N, 0x05=D,  0x06=2, 0x07=1
[2] = unknown
[5] = CRC

___________________________________________________________________________________

Message 0x3A Transmission status
3A 21 27

[0] = message type
[1] = Trans status, known bit masks 0x10 = reverse, 0x20 = forfard, 0x40 =partial lock, 0x80 = lock, bits 0..3 = gear number, 0=gear#1 
[2] = CRC

___________________________________________________________________________________

Message 0x3D Chrysler Car radio protocol
See link   http://www.mictronics.de/?page=cdc_proto

___________________________________________________________________________________

Message 0x48 Diagnostic response (OBD-II scan tool) at 10.4Kbps)
48 6B 10 41 0F 5C 10

[0] = message type
[1] = Target address
[2] = Source address, 0x10 = ECM, 0x20 =TCM (in Jeep)
[3] = J1979 Mode mode, 0x41 = Mode 1
[4] = J1979 PID, 0x0F = IAT
[5] = value, 0x5C = 92, scaling subtract offset 92-40 = 52 degrees C 
[6] = CRC
For more details see SAE J1979 (scan tool protocol) spec

___________________________________________________________________________________

Message 0x52 ”some status bits”, AC status
52 00 78

[0] = message type
[1] = known status bits, 0x01 AC compressor on
[2] = CRC

___________________________________________________________________________________

Message 0x5A   key  & other status bits
5A 00 42 88 EF	ignition on
5A 00 42 80		key in but off
5A 00 42 A0		key not in place
5A 00 C2		interior light
5A 00 42 90		start (starter motor on)
5A 00 42 88 EF

[0] = message type
[1] = unknown 
[2] = bit masks, 0x80 interior light on 
[3] = bit masks, 0x08 ignition on,  0x10 start,  0x20 key not in place
[4] = CRC

___________________________________________________________________________________

Message 0x60  light status & instrument panel intensity
60 FF 80 C6

[0] = message type
[1] = intensity low
[2] = intensity high & status bits
[3] = CRC

Intensity decoding          Intensity
[1] = 0x01, [2] D7 = 0   1 & interior light off
[1] = 0x33, [2] D7 = 0   2
[1] = 0x66, [2] D7 = 0   3
[1] = 0x99, [2] D7 = 0   4
[1] = 0xCC, [2] D7 = 0   5
[1] = 0xFF, [2] D7 = 0   6
[1] = 0xFF, [2] D7 = 1   7 & interior light on

Status bits
[2] D2 = ignition on, 1= on

[2] D4= high beam lights, 1= on
[2] D5= driving lights, 1= on
[2] D6= lights on, 1 = on

___________________________________________________________________________________

Message 0x68 Diagnostic request (OBD-II scan tool) at 10.4Kbps)
68 6A F0 01 0F 23

[0] = message type
[1] = Target address
[2] = Source address, 0xF0 = scan tool address (My device)
[3] = J1979 Mode mode, 0x01 = Mode 1
[4] = J1979 PID, 0x0F = IAT
[5] = CRC
For more details see SAE J1979 (scan tool protocol) spec

___________________________________________________________________________________

Message 0x72 Odometer
72 08 90 40 F9 50

[0] = message type
[1] …[4] = odometer units = 1/8000 miles, example 0x089040F9 = 143671545 / 8000 = 17958 miles
 17958 *1.609 = 28895 km
[5] = CRC

___________________________________________________________________________________

Message 0x7E ignition on hour meter ?
7E 46 21 31 5C

BCD coded hr:min:sec
[1] …[3] = 46 hours: 21 min: 31 sec ???

___________________________________________________________________________________

Message 0x80 Current time
80 08 39 D4

[0] = message type
[1] = Hours in BCD format
[2] = Minutes in BCD format, example clock is 08:39
[3] = CRC

___________________________________________________________________________________

Message 0x8D Chrysler Car radio protocol
See link   http://www.mictronics.de/?page=cdc_proto

___________________________________________________________________________________

Message 0xA0 Distance to empty fuel
A0 09 8B FE

[0] = message type
[1] , [2] = distance to empty tank, scaling 0,1 / bit, example 0x098B = 2443 / 10 = 244,4 km or miles ?
[3] = CRC

___________________________________________________________________________________

Message 0xA4 Fuel tank level
A4 CA C8

[0] = message type
[1] = tank level 100/255%, example 0xCA =  202 * 100/255 = 79,2%
[2] = CRC

___________________________________________________________________________________

Message 0xF0 0xXX  VIN
F0 01 31 62
F0 02 4A 38 47 36 F2
F0 06 42 38 4B 33 C5
F0 0A 35 57 36 32 D3
F0 0E 39 35 35 34 7D

ASCII characters.
VIN_STRING[17] = {31 4A 38 47 36 42 38 4B 33 35 57 36 32 39 35 35 34};
First
[0] = message type
[1] = index in VIN string +1
[2] = VIN digit
[6] = CRC
Others
[0] = message type
[1] = index in VIN string +1
[3], [5] = VIN digit
[6] = CRC

___________________________________________________________________________________

Found but not decoded and verified messages

Message 0x1F	???  tx when ign on
1F 80 20 21
   00 20

Message 0x2D   ??? tx when engine running
2D 28 00 6B
2D 58 00
sometimes only 2D !

Message 0x33   ???
33 00 AB
33 02 91	start
33 00 AB	drive

Message 0x35   ???
35 01 08 F4 

[0] = message type
[1] = bit masks, 0x40 gear != neutral  check
[2] = bit masks, 0x80  brake check !
[3] = CRC

Message 0x3D   ???
3D 11 00 00 EE

Message 0x42  ??? Door  lock status???, some kind of timer  ???
42 00 44 F5

Message 0x45   ???
45 44 00 05 11 

Message 0x46 ??? repeated 4 times when unlock doors
46 C4 00 C2 DF 94 2E
46 C4 00 C2 DF 94 2E 
46 C4 00 C2 DF 94 2E 
46 C4 00 C2 DF 94 2E 

Message 0x53   ??? tx without key in
53 00 00 05 

Message 0x54   ???
54 00 00 8F

Message 0x5D   ???
5D 00 01 98 00 54 18

[0] = message type
[1] = ??
[2] , [3]  = coarce RPM ?  0x198 = 408, 408 * 2 = 816 RPM ???
[4] = ??
[5] = ??
[6] = CRC

Message 0x 63 ??? tx when engine running
63 00 00 2D

Message 0x65  ???
65 01 08 8C

[0] = message type
[1] = unknown 
[2] = TPS ?? 0 = 0, max = 0x9D (157)
[3] = CRC

Message 0x6C  ??? tx when ign on
6C 18 00 00 00 03 3F

Message 0x90  ???
90 00 AB 00 00 AD

Message 0x92  ???
92 21 00 13

Message 0x98  ???
98 10 00 00 CD

Message 0xB0  ???
B0 00 00 00 03 68

Message 0xB1  ???
B1 00 FA

Message 0xB5  ???
B5 00 D7

Message 0x B8 ???
B8 58 00 11

Message 0xC0  ???
C0 DC 64 85 51 C7
C0 DD 64 85 51 5A
C0 DD 64 84 4E 60

Message 0xCD  ??? tx when ignition on,  Temp ???
CD 59 69 FD

Message 0xD1  ??? tx when ignition on
D1 01 00 00 00 00 3E

Message 0xD2  ???
D2 66 47 1B 00 F1
D2 66 46 29 00 27

Message 0xDF  ???
DF 22 37

Message 0xE4  ???
E4 14 08 16

Message 0xEA  ??? Battery voltage data/8 = volt ??? or trans temp ???
EA 71 6E
EA 66 F0

Message 0xED  ???
ED 01 25 62 32 08 76