A bit of searching on here and I have drawn a blank.
Does anyone know of any BMS boards that interface with Ardupilot over CAN or SMBUS?
I would like to build some 4S and 6S “smart” packs.
Alternatively can packs from the likes of Yuneec be used? Not sure what protocol they use?
There is this project, which I know has made at least one batch of units. Individual cell monitoring will require code modification to ArduPilot, though.
Additionally, Tattu now has Smart Batteries which use UAVCAN, the battery status component of which is supported in ArduPilot. That said, they only come in 12S, contrary to your requirements.
Thats an interesting project, it appears to be an SMBUS battery monitor not a true BMS sadly.
I am trying to get more info from Tattu about their smart batteries. I believe Tattu made the batteries for the solo so they clearly have expertise in making true smart batteries smaller than 4S.
The hunt continues.
My apologies, I missed that as one of your priorities.
Is your project using endurance as the driving figure of merit?
In my opinion, for high endurance applications the Management aspect of the BMS can become a liability - I use a “dumb” BMS on some Lithium Ion packs, and its always a source of concern that an incidental, brief current spike might (but not always) trip the over-current or cell voltage protection. Usually it is the cell voltages, rather than the pack current (lithium ion packs respond less gracefully to heavy loads). These “BMS” units or rather battery protectors I use are nothing more than resistor networks connected to the cells and current shunt, driving the gates of an array of MOSFETs. Exact settings with such a purely analog device are not easy to ascertain.
With Lithium Ion packs on high endurance craft, one generally wants to run them as far down as possible, since peak available power is of less consequence - it is a difficult decision to make on what voltage should shut off the pack and leave the craft dead in the air. The immediate response is to not fly them so low, but emergency situations can and do arise during a mission. And when you have to raise the throttle, and the current spike drives the cell voltages momentarily below that threshold, you risk a situation perhaps worse than damaging your pack.
But that is merely my opinion, and one I have fortunately not yet had to put to the test. So far every mission has had plenty of energy in reserve for such occasions, but it is concerning to me nonetheless.
Those are some valid points and things I had been considering.
I like the idea of a battery that counts cycles, advises on its health and allows charging via a “dumb” charger. However I don’t want those at the cost of reliability.
It would be super useful to have proper monitoring in flight of cells and charge useage so from that end the project you linked to does have merit.
I need to give some thought to exactly what I want and what I wish to sacrifice in terms of system reliability.
I’m testing Battgo from ISDT https://youtu.be/VecNmg4NgN0
I think is the only device in the market to realize a smart battery . I ordered a development kit. In the package there are 3s 4s 5s 6s small pcb board to mount inside the battery. The pcb come with some parameters that the supplier require before to send. There is also a tiny serial converter to communicate with the battery. I started to write the support library for ardupilot . I hope soon to do some test
@DomenicoPatella what is your current status on this? Can you do a github pull request with your code?
Any developments on this?