1. System Setup

The following sections describe the actual system setup of a battery system using foxBMS 2.

Warning

This is a general description of the system setup. The actual system setup is specific to each battery system and will vary. It is the responsibility of the user to adapt the system setup to their specific battery system and use case.

The system assumes a single-string battery system.

1.1. BMS-Slaves Setup

The BMS-Interface is only used for the connection between the BMS-Master and the lowest BMS-Slave. The BMS-Slaves are connected in daisy chain from the lowest battery module in the system to the highest battery module in the system.

Note

All wiring between the BMS-Interface and the BMS-Slaves, as well as between the BMS-Slaves, SHALL be done using twisted pair cables to ensure signal integrity. The cables SHALL be kept as short as possible to minimize signal degradation.

The following describes the connection of the BMS-Slaves for a single string battery system.

1.1.1. ADI or LTC-based Daisy Chain

  • Connect isoSPI_1 of the BMS-Interface with X500 of the first BMS-Slave.

  • Connect X501 of the first BMS-Slave with X500 of the second BMS-Slave.

  • Connect X501 of the second BMS-Slave with X500 of the third BMS-Slave.

  • and so on …

1.1.2. NXP-based Daisy Chain

  • Connect TPL_1 of the BMS-Interface with TPL High of the first BMS-Slave.

  • Connect TPL Low of the first BMS-Slave with TPL High of the second BMS-Slave.

  • Connect TPL Low of the second BMS-Slave with TPL High of the third BMS-Slave.

  • and so on …

1.2. System Value Monitoring Setup

Setting up current and voltage sensing at system level is more complex than the BMS-Slaves setup, as it heavily depends on the system topology and the configuration of the battery system.

When working with the default BMS state machine implemented in src/applications/bms/, the following values need to be measured at system level.

See also System Voltage And Current Monitoring for more details.

1.2.1. Current

The current sensor SHALL be placed in the negative main current path of the battery system, between the lowest battery module and

  • the Manual Service Disconnect (if existing) or

  • before the main negative contactor of the battery system.

The current direction SHALL then be configured accordingly in the software configuration of the system.

1.2.2. Voltage

The default BMS state machine implementation requires PackVoltage and the SystemVoltage to be measured. The implementation is then depending on the used current sensor.

See also Mapping Of Documented System Terms To Code Names for more details.

1.2.2.1. Isabellenhuette IVT-S

This setup requires the CAN messages of the IVT-S to be configured as implemented in src/app/driver/config/can_cfg_rx-message-definitions.h.

  • IVT-S V1 SHALL represent the pack voltage and be connected between the highest battery module and fuse of the battery system. This voltage is stored in the data block DATA_BLOCK_SYSTEM_VOLTAGE_1_s and used to derive VP (PackVoltage).

  • IVT-S V2 is unused.

  • IVT-S V3 SHALL represent the system voltage and be connected after main positive contactor. This voltage is stored in the data block DATA_BLOCK_SYSTEM_VOLTAGE_3_s and used to derive VSV (SystemVoltage).