How to fix your DJI drone battery using the CP2112 with DJI Battery Killer
Introduction
Welcome to our comprehensive guide on resolving battery issues with DJI drones. If you’ve been experiencing problems such as battery not charging, overheating, or requiring firmware updates, you’re in the right place. Whether you own a Mavic Mini, Inspire 1, Phantom, or any other DJI drone model, we’ve got practical solutions and DIY tips to address these common concerns. You’ll also learn valuable insights into battery storage, maintenance, and model-specific fixes. Get ready to optimize and elevate your drone’s battery performance, ensuring trouble-free flights.
In this post, we’ll delve into a software-based solution for tackling BMS (Battery Management System) issues by addressing power failure flags, often referred to as “pflags.” When a power failure is detected, the BMS activates to safeguard the battery. This can occur if power levels drop below a specific threshold or if cell connections are disrupted.
We will guide you through a straightforward and effective drone repair method using the DJI Battery Killer and CP2112 Adaptor.
Bid farewell to battery charging complications, overheating woes, and more. Regain the skies with your drone by following this uncomplicated yet powerful repair process. Let’s embark on the journey to get your drone soaring once again.
DJI Drone Batteries
DJI drone batteries are renowned for their intelligence. They feature advanced components like the Battery Management System (BMS), responsible for monitoring critical parameters such as voltage, temperature, battery health, communication with the drone, safety mechanisms, hibernation mode, and an optimized design.
These intelligent features contribute to enhanced performance, increased safety, and the extended lifespan of your batteries, ensuring a superior flying experience.
DJI Mavic Air Battery Specifications
Capacity: 3500 mAh
Voltage: 11.55V
Energy: 40.42 Wh (typical value)
Battery Type: LiPo 3S
Charging Voltage Limit: 13.2 V
Discharge Temperature: -10° to 60°C (14° to 140°F)
Charge Temperature: 5° to 40°C (23° to 113°F)
Charging Time: Approximately 55 minutes (using a DJI charger)
Weight: 140 grams
Compatibility: Specifically designed for DJI Mavic Air drone
DJI Mavic Mini Battery Specifications
Model: BWX161-2250-7.7
Nominal Capacity: 2250 mAh
Battery Type: LiPo 2S
Nominal Voltage: 7.7 V
Charging Voltage Limit: 8.8 V
Charging Temperature: 5°C to 40°C (41°F to 104°F)
Maximum Charging Power: 29 W
Applicable Model: DJI Mini 2S Drones
CP2112 Adaptor – USB TO I2C DEBUG BOARD
The CP2112 Adaptor serves as a crucial bridge between your USB-enabled computer and I2C devices. It enables seamless communication by translating USB-to-I2C data protocols, making it an indispensable tool for interacting with I2C devices, including DJI drone batteries.




