1.2.1. LiBat Canbus v1.0 Data Format

Each CANBUS packet consist of a frame ID (referred as opcode in this document), DLC and data fields. All battery management system devices use same CANBUS protocol and extended frame ID type. Frame ID for each CANBUS frame is different and calculated as frame base ID value plus opcode for specific packet.

Note

For more detailed information about canbus extended frame, we highly recommend to read this article.
ARTICLE: Controller Area Network Canbus Tutorial Message Frame Format

Table.1.2.1.1: Extended CANBUS Frame

CAN ID (Extended) Ext. ID RTR DLC Data
Byte 4 (MSB) Byte 3 Byte 2 Byte 1 (LSB) Bit Bit Bit 0~8 Bytes
BASE (MSB) BASE (LSB) 0x00 OPCODE 1 0 DLC DATA

Table.1.2.1.2: Frame Fields Description

Field Size Value Description
CAN ID 1 Byte Base (MSB) Base address of the frame. Configurable via PC Tool. Default value is 0x0A
CAN ID 1 Byte Base (LSB) Base address of the frame. Configurable over PC Tool. Default value is 0xAA
CAN ID 1 Byte 0x00 Fixed 0x00
CAN ID 1 Byte Opcode Opcode of the frame
Ext. ID 1 Bit 1 Identifier Extension Bit (IDE)
RTR 1 Bit 0 CANBUS remote packet identifier
DLC 4 bits 0 - 8 Length of the data field. Data length depends on packet.
DATA N Bytes 0x00 - 0xFF Data in a single frame. Size depends on data lenght.

Table.1.2.1.3: CANBUS Frames Opcode List

Opcode Description Opcode (HEX)
Hello 0x01
Battery Pack Status 0x02
Overall Pack Voltages 0x03
Overall Pack Currents 0x04
Power And Energy 0x05
Overall Pack Temperature 0x06
Individual Cell Voltage 0x07
Broadcast Cell Voltages 0x08
Broadcast Temperatures 0x40
Sleep Enterance 0x70