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.

BQ33100EVM-001: not balancing and wont stop charging

Part Number: BQ33100EVM-001
Other Parts Discussed in Thread: BQ33100

Tool/software:

just hooked up the BQ33100 EVM with four 100F supercaps in series. i want to charge these four caps to 2.25v each(they are 3.0v caps) i set the charge voltage to 9v and i am inputting 12.0v from a power supply. i can't seem to figure out what setting will stop these from overcharging as i notice if i let charging continue it overshoots the 9.0 volts id like the caps to be charged to. In addition, my four caps will not balance they stay >200mv apart from one another and i cant seem to get them closer!? attached is my .gg file for review. what settings do i need to change to accomplish this?  

[Header]
bq EVSW Version = 0.9.92
DeviceName = bq33100 v0.09
Time = 3/19/2025 8:32:17 AM


[Voltage(Safety)]
OV Threshold = 100
OV Recovery = 0
OV Time = 2
CIM Fail Voltage = 100
CIM Time = 2
CIM Recovery = 150
Min CIM Check Voltage = 1000
[Current(Safety)]
OC Chg = 1100
OC Chg Time = 5
OC Chg Recovery = 900
CLBAD Current = 15
CLBAD Time = 60
CLBAD Recovery = 10
Current Recovery Time = 5
OC Dsg = 0F
OC Dsg Time = 0F
OC Dsg Recovery = 5
SC Chg Cfg = F4
SC Dsg Cfg = F7
SC Recovery = 1
[Temperature(Safety)]
OT Chg = 68.0
OT Chg Time = 2
OT Chg Recovery = 63.0
[AFE Verification(Safety)]
AFE Fail Limit = 100
AFE Init Retry Limit = 6
AFE Init Limit = 20

[Charge Cfg(Charge Control)]
Chg Voltage = 9000
Chg Current = 1000
Chg Enable Delay = 0
[Full Charge Cfg(Charge Control)]
Taper Current = 5
Taper Voltage = 200
Current Taper Window = 2
FC Set % = -1
FC Clear % = 98
[Capacitance Balancing Cfg(Charge Control)]
CB Threshold = 50
CB Min = 20
CB Restart = 80

[Data(System Data)]
Design Voltage = 9000
Manuf Date = 01-Jan-1980
Ser. Num. = 0001
Design Capacitance = 250.00
Init 1st Capacitance = 200.00
Capacitance = 2.00
Design ESR = 400
Initial ESR = 400
ESR = 400
Manuf Name = Texas Inst.
Device Name = bq33100
Init Safety Status = 0000
[Manufacturer Data(System Data)]
Pack Lot Code = 0000
PCB Lot Code = 0000
Firmware Version = 0000
Hardware Revision = 0000
[Manufacturer Info(System Data)]
Manuf. Info = 0123456789ABCDEF0123456789ABCDE
[Lifetime Data(System Data)]
Lifetime Max Temp = 49.8
Lifetime Min Temp = 20.6
Lifetime Max Capacitor Voltage = 2421

[Registers(Configuration)]
Operation Cfg = 0310
FET Action = 0000
Fault = 0000
[AFE(Configuration)]
AFE State_CTL = 00
[Power(Configuration)]
Flash Update OK Voltage = 4000
Shutdown Voltage = 4000

[System Requirement(Monitoring)]
Min Power = 10
Required Time = 60
Min Voltage = 3000
[Charging Voltage(Monitoring)]
V Chg Nominal = 9000
V Chg A = 9500
V Chg B = 9750
V Chg Max = 9200
V Learn Max = 9100
[Learning Configuration(Monitoring)]
Learning Frequency = 2
Measurement Margin % = 1
Max Chg Time = 300
Max Dsg Time = 60
Learn Delta Voltage = 50
Cap Start Time = 320
[Current Thresholds(Monitoring)]
Dsg Current Threshold = 50
Chg Current Threshold = 300

