Page 16 of 16

Low cost BMS

Posted: Sun, 27 Jul 2014, 00:33
by Astroboy
Adverse Effects wrote:
arber333 wrote:Maybe it would be best to have it on a trailer that could hook to different EVs and adapt charging... That way DMV couldnt say anything, since what you tow on a trailer is a cargo after all!

most places having a motor running in s trailer when driving is illegal but i think this may get around it

<img src=" ... _21072.jpg" />

I have one of those tow bars that are made of a box section (square tube) and the tow bar tongue just slips into it and is held with a big pin. I was thinking that would make a good mount for the generator. Easy to attach and remove, Just need to add a bit of square tube to the generator.
I was thinking of using the normal single phase output from the generator into a socket similar to what is used on caravans for when they are plugged into a powered site. The socket would feed into the on board charger the same as if i was plugged in at home.
One thing i have been pondering was should i use a diesel or petrol generator? A 4 stroke petrol generator looks like the lighter option but the durability and weather resistant nature of diesels make sense as the generator will be exposed to the elements.
I would use the range extender probably twice a month so being able to attach and remove it easily is a big factor in the design.
Also electric start would be required as i don't want to be trying to pull start the generator like my car was a lawn mower Image

Low cost BMS

Posted: Wed, 15 Oct 2014, 03:30
by Astroboy
Finally finished enough cell top modules (53) to cover the number of cells going into the car (48). All built and tested.

Here's some pictures of the result. Not shown in the picture is the many sleepless nights, strained eyes and singed fingers. Image

I used a modified version of the cell top PCB. Another forum member, arber333 made many changes to the PCB for me. Mainly to suit the smaller terminal spacing on the 40Ah cells. But he also added a resistor and LED in parallel with the load resistors so that i can see when they are in use. Very handy. Image

I have 4 Winston 40Ah cells that i am using for testing. Another 44 cells will be added later. The communications connections between cells will be changed for shorter lengths later to make things neater.


I changed the LCD from the 2 line version to a 4 line version as there are some additions to the set up that i want to add later that will require more screen area.
I also changed the master modules micro controller to a 16F1847. This is a drop-in replacement for the 16F1827, but it has more memory which should increase the number of cell top modules it can keep track of.


As you can see the cells are quite out of balance due to testing each of the cell top module's load resistors. These cells will now be individually charged and brought back into balance. Cell 1 is the highest with 3.34v and cell 3 is the lowest with 3.28v.

Some more pictures.


I mounted the load resistors with a bit of air space between them and the PCB to allow for better heat dissipation.
If i built them again i would swap the two capacitors around so that the capacitor with the metal can wasn't so close to the load resistors.
I didn't put any pins in the programming port as i found it wasn't necessary, simply putting the programmers pins in the holes and keeping a small amount of sideways pressure gave good contact for the couple of seconds required to program the micro controller.
This saved me soldering 265 extra connections and it also reduces the chance of a stray communications connector coming into contact with a pin on the programming port.

Low cost BMS

Posted: Wed, 15 Oct 2014, 03:49
by arber333
Excellent work Astroboy!
I cant wait to see your LCD code improvements...

Have you come up with a current measuring module then?

