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 ^^.
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)
Awesome! such much capton tape xD!
Are you hacking my BMS to operate without a main Fuse ? ?
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.
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 (there is no easy way to protect against this). I will make a quick start guide hopefully tonight already !
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 .
Powering up the BMS can be done in 3 ways:
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 . What everyone wants is up to preference / taste, but it is fixed for now.
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.
(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:
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.
–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 .
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
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 .
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 .
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.
@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
Firmware update demo! Have to go to bed now , GF is complaining .
Firmware version is only shown on startup (I “update” from 0.15 to 0.14). But all the heavy lifting is done now!
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
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.