DIYBMS v4

Yes, they do a double blue-green flash and then settles into double blue flash.

@stuart or anyone else

Finally figured out my issues with the controller seeing all the cell modules but not being able to communicate
(pre-made jst cables… AGAIN)

Now it’s time to get serious. At the moment I have several large 7s batteries paralleled together.(Example below) And I’m using 7 cell modules for the entire thing. But I would like to use 7 cell modules on each battery. At least that’s my idea. All but one of the batteries are very well-balanced and should stay that way. Those packs came out of EV’s. The One battery I’m sort of concerned of is my large 18650.

So I was wondering your guys’s thoughts on exactly how I should do this. Maybe I should use 7 cell modules on my 18650 pack, and just seven more on the other packs? I would kind of like to put 7 modules on each battery pack in order to monitor every single cell in the entire battery. I have enough cell modules to do so. Just not sure if its completely feasible… thinking it would be a waste of modules since all the cells will be tied In parallel they’re going to fall and Rise together

I would love to have your guys’s input or if anyone else has used the diybms system on a similar set up that has detailed their Adventure oh, maybe you could point me in that direction.

Went back to the git commit that was working for me previously and it was from Thu Jun 11 09:30:51 2020 +0100 and still no luck untill I finally decided to change communication cables from https://www.amazon.com/gp/product/B00QTCBZ4I/ to https://www.amazon.com/gp/product/B06WGN56V2/ and it started to talk only with errors. After updating to latest version it looks good so far.


Except that LED on controller is not flashing anymore but I don’t care about it.
Thanks for the support :slight_smile:

Thats odd, nothings changed on that for a very long time!!

Glad you got it working, but strange it didn’t work with the previous cables.

What cells are you using? I’ve been asked to look at a new module board that could be bolted on top of those lifepo4 style cells.

If you do go for a bolt on style, I’d suggest using an oval shaped plated screw hole if you can. That should help in the spacing differences for the various models out there if they are within a few mm of each other.

@Jau does have design for these and is using slightly oval shaped holes: DIYBMS for Lithium Iron Phosphate battery cells (LiFePo4) 280aH - #16 by Jau

I have both GBS battery bank that would require the current module board but also 270-280Ah Lishen LiFePO4 prismatic cells which would be much better to use the design Jau has in that thread. The design files are at DIYBMS_Prismatic - EasyEDA open source hardware lab

1 Like

I’m going to test my design tomorrow. You are right, the holes are slightly oval but i would not make them more oval to fit different spacing, JLC and other manufacturers do not guarantee for oval holes and plating. I think the 89mm Spacing of the Lishen is quite standard?

In Spain you have a large community of fans who are going to make batteries for both domestic photovoltaic and Camper with your DiyBMS and the modules to put in lifepo4 would be a blessing, encourage Stuart

I tried to order this design in Jlcpcb and I could not identify a very important number of components in your catalog. I would love to be able to try a few of these modules.

Other manufactures such as CALB have different spacing depending on the Ah of the cell (see SE200AHA 200Ah Lithium Battery | Electric Car Parts Co which uses 106mm) whereas their 100Ah version uses 81mm spacing.

I’d suggest writing up document or creating video explaining how to modify the hole size and spacing since there would be many variations someone might want. Even with the Lishen cells you can get them with 6mm or 8mm studs.

I tried to order this design in Jlcpcb and I could not identify a very important number of components in your catalog. I would love to be able to try a few of these modules.
I also considered suggesting, in order to reuse V4.21 modules, a plate that only had the contacts for the prismatic cell and two holes to connect the positive and negative v4.21 to battery, with the terminals of the design terminals. by SKOJau

1 Like

I like that idea if possible… so we could use standard board and mount it on the plate that could be easily altered for hole size and length. @Jau has made several improvements however over the standard board to compensate for having much larger cells. To include those improvements it may make more sense to make it easy for someone to understand how to stretch the board and modify hole size.

I also tried ordering the prismatic version and there were many parts missing but there appeared to be substitutes available when you clicked on the button to ask for substitutes…EXCEPT for the most important part, the ATTINY841 :slightly_smiling_face: As was mentioned above the only option for that is to order that part separately from another distributor and solder it on yourself. I’ve never done this for small part like this but It appears this wouldn’t be too difficult using solder paste and hot air gun for soldering.

if it is only soldering the attiny does not scare me, generally the v4.21 usually come if the attiny. I’ll take a look at it later

Ok, so it is easier to blame it on cables than me :slight_smile: Basically it is my soldering skills as I was trying to salvage controllers and modules from previous projet and maybe just damaged contacts or something with old soldering tip. After taking new modules there were no issues anymore.

Though now it is relay problem.


Last time I had to change
-PCF857x pcf8574(0x38, &Wire);
+PCF857x pcf8574(0x20, &Wire);
and this time it is “External I/O interface is NOT connected, relay control not possible!” though it is connected. If there is nothing obvious that I missed then I will take a fresh controler and a wemos board.


Those are 280Ah lifepo4 batteries from Shenzhen Basen from Alibaba. Still can’t recommend those as haven’t done capacity tests. But chose 3D printed brackets from Adam Welch he shared on Youtube and decided to mount on sides as in the middle it would cover pressure vents for easy inspection.
But it seems also that other guys are already on the way to solve it :slight_smile:

Let me take a look at the pcf issue, it could be code related. I added code to auto detect which chip was installed, this could be the issue.

Can you get the debug serial port connected?

Let you into a little hack, if you connect pins TX and D4 together on the ESP8266 (after you have flashed the program) the debug output of the controller is spit out onto the USB Serial port. So you don’t have to use a seperate USB->TTL converter or use the debug pins at all.

If you reboot the controller, you should see something like

PCF8574 at address 0x20
PCF8574 replied

So I’ve been told - I’ve begun adding in multi-language support so the screens and options would be in a native language.

I have seen it, I am following your progress on github with concern hehehehehe

Showing logs:
[11:13:48]
[11:13:48]** Controller changed to state = PowerUp
[11:13:48]PCF8574 replied
[11:13:51]Apply default coݮ
[11:13:51]** Controller changed to state = ConfigurationSoftAP
[11:13:51]Clear AP settings1
[11:13:51]Setup Access Point

And it worked just after flashing. But after reboot the error is back.
Update: After connecting PCF8574 and then booting it is working again :slight_smile: So it is checked on boot which makes sense. Not sure why I haven’t caught this logic before, maybe was looking at too many things at a time.
All good now, thanks!

Yes, it scans on boot up, glad you got it working