The foxBMS 1 version 1.5.3 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 platform including 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 provided in foxBMS 1 version 1.5.3.
Software:
- Toolchain:
- raised compiler warning
[-Werror=comment]
to error level - write compiler macros to header file for improved eclipse support
- raised compiler warning
- Bugfixes:
- fixed a bug, that caused the mcu temperature for primary and secondary mcu to be never updated.
- fixed a bug, that caused the coin cell voltage of the primary mcu to be never updated.
- rewrite of struct
DIAG_RETURNTYPE_e
. The enumeration had non-consecutive numbering and potentially dangerous typo in duplicate enum (DIAG_HANDLER_RETURN_ERR_OCCURED = 2
andDIAG_HANDLER_RETURN_ERR_OCCURRED = 4
). - fixed a bug, that diagnosis entry for a voltage violation of the maximimum safety limit wrote to wrong database entry.
- NVRAM module was compiled twice for primary mcu. Once it was compiled by mcu-common module and once again in mcu-primary module). Now compiled only once by mcu-common module as on mcu-secondary.
- Enhancements:
- debug printing is replaced by
printf
for easier and more versatile usage - added additional basic math macros (e.g., LN10, PI etc.) in
foxmath.h
- Fuse state is now monitored. Fuse can be placed in NORMAL and/or CHARGE path. Added flag to
CAN0_MSG_SystemState_2
message - added support to build and link multiple libraries
- added warning flag if MCU die temperature is outside of operating range to
CAN0_MSG_SystemState_2
message - added warning flag to replace coin cell if measured coin cell voltage is low to
CAN0_MSG_SystemState_2
message - added daisy-chain communication error flags to
CAN0_MSG_SystemState_2
message - added error flag if an open voltage sense wire is detected
- debug printing is replaced by
Hardware:
- none
Documentation:
- updated library build documentation
- updated .dbc file
In case you encounter problems, please contact us.
The Fraunhofer IISB foxBMS Team