3DR Solo with LiIon 9000mAh battery | up to 30min flight time

Have you concidered one of the 20700 series cells? Maybe sanyo ncr20700b, at 15amp constant current. not sure how weight will play in... they are 61g each. But at 4000/4250 mah each it might be a gain.
 
Have you concidered one of the 20700 series cells? Maybe Sanyo ncr20700b, at 15amp constant current. not sure how weight will play in... they are 61g each. But at 4000/4250 mah each it might be a gain.
Yes I did. I think a 4S2P with Sanyo 20700B cells will work too. Though the continuous discharge rate would be 32A (vs. 45A) and internal resistance is higher ~26mOhm per cells (vs 20mOhm). That is why I decided to go with the 30Q. A 20700B pack would weigh less with ~535g (vs. 593g). The 20700A with 3000mAh and 30A discharge would be fine for every use case for sure.
 
Good job!! Let me know when you are ready to sell some!!
Hi, thanks for the interest. I am a student and I have no intend to make a shop or business and sell them "officially". This is my semester holiday project. However I m happy to make some batteries for for Solo users. I would charge ~100$ per battery (with shrink tubing and better plus pole protection) with support for installation. However I do not have BMSs. I m based in Switzerland, shipping is not cheap.

In the next month I will try to make a power module work. That could make the BMS obsolete. Soldering on the Solo PCB and a RC charger would be required though.
 
Soon batteries will be hard to find. ..I wish some battery company would make an upgrade for the solo. ..there is still a huge market for them. .
 
  • Like
Reactions: Saijin_Naib
Have you concidered one of the 20700 series cells? Maybe sanyo ncr20700b, at 15amp constant current. not sure how weight will play in... they are 61g each. But at 4000/4250 mah each it might be a gain.

Im thinking a 4S2P 8000mAh pack at under 500g with those particular cells would get you just under 20mins flight time with gimbal and GOPRO it's a good cell and current wise it's capable but the dimensions to fit in the battery bay may be challenging
Soon batteries will be hard to find. ..I wish some battery company would make an upgrade for the solo. ..there is still a huge market for them. .
Soon batteries will be hard to find. ..I wish some battery company would make an upgrade for the solo. ..there is still a huge market for them. .
Soon batteries will be hard to find. ..I wish some battery company would make an upgrade for the solo. ..there is still a huge market for them. .

The current available solo batteries are new unused but are very old stock, the 3rd party aftermarket support is what you will have to rely on from this point forward
 
Does anyone know if AP will talk to just any SMBus BMS or are there only certain chips that are compatible? Does it stick to the standard implementation or are there extensions or customizations ?
 
I'm stocking up on solo parts now.. I have 2 solos 7 batteries and 4 xtra motors before stock runs outUOTE="carloliveira, post: 131944, member: 12314"]Im thinking a 4S2P 8000mAh pack at under 500g with those particular cells would get you just under 20mins flight time with gimbal and GOPRO it's a good cell and current wise it's capable but the dimensions to fit in the battery bay may be challenging




The current available solo batteries are new unused but are very old stock, the 3rd party aftermarket support is what you will have to rely on from this point forward[/QUOTE]
Im thinking a 4S2P 8000mAh pack at under 500g with those particular cells would get you just under 20mins flight time with gimbal and GOPRO it's a good cell and current wise it's capable but the dimensions to fit in the battery bay may be challenging




The current available solo batteries are new unused but are very old stock, the 3rd party aftermarket support is what you will have to rely on from this point forward
Im
 
According to 3DR one would need to program with SMBUS v1.1 standard and it should be fine.
https://dev.3dr.com/hardware-batterybay.html
https://dev.3dr.com/hardware-battery-charging.html

To be done:

1. Find a SMBMS that can handle max. 50-60A
2. Programm it according to the cells used
3. Produce the battery

Me I like to approach with a power module much better as you can plug in any RC battery. Downside is battery percentage is not so accurate for example if you start flying with a half full battery. What you normally don't but still. And this would be less "fool prove".

For photography 20700B cells should be fine but not for this kind of flying:
To view this content we will need your consent to set third party cookies.
For more detailed information, see our cookies page.
Lengthwise space could be a problem.
 
According to 3DR one would need to program with SMBUS v1.1 standard and it should be fine.
https://dev.3dr.com/hardware-batterybay.html
https://dev.3dr.com/hardware-battery-charging.html

To be done:

1. Find a SMBMS that can handle max. 50-60A
2. Programm it according to the cells used
3. Produce the battery

Me I like to approach with a power module much better as you can plug in any RC battery. Downside is battery percentage is not so accurate for example if you start flying with a half full battery. What you normally don't but still. And this would be less "fool prove".

For photography 20700B cells should be fine but not for this kind of flying:
To view this content we will need your consent to set third party cookies.
For more detailed information, see our cookies page.
Lengthwise space could be a problem.

