Instead of labeling the PCB “B-” and “P-” if you mark it “batt+” and “load-” and “charge-” on the actual PCB itself if you have room, it will make things a lot easier for a lot of folks and there will be far less questions and mistakes
Changing the connector is not possible, because it simply does not fit onto the board without making the the board bigger. Let’s go with the simpler unshrouded connector in the first iteration and see how it works, before doing board redesign. If we find problems with, then we’ll see what the options are and go after improvements, but if it turns out to work ok, then we don’t need to make the board any bigger than necessary.
This project is great, just what the DIY community needs, a decent BMS. Thank you @SimosMCmuffin!
There is one more feature I think it would be nice to have and that is smart discharge after X days. For example, if not using the board for 7 days, start the discharge to storage voltages
Is there any other connector type that could allow to keep the tiny size and mistake-proof feature ?
What about having 2 different connectors : 1 for power and one for signal which could use smaller pin pitch and smaller footprint like a JST-ZH for instance ?
Going with KISS, I think it’s better to keep the variety of used connectors to a minimum, just for inventory reason. Currently the balance connector is JST-XH, the external switch and LED is JST-XH and the bluetooth module connector is JST-XH. These are also connectors that are quite easy to crimp yourself.
The pin header with the IDC ribbon cable is also an easy, neat, all-in-one package. At least for now. Will have to see how it works.
All components should have a manufacturer’s part number associated with them, which can used to lookup specific components. Before sending the board to fab, silkscreen needs to be optimized.
EDIT: If you get missing library warning when opening the schematic, they should be non-critical.
I’ll do it ASAP !
Thanks a lot for sharing !
Could you commit file into Github ?
It’s way easier to download/manage vesion files and contribution (like adressing issues or propose improvement)
I didn’t have the chance to see balance leds lighting
But status leds are really bright. And because they are close to each other you can’t really see which one i on or not…
Same for RGB embedded. I don’t really understand why not to externalize RGB light because once the BMS is enclosed, you don’t see any leds anymore.
I found a cool button with RGB ring led on Adafruit and planned to desolder the embedded RGB led to power it instead.
Oh ok.
I thought it could be a nice feature to have a RGB led to indicat whether the board is on/charging/faulty (ie, green, blue, red flashing).
Next iteration maybe ?
I was going to indicate the state of the board with the single colored Led via different kind of flashing styles and rhythms.
RGB would be easier to distinct between states, because colors, but buttons with built-n RGB are not the cheapest… and you need more output pins on the MCU and on the connector.
I’ve been looking at the raphael chang bms software since i also have one of the boards. I’ve been considering doing a rewrite in rust for fun. The lack of debugger connections has stopped me for now. I’d also be interested in helping out with software compatible for both bmses.
I’ve taken a quick look at your schematic and really appreciate the debugging connections
@Pimousse what’s the current state of your firmware. Is it still the version on Github? I’m currently trying to get the serial connection working on linux
Well, I worked a lot on it, but I didn’t try yet.
Since @SimosMCmuffin told us that the HW design of the Battman was limited (even dangerous), I stopped investing time on this project.