DJI Mavic, Air and Mini Drones
Friendly, Helpful & Knowledgeable Community
Join Us Now

Surprised there is no third party solution to the Android charging from controller problem.

I get no charging icon, or battery loss on the RC after 20 minutes flying using a Pixel 4XL, so it seems that the voltage supplied via USB is too low to initiate charging on the phone, therefore it doesn't see the RC as a "powerbank" and ask it to ramp up the power.
How does the pixel respond to being connected to a PC? A standard USB port on a PC would put out 500mA. Granted many PCs/laptops can supply higher currents on their USB ports.
 
How does the pixel respond to being connected to a PC? A standard USB port on a PC would put out 500mA. Granted many PCs/laptops can supply higher currents on their USB ports.
I only have laptops with USB 3 so it charges.

edit: I got below 75% on the phone and the charging symbol happened, but it still didn't drain the controller much at all. :(
 
Last edited:
I removed the insulation on the USB cable, cut the red cable and soldered a 100 ohm resistor in series. This allows enough voltage to pass through the cable to keep the USB connection alive, but reduces the charging amperage to the minimum. Although the Android battery icon shows the phone is charging, the charge percentage isn't growing. In this mode, the Mavic 2 controller discharges at a rate of 1% per ~3 minutes.

For comparison, when I leave the controller on without any USB connection, it still discharges at a rate of 1% per ~3 minutes.

A simple resistor does the job quite well.

Tested on Samsung A50 and a Mavic 2 controller, but I am expecting similar results on Mavic Mini.
 
Last edited:
On Samsung flagship phones, Dial ##3282#. This will bring up Data Programming. Select edit. MSL Pass code is 000000. Select usb charging. Then select disable. Phone will no longer charge from usb. Just remember to select enable when you are done flying. Phone will also reset this setting when it is restarted and will still charge wirelessly if your phone is capable.
 

Attachments

  • Screenshot_20191207-165309_IOTHiddenMenu.jpg
    Screenshot_20191207-165309_IOTHiddenMenu.jpg
    189.4 KB · Views: 24
  • Screenshot_20191207-165342_IOTHiddenMenu.jpg
    Screenshot_20191207-165342_IOTHiddenMenu.jpg
    90.7 KB · Views: 24
  • Like
Reactions: Thomas B
I removed the insulation on the USB cable, cut the red cable and soldered a 100 ohm resistor in series. This allows enough voltage to pass through the cable to keep the USB connection alive, but reduces the charging amperage to the minimum. Although the Android battery icon shows the phone is charging, the charge percentage isn't growing. In this mode, the Mavic 2 controller discharges at a rate of 1% per ~3 minutes.

For comparison, when I leave the controller on without any USB connection, it still discharges at a rate of 1% per ~3 minutes.

A simple resistor does the job quite well.

Tested on Samsung A50 and a Mavic 2 controller, but I am expecting similar results on Mavic Mini.

Any flights using the cable?
 
On Samsung flagship phones, Dial ##3282#. This will bring up Data Programming. Select edit. MSL Pass code is 000000. Select usb charging. Then select disable. Phone will no longer charge from usb. Just remember to select enable when you are done flying. Phone will also reset this setting when it is restarted and will still charge wirelessly if your phone is capable.
Get invalid MMI code on Galaxy S8+
 
I use an Android Huawei phone as my Go4 controller. It's running Android version 9.
I have been able to go into the Settings / System / Developer Options / Debugging - menus, and switch on the facility "Always prompt when connecting to USB".
I use the USB2.0 socket in the base of the DJI Controller to connect my phone - and when connected, the phone pop's a window with 3 options - headed:
Use USB to:
- and with 3 options -
Transfer photos, Transfer files, Charge only.
I select 'Transfer files' and the phone doesn't seem to charge the controller after that.
 
On Samsung flagship phones, Dial ##3282#. This will bring up Data Programming. Select edit. MSL Pass code is 000000. Select usb charging. Then select disable. Phone will no longer charge from usb. Just remember to select enable when you are done flying. Phone will also reset this setting when it is restarted and will still charge wirelessly if your phone is capable.
That will work for some Samsung models, on some carriers.
 
