Repairing the DJI Spark Drone Battery with DJI Battery Killer, CP2112, & 9V battery

Ok so, it’s 2023, and those of us still flying older DJI drone products are finding a nasty surprise: leave your batteries a few months without charging them – and you risk them becoming bricked. As it turns out, the DJI “Smart” battery has a little chip inside to keep the batteries well maintained, but left alone too long will activate a safety lock out, stopping the battery from being charged.

The symptom for this DJI Spark Battery Repair are LEDs 1 and 2 on your battery flashing a few times, turning off, and then repeating. Sometimes if you leave it overnight the battery will start to charge. If there’s no success in waiting, your battery might be dead.

The official fix by DJI for this issue? “Buy a new battery – £60 thank you very much.

This official fix is one I want to avoid. I really don’t want to be giving even more money to a company whose ethos includes suicidal batteries.

The better fix for this issue? DJI Battery Killer.

The DJI Battery Killer is less killer, more lifesaver. It’s a neat little software that uses a CP2112 Chip to connect your battery to the computer, and allows you to remove the safety lockouts. Thus allowing you to once again charge, and thus repair, the DJI Spark battery!

Left too long, however, and this fix wont work, as it needs at least a little residual battery power to work – but that’s where my nifty 9V battery fix comes in. There are other blog posts and guides on how to fix the battery, but this avoids buying a variable power supply, and is probably cheaper as a result.

As usual, do everything at your own risk, and make sure to follow appropriate safety advice

Requirements

  • DJI Battery Killer Software (download link below)
  • CP2112 Debug Board Often found on eBay. for <£8
  • Micro USB cable
  • Dupoint Wires (M-F)
  • 9V Battery (a new one, preferably)

DJI Battery Killer Download

The DJI Battery Killer Software is managed by a Ukrainian who goes by the name Mixeysan. Who publishes his program through his website at http://master-club.org/drone/software/ (This website is now seemingly dormant, but the Internet Archive link below still works).

Unfortunately, due to the Russian invasion of Ukraine, the website’s uptime has been patchy. The best way to install it, I have found is through the Internet Archive:

https://web.archive.org/web/20221223191927/http://master-club.org/drone/software/

In this guide, I am using the DJI Battery Killer ver.05beta2_01.02.2022.

Step one: Connect the battery to the CP2112 Chip

The pins of the Battery (from left to right) are as follows:

  • Pin 1 – SLC (Clock)
  • Pin 2 – Ground (-)
  • Pin 3 – Positive (+)
  • Pin 4 – Positive (+)
  • Pin 5 – Ground
  • Pin 6 – SDA (data)

Connect the SLC , Ground (pin 2), and SDA to the corresponding pins on the CP2112 Chip. On mine, for some reason, the SLC is labelled SCL. They’re both the same thing. The Battery Killer software has a helpful pin out diagram on the “help” section too, for reference.

It should look like the above image.

Then connect the CP2112 Chip to the computer through the Micro USB cable.

Step Two: Launch DJI Battery Killer and test the connection

With everything connected, launch the DJI Battery Killer programme. In the CP2112 Settings, make sure you select the option for 00ACB847, and click connect. This connects the program to the chip.

Now to log, and click on Read Info.

Option 1: If this works, you will get a read out of the stats from your battery. This will include cycle counts, temperature, current voltages etc. It should look something like this:

If you hit this *Great!* Skip to Step Four.

Option 2: If you’re like me, and you get the below message:

ERROR: Could not perform SMBus read 0x00

First, check your cables and try again. If it still doesn’t work, then it seems your battery doesn’t have enough power to run the commands *sigh*. Ok so here is where it gets fun, go to Step Three.

Step Three. Let’s give the battery some JUICE! ⚡

So here’s the fun thing, if the battery doesn’t have enough charge, you cannot pass go and make the much needed settings changes to remove the flag. After some research, I found you can temporarily power the battery to make the changes with a power supply. (Thank you to Jacques du Preeze on YouTube for that one) I do not have a power supply, and I assume a bunch of you don’t either.

BUT, 9V will just about give you enough of a boost to set the relevant flags. What I did is connect a Dupoint cable to Pin 2 (Negative/Ground), and another to Pin 3 (Positive).

Sorry for the blurry image here, but this took some co-ordination.

Then VERY CAREFULLY hold the connectors (or use some Crocodile clips, if you want to live a little safer) to the corresponding terminals on the 9V battery. Give it a few seconds and if you’re successful you’ll see the LEDs light up on the battery with the error code you’re used to when trying to charge. Making sure to keep the power connected/held in place, test the connection and click Read Info in the software, if you can pull the data move onto the next step.

Step Four: Let’s reset the flags

