Stuffing the BMS into the solo body?

Joined
Apr 30, 2017
Messages
39
Reaction score
17
Age
45
Like many of you, I'm planning on keeping my solo in the air for as long as possible. Inevitably the battery cells will take a dump. Without a viable OEM equivalent replacement on the horizon yet, it has many of us experimenting. Stanordave has demonstrated flying the solo on aftermarket packs which offers promise to the solo staying aloft. However, many of you, myself included REALLY enjoy the benefits of a battery management system on board a battery pack.

I pulled a Solo smart battery apart last week, and thoroughly inspected it's components; the boards specifically in this case. I got to thinking about it, and wondered "Why cant the BMS board sit inside the solo body"? The battery connector on board the solo could then be deleted, and in its place, a custom 3d printed (or modified original) battery tray with common a XT60 connector, as well as a 5 JST-XH balancing connector put in place of the fancy molex connector. With the system arranged as such, the solo will always be able to read individual cells, and offer up battery info to your controller. On top of that, the system would then use industry standard battery packs and connectors. Of course, securing the pack would also need to be addressed, either by way of a 3D printed battery bay cover that uses the Solo's battery tray securing methods, or something else such as a velcro strap.

Radio interference shouldn't play a role either, as the circuit boards would be in roughly the same place they otherwise would be with an original battery pack.

I'm looking for feedback, tell me why you think this wouldn't work, tell me ways we could improve this idea. Most importantly, lets discuss as solo owners, how we can develop a long term solution for power to our solos.

I've got 5 best buy returned solos on their way to me. I'll be trying to get all of them air worthy first, but if any one of them proves to be grounded, that one will become my development solo to attempt this mod on. If it works on the ground, I'll swap the guts as necessary into a functioning package to test it in the sky.

I also know, there are a few folks on the forum trying to use Arduino to communicate battery info to the solo. If that happens, it opens up the doors to higher capacities, and new battery chemistries such as the recently revealed "Glass" battery, that will hopefully prove to be a gigantic step forward in battery technology.
 
That's not going to work. The BMS goes with the battery because it hold battery specific data. I reports the battery's design capacity, current capacity, mAH available, % remaining, health, etc. All of that is tied to that specific battery. What you're suggesting would provide incorrect information all batteries. You could not use it reliably.
 
Well this is something I was starting to lay out. I have done some sketches and started laying out some 3D CAD models to go along with the sketches.
My thoughts were as follows:
  • Replace the current battery with a 3D printed battery housing.
  • The housing would contain an Arduino to report back to the Solo
  • The Arduino would read the voltage from the battery pack
  • The Arduino would read the cell data through the balance port cable
  • The Arduino would report the data through the SCL and SDA ports in the Solo
  • The Arduino would use DIP switches to change battery pack capacity to the Solo
  • The Arduino would spoof the Solo Manufacturer information to the Solo (not sure if this really matters)
  • The battery could be relocated to the accessory area of the Solo to be able to accommodate larger battery packs.
  • The battery pack will connect through an external cable fed up to the 3D printed housing holding the Arduino
That is just the start and the 100,000 foot overview.
 
I wish I knew even one single thing about Arduino, if I did I'd gladly help out with that. I look forward to seeing progress with it!
 
  • Like
Reactions: anthony_sleck
Probably a dumb question, but I'll ask anyway:

Why not reuse the battery shell and boards/switch/connector from a donor battery with working electronics (bad battery(s) only) and then cut an opening in the bottom or back of the battery case to allow a third party and common battery to fit in the original battery shell.

Then, when a fresh battery is needed, just release battery as usual, swap out the cells, and place back in your solo.

I understand that new connectors would need to be added to the internal parts. I believe that internal electronics would need to be secured. I don't know if there's enough room for an opening to allow swapping of cells.

Can someone who's broke into a Solo battery and understands RC batteries comment on the possibility of this working? Is this even a possibility?
 
  • Like
