Yes I could enable the BMS to support a “regular” power supply, It will need some sort of CC/CV supply or regulation. I did a project a while ago for a 12S system but never came around to finish the small and compact version of it:
Huge progress today. Was able to make most of the library components and started to compose the schematic. The schematic so far can be found on Github ( see opening post ). Its far from done but we are getting somewhere!
Nice progress man. Well i think the micro controller in VESC still have plenty of room to process data. However I hope it doesnt make it run hotter or hitting over heating issue.
Next update and bringing an end to the sprint for this week. I forgot to add a SWD/Debug interface and switched the current / voltage monitoring to a dedicated chip ( ISL28022 ) for the job making the focus of today remapping all IO / peripherals to the uC and implementing it in the schematic:
Slick! Do you have an estimated dimensions? Please post more common data for normal people like me. Charging voltage? Charging current? Discharge current? Would it be customizable like VESC? I mean more general information it will trigger interest!
Ah yeah of course! For now I design it with the following specs:
6S to 12S
Charge current: 15A (up to 20A depending on heat)
Discharge current: 120A (up to 160A burst a 10seconds isch depending on heat buildup)
I added a fancy feature that lets the BMS turn on when a charger is connected, The discharge contact will remain off (keeping the ESC powered down) in this state but the OLED display will show general information and the digital WS2812 LED shows a pattern indicating that its charging.
On first instance only the trivial stuff will be configurable:
Number of cells
Max discharge current
Max charge current
max cell voltage
min cell voltage
I am planning on making a simple chrome app to do this configuration stuff. Cross platform and needs minimal installation + auto updates :D.
I don’t really like the regulator balance connectors, they feel really cheap and are easy to accidentally break (exposing unfused thin wires to the battery, very scary). I also want two temperature sensors on the pack and this connector solves both of these issues/desires.
And little progress on the schematic / board. I finally figured out how to reuse / implement multiple equal schematics for the cell balancing circuits:
Nice progress man. Hey btw I just realized this. If your BMS is needing alot of computational power, would it be possible to utilize the power of the 2nd STM processor on dual VESC build? Otherwise just add extra STM processor for better flexibility of ur bms. One chip only cost 5 - 10 euro in mouser if I am not mistaken.
Just across my mind. At this moment balance charging system is quite in efficient according to my perspective. Is there any possibility to improve the charge rate for the last 20% of the capacity? I noticed my balance charger are slower when battery reaches about 90%.
That is some impressive work you do there.
I don’t understand the magic behind it, but the numbers I do understand sound pretty awesome.
Keep up the great work an make this masterpiece available
@JTAG This is great! always wondered how the magic works in a BMS - still not 100 percent on how it works but it is cool seeing your progression. I dont mean to hijack the thread but you seem to be the person to ask about BMS stuff, after reading a bit I was curious if you could control sections of a battery with CAN - low voltage/high voltage cut off and have those sections controlled by the main PCB. Basically take your cell balancing circuits and daisy chain them with CAN bus. This way the battery can be modular so easy to replace sections and easy to wire (just daisy chain tx/rx- similar to is really quick rendering.
What you seem to desire is having multiple battery voltage monitor pcb’s (one per pack), them all connected to a CAN bus communicating with a master module that is in control of enabling or disabling the charge/discharge current. This is actually the most used method in electric vehicles / large battery systems. There are a few open github projects with this exact topology.
However, this is not the path I would like to go with my design, although it is possible it would become crazy expensive since 70% of the cost is in the power switching components and not at voltage monitoring. Also electric skateboards (and in most other system that I know are needing a BMS are max 12S).
Another question:
When You build a 12S3P pack it would Monitor and balance 12x 3 Batteries (3x) . Could it be that one battery is unbalanced because it checks the voltage of all three Batteries instead of every one individually ? Just a Crazy example: 3V 3V 6,6V
Yeah but nothing exiting, should post an update indeed, here is a small summary (ill make a bigger update soon):
*I worked on the power enabling / switching (managing how en when the BMS should turn on). I still need to check all voltage levels everywhere.
*I just received a LTC6802 evaluation board and had a little play with that, seems all nice and straightforward.
Next big thing todos are:
*Fix circuit around LTC.
*think of a way to safely configure the bms for the different battery configurations.