Wednesday, February 24, 2010

Revised Arb ID info

Header information - Arbitration IDs

? - Not confirmed

Both 29 and 11 bit IDs observed on the bus.

Byte 1 - ?

Byte 2 - ?

Byte 3 - To address

Byte 4 - From Address

0x00 - Broadcast?
0x40 - ? ECU or BCM
0x0D - Wheel Buttons
0x60 - Wheel Buttons
0x80 - Radio
0x97 - Onstar
0xA0 - ? Never sends data. Could be the bridge to HS CAN
0xB0 - ? Tire Pressure Subsystem
0xC0 - DIC / Instrument Cluster

Detailed info on specific Arbitration IDs

1040C040 - ECM to DIC
8 bytes
Byte 1,2,3,4 - ?
Byte 5,6 - ? Throttle position
Byte 7,8 - Distance traveled. Wraps around every once in a while.

1000A0B0 - TPMS to gateway?
8 bytes - Slow repeat time
10 0 A0 B0
24 24 3C 3C 3B 3C 0 FF

Byte 1,2 - ?
Byte 3 - Tire 1 (Units TBD)
Byte 4 - Tire 2 (Units TBD)
Byte 5 - Tire 3 (Units TBD)
Byte 6 - Tire 4 (Units TBD)
Byte 7,8 - ?



0C050040 - Speed and RPM from ECM
8 bytes
Byte 1 - ?
Byte 2,3 - Speed / 10
Byte 4,5 - RPM / 4
Byte 6,7,8 - ?

10056040 - ECM to Buttons - Power Locks
4 Bytes
00 00 FF 01 - Unlock
00 01 7F 01 - Lock

102E8080 - Radio Status Update (Updated with right ARBID)
2 Bytes
Sent twice after a mode change

04 02 - AM
06 02 - FM 1 (NO ASM)
08 02 - FM 2
14 02 - CD
1C 02 - Front Aux
1E 02 - Rear Aux
20 02 - ASM 1
22 02 - ASM 2
20 01 - Odometer Mode. Turns off all other DIC text

100D0060 - Wheel Buttons to broadcast
8 bytes

xx - For up motion is count, for down it is 0x20-count
Depending on mode 0x60 will update 0x80 (Radio, like when volume changes). These nodes communicate a lot.

Select up
10 0D 00 60 00 00 xx 00 - Event Start
10 0D 00 60 00 00 00 00 - Event Release

Enter
10 0D 00 60 01 00 00 00 - Event Start
10 0D 00 60 00 00 00 00 - Event Release

Volume up
10 0D 00 60 00 00 00 xx - Event Start
10 0D 00 60 00 00 00 00 - Event Release

Volulme Enter
10 0D 00 60 20 00 00 00 - Event Start
10 0D 00 60 00 00 00 00

Source Button
10 0D 00 60 02 00 00 00 - Event Start
10 0D 00 60 00 00 00 00 - Event Release

Road Button
10 0D 00 60 03 00 00 00 - Event Start
10 0D 00 60 00 00 00 00 - Event Release

Phone Talk
10 0D 00 60 10 00 00 00 - Event Start
10 0D 00 60 00 00 00 00 - Event Release

Hang up
10 0D 00 60 40 00 00 00 - Event Start
10 0D 00 60 00 00 00 00 - Event Release

1030C0xx - DIC Text
8 byte multipart
(Seen sent from 0x80, 0x97 from bluestar, 0x81 was tested manually)

First byte of first message is 0x45
Next byte is count of multi part. ie: 0x02. 0x03. 0x01 works
Next byte is arrow indication. Sometimes. Still figuring this out.
01 - Both up and down arrow
81 - Up only arrow
41 - Down only arrow

Remaining data bytes are ASCII.

Sequence is terminated by 0x04. Then null filled with 0x00 to fill 8 byte packet.

Second and subsequent messages start with 0x44. Then Sequence number. Then data.

(Two examples from 0x80 to 0xC0)
10 30 C0 80 8 45 02 52 65 61 72 20 41
10 30 C0 80 8 44 02 75 78 04 00 00 00

10 30 C0 80 8 45 03 01 31 30 35 2E 33
10 30 C0 80 8 44 02 20 46 4D 20 41 53
10 30 C0 80 8 44 03 4D 04 00 00 00 00

100AA097 - Onstar to Gateway
http://sites.google.com/site/radioetcetera/home/onstar-gps

Need new definitions..

Found a few typos in the lists of Arb IDs.. Will post some updates tonight.

Tuesday, February 23, 2010

More progress

This morning I was able to test the CAN filtering and messaging. I forgot the ARBID for mode change, and will code up the interface management section tonight.

Should be able to have iPod and CAN code merged tomorrow. Hopefully a demo of this coming soon!

Friday, February 12, 2010

Update on what I have been doing.

Nothing GMLAN like.. But I have been working on my iPod interface. I have it working on a breadboard. I need to integrate the MCP2515 code to it and plug it in and see what happens.

Stay tuned.