Reactions: KoofPoof
Probably a dumb question, but I'll ask anyway:

Why not reuse the battery shell and boards/switch/connector from a donor battery with working electronics (bad battery(s) only) and then cut an opening in the bottom or back of the battery case to allow a third party and common battery to fit in the original battery shell.

Then, when a fresh battery is needed, just release battery as usual, swap out the cells, and place back in your solo.

I understand that new connectors would need to be added to the internal parts. I believe that internal electronics would need to be secured. I don't know if there's enough room for an opening to allow swapping of cells.

Can someone who's broke into a Solo battery and understands RC batteries comment on the possibility of this working? Is this even a possibility?

If you are replacing with the same cells, but just new, then that will work. I think what a lot of others, including myself, would like to do is add capacity.
The current SMBUS controller in the OEM packs are limited to a 4s 14.8vdc 5200mah cell count. It is also more specific to the individual cell as the cells in the packs vary. This is where the arduino would allow us to customize the data input and output between the cells and the Solo to the specific pack we would be using.
 
  • Like
Reactions: pilchards
  • The Arduino would use DIP switches to change battery pack capacity to the Solo
  • The Arduino would spoof the Solo Manufacturer information to the Solo (not sure if this really matters)
The only information sent to the stock solo now is volts, amps, capacity, and %. None of the cell voltage, serial #, mfg information, health, or any other points are being read and reported. Sp it won't miss that information. Our work on ArduCopter master for the Solo has added cell voltage, temperature, and serial number so far.

Also, the battery is being read and reported by the Pixhawk, not the companion computer. Anything you change around or use different hardware on will require updates to the ArduCopter battery monitor library. It's not a universal thing that the Solo will just magically understand. Sorry to make it more complicated :).

TBH, it would be more productive to simply reprogram the Solo battery's BMS with updated capacity information than it would be to reinvent the wheel.
 
  • Like
Reactions: KoofPoof
Probably a dumb question, but I'll ask anyway:

Why not reuse the battery shell and boards/switch/connector from a donor battery with working electronics (bad battery(s) only) and then cut an opening in the bottom or back of the battery case to allow a third party and common battery to fit in the original battery shell.

Then, when a fresh battery is needed, just release battery as usual, swap out the cells, and place back in your solo.

I understand that new connectors would need to be added to the internal parts. I believe that internal electronics would need to be secured. I don't know if there's enough room for an opening to allow swapping of cells.

Can someone who's broke into a Solo battery and understands RC batteries comment on the possibility of this working? Is this even a possibility?
That's a good question, I considered that route myself, the case of the battery is two parts. Unfortunately those parts are usually glued together so separating them is pretty destructive. I may try that method first. If pedals2paddles is right and the BMS is tied to the existing cells and their unique characteristics the plan for reuse of the BMS will be hampered significantly. If that's the case I won't end up unnecessarily hacking away a battery tray. I'm stubborn enough to try anyways though.
 
The only information sent to the stock solo now is volts, amps, capacity, and %. None of the cell voltage, serial #, mfg information, health, or any other points are being read and reported. Sp it won't miss that information. Our work on ArduCopter master for the Solo has added cell voltage, temperature, and serial number so far.

Also, the battery is being read and reported by the Pixhawk, not the companion computer. Anything you change around or use different hardware on will require updates to the ArduCopter battery monitor library. It's not a universal thing that the Solo will just magically understand. Sorry to make it more complicated :).

TBH, it would be more productive to simply reprogram the Solo battery's BMS with updated capacity information than it would be to reinvent the wheel.

I don't think anyone was proposing changing hardware around or using the companion computer. The idea is to use a piece of hardware, like an Arduino, in the place of the Solo's battery BMS. It would still output the data like the BMS, but would not require any reprogramming of the BMS since it is a different piece of hardware. So in the end it should not change anything on the battery monitor library unless that is tied specifically to the current limits of the Solo battery and the BMS.
One of the other things I would like to to point out is the circuit that replace the BMS and ties into an aftermarket battery is not a smart charge circuit like the BMS is. The packs will still need to charged as if they normally would through a balance charger.
 
