DieBie JTAG 12s BMS | Gauging Interest | NONPROFIT

They are still to be completed. Obviously any change will be made public.

1 Like

Sorry for missing your questions, I had a crazy week :frowning: , I’ll reply tomorrow!

1, State of charge is currently only accumulated charge counted in current (coulomb counting). Once the BMS finds that the battery is charged (when all cells are at the soft high limit and the mismatch is between the mismatch threshold ) the state of charge is set to 100% (jumps to this value), from then on its is just normal use and the state of charge will give an indication.

Indeed when combining all measurements of current and cell voltages a way better approximation of state of charge can be given. If someone has time to look at state of charge calculation / estimation please inform me about the possibilities :grimacing:. I am currently working on adding functionallity like CAN and UI, I could use some help with the SoC calculation :innocent:.

2, yes for the BMS to auto detect a charger the open clamp voltage of the charger when no load should be about 3V higher than the pack (max pack (number of cells in series * cellSoftOverVoltage)) voltage. The BMS could work without this higher voltage but it then just wont auto detect the charger, this is however not yet implemented in the firmware, it is on my (long :disappointed_relieved:) todo list, but I just did not reached it yet.

3, YES led power supplies! Look for the ones with configurable current / voltage, they are affordable and easy to source.

4, yes most likely, normally in any mode of operation (also the disabled / off mode) the bms wil turn on and when the cell voltages are below cellSoftOverVoltage the Charge enable will go to True, when Charge enable: True and charge desired are true the charger port is connected to the battery and the battery will be charged.

5, yes balancing only happens during charging, in my opinion this is the only mode where dissipation of energy can be justified (but I am open to eye openers :stuck_out_tongue: ).

2 Likes

I assume the switch port on the board is 5volts? Just not sure what volt rated momentary switch I need to buy…

The power button input I assume u mean? The max voltage on that port is about 16V, when the BMS is on the max voltage is 3.3V. So any mechanical momentary switch that allows >16V is OK, and almost all if not all switches should support that.

1 Like

I’m ready to test the BMS in the next couple of days.

I’m starting to understand why people make a new thread when the original gets too long as I have to trawl and try to find what software was being use to view battery charge balances like the picture where JTAG did the first charging test.

Will have another look again to see if I can find it or some one tell me what app it is.

Long overdue to start testing but better late than never :slight_smile:

I see it is battery stack monitor LTC6803-2, but still do not understand as I tried to google it and got hardware stuff.(probably hardware but I have to assume that is already on the BMS and I just need to find the right software for image below) image

EDIT: Wrong thread, was meant for the original thread, but will leave this here in case someone might be able to answer

It is called “STMStudio”, it is a tool from ST to visualise static variables in a microcontroller during runtime (in an non intrusive way) with help of a ST-link debugger. STMStudio knows the names and where to find them in memory bij the DieBieMS.axf file.

Example project files for stm studio with the most usefull values visualised: https://github.com/DieBieEngineering/DieBieMS-Firmware/tree/master/STMStudio

But for normal use hopefully soon this all will become long gone history when the DieBieMSTool is ready :grimacing::innocent:.

5 Likes

I download the software, was told to download java runtime environment, but still telling me to download it. I guess it cannot work with the latest java which is 8 I believe.

Also do not have a ST-link. I think I will just have to leave that off till you get the DieBieMSTool done :smile:

Will just make do with information through the VESC.

200

5 Likes

Alright, Just one little niggle.

I have this guide for the buttons for the BMS. Easy enough to read.

GND(-) and PushButton(+) for switching the BMS on and off (nothing to do with powering up the LED light).

The 3v(+) and LED Smart(-) is for turning the led light on and off (nothing to do with turning the BMS on/off).

2nd GND not to be connected with anything.

However most guides for momentary button is as below

So I would assume that GND(-) goes to “-” and PushBotton(+) goes to “C” and the 3V(+ for LED light) will go to “NO” and then connect “NO” to “+” meaning no LED Smart(-) connection at all which does not make sense as there needs to be power circulation.

Cannot stop thinking that 3V(+) goes to “+” and LED Smart(-) goes to “NO” which should have the same effect as it goes to accessory which is BMS which also happens to be power as well…Need help here please?

1 Like

Was hoping someone else might provide some independent validation on this… I drew up that diagram. FWIW that’s how mine is wired up and it all works fine.

