I have completed the programming of the 4D display and with a decent power supply on the Arduino and no USB connected it behaves. Funny that is, as soon as I connect the USB it turns temperamental, no matter what the power supply.

Now I can remove this el cheapo chinzi keypad, which frees up 9 digital IO on the Arduino, not that I need them, the extension board has enough digital IO and I need this board for all the Analog inputs anyway.

The top image shows all the components wired up on the desk. This is it and a couple of those little boards are only used for simulating the cell voltages at the moment. I will use this horizontal extender, which makes the whole arrangement lower and wider and I can use a flat box.

bms_stack
With the screw shield removed I will use the horizontal extender for the custom components, which is just the resistor network for the voltage dividers of the cell voltages. I am waiting for some trim resistors to complete this part. I had used fixed ones for the test and will use adjustable ones for the final setup, to be able to optimise the meter ranges of the analog inputs and with it the resolution of the signal.

There is very little programming left to do. I will now have to find the proper box for this unit and will put it together.

I have 4 independent outputs to drive high current relays. I can set either on/off or momentary for either 1 signal out put or 2 signal outputs for a single coil or dual coil relay. I can drive a dual coil high current relay directly from these outputs with a pulse for each coil to set and reset the relay. This is true for both charge relay and load relay if I wire the charge input and load output to separate cables and relays, which I most likely will.

If the low voltage cut out threshold is reached it will only separate the load but leave the charge and vice versa. If the cells run apart by a certain threshold, which can be adjusted, both the load and the charge will be disconnected and the program will analyse the cells and start balancing.

This is done by charging each cell separate through a dedicated little power supply with current limiting output. The program keeps monitoring the cell voltage and the charge/balancing current until the cell is within a certain margin of the highest cell. If a cell cannot be raised to the level of the highest cell after an adjustable time frame an alarm will be triggered.

I do not incorporate resistor balancing to lower a cell. The program also has the ability to set the high voltage of the cells before an imbalance would lead to a separation of the charge and load even if the voltage differences of the cells are above the entered threshold.

I will have to experiment in practise with this and adjust the values to my given banks. Will be interesting to see. I can log the values and can transmit the log to my central system.

Right now I am not sure when this is finished. I am still a fair while away from installing the batteries and my priority right now is to finish all welding and the plumbing. I have purchased the pressure lines for the plumbing and the hot water circulation lines and have decided to use PEX crimp, although I was critical so far about my ability to work with it. I made the decision and will practise. I decided against the push in fittings and hope that the crimps will withstand all the stresses. It looks solid and I have all the required tools for it also. The main reason for PEX was weight again. I wanted to use copper and compression fittings, but it is just too heavy and also far more expensive than the PEX.

We will see how that goes. Weather permitting I will start with some of that tomorrow.