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

Battery charge cycle counter

After running character recognition on the image and google translate on the output I get the following text

"DJI Intelligent Flight Battery Cycle
The number in the battery accumulates the nominal capacity
One will be added at about 75%"

It would be interesting to know if the process and translation are accurate? If so, are the mini batteries classed as "intelligent"?

Good opening question/post Scro
 
Last edited by a moderator:
  • Like
Reactions: scro
The MM user manual repeatedly calls them "intelligent flight batteries". Not quite as intelligent (ie auto discharge for storage) as the batteries for the larger mavics though.
 
Ta. The lack of self discharge is why I was questioning their 'intelligence'.
 
Does anyone know what specifically counts as a charge cycle for the batteries?
Since the circuitry and firmware in the batteries is proprietary, only DJI can accurately answer this question. There is a logical way that it "should" be done based on battery studies, but DJI can make that charge cycle reflect anything they want to. The rest of us can speculate or do controlled scientific testing in order to reverse engineer the charge count meaning. Typically it would be a cumulative charge percentage, where each 100% cumulative charge would equal one charge cycle. So two 40% charges and one 20% charge would ad up to one full charge cycle. This straight forward method isn't the best method either since the top end of the charge (closest to 100% charge level) puts more stress on the battery and will shorten its life more. So if you consistently charge a battery to 80% instead of 100%, it will give you a longer life and more cumulative usable time.

I suspect most people only put 70%-85% of a full charge in each time they charge as they'll stop flying well before getting to 0%. Does this mean that the charge counters aren't counting every time the battery is charged then?
EXACTLY

And has thins been proven by testing/observation or reverse engineering the battery monitoring firmware,
I have not seen any such study.

Ok, it turns out that someone has asked DJI technical support in China and got the following info : the counter is incremented for every cumulative mAh discharged equal to 75 % of the battery capacity
I take this with a grain of salt since DJI technical support has been known to give out incorrect information many times. Unless it comes directly from their engineers in an official paper, I would not trust that as being accurate in any way.

OVERALL though, my answer is that the charge cycle count should be used only as a very broad indication of battery viability. Look at your cell voltages under load to see how the battery actually behaves and you will know how healthy that battery is.
 
Typically it would be a cumulative charge percentage, where each 100% cumulative charge would equal one charge cycle. .....This straight forward method isn't the best method either since the top end of the charge (closest to 100% charge level) puts more stress on the battery and will shorten its life more.....

This is very much in line with the answer given by DJI technical support don't you think ?
 
Last edited:
reading the datasheet of the BMS gives those informations :

Based on the [CCT] bit setting, the device uses accumulated discharge of FullChargeCapacity() or DesignCapacity() * (Cycle Count Percentage) to increment CycleCount()

While the CycleCount Percentage is a parameter of the firmware.

In other words, assuming this parameter is set to 80%, there is one "cycleCount" increment everytime the accumulated discharge reaches something like 80% of the full charge capacity
 
Do you have a copy of the BMS datasheet available? Is that from the chip manufacturer, rather than DJI?
 
Do you have a copy of the BMS datasheet available? Is that from the chip manufacturer, rather than DJI?
Not at home right now, but search for bq40z50 or bq30z55.
They are both from Texas instruments and more or less based on the same functionnalities...
 
  • Like
Reactions: scro
Thanks @aeropic! Found them and had a read and learnt a thing or 2 about battery management chips ?. That's the kind of information that substantiates claims - ie the "reverse engineering" reference of my original post.

Is it confirmed it's one of these chips in the MM battery packs? I can't find a teardown that actually identifies the chips inside the battery pack. I don't want to risk destroying one of mine just to find out.
 
  • Like
Reactions: aeropic
Thanks @aeropic! Found them and had a read and learnt a thing or 2 about battery management chips ?. That's the kind of information that substantiates claims - ie the "reverse engineering" reference of my original post.

Is it confirmed it's one of these chips in the MM battery packs? I can't find a teardown that actually identifies the chips inside the battery pack. I don't want to risk destroying one of mine just to find out.
Yes, it is 99% sure it is one of those chips, at least they behave very close to those chips in terms of I2C exchanges...
In fact my words "reverse engineering" were refering to what I had in mind and succeeded to make... See my other post : do you want to fly with any batteries ?
20200625_194534_resized.jpg

Or on thingiverse : Mavic Mini : B0B (fly any Battery with no BMS) by aeropic
 
  • Like
