Notifications
Clear all

Understanding the Error= 64

Page 1 / 2
ralph
(@ralph)
Eminent Member

(1/3) In case anyone is interested, I have learned some more about "Error= 64. Too low discharging current detected". I thought I'd share what I learned, both on my own experience and from Nicusor (via the forum). In case anyone comes across the same error and has the same questions I did, then maybe this is useful.

I encountered this error on a discharge during AutoCycle/Calibrate, on a battery which had been locked. At first inspection, the cells did not seem beyond revival. Anyway, on the discharge at around 4% SoC I got Error= 64, and the AutoCycle came to a halt. It's in the picture below.  

At first it seemed confusing because it is not possible to set a minimum discharge current on that page. However, it was explained to me that if you set the maximum discharge current, then that becomes a *target* current which the NLBA attempts to draw. If the battery cannot supply that current, then Error= 64 is thrown. 

Although some data is captured when this error is thrown, such as the last SoC reading, and the instant voltage, the instant current is simply shown as 0. [If you stop the discharge state manually, the dashboard keeps the last instant current, but not if an error is thrown].

This might seem reasonable - since there is no flow of current when the NLBA is turned off, so the final instant current must be 0. On the other hand, if you set a maximum discharge current, e.g. 2000mA, you will see that as the cells are discharging, the instant current fluctuates around this target value - slightly higher and lower. This means that unless you are physically sitting in front of the NLBA and watching the instant current at the moment Error=64 arises, you won't know what the actual current threshold was that throws the exception. There's still a voltage, and SoC, so the doesn't really tell you *why* there is a problem with the cell, just that there is one, and its something to do with current. 

 

 

 

discharge current1 3
ReplyQuote
Topic starter Posted : 10/07/2021 5:01 pm
ralph
(@ralph)
Eminent Member

(2/3) It was explained to me on the forum that if you want to explore battery parameters (e.g. temperature) at a certain SoC, you should take the SoC value from the AutoCycle page and use the tools under e.g. the discharging tab to review cell behaviour at that SoC. 

On another battery that threw the same Error= 64 on the AutoCycle I charged it up a little and then discharged it. [Ignore that crazy low Real Capacity value, this is a battery I used to experiment with]. As you can see from the chart, one of the cells is discharging waaay too much. The voltage in that cell is labile, and the power draw across the three cells is not equivalent. So this is apparently what is happening in the battery throwing an Error= 64 (or at least one possible reason).

As you can see in the parameters of the battery on the discharge tab, the minimum cells voltage is set at 3000mV and the maximum current is set at 2000mA. Note that the battery current is just short of 2000mA, and the cell 3 voltage is 2756mV. 

I kept it running to see when the discharge stop criteria kick in. 

 discharge current2 3
ReplyQuote
Topic starter Posted : 10/07/2021 5:07 pm
ralph
(@ralph)
Eminent Member

(3/3) As you can see, about 15 seconds later the discharge comes to a halt. 

In a nice feature, the voltage/time graph continues to run. You can see that the cell voltage of the bad, labile, cell starts to exponentially rise. After a longer time period it rises fairly close to the other cells in the battery.

Because of this voltage rise it is *not* obvious that the cell is bad, since it doesn't appear to be (too) unbalanced following a charge. Actually, on the surface it seemed to charge OK. This originally caused me confusion, because when I returned to the AutoCycle feature and found the error, the different cell voltages seemed reasonable. I did not know what was going on. 

So there you have it. 

Got an Error= 64 on an AutoCycle? Then you might have a cell that is discharging out of balance to the others; you need to check in the discharge tools. 

 

 discharge current3 3
ReplyQuote
Topic starter Posted : 10/07/2021 5:13 pm
DjiBattWorkshop
(@djibattworkshop)
Member Moderator
Posted by: @ralph

Note that the battery current is just short of 2000mA, and the cell 3 voltage is 2756mV

Me pretty sure that battery monitoring chip switched Off discharge FET to protect the cells from overdischarging.

So output power was cut off and actual current was zero, in the term of NLBA logics it was detected as "too low")

Typical low voltage protection threshold for 18650 cells is between 2600 to 2800mV depending on cells in use and pack maker settings.

Me wonder why Discharge phase of AutoCycle was not stop earlier when 3000mV threshold was reached. This case no exceptions should be thrown.

 

 

ReplyQuote
Posted : 10/07/2021 6:14 pm
ralph
(@ralph)
Eminent Member

That’s very interesting.

In that case the Error message should read: ‘no current’, not just ‘low’ current. Otherwise how can we tell for sure? 

ReplyQuote
Topic starter Posted : 11/07/2021 1:30 pm
DjiBattWorkshop
(@djibattworkshop)
Member Moderator

