IBus Message Syntax
From HackTheIBus
IBus Message Protocol
Each ibus message adhers to the following syntax:
| TX | LL | RX | MM | DB1 | ... | DBn | CS |
|---|
where
- TX = sender address (see list of IBus Devices)
- LL = length (number of following bytes)
- RX = recipient address (see list of IBus Devices)
- MM = ibus message (see list of IBus Messages)
- DB1...DBn = databytes 1 to n (can be empty for some messages)
- CS = XOR checksum (see VB6 and C Checksum Code example)
Minimum message length is 5 bytes (Tx LL Rx MM CS)
DB length is specified as maximum 32 bytes but in some instances can be longer
As LL can be 0xFF that makes the maximum posible message length to be 0xFF + 2 = 0x101 or 257 bytes
Message Examples
Example 1:
80 04 BF 11 00 2A
- TX = 0x80 : IKE, instrument cluster
- LL = 0x04 : 4 bytes following
- RX = 0xBF : GLO, global
- MM = 0x11 : message 0x11, which is "Ignition status"
- DB1 = 0x00 : data byte 1, for "Ignition status", data of 00 means "Off"
- CS = 0x2A : XOR checksum
Example 2:
(to be added)
