Welcome to 3DRPilots.com

Sign up and join the largest 3D Robotics drone community!

  1. KoofPoof

    Joined:
    Apr 30, 2017
    Messages:
    39
    Likes Received:
    15
    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.
     
    FamilyFlyGuy and flyhome like this.
  2. FamilyFlyGuy

    Joined:
    Jan 15, 2017
    Messages:
    84
    Likes Received:
    30
    Location:
    Eastern PA
    Intriguing idea!
    Can't add anything technically, but
    I look forward to your success.
     
  3. Pedals2Paddles

    Joined:
    Mar 12, 2016
    Messages:
    2,982
    Likes Received:
    1,815
    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.
     
  4. anthony_sleck

    Joined:
    Apr 24, 2017
    Messages:
    18
    Likes Received:
    6
    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.
     
    mrreddog and KoofPoof like this.
  5. KoofPoof

    Joined:
    Apr 30, 2017
    Messages:
    39
    Likes Received:
    15
    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!
     
    anthony_sleck likes this.
  6. jimloss

    Joined:
    Mar 2, 2017
    Messages:
    231
    Likes Received:
    133
    Location:
    Chicago area
    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?
     
    KoofPoof likes this.
  7. anthony_sleck

    Joined:
    Apr 24, 2017
    Messages:
    18
    Likes Received:
    6
    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.
     
  8. Pedals2Paddles

    Joined:
    Mar 12, 2016
    Messages:
    2,982
    Likes Received:
    1,815
    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.
     
    KoofPoof likes this.
  9. KoofPoof

    Joined:
    Apr 30, 2017
    Messages:
    39
    Likes Received:
    15
    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.
     
  10. anthony_sleck

    Joined:
    Apr 24, 2017
    Messages:
    18
    Likes Received:
    6
    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.
     
  11. anthony_sleck

    Joined:
    Apr 24, 2017
    Messages:
    18
    Likes Received:
    6
    Here is a crude diagram of what I was thinking.

    2017-05-11_11-47-13.jpg
     
  12. Pedals2Paddles

    Joined:
    Mar 12, 2016
    Messages:
    2,982
    Likes Received:
    1,815
    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.
     
  13. cynfab

    Joined:
    Nov 23, 2015
    Messages:
    210
    Likes Received:
    132
    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.
     
    anthony_sleck likes this.
  14. anthony_sleck

    Joined:
    Apr 24, 2017
    Messages:
    18
    Likes Received:
    6
    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.
     
  15. cynfab

    Joined:
    Nov 23, 2015
    Messages:
    210
    Likes Received:
    132
    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.
     
    carpy likes this.