CP2112 Adaptor Pinout
VCC: Power supply voltage.
GND: Ground.
SDA: Serial Data Line.
SCL: Serial Clock Line.
WAK: Wake-up pin.
INT: Interrupt pin.
RESET: Reset Pin.
The CP2112 acts as the intermediary between your computer and the battery’s BMS. It communicates with the BMS through SDA and SCL connections. The BMS serves as a crucial safety feature, protecting both the user and the battery in the event of power disruptions, disconnections, or short circuits.
Connecting the Battery with CP2112
To establish a connection between the interface and the battery:
Identify the battery’s pinout.
Connect the GND pin of the CP2112 Adapter to the negative terminal of the battery.
Connect the SDA pin of the CP2112 Adapter to the battery’s data line.
Connect the SCL pin of the CP2112 Adapter to the battery’s clock line.
Double-check all connections.
Download and Setup DJI Battery Repair Tool – Battery Killer
This software solution has been meticulously developed to unlock DJI Mavic batteries that feature bq9003 (bq40z307) chips, using the reliable CP2112 HID USB to SMBus/I2C adapter.
Next, establish a connection between the USB interface and your Windows computer using a micro USB cable.
Open the software and click on the “Connect” button. A successful connection and data retrieval indicate effective communication with the BMS.
To fully restore your battery’s functionality:
Click on “Unseal” to remove the seal on the battery.
Proceed to click on “Clear PF” to eliminate any power failure flags.
Follow up with “Clear PF2” to address additional power failure flags.
Finally, click on “Reset Chip” to reset the battery.
By following these steps, you can successfully unlock your DJI battery and resolve any related issues.
DJI Drone Charging Resolved
Comments (5)
I got a CP2112, downloaded the battery killer program, and tried to connect the “dead” battery but got a “device unsupported” message might be explained by not getting the battery talking to the CP2112, BUT
I get the same error when the CP2112 is plugged into a USB port on my Win11 Pro laptop, with ==NOTHING==
CONNECTED TO THE CP2112 BOARD!!
Clearly this has nothing to do with the battery! This is an issue between the board and my laptop…a pretty “vanilla” setup. My OS is fully up to date. That makes me suspect that the problem is in the software.
Does anyone know of a way to determine if the OS to board interface, Is OK?
Hi Henry,
Just to clarify one point first: the battery killer software itself does support the CP2112 when the device is enumerating correctly — so the “unsupported” message usually means the software can’t see a valid CP2112 interface, rather than the CP2112 being fundamentally incompatible.
Since you’re getting the same message with nothing connected to the board, that does point away from the battery and toward an OS / driver / HID interface issue.
A few things worth checking:
1. Device Manager enumeration
With the CP2112 plugged in (no battery connected), open Device Manager and check under Human Interface Devices (HID) or USB devices.
You should see something like “Silicon Labs CP2112 HID USB-to-SMBus Bridge”.
If it’s missing, shows as Unknown device, or appears/disappears when reconnecting, the driver isn’t loading correctly.
2. Silicon Labs CP2112 driver
Even on Windows 11, it’s worth installing or reinstalling the official Silicon Labs CP2112 driver package.
Windows will often load a generic HID driver that works at a basic level but doesn’t expose the interface correctly to higher-level software.
3. Confirm CP2112 access outside the battery killer software
As a sanity check, try Silicon Labs’ own CP2112/SMBus utility.
If that tool can see the device and read basic information, then the OS ↔ board interface is OK and the issue is isolated to how the software is accessing the HID device.
If Windows never detects the CP2112 correctly in Device Manager, then the problem is definitely at the driver or USB layer rather than anything battery-related.
Hopefully that helps narrow it down.
Thank you so much for your response. It appears that the problem is in the interface to the 2112.
There are no entries under HID or USB Devices in Device Manager containing anything like Silicon Labs, CP2112, HID USB, SMBus , or Bridge. My CP2112 came with a short cable, which I plug into a traditional full sized USB port on my laptop. I plugged in a voltage checker and confirm that the port is hot, yet plugging in or removing the CP2112 doesn’t appear to do anything – I’d expect something to pop up on the Device Manager. It seems that the USB port might be defective, but I’ve had no problems reading USB Memory sticks, and it does have 5v.
I have up to date Win11, but decided to try to install the Silicon Labs driver found at https://www.silabs.com/development-tools/interface/cp2112ek-development-kit?tab=software-tools. From there, I downloaded the the package for Windows – https://www.silabs.com/documents/public/software/USBXpressHostSDK-Win.zip, and ran the Setup Wizard.
To run the example, I found that SDK extraction produced a branch on my main drive : “C:\SiliconLabs\USBXpressHostSDK\CP2112\Release\x86\HidSmbusExample.exe”
Iran that file, and tried to connect, each time getting the HID SMBUS DEVICE NOT SUPPORTED ERROR.
There are 5 connections available in the drop down, two are for 9999, and 3 are strings of the same characters
i did just notice in Device Manager, under HID, I2C HID Device, and Device properties shows “This device is working properly”. This entry is there in DM even if the CP2112 is unplugged.
ANY MORE IDEAS???
I checked Device Manager in both HID and USB devices, and found no entries for Silicon Labs or CP2112. plugging the CP2112 into the USB port on the laptop, and removing had no apparent effect in Device Manager
I’m running current Win 11 Pro, don’t know of any hardware problems (and memory cards work in that port), so I decided to try download of drivers from Silicon Labs. From https://www.silabs.com/development-tools/interface/cp2112ek-development-kit?tab=software-tools, I downloaded USBXpress Host SDK for Windows. Unzipped the file to get the Host SDK setup wizard, which created a branch on my HD named SiliconLabs, and I assumed installed drivers from SL. I did a reboot and I went back to the Device manager and there was no change.
It’s as if what I did DID NOT install new drivers. HELP!
Hi Henry,
Thanks for the detailed follow-up — that helps narrow things down quite a bit.
At this point, the biggest clue is actually this part:
plugging in or removing the CP2112 doesn’t appear to do anything in Device Manager
A healthy CP2112 should immediately enumerate in Windows when plugged in, even with absolutely nothing connected to the SMBus side. You would normally see either:
“Silicon Labs CP2112 HID USB-to-SMBus Bridge”
a new HID device appearing/disappearing
or at minimum an “Unknown USB Device” event
The fact that absolutely nothing changes in Device Manager strongly suggests Windows is not seeing the CP2112 hardware enumerate at all.
A few things to try next:
Try a completely different USB cable
A surprisingly large number of the short included cables are power-only or develop broken data lines. Since the port provides 5V, the board may still power up without USB data actually working.
Try a different USB port (preferably USB 2.0 if available)
Some HID bridge devices behave oddly on certain USB 3 controllers.
Watch Device Manager live while plugging/unplugging
Open Device Manager and leave it visible while reconnecting the board. Even an unsupported or faulty device usually causes the list to refresh briefly.
Check whether the board itself has a power LED
If the board has an LED, confirm whether it lights consistently when plugged in.
The “9999” entries in the Silicon Labs example utility are not normal CP2112 enumeration results
That usually indicates the utility is not communicating with a valid HID SMBus bridge device.
At this stage, I’m leaning more toward:
USB cable issue
faulty CP2112 hardware
or USB enumeration failure
rather than a Windows 11 driver problem.
One quick test that would help a lot:
If you have access to another PC (even briefly), try plugging the CP2112 into it and see whether Windows detects anything at all when connecting/disconnecting the device.
That would immediately tell us whether the issue follows the board or stays with the laptop.