[Data(Calibration)]
Current Gain = 20
CC Delta = 20
Cap1 K-factor = 7700
Cap2 K-factor = 20500
Cap3 K-factor = 20500
Cap4 K-factor = 20500
Cap5 K-factor = 20500
K-factor override flag = 0000
System Voltage K-factor = 24500
Stack Voltage K-factor = 24500
CC Offset = -1.14
Board Offset = 0
Int Temp Offset = 0.0
Ext1 Temp Offset = 0.0
Ext2 Temp Offset = 0.0
ESR Offset = 0
[Config(Calibration)]
CC Current = 3000
Voltage Signal = 10500
Temp Signal = 298.0
CC Offset Time = 250
ADC Offset Time = 32
CC Gain Time = 250
Voltage Time = 2080
Temperature Time = 32
Cal Mode Timeout = 300
[Temp Model(Calibration)]
Ext Coef a1 = -14812
Ext Coef a2 = 24729
Ext Coef a3 = -21265
Ext Coef a4 = 28353
Ext Coef a5 = 759
Ext Coef b1 = -399
Ext Coef b2 = 764
Ext Coef b3 = -3535
Ext Coef b4 = 5059
Ext rc0 = 11703
Ext adc0 = 11813
Rpad = 87
Rint = 17740
Int Coef 1 = 0
Int Coef 2 = 0
Int Coef 3 = -12263
Int Coef 4 = 6106
Int Min AD = 0
Int Max Temp = 610.6
[Current(Calibration)]
Filter = 239
Dead Band = 5
CC Deadband = 2.9

  • Hello Glen,

    Your question has been assigned and will be answered when possible.

    Thank you,
    Alan

  • Hello,

    You’re seeing the voltage overshoot beyond 9V and the capacitor voltages remain more than 200mV apart, indicating problems with charge termination and balancing settings. Below are recommendations based on your .gg file and the BQ33100’s functionality.

    [Charge Cfg(Charge Control)]
    Chg Voltage = 9000          ; Unchanged
    Taper Current = 50          ; Was 5
    Taper Voltage = 50          ; Was 200
    Current Taper Window = 10   ; Was 2
    
    [Capacitance Balancing Cfg(Charge Control)]
    CB Threshold = 20           ; Was 50
    CB Min = 10                 ; Was 20
    CB Restart = 50             ; Was 80
    
    [Voltage(Safety)]
    OV Threshold = 2500         ; Was 100 (per-cell threshold)
    OV Recovery = 2000          ; Was 0
    
    [Charging Voltage(Monitoring)]
    V Chg Max = 9000            ; Was 9200
    V Learn Max = 9000          ; Was 9100

    • Charge Termination: With a higher taper current (50mA) and tighter taper voltage (50mV), charging should stop closer to 9V, preventing overshoot.
    • Balancing: Stricter balancing thresholds (20mV/10mV) should reduce the voltage difference to <50mV, ideally closer to 20-30mV.
    • Safety: An OV threshold of 2.5V per cap will protect against overcharging if other settings fail.



  • Jose, thanks for the reply. Supercaps are balancing now, so some success there .  however i tried to change the 0V threshold to 2500 and it errors and says max is 1000mv. same with OV recovery max 1000mv. i changed the other settings that would let me to the values you recomeended and it still keeps charging way past 9000mv . I did notice something in the SBS window the "Charging Current and Charging Voltage" values goto 0 just over 9100mv. but the CFET flag  stays active so the main voltage still rises. Any further ideas?

  • Hello,

    Try the following settings.

    [Charge Cfg(Charge Control)]
    Chg Voltage = 9000          ; Unchanged
    Taper Current = 100         ; Was 50
    Taper Voltage = 20          ; Was 50
    Current Taper Window = 20   ; Was 10
    
    [Voltage(Safety)]
    OV Threshold = 1000         ; Max allowed (was 100)
    OV Recovery = 500           ; Was 0, within 1000mV limit
    
    [Registers(Configuration)]
    FET Action = 0001           ; Was 0000 (test FET control)
    
    [Charging Voltage(Monitoring)]
    V Chg Nominal = 8950        ; Was 9000
    V Chg Max = 9000            ; Unchanged
    V Learn Max = 9000          ; Unchanged


    The hypothesis:

    • The BQ33100 is detecting "full charge" (per taper settings or monitoring thresholds), but a FET control misconfiguration or hardware issue keeps CFET on, allowing your 12V supply to push the voltage higher.
    • Tightening taper settings and enabling explicit FET action should resolve this, assuming no hardware fault.

     

  • Jose, can you explain what you mean by "enable explicit FET action" ??

  • Hello,

    When I refer to "enable explicit FET action," I’m talking about configuring the BQ33100 to actively control the external charge FET (
    CFET) and discharge FET (DFET) based on its internal charging and safety logic, rather than leaving their behavior undefined or reliant on default states.

    In your .gg file, under [Registers(Configuration)], there’s a parameter called FET Action.  It's set to FET Action = 0x0000This is a hexadecimal value that likely corresponds to a register (e.g., the FET Control Register or similar in the BQ33100), defining how the FETs behave under certain conditions.

     

    By setting FET Action , you’re telling the BQ33100 to turn off the CFET when it detects a capacitor overvoltage condition (OV). This should stop the stack voltage from rising past 9V, especially since the BQ33100 already seems to detect the overvoltage (per the SBS behavior at 9100mV).

    Note you might need to configure other registers to sync with OV such as Safety: Voltage: OV Threshold

     

  • Jose, so is 0x0000 the correct FET setting to stop charging? if so why will this not stop at the desired voltage? why has TI made this so difficult to use.. what is the correct write value in that register to set FET action and stop charging ?

  • Hello,

    The FET Action register enables the charge FET to turn off when a safety condition occurs. The charge FET turns off when the a bit in the SafetyStatus register is set that corresponds to a set bit in the FET Action register.

    Please set OV bit under FET action for it to turn off the FET upon a OV safety alert. 

    why has TI made this so difficult to use..


  • ugh , what is the recommended replacement part for this?

  • Apologies.

    Actually, status says it is active. The BQ33100 is the recommended device for super caps.