FlexiBMS Lite - Flexible Configuration BMS w/ CAN-bus

Agreed. Better to damage a battery than get injured.

For situations like this one, it would be great to have some kind of alarm (a loud buzzer).

3 Likes

One-way blocking for sure.

I’d also suggest one-way blocking on the charge port.

So the BMS can cut off a charger that goes too high, and can cut off an ESC drawing power if the battery is too low, but it can’t cut off an ESC in braking mode once the battery goes into overcharge, and it can’t cutoff a voltmeter on the charge port. Some chargers might also sense this voltage before kicking on, I think.

1 Like

Update

0.18 FW pre-release (not mass tested) coming this week.

Updates & changes:

  • New feature: Wake-up via CAN-activity. When in low-power mode, periodically checks for activity on the CAN-bus and wakes the BMS up if activity is detected. Slightly increases current consumption due to the need to turn on the buck regulator, to power up the CAN-transceiver.

  • State printout improvements


  • Battery voltage, Charger Voltage and Charging current are now shown with the Lowest-Latest-Highest internally measured values. This is useful as it is able to show otherwise missed values due to the internal sampling running around 300Hz speed and the state printout running once every second.


  • Charging termination flag added


  • Fault logging and behavior improved, divided into fault count and active faults. Fault count ticks up and has independent count for every fault, so it’s easy to check what faults have been triggering over time. Latched faults show the latest triggered fault flags, which caused the charging state machine to go into the faultState. After going into faultState, the state machine waits for a time specified by the $18 (FaultWaitTime) and will then try starting charging again, if faults are still found it’ll return back to faultState, log the fault flags and wait again until retrying. Fault counts can be reset with $G-command, FW restart or power-on reset.

  • Status Led driver re-written, easier to add new states to indicate and program led animations to said states. PWM support coming at some point for fade action and RGB mixing.
    Currently implemented indications:

    • USB-connected, solid blue
    • Charging, solid green
    • Balancing, solid yellow
    • FaultState, solid red
    • Charging ended, blinking green
    • Fault count not zero, magenta
    • StorageDischarging, white (orange planned, but needs the PWM implemented)
  • NTC-probe minimum and maximum temperature limits wrongly using values for minimum and maximum pack voltage.

  • GPLv3 license info added to source files written by me.


I ordered a couple different voltage rated TVS protection diodes for the charger side connection protection that I’ll be testing and adding to any boards I still have in my inventory. It should be easy enough to solder on with just a basic soldering iron, so if you’re able to solder on your battery and charger side wires, you’ll be able to solder the TVS diode on.

Damage to the charging Mosfet/s is/are most likely to happen when operating with 12S or 11S pack configurations, as the voltages are closer to the charging Mosfets max rating. This coupled with long charging wires and a charger that is powered up first, and then connected to the charging port has the possibility of generating the damaging voltage spike. I would recommend first connecting the charger connector to the BMS and then powering up the charger, as there isn’t the danger of sparking happening due to the charger side of the BMS being non-charged with the fully blocking Mosfet setup.

Currently I’d say that a good indication of a damaged charging Mosfet/s is when nothing is connected to the charging port, but the BMS still reports some voltage on it. This was the case with @janpom and @Zach with their charging ports hovering at 12V and 18V respectively, without nothing being connected to them.

7 Likes

These sound like great enhancements! :+1:

BTW, I had the MOSFET on my Flexi replaced and that seems to have fixed the problem. I haven’t yet thoroughly checked it but I no longer get 12V reported on the charger port.

4 Likes

:clap::clap::clap:

1 Like

Came acros this @SimosMCmuffin thought it might case some issues with your BMS

2 Likes

That is a yzpower charger to be precise. 12s 4A in plastic case. Flashes red/green as soon as mains power is interrupted

1 Like

Mine doesn’t do it. I believe it’s the exact same charger.

Maybe a bad piece?

Mine even trips for heavy machinery starting at work, sometimes even my hairdryer at home on the same socket trips it starting. I’ll try to demonstrate on a video tomorrow

1 Like

New test panels came in yesterday


As mentioned before, these are not electrically functional boards, as they’re only 2-layers and the actual working boards are 4-layers, but these are test boards on actual panelizing and break tab design testing. There are slight variations in the break tab designs (hole amount, distance offset) to see which combination leaves the cleanest and least sanding needed after snapping them with edge cutters.

Then I also got the USB-PD testing board and the new audio DSP board, shown also is the old DSP board that suffered from the incurable low buzz.

I believe I’ll get the new TVS diodes in the Digi-key shipment today, so I can get waiting webshop orders sent tomorrow.

8 Likes

Just had a big order come in for the Lite units and they are now out-of-stock as of this moment. Placed order will be fulfilled.

Sorry, you’re gonna have to wait for the next batch, but if you want to talk then PM me.

2 Likes

Maybe I missed something, but

whats this :wink:

I like building and developing all kinds of portable devices and see the USB-C connector and the possibility of using USB Power Delivery as a valuable feature to be able to support. That also synergizes with the simpler and cheaper BMS (3S-6S) meant for integrating into portable devices.

1 Like

Here’s proof.
Video is like 100mb so won’t upload here unfortunately.
https://linksharing.samsungcloud.com/zPYtOaZuO8rl
Valid for 24h

So, are you using a FlexiBMS and you have trouble starting your charging, if you first connect the charger to the battery pack and then to the wall, or was this just a demonstration of the behavior you described in the Noob question thread! 2020_Summer - #14003 by Athrx ??

The behavior on the video looks like the primary side (wall-power) of the charger doesn’t want to power up, as the secondary side is already reporting available voltage.

This though shouldn’t happen with the Lite, as the charger port is not connected to the battery, until voltage is detected on it after which the charging is started and that opens up the connection between the charger and battery side.

3 Likes

Sorry mate, no flexy bms. Was just reporting that some chargers really don’t like higher potential power coming the other way around and it got ported as a question here. I’m using a ltt bms with common charge/discharge wires

2 Likes

For some more anecdotal evidence, I sometimes use a 42V 10S (li-ion) charger to charge 12S LiFePO4 boards (43.8V)

disclaimer: don’t try this at home

and if the LiFePO4 battery is already above 43V when the 42V charger is plugged in, it flashes red and freaks out like that also.

1 Like

So this feature allows to wire the CAN cable without the 5V pin leaving only CANH and CANL?

Yes.

1 Like

Ok.

According to your measurements, how much current does the bms draw and how much will it change with this feature enabled?

I’m asking because I’m running a small battery atm (6S 4Ah).