If your new BMS communicates exactly the same as the one in the solo battery, the pixhawk will be none the wiser. You're basically cloning it and putting inside. I'm simply pointing out that this is not a universal thing. The communication and addressing of data points will need to be exactly the same or it won't work.
 
You might want to look at Success! Reading smart battery data post #33 where I posted the code for an Arduino Nano that does what you are talking about in addition to measuring the operating current. My FrankenSolo flies with this solution. It estimates remaining time, and is fairly accurate. It could use some improvement. I use a dumb battery I got off ebay.
With the great reduction is Solo Battery prices, I put this project on the shelf for a while as I have plenty of Solo batteries.
 
  • Like
Reactions: anthony_sleck
You might want to look at Success! Reading smart battery data post #33 where I posted the code for an Arduino Nano that does what you are talking about in addition to measuring the operating current. My FrankenSolo flies with this solution. It estimates remaining time, and is fairly accurate. It could use some improvement. I use a dumb battery I got off ebay.
With the great reduction is Solo Battery prices, I put this project on the shelf for a while as I have plenty of Solo batteries.

Thanks for the link. This was something I was looking at long before I read your post, but when I did read your post I was intrigued. I was only thinking about since I have many other packs from when I did scratch built multi-rotors, plus a pile of various Arduino boards.
 
The whole subject is interesting, I started with what fpvsteve did. I had to build a smbus reader as well so I could have both ends of the system working without a Solo, once I got it running, I was able to insert the Solo and it worked. The filtering on the current isn't the same as the Solo's BMS, but the logger doesn't seem to mind. I had plans to add individual cell measurement, but Solo didn't look at that. Now in ArduCopter Master the new battery monitoring stuff does look at that and a few more bits of data from the battery as well.
One day Solo batteries will be all used up and this work may find new importance, but for now it was an interesting and challenging project.
 
  • Like
Reactions: carpy
Just to clear the air on this the OEM BMS must be attached to the 4S lipo pack at all times during flight discharge and recharge so the battery telemetry is reported correctly to the FC, the first time an extracted BMS is plugged into a 3rd party 4S lipo for example a new 4S Tattu 5200mAh battery pack, it needs to go through a battery calibration which is discharge at slow rate to 12v and recharge on SOLO OEM charger so it can calculate the full 5200mAh capacity all this while the BMS board and battery pack remain married together, I've been doing it for 8 months now it works just logistics of how to secure the pack in the battery bay gets sketchy and using larger capacity packs will not work because the BMS chip is designed for max 5200mAh and if you plug a 7000mAh battery into it and do a calibration it will not calculate past 5200mAh and you cant reprogram the BMS chip because it is "SEALED" pass worded whatever you want to call it, third party BMS with SMART functions and I2C are made but hard to get with a 60 AMP capability and programmable parameters, I was able to find one on Alibaba through a Chinese manufacturer but they will not sell a sample board and only ship quantities, there are many problems to this problem....lol
 
People in China are very good in making bootleg products! I'm sure we could find a revival batteries if you could find the right person from the right manufacturer. [emoji14]

The only problem with that theory is they will only do business with you if your willing to promise them thousands of quantities, they don't bother with a measly 1000 units, they want to hear the promise or prospect of tens of thousands, they are all about quantity.......
 
The only problem with that theory is they will only do business with you if your willing to promise them thousands of quantities, they don't bother with a measly 1000 units, they want to hear the promise or prospect of tens of thousands, they are all about quantity.......
Maybe tell them to make it first and pay up later. Hahaha! But yes, I know what you meant. [emoji846]
 

Members online

Forum statistics

Threads
13,093
Messages
147,741
Members
16,048
Latest member
ihatethatihavetomakeanacc