The new foxBMS software release is available on GitHub.

We publish major software releases for our open source BMS platform every 3 to 6 months and interim bug fixes when solved in the News section. By subscribing to the foxBMS Newsletter, you will be informed when the new releases are available. Further, the foxBMS Roadmap and the Documentation are also updated regularly.

Warning: The foxBMS hardware and the foxBMS software are under permanent development. The free and open research and development platform foxBMS as presented in the documentation hereafter is not provided to be used without any adaptions (e.g., to fulfill mandatory regulations) in consumer products, electric vehicles, production environments or any similar usages: it is only intended to be used by skilled professionals trained in designing battery system prototypes.

Based on all the feedback received during the last 2 years from foxBMS software partners and users, the embedded software and the computer software have been restructured to reduce the MCU hardware dependency and enable even more flexibility.

Hereafter is a summary of the changes.


  • Toolchain:
    • Updated to waf-2.0.14 (from waf-2.0.13)
  • Bugfixes:
    • fixed UART frame error due to floating RX pin by enabling pull-up in the MCU
    • fixed reading wrong entry from database when checking battery system current against SOF limits (bms.c)
    • the flag SPI transmit_ongoing was reset incorrectly after SPI dummy byte was transmitted. This lead to invalid measured cell voltages if the daisy-chain was too long (i.e., more than 10 BMS-Slaves in the daisy-chain)
    • enabled simultaneous measurement of lithium-coin-cell V_bat and MCU temperature in ADC module
    • fixed error calculating MCU temperature in ADC module
    • balancing threshold for voltage-based balancing was set in the wrong place: it is now set in the function BAL_Activate_Balancing_Voltage (bal.c)
  • Enhancements:
    • database entries are initialized with 0 to prevent undefined data if entries are read before valid values are written into the database (database.c)


  • BMS-Slave 18-cell v1.1.5
    • EMI layout improvements (targeting UN ECE R10 Revision 5)
    • adapted component variations to simplify the management of component variations in Altium Designer
    • replaced DC/DC converter power inductor to comply with AEC-Q
    • added circuit for switching off DC/DC converters in LTC sleep mode, thus reducing the current consumption to less than 20µA
    • added pull-ups on GPIOs 6-9 of the LTCs (open-drain outputs) to enable them to be used as digital I/O


  • BMS-Interface: fixed pin 11 in the pinout of the connectors for version 1.2.0 and above
  • Updated BMS-Slave 18-cell hardware documentation for version 1.1.5
  • Updated year in copyright
  • Fixed some wrong @file attributes in doxygen comments

In case you encounter problems, please contact us.

The Fraunhofer IISB foxBMS Team