Honda Odyssey CAN Findings

Well, I finally got my carloop giving me useful information. I have a 2014 Honda Odyssey Touring Elite I’m playing with. So far I’ve only attached to the F-CAN which is 500kbps. The more interesting CAN stuff is probably going to be on the B-CAN (33.33kbps) but I haven’t tried patching into it yet.

So without further ado…
CAN ID: 0x164 Byte 0
0b 1xxx xxxx = Accel/Resume Cruise Button
0b x1xx xxxx = Decel/Set Cruise Button
0b xx1x xxxx = Cruise On/Off Switch
0b 11xx xxxx = Cruise Cancel Switch
0b xxxx x1xx = Emergency Brake On/Off

0b xxxx xx00 = Headlights off
0b xxxx xx01 = Parking lights on/off
0b xxxx xx00 = Auto Mode/Lights off (daytime)
0b xxxx xx10 = Auto Mode/Lights on (dark) ALSO for Headlights on
0b xxxx xx11 = High beams

Byte 2 0b xx1x xxxx = Fog lights on/off

CAN ID: 0x324 Byte 4 Looks to be the set speed for cruise control.
CAN ID: 0x255 Bytes 0-3 Look to be wheel speed sensors. Related to vehicle speed
CAN ID: 0x40c Continuously keeps transmitting the vehicle VIN #. Not sure if this is related to the immobilizer or not.

CAN ID: 0x294 Byte 0
0b x1xx xxxx = Right Turn Signal
0b xx1x xxxx = Left Turn Signal
0b xxxx 1xxx = Intermittent Wipers
0b xxx1 xxxx = Lo Wipers
0b xxx1 1xxx = Hi/Mist Wipers

CAN ID: 0x35e Byte 1 0b xxxx 1xxx = LDW on/off (1 = off, 0 = on)
CAN ID: 0x1a4 Byte 3 0b xxx1 xxxx = Traction control on/off

CAN ID: 0x405 Byte 4
0b 1xxx xxxx = Drivers sliding door open
0b x1xx xxxx = Passenger Door Open
0b xx1x xxxx = Driver Door Open
Byte 5
0b xxxx xxx1 = Passenger Sliding Door Open
0b xxxx xx1x = Rear tailgate open

I’m still looking for a few specific things. I know that the TPMS is connected to F-CAN and I’m hoping that the actual pressure of each tire is available on the CAN. The Forward Collision Warning/Lane Departure Warning (FCW/LDW) module is also on the F-CAN and is supremely temperamental to issues on the CAN bus. I had tried overriding a message and the FCW module starts throwing out warnings pretty easily. I also haven’t quite figured out if the gear range is on the CANBUS (or rather what the IDs are for it).

I also noticed quite a bit of “oddness” with my car. Although connecting to F-CAN yielded 11-bit identifiers, I had to modify the VIN Reader app to send/receive 29-bit identifiers in order to query the VIN number. When I have the carloop setup as a socketcan device it is programmed to only accept 11-bit identifiers. This may prove to be a hinderance if I run into any more 29-bit identifiers. Especially since cansniffer can’t work with anything other than 11-bit identifiers.

Another issue that I’m not sure will work yet is the B-CAN baud rate of 33.33kbps. I modified the socketcan example to add in a new value (S9) that corresponds to 33333 for the rate. It seems to get set correctly, but I have not tried to see whether I can actually get information off the bus yet. Has anyone else had an odd baud rate to contend with before?

As always, if anyone can expand on what I’ve found I’d appreciate it. I’ll post more updates as I find them.

@mscreations Cool stuff, you have accomplished some really good work.

What would be really cool is to have a library (spreadsheet/database/etc) of all the messages & IDs, which could be used to make coding faster.

Also, I suggest trying some Honda enthusiast forums to post what you have found, and also to see what other people have found for your model. A group of Odyssey owners working together could probably get some huge breakthroughs…

Nice work!

I’ve done a ton of work on our 2012 Honda Odyssey which I imagine is pretty similar. Check out my BCAN work here: Honda B-CAN and Carloop - Carloop Community

BCAN on our vans runs at 125 kbps and it exclusively uses 29-bit identifiers. You are correct, there are a bunch more interesting systems on the BCAN network. You will not be able to tap into BCAN at the OBD2 port, unless the '14 is different than the '12. I had to tap in at one of the heated seat modules.

Also regarding TPMS, check out this thread: Honda tire pressure monitor light project - Project Share - Carloop Community

On the 2012, the tire pressure is not shared on the bus, it only shares if it is good or not. TPMS is at 0x333