This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

BQ78PL116: Wrong Qmax value

Part Number: BQ78PL116

Wrong Qmax.zipHi everyone,

we are trying to configure our LiFePO4 Battery Pack but unfortinately we came to a problem.

A 8S-LFP battery (25,6V/39Ah) came back from our customer with an faulty SOC reading. The battery was in use for several weeks and was returned with a cycle count of 53. During this time, the battery was working within the specs but suddenly failed because of wrong SOC values.

After checking the dynamic values, we found a FCC reading from the BQ78PL116 of 596300mAh which by far is exceeding the specified maximum value of 32767mAh and of cause is not representing the nominal capacity of 39Ah

After several full cycles, the FCC value has never been changed by the BQ78xxx even all related conditions (“FCC Learn Qualifier”, “Min.OCV Slope”, “Stale FCC timeout”) were met.

We found out that the origin of this issue came from wrong Qmax values. All eight cells were showing a Qmax value of 65535, which seems to be a maximal value of 2 bytes. After loading the same configuration once again to the BQxx the values (all the Qmax and the FCC) were in the expected range again and the battery seems to work again.

This issue now occured at 10 other batteries as well.

What could possibly cause such a behavior?

Best regards,
Vladimir B.




  • Hi Vladimir,
    It could be that your host or esd may have caused qmax to change to wrong values. Does your board have sufficient esd protection? Is the device placed in a sealed state in the field to prevent your host from inadvertently writing wrong values to the gauge?
    thanks
    Onyx
  • Hi Onyx,

    Thanks for your quick answer!

    Your idea is that these invalid values are not generated by the BQxx itself but are set by external peripheries.
    In our understanding, the Qmax values are neither accessible via the SM-Bus in the specified “standard” SM-Bus address range nor in the “extended” range. Even BQ-Wizard is able to read the values, we believe that these values are read-only and cannot be influenced by external hosts.

    Our setup: The BMS is integrated into the battery case which is built out of 1mm (0.04inch) welded sheet metal. The outgoing SDA line as well as the SCL are ESD protected (with AZ23C5V6).
    Our host is only reading SM-Bus values of the BQxx. Our host SW does not support any setting of BQxx parameter.

    This is the reason why we think that these invalid values are generated by the BQxx itself. But a)why? and b)how?

    When talking about “sealed state”, do you mean a password protection of the BQxx against manipulation?

    Best Regards,
    Vladimir B.
  • Hi Vladimir,
    Yes, sealed meaning external host wouldn't be able to write to the gauge.
    thanks
    Onyx
  • Hi Onyx,
    we would say that these values are read-only and cannot be influenced by external hosts.
    They are neither accessible via the SM-Bus.
    Do you have any other idea what could possibly cause such a behavior?
    Can you check our config file and make sure that we didnt make any mistake?

    Thanks,
    Vladimir B.