This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

BQ76PL455A-Q1: Building a BMS for Machine Learning applications

Part Number: BQ76PL455A-Q1
Other Parts Discussed in Thread: BQ40Z80EVM-020, BQ76PL455A


I manage a modeling and data science team for a company that develops next-gen Li-ion batteries for EV applications. We are looking to build a BMS in order to test and develop ML-based models and algorithms and need some help getting started. We want something that is relatively easy to program and that allows for easy data collection. We'd like the ability to run the BMS on single cells or "packs" of multiple cells (the pack voltage/# cells isn't particularly critical for us, something common like 12 or 48 V would be fine). In particular, we want something that will allow us to:

  1. Use our own models to determine cell SOC and SOH and feed these back into BMS logic
  2. Use our own algorithms to perform cell balancing
  3. Use our own algorithms to apply changes to cell operating parameters. For instance, when SOH < X%, change minimum cell voltage to Y.

We don't have much electrical engineering or BMS experience within the team so we need help putting together a design and understanding how to program the BMS. We develop our models in python and I'm guessing we will have to translate these into a different programming language, but as long as we can use something like C/C++/java/etc. this shouldn't be too much of a problem. We have several options for cell charging and discharging, including Arbin cyclers and Biologic vmp3 instruments; I think we also need to understand the requirements on this part of the design because we don't have a clear idea of what would be best. 

Any help you can give us or resources you can direct us to would be much appreciated! I'd be more than happy to set up a call as well, if that's a possibility. Thank you very much and looking forward to hearing from you.


  • Hello Sam,

    I am not sure that I can help you with what you are looking for. TI manufactures the BMS chips and we provide simple testing boards (EVMs), but we don't have any system solutions - which is what sounds like you are looking for. Our customers develop their own PCBs to integrate our chips into their BMS systems. But if you don't have EEs to design a PCB, I would recommend finding an off-the-shelf BMS system to use as your starting point. Our devices communicate over SPI or UART to a microcontroller - this is typically done via binary or hex commands. Yes it is possible to create/use drivers to write the SOC/SOH models in C/JAVA/etc.

  • Ok, thanks. I may be describing it wrong so I just want to re-phrase and double check. To start out, we want a board where we would be able re-program the logic/code that determines the SOC and SOH, and leave the rest of the operation the same. We recently were recommended to try the BQ40Z80EVM-020. I think I understand that the windows-based software is only used for programming the operating parameters such as voltage limits, cell chemistry, etc. So the issue here would be that we can't actually change the logic that determines the SOC/SOH?

  • Sam,

    Our boards are even more simplistic than that. The BQ76PL455A EVM doesn't have a microcontroller and therefore doesn't do SOC/SOH calculations. You can read the registers to determine the voltage of certain cells, temperature, and initiate cell balancing. So there really isn't a "rest of the operation", you would need to program everything from scratch. Yes, you can attach a MCU such as the TMS570 and you can attach battery cells to the EVM, but you would need to build that system yourself. I hope this help to illustrate my concern with our EVM vs what you want to do.