CarettaBMS, Open Source BMS

Hrastovc

1 µW
Joined
Mar 2, 2021
Messages
3
I am an electrical engineering student, and for my bachelor's thesis I designed an open source low-cost scalable BMS. My main focus was to design a scalable BMS that is as cheap as possible and without sacrificing the performance of the system. It was not easy to achieve a low price, I had to use a bit more creative and innovative solutions. I believe my BMS is the best price to performance open-source system out there. Cell modules can be built for about $2.5 each in a batch of 10 with components from Mouser (even cheaper with LCSC parts).

More about the system is available here: https://github.com/Hrastovc/CarettaBMS

And here are some BMS specs:
- Operating voltage range: from 1.8V to 5.0V
- Operating temperature range: from 0°C to 80°C
- Voltage measurement accuracy: ±10mV
- Voltage measurement resolution: at least 3mV
- Temperature measurement accuracy: ±5°C
- PCB size: 65mm × 18mm × 5mm (same as 18650 cell)
- Pasive cell balancing current: up to 1A
- load characteristics: R = 3.6Ω, Pmax = 4W
- Maximum of series connected cells: up to 256
- Temperature sensors: at least 3 sensors per module (1 internal, 2 external) or up to 32 I2C sensors
- Communication interface (cell modules with master): isolated UART 8E2 (documented protocol)
- Bootloader for future infield firmware upgrades

architecture.png


This project is still work in progress. Right now I am working on the project documentation. I am looking for some feedback and any feature requests.
 
Hrastovc said:
I am looking for some feedback and any feature requests.
Sounds really good.

What is the sleep/monitor state current draw for each module ?

Are those isolators and master module powered from the end cell/group(s) only, or from full pack voltage (all cells drained equally) ? Powering the system from only 1 or 2 cells/groups would not be ideal for maintaining balance (or longevity if the system is not used/charged for extended periods).

How about some digital outputs for switching a main contactor/MOSFET switch and alarms for over temp etc.

And bluetooth comms to smartphone app for monitoring and programming would be great.
 
serious_sam said:
What is the sleep/monitor state current draw for each module ?
Cell modules draw 2.2mA when active, 500uA in standby and 300uA in sleep (not great not terrible).

serious_sam said:
Are those isolators and master module powered from the end cell/group(s) only, or from full pack voltage (all cells drained equally) ? Powering the system from only 1 or 2 cells/groups would not be ideal for maintaining balance (or longevity if the system is not used/charged for extended periods).
One side of the isolator is powered from the cell (5uA) and the other side from the master module (5uA). Master module requires external power supply during charging or discharging the battery pack. In the mean time when the battery pack is not charging or discharging master module is powered from its internal CR2032 battery (should last for 2 years). Master module design could be changed.

serious_sam said:
How about some digital outputs for switching a main contactor/MOSFET switch and alarms for over temp etc.

And bluetooth comms to smartphone app for monitoring and programming would be great.
Digital outputs, WiFi, Bluetooth are available on the master module, but only when powered from the external source.
 
Master module can be powered off the full pack voltage with an isolated or non-isolated SMPS. I would advise to turn off the PS when the battery pack is not in use to reduce the power draw form the pack. It is very hard to achieve a good efficiency in standby at small power levels and most of the power would be wasted.
 
Back
Top