Yes, agree. If battery monitoring circuit interrupts the power for safety and protection purposes, and current dropped to zero, error message could have something more understandable description.

 

 

ReplyQuote
Posted : 11/07/2021 1:50 pm
batFix liked
Nicusor
(@azzido)
Member Admin

End stop Min Cell Voltage parameter is not taken into account. This is applicable to all Charging, Discharging and Calibration tabs.

 

The Error 64 in this case is triggered because the chip deactivates Discharging FET earlier than let SOC become 0%. That’s why I added “Ignore SoC” option. I see you didn’t use it. The behavior described is correct having in mind that “Min Cel Voltage” is not implemented (see Ignore SoC option”.

NLBA Laptop Battery Analyzer with Chip Reset & Repair Option

ReplyQuote
Posted : 11/07/2021 6:39 pm
ralph
(@ralph)
Eminent Member
Posted by: @azzido

End stop Min Cell Voltage parameter is not taken into account. This is applicable to all Charging, Discharging and Calibration tabs.

Ok so what is minimum voltage setting used for? 

 

The Error 64 in this case is triggered because the chip deactivates

deactivates?

Discharging FET earlier than let SOC become 0%. That’s why I added “Ignore SoC” option. I see you didn’t use it. The behavior described is correct having in mind that “Min Cel Voltage” is not implemented (see Ignore SoC option”.

I tried it again with the ignore SoC option selected. It doesn’t make any difference. Behaviour is exactly the same either way. 

 

ReplyQuote
Topic starter Posted : 11/07/2021 7:01 pm
Nicusor
(@azzido)
Member Admin
Posted by: @ralph
Posted by: @azzido

End stop Min Cell Voltage parameter is not taken into account. This is applicable to all Charging, Discharging and Calibration tabs.

Ok so what is minimum voltage setting used for? 

It is not taken into account, it is not used anymore. Since each cell type has its own min and max cut voltage, it is better to detect when the chip cuts off the power and this is done by Ignore SoC option.

I will update the Help message for these parameters or even remove them.

 

The Error 64 in this case is triggered because the chip deactivates

deactivates?

Discharging FET earlier than let SOC become 0%. That’s why I added “Ignore SoC” option. I see you didn’t use it. The behavior described is correct having in mind that “Min Cel Voltage” is not implemented (see Ignore SoC option”.

I tried it again with the ignore SoC option selected. It doesn’t make any difference. Behaviour is exactly the same either way. 

 

To have a better idea about what is happening, let's focus only on one battery. Each battery has its behaviour, since there are many variables and many parameters it is quite difficult to track a route cause. So, I recommend you to post the static and dynamic parameters (they are missing) of the battery you are going to refer to.

Until then, some remarks from my side (some good information can be found here https

- Error 64 is triggered when the expected current is not detected within several seconds. E.g. if the target current is -1000mA then the electronic load part of NLBA1 device starts opening the load Mosfet by applying an adjustable voltage to its gate. When the maximum (hardware limited) voltage is reached on the Mosfet gate (several seconds) the Current parameters is evaluated, if it is lower than the expected current (it does not matter if it is 0mA or 100mA or 500mA, the hysteresis for the regulator is about +-60mA) then the error 64 is triggered

- if the Ignore SoC is not enabled then Discharging process finishes when SoC reaches 0% no matter how well is the battery calibrated

- if the Ignore SoC is enabled then Discharging process finishes based on an algorithm looking at other status flags like TDA or FD

 

Please note that many issues are not related to the NLBA1 device, example: if the battery chip sets the TDA or FD incorrectly (there are many reasons) then NLBA1 device reacts accordingly. Another example, if the battery chip opens the Discharging battery FET incorrectly then NLBA1 device reacts accordingly.

 

NLBA Laptop Battery Analyzer with Chip Reset & Repair Option

ReplyQuote
Posted : 13/07/2021 7:17 pm
ralph
(@ralph)
Eminent Member
This is a very full answer. Thank you very much. I only have one comment (for clarity)

Posted by: @azzido
Posted by: @ralph
Posted by: @azzido

End stop Min Cell Voltage parameter is not taken into account. This is applicable to all Charging, Discharging and Calibration tabs.

Ok so what is minimum voltage setting used for? 

It is not taken into account, it is not used anymore. Since each cell type has its own min and max cut voltage, it is better to detect when the chip cuts off the power and this is done by Ignore SoC option.

I will update the Help message for these parameters or even remove them.

 

The Error 64 in this case is triggered because the chip deactivates

deactivates?

Discharging FET earlier than let SOC become 0%. That’s why I added “Ignore SoC” option. I see you didn’t use it. The behavior described is correct having in mind that “Min Cel Voltage” is not implemented (see Ignore SoC option”.

I tried it again with the ignore SoC option selected. It doesn’t make any difference. Behaviour is exactly the same either way. 

 

To have a better idea about what is happening, let's focus only on one battery. Each battery has its behaviour, since there are many variables and many parameters it is quite difficult to track a route cause. So, I recommend you to post the static and dynamic parameters (they are missing) of the battery you are going to refer to.

Until then, some remarks from my side (some good information can be found here https

- Error 64 is triggered when the expected current is not detected within several seconds. E.g. if the target current is -1000mA then the electronic load part of NLBA1 device starts opening the load Mosfet by applying an adjustable voltage to its gate. When the maximum (hardware limited) voltage is reached on the Mosfet gate (several seconds) the Current parameters is evaluated, if it is lower than the expected current (it does not matter if it is 0mA or 100mA or 500mA, the hysteresis for the regulator is about +-60mA) then the error 64 is triggered

if error64 occurs then the discharge procedure will stop. Otherwise it will continue according to the following: 

1 - if the Ignore SoC is not enabled then Discharging process finishes when SoC reaches 0% no matter how well is the battery calibrated

or 

2 - if the Ignore SoC is enabled then Discharging process finishes based on an algorithm looking at other status flags like TDA or FD

 

Please note that many issues are not related to the NLBA1 device, example: if the battery chip sets the TDA or FD incorrectly (there are many reasons) then NLBA1 device reacts accordingly. Another example, if the battery chip opens the Discharging battery FET incorrectly then NLBA1 device reacts accordingly.

 

Thank you, Nicusor! 

Ralph

ReplyQuote
Topic starter Posted : 13/07/2021 7:57 pm
Nicusor
(@azzido)
Member Admin
Posted by: @ralph

- Error 64 is triggered when the expected current is not detected within several seconds. E.g. if the target current is -1000mA then the electronic load part of NLBA1 device starts opening the load Mosfet by applying an adjustable voltage to its gate. When the maximum (hardware limited) voltage is reached on the Mosfet gate (several seconds) the Current parameters is evaluated, if it is lower than the expected current (it does not matter if it is 0mA or 100mA or 500mA, the hysteresis for the regulator is about +-60mA) then the error 64 is triggered

if error64 occurs then the discharge procedure will stop. Otherwise it will continue according to the following: 

1 - if the Ignore SoC is not enabled then Discharging process finishes when SoC reaches 0% no matter how well is the battery calibrated

or 

2 - if the Ignore SoC is enabled then Discharging process finishes based on an algorithm looking at other status flags like TDA or FD

 

Yes, if error 64 is triggered then discharging is stopped, if discharging is a step part of a calibration process then the calibration is also stopped.

NLBA Laptop Battery Analyzer with Chip Reset & Repair Option

ReplyQuote
Posted : 13/07/2021 8:06 pm
ralph liked
DjiBattWorkshop
(@djibattworkshop)
Member Moderator
Posted by: @azzido

It is not taken into account, it is not used anymore

Main criteria to stop discharge stage in AutoCycle not used anymore? Its better to return it back.

Posted by: @azzido

Since each cell type has its own min and max cut voltage

It could be solved by adjustable parameter. Exactly how it's done in another software like bqEVSW or bqStudio.

For most of the cases Discharge phase preferably to be stopped by Empty Low Voltage (Cell Terminate Voltage) threshold rather then Cut Out Low Voltage threshold or by SoC. In this case AutoCycle goes smoothly without exceptions. Even SoC is wrong, even cells are unbalanced by voltage or by capacity. Using Cut Out Voltage as stop criteria is not recommended for two reasons. It will throw error like in this example and it tends to degrade the cells especially under working load.

Using the SoC as stop criteria is also not recommended because AutoCycle normally done to relearn the capacity so the SoC assumed to be wrong and could not be relied on.

SoC as stop criteria will work fine only for properly calibrated battery just to confirm its capacity is correct but for another cases it's not best option.

TDA and FD on some firmwares calculated basing on SoC or both Voltage or SoC whichever occurs first, so it's also not the best criterias.

As a conclusion me believe that Min Cell Voltage (Cell Terminate Voltage) criteria should be returned back to take it into account for proper AutoCycle flow.

 

 

ReplyQuote
Posted : 13/07/2021 8:25 pm
batFix liked
Nicusor
(@azzido)
Member Admin
Posted by: @djibattworkshop
Posted by: @azzido

It is not taken into account, it is not used anymore

Main criteria to stop discharge stage in AutoCycle not used anymore? Its better to return it back.

It was never taken into account, so never implemented.

Posted by: @azzido

Since each cell type has its own min and max cut voltage

It could be solved by adjustable parameter. Exactly how it's done in another software like bqEVSW or bqStudio.

For most of the cases Discharge phase preferably to be stopped by Empty Low Voltage (Cell Terminate Voltage) threshold rather then Cut Out Low Voltage threshold or by SoC. In this case AutoCycle goes smoothly without exceptions. Even SoC is wrong, even cells are unbalanced by voltage or by capacity. Using Cut Out Voltage as stop criteria is not recommended for two reasons. It will throw error like in this example and it tends to degrade the cells especially under working load.

Using the SoC as stop criteria is also not recommended because AutoCycle normally done to relearn the capacity so the SoC assumed to be wrong and could not be relied on.

SoC as stop criteria will work fine only for properly calibrated battery just to confirm its capacity is correct but for another cases it's not best option.

TDA and FD on some firmwares calculated basing on SoC or both Voltage or SoC whichever occurs first, so it's also not the best criterias.

As a conclusion me believe that Min Cell Voltage (Cell Terminate Voltage) criteria should be returned back to take it into account for proper AutoCycle flow.

 

 

There are many reasons why it is designed so. Looking at other particular softwares created for dedicated families does not mean it would be a better generic solution. The chip is programmed with the best values for cutting min and max cell voltages. The firmware computes the FCC and estimates to SoC based on these values (not only). Such information (cut min and max voltages) sometimes are not known, the user will start most of the time with the default values which are far from the optimal (actual best-programmed values) values. In the end, the charging/discharging has a high rate to terminate earlier or later leading to errors or not desired results.

Mentioned softwares bqEVSW and bqStudio are used in principle in development by experienced engineers. NLBA1 device is mainly used for simple and fast interaction with the battery. "Ignore the SoC" option should be good and generic enough to fully charge and discharge a laptop battery by any inexperienced user while forcing the end user to adjust cutting min and max cell voltage could lead to the  above-mentioned results.

The best would be to handle both situations but individually: like now with one push button and with adjusting cut-off cell voltages. Such feature is not planned.

NLBA Laptop Battery Analyzer with Chip Reset & Repair Option

ReplyQuote
Posted : 13/07/2021 8:47 pm
DjiBattWorkshop
(@djibattworkshop)
Member Moderator
Posted by: @azzido

The chip is programmed with the best values for cutting min and max cell voltages. The firmware computes the FCC and estimates to SoC based on these values (not only).

Min and max cutting values are used for cells protection purposes only and they never using in gauging (SoC, FCC calculation etc) algorithms.

For gauging purposes Cell Full Charge and Cell Full Discharge thresholds used instead. Their range lays within Safety cutting range.

For example, for standard Li-ion 18650 cells these ranges are as following

4280mV - Cells Max Cut out (Cell Over Voltage protection threshold)

4200mV - Cells Full Charge (high gauging threshold)

3700mV - Cell Design (Nominal) Voltage

3000mV - Cell Full Discharge (low gauging threshold)

2750mV - Cell Min Cut out (Cell Under Voltage protection threshold)

 

So in present AutoCycle logic implementation if "Ignore SoC" option is used then Discharge will be stopped on Cell Min Cutout threshold (CUV safety event) which is considered as alarm condition. And this is exactly what happened in topic starter example.

If Discharge would stop at Cell Full Discharge Threshold (3000mV) then AutoCycle should go to next relaxation stage and so on without error.

While there are tons of different chemistries Cell Full Discharge for many 18650 and LiPo cells is 3000mV basing on analyzing the dumps. LiHv cells could have it as 3100 to 3200mV. Actually not too difficult task to select proper value.

Well, For non-experienced users it could even be roughly calculated automatically using Design Voltage in Static Area. 

The idea around it is to stop Discharge in time before triggering safety event at which AutoCycle is failed.

Posted by: @azzido

while forcing the end user to adjust cutting min and max cell voltage could lead to the  above-mentioned results.

Instead of forcing it could be the freedom in selection proper criteria, like it's done in bqEVSW. Many options with checkboxes. Also AND/OR rules for advanced users. And some default settings for newbies.

 

ReplyQuote
Posted : 13/07/2021 11:56 pm
batFix liked
ralph
(@ralph)
Eminent Member

@djibattworkshop 

I’m not sure about the voltage threshold because as you can see it didn’t work in my case. However the other stop conditions SoC and time limit do work, and I use them to accelerate the auto cycle. So I assumed that they ALL work. If it doesn’t work it shouldn’t be there. Generally speaking though I’d like to have more functionality rather than less. 

ReplyQuote
Topic starter Posted : 14/07/2021 5:32 am
batFix liked
Page 1 / 2
Share: