Hey, are you the owner of a DJI Drone, and facing issues like the battery LED lights not glowing, DJI battery not charging, battery not working, battery hibernating or battery voltage down and locked the BMS? Here are the steps to repair and rescue it and make it work again in no time with our new DJI Battery unlocking tool which is easy to use.
In this Article you get, DJI battery repair tools which unlock the battery not working or not charging. Battery PF removal can be done through this by using DJI Arduino unlocking tool. A detailed tutorial with videos are provided.
DJI battery and its features
DJI named its battery as an intelligent battery as it has a Battery Management System which monitors everything like cell voltages, temperature, battery health and send it to the drone to display them on the remote controller. Not only monitoring but it also performs safety features like charging the Li-Po cells in limits accordingly, and discharging them automatically when not used for long time to increase the life of them. It also monitors the voltage fluctuations if a battery is malfunctioning and creates power failure Flags which locks the BMS and makes the battery to hibernate and not responsive.
Even when you store the battery for more than 3 to 6 months without using in between they switch to hibernation mode. This mode makes the battery unresponsive to push buttons and they wont even charge. This makes us very frustrating there are no easy tools available to get them back to normal state. So, here we came with a very easy tool which can unlock the battery by removing the error flags raised and make your battery work again.
DJI Battery Specifications
- BMS Board supported: BQ9003
DJI Battery Pinout diagram
From the above DJI battery pin diagram you can see the batteries have SDA and SCL these are the serial communication pins through which we will access the data and write data into the board. Also we have + and – pins.
Required Components:
Product Name | Quantity | ![]() | ![]() |
---|---|---|---|
Arduino NANO | 1 | https://amzn.to/3jVNZON | https://amzn.to/3KpUQry |
Few Connecting Wires | https://amzn.to/3H2BV4e | https://amzn.to/3J0WVu2 |
Connecting with Arduino
Now lets connect the battery to Arduino with the help of below circuit diagram.
Here we are using Arduino NANO board, you can even use Arduino UNO as well the pins are same and very simple. Just take 3 jumper wires and connect them here we are showing an example with Mavic Air battery you can connect the same with other batteries but check the pinouts and connect them carefully.
So for the Air battery A4 from Arduino which is SDA is connected to Pin 5 which is SDA of battery and A5 from Arduino which is SCL is connected to Pin 6 which is SCL of battery. And finally the GND pin from Arduino is connected to any of the 1,2,3,4 pins.
DJI battery Unlocker Tools Version 3
Download the Tools and Files
Please scan the below QR code or Pay through the link(Email support included):
- supported devices: Mavic 2, Mavic Air 2s/2/1, Mavic mini SE/2/1 and Spark batteries. (MAVIC 3 not working)
- Download exclusive Version 3 Code : here
- This software works only with Windows. Mac is not supported. If you know AVRdude you can proceed on macOS here is tutorial : How to Upload a .hex File to Arduino on macOS Using AVRdude
- Password for Zip file: circuitschools
Table of Contents
If you have any issues or you are from India, please contact us at circuitschools@gmail.com
Upload Hex File using AVRdudess
After downloading the files extract it to a folder, Install AVRdudess tool (Provided in the downloaded files). After installing AVRdudess, open it and the interface looks like the below screenshot.
- Download AVRdudess : link
- Install AVRdudess Video Tutorial : https://www.youtube.com/watch?v=oNaQ5Ehbpsk
- Step1: To upload the HEX file, first Choose programmer as “arduino…” as we are using Arduino nano,
- Step2: next choose the Port where our Arduino is connected.
- Step3: In the Flash section Choose the Hex file which we named as ” DJIUnlockerversion3Firmware.hex”
- Step4: Hit Program button to start uploading it to Arduino. When its done Follow the next steps.
DJI Battery Unlocker Version3 Tool
After uploading the HEX file open “DJI_Battery_Unlocker_Version3.exe” file which is the main tool through which we can check the battery info, Clear PF of our batteries to make them work like normal again. and we can also reset the cycle count from it. When you open it looks like the below screenshot.
After opening this tools, we need to connect Arduino by choosing the PORT and click on connect button. When its connected you can use the other functions.
Battery Info: Displays all the important details about the battery like manufacture dates, Serial numbers, all the voltages and currents, cycle count, and more.
Start Unlock: Clears PF flags and recovers the battery to normal mode.
Reset Cycle Count: Reset the cycle count of the battery to Zero(0).
Stuck at Battery not connected Please Check wiring ?
Sometimes even when connecting everything perfectly gives this error, please check the below reasons why you get this.
Reason:
The battery has 2 or 3 cells in it, each cell voltage has to be above 3.85V to make the nominal voltage of the battery BMS. This means as the battery BMS functions only if it cells give above nominal voltage, as we kept our battery unused aside for long period the voltage dropped and created a PF flag and locked down. Even if you try to charge with DJI charger also, nothing will work.
Solution:
Solution is simple, just we need to charge the cells to increase the voltage to make the BMS work again and remove the PF flag. To charge the cells we need remove the outer plastic hard cover to expose the BMS. Here we need a cheap and magical chip TP4056 Li-ion charging chip. We need to charge each cells according to the below image, and remember to charge all cells equally which means all should be at 3.9v or 4v, check the voltage with multimeter.
Here I have Mavic Air battery so, showing it as an example. Generally all the other batteries are also nearly same, some mini batteries have 2 cells instead of 3, so their voltages will be different. But all of them uses Li-Po cells (3.7-4.2V) so calculate according to it.
As you can see from the above image the outer cover of the battery is removed so that the BMS Chip is visible. Its BMS has a lock sensor which checks whether battery is fixed inside the drone or not. It also has a temperature sensor attached between batteries to monitor the heat from the batteries while charging and discharging.
Charging cells externally video tutorial: https://youtu.be/eQHaXV3gcBo?t=378
If you have a lithium Balanced charger you can charge them directly.
- Buy TP4056 from this link : https://amzn.to/4hoeEMu
- Multimeter : https://amzn.to/3CoOg6s
With TP4056 use a very slow charger which outputs near 500mA, otherwise the chip gets heated. connect the pins one after the other to individual cells according to the polarity.
After charging the individual cells check for voltage across cell1 + and cell 3 – this should be above 11.55v as we have 3 cells. if done connect the Arduino and open the Unlocker tool, the battery will be detected and gets unlocked.
FAQs: Fixing DJI Battery Issues
Q1: Can I repair a swollen DJI battery?
A: No. Swelling indicates physical damage—replace the battery immediately.
Q2: How do I prevent hibernation mode?
A: Charge batteries to 50% before storage and recharge them every 3 months.
Q3: Is the unlocking tool safe?
A: Yes! The tool is just used to read the data reset PF flags and reset cycle counts. To avoiding any risks connect exactly as stated. We are not responsible for any type of damages.
Video Tutorial:
If you like this project please subscribe to our YouTube Channel “Circuit Schools“ to encourage us to publish more interesting projects. If you have any doubts write to us from below comment section.
hi there, I run the AVRDUDESS (with admin privileges as well) but “Program” button seems greyed out?
Had you loaded the .hex file and chose programmer as Arduino. For detailed tutorial check this video: https://www.youtube.com/watch?v=oNaQ5Ehbpsk
I have achieved all the steps to start the repair process however it would appear my battery is completely dead so I have ordered the TP4056. I read through my research I could connect a 12v battery to kickstart the process. I really am not electronics minded and am cautious of causing a loud bang or explosion lol. Your instructions are so easy to follow. Excellent and thanks
Connecting 12v may work but as the batteries are LiPo, they should be charged carefully to avoid surprising hazards like swelling or even explosions. So, even if the process takes longer going in safer process is good for everyone.
Thank you for creating a very good product.
if
I ask.
My model is an old DJI Phantom 4.
Does it also work with Phantom 4 batteries?
I would like to purchase it if it is available for use with Phantom 4 batteries.
Have a nice day always.
Sorry brother, This tool doesn’t support Phantom batteries.