Reactions: scro
Nice bit of work on the BOB projectThumbswayup If I ever needed an extra battery I'd be very inclined to have a go at making one. My current set of 3 batteries last much longer than my better half's patience so having more doesn't bring much benefit to me.?
 
  • Haha
Reactions: aeropic
Or perhaps a different DJI drone? The text doesn't seem to specify which "intelligent flight battery" it relates to

Really it does not matter too much as all DJI batteries based on Texas Instruments Fuel Gauges which have same philosophy across their bq-line battery monitors.
Just for reference some extracts from bq30z55 datasheet (DJI Mavic Pro, Phantom 3, 4 Intelligent batteries)
The main parameters in the firmware is Cycle Count Percentage value which 90% by TI but reduced to 75% by DJI.
TI_GG_CC_logic(1).jpg

Next generation of TI Fuel Gauges (DJI Mavic Air, Air 2, Mavic 2 Pro/Zoom/Enterprise, DJI Mavic Mini, DJI Spark intelligent batteries) has extra setting bit in the IT Config called CCT which select whether Full Charged Capacity or Design Capacity should be taken as basis to calculation.
TI_GG_CC_logic(2).jpg
TI_GG_CC_logic(3).jpg

Again, here DC is TI deafult settings but DJI most likely has set this bit to FCC.
 
Last edited:
  • Like
Reactions: scro and aeropic
I have found that irrespective of charging/discharging, I can fly/discharge my batteries down to 24 %, turn my drone off and the controller, immediately turn the controller and the drone back on still at 24% and the battery count which was 39 is now 40.

Does anyone have an explanation for this?

WDK
 
It's due to accumulative discharge has passed preset value of 75% of battery capacity, in your case 100 - 24 = 76%, so cycle count is incremented by 1.
 
@WDKZoom Quite possibly the counter only updates on a power down/power up cycle.

I would agree with that as what is happening, however I read many times that the battery will counter is only activated by a charge of 80% or more.

I maintain my batteries on the same cycle. When two of them are at 5 and the third is at, I use to hold the two back and just fly the third until it catches up. Now I know I have but to power it down and back up again to achieve the same count but that should not be according to what I have read.

WDK
 
How I understand that the counters work by recording the amount of discharging the battery has done, and increment by 1 each time the battery has done a set amount of discharging (typically 70% or 80% of a full discharge - the amount can often be customised by the manufacturer).

It could be that the switch off then on cycle flushes thru the current counter status to the Fly app. Eg. if while flying you've clocked the counter up by 1 this may not get transmitted to the App immediately, but when you power down and then up again, on startup the app asks the battery for charge cycle count and only then gets the new value.
 
How I understand that the counters work by recording the amount of discharging the battery has done, and increment by 1 each time the battery has done a set amount of discharging (typically 70% or 80% of a full discharge - the amount can often be customised by the manufacturer).

It could be that the switch off then on cycle flushes thru the current counter status to the Fly app. Eg. if while flying you've clocked the counter up by 1 this may not get transmitted to the App immediately, but when you power down and then up again, on startup the app asks the battery for charge cycle count and only then gets the new value.

That’s a good theory. I am not sure this will prove it. I cycled that last battery as I did because I wanted to see if it would go 40 even with my other two and it did. It should have been 40 anyway I thought but while flying it read 39. Now they all read 40 so when I charge them again, they should go to 41 on take off but if your theory is correct the app should read that one battery as 42.....if they are all 41 then it’s back to why. I suppose I could shut everything off and back on again after landing and see if I get a count but I will only try that if the count is not the same.?

WDK
 
I can confirm this theory. From my experiments with B0B under a logic analyser of the SMbus I remember that the cycle count is fetched just once after startup. it is then frozen...
 
I can confirm this theory. From my experiments with B0B under a logic analyser of the SMbus I remember that the cycle count is fetched just once after startup. it is then frozen...

Then that would mean that every time you turn on your battery and controller for a brand new flight it would count, you fly a mission starting at 100% fly down to 50%, have to land because of the wind or whatever and shut everything down to wait. The wind dies and you start up again at 50% with a plus 1 count.....you fly to 30% and again the the wind. You shut everything down and at 30% you take off again one more pic with yet again a plus one count....add to that you bring it home and hear about an update so you turn it on to download and you just triggered another count...this is what I think would happen but it’s not suppose to work that way. You just added three counts too your battery from 1 charge.

WDK
 
Lycus Tech Mavic Air 3 Case

DJI Drone Deals

New Threads

Forum statistics

Threads
131,279
Messages
1,561,603
Members
160,232
Latest member
ryanhafeman