This bit is dead simple, and very rewarding after all the stress you’ve probably had trying to get the battery to work. Go to DJI Battery Killer and:

  1. Click ‘Unseal/FAS’
  2. Then clear the PF and PF2 flags after each gives you a “Clear PF/PF2 successful!” message.
  3. Reset the chip
  4. Then Seal it.

Step Five. Charge!

After that I disconnected the batteries, and plugged them into my Drone to charge. And it worked without the annoying repeating flash issues! There seems to be only a small reduction in overall capacity, so I’m calling this a huge win.

  1. Hello, I need help with a dji spark battery. I did everything right, but I have negative current values on the reading. Those values are on items 0A and 0B. It happens that the charging process is not normal, and when I manage to charge the cells at 4.2V, the electronics of the battery start with the battery discharge display cycle as if the drone is empty, the led display drops to 1 led bulb. The drone reads the battery as critically discharged, but in fact the battery is still full. I think that the problem is in these negative currents, because when I looked at the course I saw that these values were 0.

    1. Ouch. I’m not quite sure is going on there to be honest. Could be that there’s something wrong with the battery other than low voltage, which the above approach can’t fix. I might recommend you trying to get in touch with a professional who deals with fixing these!

    2. I have also this problem with my one battery and it has 25 cycles only. Long charging is cycled with stops usully two led only are blinking and percentage are not accurate. One time full battery ws as empty 0%. Then I turn it in spark for 30 minutes and take away it from spark to next morning. Next day battery usually won’t turn on, but after connecting to charger I get about 40-50%. I charging it to full voltage but still have around 70% only. It can be used, but sometimes it is not very safe and you must looking to voltage. When you don’t stop flying around 3,45v per cell, battery is quickly discharged and spark falling without warning. Yesterday this full charged battery had 70%. I start it in spark without fly 10 minutes and today battery has 89%. I donn’t know tha it is HW or SW problem. Maybe sometimes it will be accurate and need more cycles.

  2. Liam,

    I purchased my first Spark from an auction site. It arrived with one battery that was bricked.
    After searching, I found your site and, following your directions, ordered the board and wires I needed. I downloaded the program, and after a bit of trial and error -I had to do Step 3, and attempt to clear the PF and PF2 flags a couple of times- I now have a battery charging on the charger!
    Thank you, you’re a life saver!
    If I can figure a way to buy you an Mixeysan a beer (or a coffee), I would!
    Keep up the excellent work!

  3. This revived my 2 spark batteries that I dont use for 2 years. It might require M-M jumper wire for step 3. Thank you for your guide.

  4. Hi. I’m trying to install the software onto a Win7 laptop but when opening I get “SLABHIDtoSMBus.dll” is missing error, I’ve installed the CP2112 drivers from Silicon Labs but still getting the same error, any idea’s?
    Thanks

    1. Only advice I can give it try running it on Windows 10 or above. The programme might be using dependencies only available in newer versions of Windows.

  5. ERROR: Could not write Block to 0x44
    —————————————————————-
    ERROR: Could not perform SMBus read 0x00

  6. I keep running into the error message, “Failed to connect to 9999: HID_SMBUS_DEVICE_NOT_SUPPORTED.” This occurs whenever I try to connect to the CP2112, and I cannot find any information about this particular error other than a handful of others stating they’ve received the same.

    I don’t suppose you’ve seen this before, and/or know of a fix?

    Thanks! -Kevin

    1. I had the same error message. At first I realized i connected the GND cable to UCC by accident, but after correcting that it still didn’t work. I also tried several different micro usb cables and ended up using the original micro usb cable that came with the spark. I also rebooted my PC (Win10) a few times and it just randomly started working. In hindsight it’s possible that my bricked battery voltage was so low that it needed a few minutes of charge from another battery before I could even connect to it.

    2. I have the same exact message, when trying to wake up my Mavic Air battery. Still looking for solution, but it’s good to know that someone else has the same error message. I have fully updated Win 11. I didn’t try the booster battery connection step.

    3. Trying to get my Mavic Air battery out of hibernation, I keep getting the same error. Still haven’t gotten it to work.

      VERY INTERESTING
      The “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, OK?

  7. Liam, I downloaded the batterykiller, same version you indicated (ver.05beta2_01.02.2022), and when the screen comes up with the drop down menu for CP2112 Settings, I don’t get the 00ACB847 as an option to select. I get some random numbers, some 99999s, etc. I have tried closing it down and relaunching the software but this just gives me different random selections, never the 00ACB847. Can you let me know what I might be doing wrong? Many thanks.

      1. Hey Alberto,
        I had the same issue, make sure the CP2112 board is plugged in, you should get an extra code. the one I got was 00661FB2 and it worked.

  8. Thank you for walking through the steps. I had to go through Option 2 above. After connecting the 9V battery and waited for 15-20 mins, the LED lights would not come on. I checked all the wiring connections which looked ok. At this point, I am thinking if it is time to get rid of the battery.

  9. Hi,

    Can someone help me please.

    I tried to download the program DJI battery Killer and it was impossible for me to find that sofware.

    Your help will be ma last solution 🙂

    Thank you in advance,
    Stephane

  10. This saved 2 of my spark batteries Great idea with using the 9v battery to give them a bit of temporary life

  11. Hi there, could you comment on the this error while clicking on the “Connect” button in DJIBatteryKiller program: “ERROR: Could not open device”. How do I go about it?
    Thank you!

  12. Hi Liam, I always get the SMbus read 0x00 Error. Also with my only funtional battery that is charged. I have a Mini 2 and currently not sure how to proceed. Any idea how I could solve this?

  13. Hi Liam, I got everything to connect the batteries. However, I get the 0x44 Error when reading. The 9v method did not work and I also get that error when using my charged battery (used to see if I wire correctly..). Any tips hop to deal with this?

  14. Worked great for one battery. It is charging now. For those not seeing 00ACB847 use the other code in there instead. For mine I saw and used 00ACB847 and was able to connect. Make sure you use an absolutely fresh 9V battery and I mean brand new. I tried using one that was older but unused and it did not provide enough power. Tried a newer one I had and that worked! The first battery I have is now charging. Once charged I will work on the second battery I have. Thanks for the guide!

  15. Tried to use the software to repair a Spark battery. The program starts but only refers to a Mavic battery. There’s a mavic dll in the download but no mention of Spark. Any ideas on where the 00ACB847 can be found?

  16. Update on prior post. Used the 9v battery and got the two green flashing lights on the battery. No 00ACB847 is available, just 00EBC4CA. Error messages are can not read block 0x44 and SMBBus read 0x00. Using the same version of killer app as shown in the instructions (DJI Battery Killer ver.05beta2_01.02.2022 with DLLs) and the pins are connected correctly.

    Any ideas to get this to work with the Spark battery?

    regards
    GaryD

  17. Just managed to revive 2 of my batteries that had been sitting for years. It didn’t quite go as smoothly as I would have hoped but they’re both charging again! Thanks for the write-up.

  18. Thanks Liam, I’m stoked that you published this how-to, you helped save another Spark battery! You rock!

    I ran into some issues during the repair but I think letting it stay connected to an external battery for a bit longer to get some juice into the old battery before trying to connect again may have helped.

    I had to install the MS Visual C++ 2015 Redistributable.

    I had to click the unseal button a couple of times and the PF button twice too, got messages like unable to unseal, error: could not clear PF, so i just kept pressing them until it worked lol

  19. Hi Liam, I have a Mavic Pro and I also get the error

    ERROR: Could not write Block to 0x44
    —————————————————————-
    ERROR: Could not perform SMBus read 0x00

    I assume indeed is the battery that is very low. When I try to execute the step 3 from your guide using a 9v battery I notice the 9v battery was getting super hot but I did not get any lights on on the dji battery. In the killer program when I click help I see that it has a lot of positive and negative spots to connect, do I need to do them all at once or need to be one in particular. do you know that?

  20. Liam, do you have experience with reviving Phantom 3 batteries? I would like to know if the CP2112 board will work with the BQ30Z55 chip in the Phantom 3 batteries along with the DJI Battery Killer program. Thanks

  21. This guide is AWESOME! I saw some YouTube videos and a guy had the link to the CP2112 and a batter adapter board for the Spark. I wired it up and it wouldn’t connect because the battery was dead. I have a 12V power supply so I soldered leads onto the batter adapter board and it worked – sort of. After messing around a little I tried a different micro USB cable that I KNEW was a good quality data cable (most are just charging cables) and it worked perfectly! Your guide made it so easy! You can get the battery adapter boards here and it was less than a week to get it.
    https://www.aliexpress.us/item/3256804096035988.html?spm=a2g0o.order_list.order_list_main.80.562c18026DhCoK&gatewayAdapt=glo2usa4itemAdapt

    You select your particular board in the “Color” option of the order page.

    Thanks for such a great guide! this worked on 3 of my 4 batteries, the 4th one is just dead completely.

  22. Just an update if anyone is wondering if this still works, it does. I saved all 3 of my spark batteries after no use for 2 years.
    Once I downloaded DJI battery killer the settings of 00ACB847 were not there, the one I had was 00661FB2 and this worked. All 3 batteries I had to use the 9v battery option.
    I had to Unseal and clear PF, PF2 a few times to get it to work correctly.
    Thanks Liam, you saved me a few hundred dollars

Your email address will not be published. Required fields are marked *