DieBie JTAG 12s BMS | Gauging Interest | NONPROFIT

We should definitely step to another IDE!!! I’ll try visual studio with debugger asap, I have seen some nice things about that one.

If you know anything better please suggest ^^.

I should obtain the full version of keil through my university soon, so that I will be able to write custom configs for you.

Furthermore after some hours of torturing my bms I have got the correct wiring scheme of the lcd, power button and balance cables. (thanks to @JTAG for the help behind the scene)

2 Likes

Awesome! such much capton tape xD!

Are you hacking my BMS to operate without a main Fuse :expressionless:? :smiling_imp:?

I would never dare. Here you can see my homemade fuse. Made in Italy.

I heard somewhere that the electrostatic discharge from the fingers could kill an IC. So I always kapton the shit out of my electronics.

2 Likes

Dear all,

I noticed that some of you are getting your BMSes! AWESOME! I should really be starting with a manual now (will have my priority now).

If you are not absolutely sure on how to connect the balance leads please WAIT WITH THAT, when incorrectly connected components will blow :sob: :sob: (there is no easy way to protect against this). I will make a quick start guide hopefully tonight already :innocent: !

2 Likes

not generating static helps. Shoes on carpet is silly, and dry air is a killer.

we don’t have dry air or carpet in the shop. hell most of the time i’m barefoot on cement. never zap anything. LAst time i zapped something it was the car door and i was in my winter gear. You know, those boots and that one jacket i only seem to need for a bout a week in January when it suddenly drops to a staggering low of 50F.

JTAG, I have just connected a 4s LIPO battery to the BMS and are getting information about the V in each cell. It seams somehow confusing that the cell count starts at 0, is this correct?
----- Cell voltages ----- Cell voltage 0 : 3.900V Cell voltage 1 : 3.927V Cell voltage 2 : 3.816V Cell voltage 3 : 3.931V

Also, how is the charging enabled? I have connected a dc power supply with 28.8V to the common- and Charge+ and get the following readings:
-----Battery Pack Status----- Pack voltage : 15.58V Pack current : 0.02A State of charge : 0.0% Remaining capacity : 0.00Ah Operational state : Power down Load voltage : 0.00V Cell voltage high : 3.931V Cell voltage low : 3.816V Cell voltage average : 3.894V Cell voltage mismatch : 0.115V Discharge enabled : False Charge enabled : False —End Battery Pack Status—

I always rub my head with a balloon before working on electronics and frequently get a zap off my car

@tobbs Starting with 0 is a programmers thing, there everything starts at index 0 :laughing: .

Powering up the BMS can be done in 3 ways:

  1. Trough power button (discharge / normal operation / usage)
  2. Trough connecting an external power source to the charge port (charging)
  3. By connecting USB (ext / configuration)

But state changes are only possible from 1(usage) to 2 (charging). There are a few motivations on why I think this is pleasant but that is to much writing :sweat_smile:. What everyone wants is up to preference / taste, but it is fixed for now.

  1. In normal off state all the power to the microcontroller is disabled, it has no way to turn itself on. Once enabled by any of the three options it can keep itself enabled, but once it has disabled itself its back to having no control.

  2. (BMS should be off without USB connected ) When you push the power button the power supply turns on enabling the microcontroller, the microcontroller wil then “bypass” the switch to keep itself enabled, it loads the config from the EEPROM and checks whether the loaded configuration matches the connected battery and whether all cell voltages are withing the specified limits, when anything is off / wrong it will depending on the level of the error either give a cross trough the battery (followed by waiting for a while) and turn of, or will state “err” and turn off immediately (happens really fast, you will probably be unable to see it). When everything is OK it will enable the LOAD and supply power to your target. It will keep it enabled for 30 minutes when the load consumes <200mA (else it will timout and turn itself off), when the load at any moment exceeds the 200mA threshold it resets the timeout.