Here is a SmBMS that can handle that current and i believe the parameters are programmable.

Source electronic pcb assembly BMS/PCM 4S 60A max 100A lithium battery Smart BMS on m.alibaba.com
 
Yep. Looks like it would do it. Anyone willing to pay $50 before the price of cells for an aftermarket battery?
 
Does anyone know if AP will talk to just any SMBus BMS or are there only certain chips that are compatible? Does it stick to the standard implementation or are there extensions or customizations ?
as long as it is SmBUS v1.1 it can communicate with that
 
This video shows that the script is running automatically and RTL is working at a set voltage:

To view this content we will need your consent to set third party cookies.
For more detailed information, see our cookies page.
 
  • Like
Reactions: dmulk and DJMc
Very nice work, thank you @Derriel!

I'm working on a BMS to change the manufacturer FullChargeCapacity value. For this i use :
- an arduino (duemilanove)
- A PCA9306 LEVEL SHIFTER TO TRANSLATE 5V I2C FROM THE ARDUINO TO 3.3V I2C ON THE BATTERY
- some mod arduino sketch from @pious_greek (Reading Battery Data With an Arduino)
- some mod code of the Qt example 'BlockingMaster'
- and a BMS test from alibaba for this work (because i don't have an opened battery or build a connector yet!)

It's just the begining and at the moment i can only read all the values like @pious_greek did. ie. i can read the unseal password with command 0x0260 (response 0x14047236) or full access pwd 0x0261 (resp: 0xFFFFFFFF).

In the command i use 02 for i2c read_block, 60 or 61 is the command. You can use 00 to read_word, ie 0010 to read FullChargeCapacity.

I have to add commands write_word and write_block to arduino sketch for changing the manufacturer values.

with the bad weather this weekend i'll try to do it!

Here attached are the codes for Qt and arduino. Sorry i don't know yet how to make simple executable file with Qt.
 

Attachments

  • QtReadBMS.jpg
    236 KB · Views: 99
  • arduino_BMS.txt
    7 KB · Views: 17
  • dialogcpp.txt
    6 KB · Views: 4
  • dialogh.txt
    3.5 KB · Views: 4
  • masterthreadcpp.txt
    5.6 KB · Views: 4
  • masterthreadh.txt
    3.2 KB · Views: 6
@looninho this is really great! I dont know exactly what the BMS does. But Im sure the battery failsafe has as well to do something with voltage. Im not sure if the capacity algorithm is only based on used mAh. And how does the BMS know about mAh or until which voltage does it count mAh? I have a half defectiv BMS board. Let my know if you want to tinker with it to read the chip.

I will try to make a power module work.
 
Last edited:
Somebody knows where pins 47 & 49 and/or pins 23 & 25 from the Pixhawk are on the Solo board?

EDIT: Found this: Pixhawk Cube Expansion Board | ReadyEdi
And here is the manual for the Cube: http://www.hex.aero/wp-content/uploads/2016/07/DRS_Pixhawk-2-17th-march-2016.pdf


I managed to connect a power module. In short:

PRO: It works! With correct battery % on artoo and in Solex
CON: The soldering job is very difficult

So I managed to solder cables to pins 47 and 49. It seems that on the Solo board these pins are not used. The soldering job is very tiny and difficult! Please consider very thoroughly if you want to do this! The cables I had were to thik. I had cut half of the stripes to get a fine wire. To lead the wires out under the Pixhawk Cube it is required to make some space. I did a quick and dirty job by using the soldering iron and melting the plastic (350°C). Worked well.

Pin 47 = Current sensor
Pin 49 = Voltage sensor

Connect these pins to the power module which will have 6 Pins. Solder the power module to the power input on the Solo board and solder your plug system to it on the battery input.

Power module pin output:
Pin 1 VDD 5V Brick
Pin 2 VDD 5V Brick
Pin 3 BATT_VOLTAGE_SENS_PROT connect with pin 49
Pin 4 BATT_CURRENT connect with pin 47
Pin 5 GND
Pin 6 GND connect to ground on Solo, eg. on the battery input

I used this power modul: mRo Hall Sens Power module ACSP7 (Next Gen)
This looks great too: 100A / 200A Hall Sensor PM for Pixhawk / APM
Others work as well for sure ...

Each power module model is different to what settings have to be set in parameters. The ACSP7 uses these parameters (to be set in Mission Planner or QGroundControl): ACSP7_config.pdf
You have to do a calibration in Mission Planner with a multimeter/wattmeter and measure voltage (important) and amps. Amps should be measured under load to calibrate. Ideally 10+A.

That's it! Solex will display the values from the power module and the Pixhawk will calculate battery percentage based on used mAh and this percentage will be displayed in Solex and artoo. No need to change it.

With Mission Planner you can change the the RTL voltage and RTL remaining capacity parameters as you wish.

My settings for the LiIon battery:
FS_BATT_ENABLE = 2
FS_BATT_VOLTAGE = 12.4
FS_BATT_MAH = 0
BATT_CAPACITY = 8000

The battery percentage in Solex and artoo (no need to flash it) will be calculated based on used mAh. The formula is: (BATT_CAPACITY - used mAh) * 100 / BATT_CAPACITY
RTL here is based on voltage (safer if the battery ages or you fly with a non fully charged battery. The message on artoo that it will RTL @ 10% is wrong, it does not really matter but I changed it to "RTL soon battery is critically low".
 

Attachments

  • Pins Cube.jpg
    Pins Cube.jpg
    1.3 MB · Views: 393
  • Soldered.jpg
    Soldered.jpg
    1.2 MB · Views: 379
  • Shrink tube.jpg
    Shrink tube.jpg
    1.5 MB · Views: 366
  • Pixhawk Cube melting.jpg
    Pixhawk Cube melting.jpg
    1.3 MB · Views: 378
  • Power module.jpg
    Power module.jpg
    1.1 MB · Views: 382
  • Balance leads.png
    Balance leads.png
    1.8 MB · Views: 351
Last edited:
  • Like
Reactions: P43YM
@looninho this is really great! I dont know exactly what the BMS does. But Im sure the battery failsafe has as well to do something with voltage. Im not sure if the capacity algorithm is only based on used mAh. And how does the BMS know about mAh or until which voltage does it count mAh?.

In my knowledge, the chip have a special algorithm to gauge the remaining capacity according to chemistry.

I have a half defectiv BMS board. Let my know if you want to tinker with it to read the chip.

I will try to make a power module work.

Your approche is very good, the community will have 2 approches. If you want, you can send it to me and tell me which capacity you want then i try to mod it and send it back to you. But before that could you give me the reference of the chip? if it is 'bq20zXX' i'll be happy!

I've finally succeeded. Now i can change the DesignCapacity!
i've implemented 2 write functions : writeWord() and i2c_smbus_write_block(). In my Qt program i use 10 for write word and 22 for write block:

ex1: change the DesignCapacity to '5000' mAh (hexa = '1388'), using writeWord '10' to cmd '18':
'10181388'
re read with '0018' gives me '5000', OK!

ex2: change the ManufacturerName to '3drPilot' (hex = '33647250696c6f74', length=08), using writeBlock '22' to cmd '20':
'22200833647250696c6f74'
re read with '0220' gives me '3drPilot', OK too!

This is for my BMS from alibaba and i suspect that it is already in unsealed state because i didn't need to unseal it for writing. Tomorrow, I'll test with seal and unseal state.
 

Attachments

  • arduino_BMS.txt
    9 KB · Views: 44
Great work!!

Did you find voltage as well? Which Ali SMBMS are you using?

I would not specifically use this BMS but for you to tinker with it because there are some connections mission from corrosion. The main chip should be still intact. I can not read what's written on the chip as it is unreadable on 3 BMS boards (I think on purpose). Sorry.

I managed to connect a power module to the Pixhawk and had nothing to do so it does display the values in Solex! This is really nice! It works as hoped! (see post before). Though there is a problem: It requires very good soldering skills and time to do the mod. I would not expect every body to be able to do this! Unfortunately. Your BMS programming is very welcome!

What kind of interface are you using to connect with the SMBMS?
 
OK thank you for the BMS, i'll pay the shipping costs.

Your solution is very nice even one has to have a good solder skill. With the expansion board for the Cube, this becomes easier and with a power module for 6S battery I can replace the Pixhawk 1 on my big DIY quad by the stock Cube. Doesn't need anymore a smart 6S battery! Thank you for your works and links!

back to my solution:
- yes i can access to any parameters (see xls file attached for smbus v1.1). When i have time, i'll make a easier GUI software for that.
- as i said i use Arduino (Uno, Mega will work) and a I2C converter to step down the voltage of the Arduino from 5V to 3.3V but not necessary.
- the BMS for test is: Li Ion Battery Communication Pcb Manufacturer/1s-4s Communication Bms 7a Pcm For Li Ion/lipo/lifepo4 Battery Pack - Buy Li Ion Battery Communication Pcb Manufacturer,Pcm For Li Ion/lipo/lifepo4 Battery Pack,Communication Bms 7a Pcm Product on Alibaba.com
it doesn't have enough power to supply the Solo.
 

Attachments

  • 20180225_124622.jpg
    20180225_124622.jpg
    656.2 KB · Views: 199
  • smbus_Sonyisgoodxlsx.txt
    11.3 KB · Views: 31
  • Like
Reactions: Derriell

Members online

No members online now.

Forum statistics

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