My momentary switch only has 4 contacts, so this reduced the complexity a little. I’m not sure how common what you’ve posted is for momentary switches. They’re usually push to make contact, sometimes push to break contact.

In the case of the DieBieMS the switching capability and the LED should be kept separate. The LED only comes on briefly when you turn it on, and it flashes when charging. It actually turns itself on when you plug it up to a charger (no need to press switch). It flashes a little differently when fully charged. The BMS wouldn’t be able to do any of this if you started wiring the switch and LED together.

The other diagram you’ve posted seems to introduce some smarts to keep the LED lit. We don’t need those smarts as the BMS is smarter :wink:. Also I have a theory that other diagram is for non-momentary switch types.

Hopefully this has helped and not just confused matters more.

My switch is a momentary switch, not a latch switch.

My terminals below.

So what terminal did you put the “3V” onto? No GND for it?

That is the kind of info I was trying to find out. Already knew that switch and LED is separate.

Having more terminals should not change anything, it just means I leave the extra terminals disconnected.

So what you did was put switch to “C” and “-“ for switch GND and then 3V to “+” and LED GND to “NC”? See what I need to understand?

If this still cannot be solved, I have a simple + and- two terminal switch I can make do for now.

No…

Ah sorry, you’re asking about the wiring to the switch and not the BMS.

The C and NO (switch) need to be wired up to PushButton and Ground (BMS). Order not important as it’s just closing a circuit when pressed.

The + (switch) and 3V (BMS) need to be connected, then the - (switch) and the LED Smart (BMS). Order should be important here, but I noted my LED lit up irrespective of polarity, guessing there’s more that just a LED in that circuit.

1 Like

Thank you very much, just what I needed :ok_hand:

Edited Image for anyone who might need guidance.

The LED should be between GND and LED Smart. When doing it as described the led indication will be inverted :stuck_out_tongue:. That is not problem but you wont be able to tel that the board is on by the LED.

When the led is connected between GND and LEDSmart the LED will turn on when the BMS is on, blink during charging and will show a pattern of long off and short on when charged.

Display is correct! RST is not used (it is used as an IO on the high amp shield to enable the DC DC converter but that is of no use in skateboard applications).

That’s exactly what it does :joy:. I even get long on, short off when it’s changed.

When working out the connections I had the PushButton and GND figured out. That left the other GND, LED Smart and 3V. It was either 3V and LED Smart, or LED Smart and GND. 50/50 chance, and I got it wrong… I’ve never been the gambling type.

Edit: Vesc tool 0.82 linked by @fedestancoworksand I can connect to the DieBieMS,this is maybe a blip, will try 0.92 against a vesc again. Reinstalled those linked drivers.

Edit II: Weirdness, vesc tool 0.92 now works on the VESCs again, also @lock’s nice monitoring python scripts, seems like I have a problem with pack1, either this battery is goosed or I I need to recheck BMs leads

Cool. I’m glad someone else used it before jtag comes along and supersedes it with his DieBieMS-Tool :joy:. I’d double check those numbers against what you get from the VESC Tool, but I fail to see how the code would be broken in a way that returns numbers just a little bit ‘off’. Doesn’t look great for the pack :slightly_frowning_face:

FWIW I have weirdness connecting to the VESC-Tool. The DieBieMS has always been fine, as has one of my VESCs. But the other VESC (‘Official’ v6 no less) requires power cycling, rebooting laptop, etc. Never quite found what the right combination was, but never failed to get it to connect.

1 Like

The pack is a NESE type, I’ll pull the cells out of the offending parallel units and inspect each cell individually, thanks for the thoughts on it.

Looking forward to the diebie vesc too too, the preview looks really nice.

Here are my original readings,very strange massive flutuations from the readings of cell pack 0/pack1 I am targetting. I’ve pulled apart pack 0 and placed 2 cells in a usb charger, they are reading at 3.6+ and look normal to me

Looks like you may be getting this bug in the data. Those fluctuations probably aren’t happening. Still the issue that some cell groups are way off the others. It may be that “cell voltage 0” is the last cell group not the first, or something like that.

You shouldn’t have to pull apart the cells out of the NESE module. I’d either measure them with a multimeter at the balance connector, or the +/- of each NESE module.

If you test at the balance connected I’d recommend keeping the - probe on the negative terminal of the battery; you probably don’t want to accidentally touch the two multimeter probes together while measuring voltage.

1 Like