Push button operation:

  • Really fast -> the microcontroller had no time to respond, you are to fast, it will only blink the power button and turn back off immediately.
  • Normal short press -> the BMS will turn on as expected
  • LONG press -> Default config is loaded (be aware that this might be the WRONG config), state of charge is reset and YOLO mode is enabled. The BMS will enable its output and IGNORES ALL (cell voltage) LIMITS. This is useful when a balancing wire came loose and strange voltages are measured and the BMS disconnects the load. This mode is created to allow you to still ride home when a stupid balance lead breaks. This is a gray area (it might break your battery / BMS when you over discharge extremely), please prevent going here and using this :construction_worker:. This mode might need some improving sinds I stopped using it for a while since my balance leeds are now connected firmly :innocent:.
  1. (BMS should be off without USB connected OR in usage / be in load enabled mode / be powered on by power button) This mode is enabled when you apply a voltage to the charge+ terminal that is 3V higher than the pack, It will again do all the checks of the regular power on but will enable its charge port instead of the load. You should use a current limited power supply since that power supply wil control the charge rate.

The charge port / path is enabled when the batteries highest cell voltage is below the soft over voltage threshold, the current that flows at that moment tells the BMS that the charger is still connected (since it has now connected the charger to the battery it has no way of detecting the charger voltage).

TLDR; use a CC CV charge with an open clamp voltage of at least 3V higher than the highest pack voltage you will reach with a full battery (to have the BMS still detect the charger). All my chargers (mainly PB lead battery chargers and CC CV LED power supplies always meet these requirements).

This mode shows a charge lightning bolt thingy on the display.

1&2) When you connect a charger in usage mode it will switch to charging mode. When you disconnect the charger it wil wait for a while and turn itself off.

  1. To enable this mode just plug in a USB cable and connect it to a computer. The 5V USB voltage will enable a circuit that forces the BMS to be turned on and remain on even when the configuration is wrong. This mode will show EXT on the display. You cannot get out of this mode unless you disconnect the USB.

–end of mode description–

Short said -> when connecting the usb when the bms was off, you are stuck in this mode but have the freedom to change configuration with stuff happening to your battery (passive mode, no charger and load activity).

when you connect the usb whilst the bms is in charging or discharging mode you can do exactly the same but now you are in active mode and everyhing will respond directly to the changes you apply so be careful! Batteries are scary :mask: .

Also in the “help” list the command to change the battery cells is missing (I forgot to add it to the help list), the usage is: config_set_cells 8 to set it to for example 8 cells.

Be sure to save the changes to EEPROM by: config_write

4 Likes

@fedestanco any news?

Any news when more may be for sale?

The custom firmwares that @JTAG wrote for us seem to have a little issue. So all the boards are waiting on my desk to be flashed again. Other than that screws are installed, address is written and some shipping labels have been purchased.

Just on the custom firmwares… Not sure if you’re still planning on doing a unique build (with battery specs) for everyone, but with JTAGs VESC Tool integration I’m not sure its really required. Firmware, yes, but it would probably be fine to use the same firmware on all the BMSes.

I’ll be plugging mine up to the VESC tool first thing just to confirm all the settings are ok. Not that I don’t have faith in you, just be a real shame to blow one of these up :wink:.

Hi Guys,

Yeah I specified the wrong hardware version in the firmware files (I am developing code on old hardware and forgot to change the hardware version) , therefore the firmware thinks its charging whilst its actually not because the microcontroller pin connections on the new hardware is different :rolling_eyes:.

By the time I had to build the new firmware for @fedestanco I was right in the middle of implementing CAN and configuration of the BMS over CAN trough the VESC (that works now with the terminal). I am currently implementing BMS firmware updating trough the VESC-TOOL, I will try to get this work tonight and decide whether I trust it enough to implement it in the firmware ill send to @fedestanco or not. Ill send the firmwares tomorrow anyway and update here on what I did.

1 Like

@lock your bms will be programmed according to a123 specs but yes, it is a good idea to double check via vesc tool.

@evoheyax keep in mind that I wont start a new batch before at least few weeks of feedback so if you are in a rush check out pcbway.com or macrofab.com

1 Like

Firmware update demo! Have to go to bed now :frowning:, GF is complaining :construction_worker: :sob:.

Firmware version is only shown on startup (I “update” from 0.15 to 0.14). But all the heavy lifting is done now!

6 Likes

Hi, just a reminder: if you want the bms non programmed just shoot me a PM and I will ship the next day. I am not holding them hostage, I am just waiting for the last firmware to be available :slight_smile:

1 Like

Hello, it’s total fine for me, I don’t have any problems with some days, weeks extra. We have ugly weather, so I have at least 2 months before I can ride.

Hi guys. The new firmware works nicely. Now you will be able to customize your config via usb using the vesc tool. I will be shipping everything tomorrow and the day after.

5 Likes