ok, so quick update. I did not burn up a second 710 (phew!!) I was having some issues with both some code and the i2c pull ups. Got both figured out. Currently have 1 pack working. Just reflowed a second board and will be testing it shortly once it cools!!
Calibration should be simple enough - you will need an accurate multimeter, just take a reading of the pack and enter the real value on the web page - the software calculates the correct multiplier/offset for you.
Give it 5 mins to settle down and then check both onscreen values and multimeter. I doubt the readings are out by too much.
On the 710 issues, you may have had a bad batch if you brought from AliExpress and the like, I’ve seen it before where reject chips are sold off.
I’m have now completed testing all my cells… I have grouped them within 100mA of each other.
I still have to test the resistance and group them together in packs of 20.
My plan is a 14s setup consisting of groups of 20 cells. I expect to reach 3-4 springs of 14 times 20 cells.
Would it make sense to add one BMS to each block of 20 cells? Or is 14 BMS’s enough? One for each string?
I quite enjoy hot air soldering the BMS’s but it will become quite large installation once done… like 56 BMS boards . Have this been tested yet?
BTW, I have built 10 battery modules, and most of them work, so that I can flash the code to them, and provision them, yet on a few the REG710 is getting quite hot… Does this suggest they are faulty? I have looked at and measured the components, and I do not see anything wrong, other than this getting hot…
I do not have any load resistor installed yet, just connected the boards together with a controller…
I must admit that I have shopped some of the REG710 in China, and others from Farnell/Mouser… so maybe that’s the problem?
Hmm had a few modules running in my test setup, then had to shut it all down… now all the modules are not connecting to the controller… after about 1-2 minutes they start to blink on D4…
The controller works OK, but cannot see any modules…
I have now tried to re-write both the controller FW and the FW of the modules… but still does not help…
The modules also didn’t lit ud solid on D4 after reflash… so I guess they have some configuration stored on the chip?
But this seems a bit strage? Any suggestions are welcome…
I fixed this problem
It seems that attinys store their information in the EEPROM, and I thought that selecting “EEPROM Not retained” in the board settings cleared that EEPROM, yet this is not the case…
I finally programmed this little code into the attiny, which will clear it…
After this, the module acts as if it is new, and I am able to provision it
But it seems like the controller does not remember the modules, because after a reset, no modules are found… am I doing something wrong?
(PS: Right now I’m trying out Colin’s version of the software, but I suspect the same issue with the original version, as this is when I first saw the issue…)
Maybe I have to explain it a bit better . I managed to provision some modules, and they showed their voltage, and everything looks ok… I then had to turn off the whole system, controller and modules…
When I tried to power it up again, the controller was unable to find any of the modules, and after awhile, they started to blink… I then cleared the EEPROM, and reflashed the software to the modules, and they then act as it they were “new”…that is a solid D4 LED after power up… And I was then able to provision them again… but… a reset of the controller brought me back to where the controller was unable to see any of the modules, and they are blinking again… . So something must be off somehow?
The module’s blink is an “alarm” state which occurs when the module doesn’t get a request from the controller for over a few seconds. It obviously is a problem.
Do you have the pull up resistor on the NodeMCU i2c cable ?
Right now I’m only testing with one module…
And I have tried with 2.2K, 4.7K, 10K, 1K and no resistors…
Yet nothing seems to work for me
All I get is blinking after awhile…
I have also started to use an external power source instead of the USB power from my laptop…
Of cause the power for the module is from a single 18650…
Are there any debugging I can so? Can I measure voltages somewhere to check that things are working as expected? Strange thing is that I works after I have cleared the EEPROM, and I can add the module as a new one… where it read the voltage and temp with no problems…
I have been watching the progress for a while and finally took the plunge and ordered 10 boards, not put them together yet but from what i can see of what you guys have been doing so far its a great job…
The Balancing is something i am interested in so once i have a few boards put together i will start to look at whats already there and see if i can help out…
I prefer to top balance but i think that if code is there to be allowed to choose your own preference then that would make it easier for most users…
i will post some pics in a couple of weeks when i have had enough time to sit down and solder 3 boards and start testing and playing with the code.
I like a few of the tweaks that colin has made… well done to all that have contributed to this project, i will also be looking at adding an OLED screen to mine so that i can see the status of the cells where they are…
Just to give a bit of an update i tracked my issues with dropping out etc down to interference from my inverter. As soon as i power it up the modules start to drop in and out and eventually all go into panic mode. I’m going to try twisting the SCL/SDA wires initially and if that doesn’t work i shall try shortening the wires.
As the issues turned out not to be my code modifications I’ve switched back to my variant and slowly started adding some functionality. The bypass status is now presented to influxdb so this can be put into a dashboard. I have also added a feature to cancel an average balancing request.