foxBMS CAN Signal Summary

Source: foxbms-2/tools/dbc/foxbms.dbc (fetched from GitHub) Tool: PCAN Symbol Editor v6.5.2


Key TX Messages (foxBMS → CAN bus)

CAN ID Hex Name Period Key Signals
544 0x220 f_BmsState 100ms BmsState (4-bit), InsulationResistance, error/warning flags (30+ signals)
545 0x221 f_BmsStateDetails 100ms Substates, connected strings
561 0x231 f_CellVoltages 100ms Min/max/avg cell voltage, string voltage
562 0x232 f_CellTemperatures 100ms Min/max/avg cell temperature
563 0x233 f_PackValues_P0 100ms Pack voltage, pack current
564 0x234 f_PackValues_P1 100ms Pack power
565 0x235 f_SOC 100ms SOC (min, max, avg)
566 0x236 f_SOE 100ms State of energy
576 0x240-0x245 f_CellVoltage_* 100ms Individual cell voltages (multiplexed)
592 0x250 f_CellVoltages_Mux 100ms Cell voltages with mux (50 groups × 4 voltages)
608 0x260 f_CellTemperatures_Mux 100ms Cell temps with mux (30 groups × 6 temps)
769 0x301 f_SlaveInfo 1000ms Slave status

Key RX Messages (CAN bus → foxBMS)

CAN ID Hex Name Key Signals
528 0x210 f_BmsStateRequest Mode request (STANDBY/NORMAL), balancing control
624 0x270 AFE_CellVoltages 50 mux groups × 4 voltages (13-bit, 0-8191mV) + 4 invalid flags
640 0x280 AFE_CellTemperatures 30 mux groups × 6 temps (8-bit signed, -128 to 127°C) + 6 invalid flags
1313 0x521 IVT Current Current measurement (via Isabellenhuette IVT)
1314 0x522 IVT Voltage 1 Pack voltage measurement
1315 0x523 IVT Voltage 2 Pack voltage redundant
1316 0x524 IVT Voltage 3 HV bus voltage (used by redundancy module, index [s][2])
1319 0x527 IVT Temperature Pack temperature

Signal Encoding

f_BmsState (0x220) Signal Detail

Signal Bit Size Description
BmsState 3 4 bits 0=UNINIT, 3=IDLE, 5=STANDBY, 6=PRECHARGE, 7=NORMAL, 9=ERROR
ConnectedStrings 7 4 bits Number of connected strings (upper nibble of byte 0)
InsulationResistance 63 8 bits Factor=200, range 0-51000 kOhm
ErrorFlags various 1 bit each Overcurrent, overvoltage, overtemp, precharge fail, etc.

Aerosol Sensor (0x3C4)

CAN ID Hex Name Signals
964 0x3C4 BAS_AerosolSensor PM concentration, threshold, status, faults, counter, CRC

POSIX Port Usage

Plant model encodes RX messages (0x210, 0x270, 0x280, 0x521-0x527) using these exact signal definitions. The foxbms_signals.dbc in src/ should match these definitions. SIL probe messages (0x7E0-0x7FF) are NOT in the upstream DBC — they need a separate DBC file (audit finding A2-03).