Also my BMS works great and has saved my cells a number of times from my own stupidity :(... The last time i assembled one cell wrong and when i started to drive system went beserk. Of course, one cell went above 4V!!! I quickly disassembled and rebalanced the lone cell. Dodged the bullet there!

As a note to all; some time ago i tried this connector and it works very good with UTP cable pairs. Its already twisted wire, you only crimp connectors on.
Connectors are sturdier than pollolu but a little bulkier... ... 1c25000244 ... 2a3210b442 ... 27d8a49887

Low cost BMS

Posted: Wed, 15 Oct 2014, 16:07
by Nevilleh
Glad to see such good work!
I did build an ammeter using a Hall sensor and a spare master board modified to do it and wouldn't be that hard to make a new master pcb incorporating those additions. The 4 line LCD could display current as well as the other stuff. I also counted amp-hours and the 1847 should have plenty of memory to do the extra jobs.

Low cost BMS

Posted: Thu, 16 Oct 2014, 20:52
by Astroboy
I am looking at doing something like that.
A modified master board mounted near the battery pack doing Ah counting. It will connect into the comms line of the BMS. It would act just like the cell top modules. Waiting for a request from the actual master module asking for the Ah count and probably current amps. The actual master would then display a fuel gauge on the bottom row of the LCD. Just a line of squares with some solid and others just outlines. Eventually i would like to get the actual master module to output a PWM signal capable of driving the vehicles stock fuel gauge.
Seeing as the actual master module controls the charging of the batteries it should be able to adapt the fuel gauge Ah capacity to match the battery packs actual performance. So as the cells degrade over time the fuel gauge should still accurately predict 0% and 100% capacity.
I have the current sensor and several master boards that i can mess about with. It's just a matter of finding the time.   Image

Low cost BMS

Posted: Mon, 19 Jan 2015, 00:23
by arber333
Hi all!
My friend and i bought each a set of LiPo cells to put in our cars. He keeps them as primary movers but i use them as range supplement in parallel with my LiFe pack.
We messed about with voltage sensing ADC and came out with reliable software for use with LiPos. Those modules now go up to 4.5V and balancing starts at 4.15V.

LiPos voltage is so tough they doesnt move unless you apply substantial load to them. They are also very nearly spaced... 4R7 5W resistors are enough for eventual balancing though. It gets hot under the hood there - 61°C!!!

I will put the code here when i pack it together. Both modules have to have constants changed a bit, but it works... ... san-domet/

On the other note i managed to burn one of my modules trough my skin! Yes i happen to be removing the last module on + side and i creased the - wire (i just jumped) and comms didnt want to work anymore. i removed the module and the rest were fine. This kind of thing can happen when servicing a pack. So i will try to make one module with totaly separated output lines. Those modules will reside on output side of individual boxes. I just have to make some space for opto...

Low cost BMS

Posted: Wed, 21 Jan 2015, 05:55
by arber333

Can you advise me on sth? I have built another BMS system for my LiPo cells. It works fine and can protect cells while charging and regen etc...
However there is one limit onb theese cells - 270A max! While i use them normally on highway i burn 100 - 200A. But when i enter highway or climb hills at high speed amps can go to 500A. I cannot know exactly how much it draws from LiPos.
My idea is such:
1. Make a master module with LCD as per your design
2. prepare RA0 port (not used by LCD) which is ADC input, to sense voltage from LEM hall sensor output. LEM will require +5V and GND but that can be prepared from current +5V supply.
3. Program Pic16F1827 to measure Amps and report them to LCD display case 3... Also over 250A would trigger alarm LED and at 270A would throw main contactor (i got this covered with charger disconnect o/p)   

What do you think? Could all be done with the same BMS master unit?
Do you have a code example for hall amp sensing?


Low cost BMS

Posted: Tue, 10 Nov 2015, 04:59
by arber333
This topic hadnt had an update for some time.

Last couple of months i was thinking of designing a new concept BMS for my LiPos that are packed 8S. Well not one DIY BMS todate has ability to monitor 8S packs in one PCB. There is always a limit like 32V Vmax for controlling chip etc...
So i thought why not join Neville modules and make them 8S with 9 wire connection. That makes for a very simple assembly

I started first model PCB with full +/- connection. Mistake! After balancing when more and more modules started to balance cell value began to climb!!! I got 4.10V when highest cell was 4V! The best explanation was that current was seeping trough wires back and forth and creating residual voltage that showed itself on neighbouring cells.
When i saw that even those cells were balancing that werent trough balancing treshold initially, this confirmed my suspicion.

I need a new design.
New PCBs have default neighbouring connection that require only 9 wires. Certainly i can also connect only 6S or 4S cells.
I dont need resistors anymore. I use TIP122 darlington and i open it with weak base 10K. It can give 2A shunting there. Best thing about this is i can use car chassis as heasink. I just have to use good mica sheets to separate transistors from metal heatsink.
I also planned on using small 8A fuses just in case. However system is designed to monitor cells even if transistors burn out. I would get plenty of notice.

Also i designed new master board that has optical separation built in. There is also separate serial port connection that is allways transmitting.

I will post new build files later when i try the whole system, but with one 8S PCB working good i am optimistic.

Low cost BMS

Posted: Sat, 11 Jun 2016, 21:22
by Nevilleh
Had a query the other day about how the temperature is calculated in this and I thought maybe it might be of interest to some of those who have built this thing:

For the thermistor, Delta R = K Delta T over a small temperature range, ie its linear. The ADC reading is proportional to the thermistor resistance, R (and Delta R is the difference from R at 25 deg C) so (512 - ADC) is proportional to Delta R. Because I didn't want to send 10 bits, I divided ADC by 4 so it can only go from 0 to 255 -which makes the 25 deg C equivalent 128 instead of 512.
So the equation would have been (512 - ADC) = K( T-25) becomes (128 - (ADC/4)) = K(T-25) where K is a value that includes all the factors needed to convert voltage to resistance to ADC value.
Since the relation is linear only over a small range, I worked out several values for K to allow it to cover 0 to 60 deg C and used a lookup table to select the appropriate K value based on the ADC reading.
I might have the signs wrong in my brief explanation here as I didn't bother to worry about NTC but K will take care of it! I don't know how I got the K values, I suspect I worked them out from the resistance vs temperature specs of the thermistors, just by plugging known temp and R values into the above.
Pretty simple, huh?
Accurate to +- a degree or so, which is plenty good enough for prismatic cells.

Low cost BMS

Posted: Sat, 14 Jan 2017, 12:32
by arber333
Well i have persuaded friend Matjaz who is programmer to write me a simple program interface. It takes hex values from txt file and translates them in mV in CSV file with semicolon separator. That way excel just opens the file and you are making pretty graphs of your cell values.
Be sure that you put in correct file path.
Program also checks places between FF terminators and reserves places for columns. Result is instant data.

Also there are some constants that you dont need to change. Perhaps ADC. It defines LiPo or LiFe cell range. I have it set at 290 for LiPo but if you have LiFe you want it at 316 like Neville.

You can download it here: ... verter.pdf

It is a rar containing jar file and forums are not kind to such files. So i changed it to pdf

A Converter.pdf

Re: Low cost BMS

Posted: Sun, 19 May 2019, 07:56
by 4Springs
I've been working on this project again, making a version for home storage batteries. (see the other topic here:
In working on a new version, I've replaced the diode on the module board with a MOSFET. This means that the shunt current can be proportioned by pulsing the output.
I've developed new code for Master & Module that use this feature. After a cell gets to a certain voltage it starts to shunt just a little. Then it shunts more and more the higher the voltage goes, until it reaches a point where it is on 100% of the time. Actually it is not necessarily 100% - you can set a maximum percentage if you are afraid your resistors will get too hot (I have mine set to 50%).

I have tested this on the bench but not in the car. The main reason I made this change was to limit how hot the resistors get. Not sure if there are any other advantages, I sort of wonder if it would use less power, but I can't convince myself of this...

Latest source files are posted here:
As well as the proportional shunting, this version uses a different PIC processor. As discussed previously on this thread, the PIC16F1847 has the same footprint but twice the memory as the 1827.

Re: Low cost BMS

Posted: Fri, 30 Aug 2019, 05:52
by Dan007a
Very interesting read

Re: Low cost BMS

Posted: Sat, 11 Jan 2020, 00:22
by ev28wa
On first glance it looks a bit dangerous having the PCB's exposed, maybe you could apple a clear coating to seal them. I guess that might make it too expensive though.

Re: Low cost BMS

Posted: Sun, 12 Jan 2020, 09:54
by weber
Coulomb and I have had good success with Electrolube HPA conformal coating on our cell-top management units. It doesn't add much to the cost. ... %20coating