On Samsung flagship phones, Dial ##3282#. This will bring up Data Programming. Select edit. MSL Pass code is 000000. Select usb charging. Then select disable. Phone will no longer charge from usb. Just remember to select enable when you are done flying. Phone will also reset this setting when it is restarted and will still charge wirelessly if your phone is capable.
Not working on Note8
 
The only problem with Android devices ... Android is open source leading to multiple versions, including DJI’s... so not all capabilities are available on all devices
 
People have tried dropping the 5v, didn't work. Android implement wants to see 5v on the power line to enable data.
This depends on hardware used for the USB interface is well as the Android software implementation. DJI has to go by the lowest common denominator and that is to provide 5v@500mA on the power bus.
 
People have tried dropping the 5v, didn't work. Android implement wants to see 5v on the power line to enable data.
This depends on hardware used for the USB interface is well as the Android software implementation. DJI has to go by the lowest common denominator and that is to provide 5v@500mA on the power bus.
So you think the board I linked is not active component?
If so, pretty useless :)
 
Based on what I've read it looks like it is possible to use a resistor to prevent or limit the charge, don't see anything to suggest it is going to be a one size fits all affair.

Short list or the list?
36 ohm in the ground leg for one poster iirc
330 ohm for Galaxy S7 and Nexus 7
100 ohm for jazzy joe above and his device

Trail and error with a range of resistors on hand, swap em out until hit on the correct range for a given device?
 
So you think the board I linked is not active component?
If so, pretty useless :)

Appears to be active, anyone have the software to look over the supporting files?

Little more to it than to be just a simple pass through block?
 
The only thing showing in the project is the board you can order, a zip file containing the files to have the board made, and project description suggesting all that needs to be done is cut the power.

If you look at the picture labeled "top", it only shows pads labeled 2, 3 and 4. One is missing. The two pads above and below 2 and 3 are connected. 4 pads are connected to the ground plane on both sides of the board.

Even the description has "Drop +5 from USB to fix Android issues". That may work in some Androids, but not all, probably not even most.
 
Based on what I've read it looks like it is possible to use a resistor to prevent or limit the charge, don't see anything to suggest it is going to be a one size fits all affair.

Short list or the list?
36 ohm in the ground leg for one poster iirc
330 ohm for Galaxy S7 and Nexus 7
100 ohm for jazzy joe above and his device

Trail and error with a range of resistors on hand, swap em out until hit on the correct range for a given device?
That's probably the size of it. Perhaps an active circuit could be developed to actively limit current to a specific value but that likely will cause voltage to drop on the Android side when the Android tries to draw more current for normal charging, which then may cause the Android to drop the USB data connection.

I need to get a USB voltage/amp meter.

Basically using ohms law, and assuming a dead short on the Android to calculate max current, 560 ohms limits current to 9mA. This seemed to work initially, but later was found the Android bouncing USB connection. Not sure if that was just charge state or data was also affected.
56 ohms would limit current to 90mA max.
33 ohms, 150mA max.
Note though that max current is just that. The Android could see the limitation and back off putting a full load for charging even at 150mA limit.
Remember too, RC already limits current to 500mA so 150mA is only a 30% reduction.
 
That's probably the size of it. Perhaps an active circuit could be developed to actively limit current to a specific value but that likely will cause voltage to drop on the Android side when the Android tries to draw more current for normal charging, which then may cause the Android to drop the USB data connection.

I need to get a USB voltage/amp meter.

Basically using ohms law, and assuming a dead short on the Android to calculate max current, 560 ohms limits current to 9mA. This seemed to work initially, but later was found the Android bouncing USB connection. Not sure if that was just charge state or data was also affected.
56 ohms would limit current to 90mA max.
33 ohms, 150mA max.
Note though that max current is just that. The Android could see the limitation and back off putting a full load for charging even at 150mA limit.
Remember too, RC already limits current to 500mA so 150mA is only a 30% reduction.
The active solutions exist- one example here http://www.ti.com/product/TPS2552D
 
Lycus Tech Mavic Air 3 Case

DJI Drone Deals

Forum statistics

Threads
131,134
Messages
1,560,194
Members
160,105
Latest member
anton13