My plate is already quite full ATM. Many project ongoing,
I doubt I can satisfy all peculiar demand. Each different design requires time & effort.
I donât think I ever posted a picture of the small I2C display while in operation. This display is quite convenient to the user. It shows the basic info such as State of charge, current, voltage, temperature & humidity in real-time. Still missing cell low & cell high, but it is coming in next firmware update. Iâm now trying to get the info from a VESC over can bus so I can also display more data like RPM or speed.
Here is a picture of display with advanced display mode while being in load enabled state:
Note that the SOC is showing 100% at first even if the cella are down to 2.7V. This is because the BMS is bramd new⌠Once tge first charging cycke will be completed the counter will be reset and will start counting down during discharge.
Tried to kill the unit this afternoon by disconnecting power cables & balance wires in any possible order while being poweredâŚ
Still holding well and running⌠This BMS should last. At least it holds well so far with the initial testing. This week end will be dedicated to real world testing.
I also want to thanks the folks here on this forum who pushed me to adopt USB C ⌠it is a great improvement over the old micro usb that I was using in every aspects.
Good skills! Itâs getting time for better BMS systems.
Coming back to the licensing issues:
Obviously the UI looks exactly like VESC-Tool, so there is probably GPLed code from Vedder in the DieBieMS Repo. This would make the Code GPL licensed code. You need to double check that and apply the according license, no matter if the DieBieRepo contains the GPL license or not. Maybe it was just forgotten.
If code contains GPL licensed code, the entire code frame needs to be redistributed with the GPL license and copyright from the original source.
Is it normal that cells voltage on graph and bellow are not the same?
It is all on github and freely available umder the GPL license as the original vesc code. You can download and modify at will.
refreshs are done at diffetent intervals between the cell graph and the data shown at the bottom, so the values can be a bit different by a few millivolt between each measurements. I could probably fix that in the next update.
Also, my benchtest in the workshop is actually a power supply with many resistors in series to simulate a battery pack. There are some fluctuations between measurement due to this. I keep battery packs normally ousiide of the workshop when doing experiments on new hardware. Much safer and insurances cannot complainâŚ
Keep in mind, I made all code in my brach labelel GPL, Tool app code & firmware as well in the ENNOID github branches/fork, but I have no control over the original DieBieMS project. There is now a large gap between both projects.
Cool, looks great!
Did you also try to disconnect the minus between the battery and the bms with a load connected (that consumes 1A for example?).
I also noticed that often when a weld in the pack breaks the pack gets split and the voltage across the split causes the LTC to fail. But there is little todo about that other then building the packs in a bit higher spec .
I am also curious about the hardware schematics, will those become open source ^^ ?
I did some tests today under load and also did some balancing while load being enabled. I think I fixed the issue with CV values different at the bottom than what is shown on the bar graph.
@JTAG: I havenât tested disconnecting the minus terminal under high current load. 1A should not be a problem I think. The only device left on the main power path susceptible to break is the current sensor max common mode voltage. No real link between balancing gnd & main power path. The INA238 current sensor IC has a common mode voltage tolerance up to 85V and should survive full 18S battery voltage applied to it. There is a TVS on the lower minus side on the main power path to cover this situation where the minus terminal get disconnected & should support any back emf for a short period of time. Schematics will be released later, but for now only share the block diagram. Contact me PM if you want more info. You gave me a lot, I can give back I hope.
Charging & balancing completed of the brand new 12S 20Ah pack with a 4A charger! BMS got to a maximum of 40.2 degree celsius while doing the balancing. Mismatch was set to 0.005mV and the result fits well. Let try this afternoon a discharge under full load.
I did a 70A continuous discharge & the BMS seems to hold quite well even if the actual prototype PCB is using only 1oz thick copper PCB instead of 2oz. The maximum temp recorded was 26 celsius during discharge in the sealed pack enclosure next to the main FETs.
Essentially no heating at all then for a 70A discharge? Iâm amazed. Could 26°C have been a typo?
Even using great FETs with a combined Rds-on of 1mOhm youâd get about 5W of heat. The sense resistor would also add about 5W of heat. I would normally expect 10W of heat to significantly increase the temperature of the board. Especially since you reached 40°C or so when balancing with a fraction of that amount of heat.
How were you measuring temperature? I couldnât see an on-board thermistor in your renderings.
There is a humidity/temp sensor combined in si7020 or hdc1080 IC mounted at the backside. Quite close to main FETs & even closer to the main shunt resistor, but of course, this is not linked by copper, so there might be a lot of heat not reaching the IC because of heat transfer. There is also a large part of the heat that might go outside through the large main power cables connected. Weather is like -5 celsius outside so again this could have a positive impact on my readings. There is no such heat sink when doing balancing and I was actually almost at 5W of power dissipation with 11 channels out of 12 balancing simultaneously on a smaller surface area.
So hold your horses, this is preliminary. I still think that at room temperature, the heating would have been still reasonable.
I agree. FR-4 is a very effective insulator and the junction temps of the FETs and the temp of the sense resistor will be much, much higher than what youâre reading.
Good to know, thank you! These details are really important as it directly affects how we compare the performance of different products.