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.

BQ25798: Fails to immediately reinitiate charge if light level on the solar panel ever drops too low.

Part Number: BQ25798

Tool/software:

I am having a similar problem to a previous post on here but I have a 2 cell LiFePO4 battery arrangement (V_nominal = 6.4V, V_float = 7.2V) with a VSYSMIN of 6V. I want to charge these batteries using the BQ25798 off a solar panel with VOC = 21.4V and V_PMAX = 17.9V.

When I plug the solar panels in, it charges. But when I block light from the panels, the IC stops charging and wont reinitiate a charge cycle again for about 10min. Additionally, while the charger is in this state, I cannot set the EN_MPPT bit to 1 as it gets immediately reset back to zero. While the IC is charging I can set the EN_MPPT bit to 1 but once light is removed from the solar panel, it gets reset back to 0 and I cannot set the bit to 1 again until it starts charging. In this state, the EN_HIZ bit is set to 1. As this is for a power sensitive application, it is important that the charging IC is able to use the MPPT algorithm and can start charging almost immediately once adequate light is available. 

The only ways to get the IC to start charging again is to either unplug the PV panel and plug it back in or set the EN_HIZ bit back to 0. Both of these solutions are not ideal. REG_RST does not reinitiate charging either.

When I initialize the charging IC I (in order), disable the watchdog timer and set VAC_OVP to 26V, Set the EN_MPPT bit to 1 and VOC_PCT to 0.8125, Set VSYSMIN to 6000mV, VREG to 7200mV, ICHG to 1000mA, VINDPM to 22000mV,  INDPM to 3000mA and set VRECHG to 300mV.  I will also note that after attempting to set INDPM to 3000mA it fails to set and will not set higher than 0x77 (1190mA).

Here is the register dump when the solar panels are fully lit but the IC is not charging (I have enabled ADC measurements manually for additional info.

0x00, 0x0E

0x01, 0x02D0

0x03, 0x0064

0x05, 0xB1

0x06, 0x0077

0x08, 0xC3

0x09, 0x05

0x0A, 0x75

0x0B, 0x00DC

0x0D, 0x4B

0x0E, 0x3D

0x0F, 0xA6

0x10, 0x80

0x11, 0x40

0x12, 0x00

0x13, 0xA1

0x14, 0x1E

0x15, 0x8A

0x16, 0xC0

0x17, 0x7A

0x18, 0x54

0x19, 0x0032

0x1B, 0x05

0x1C, 0x10

0x1D, 0x01

0x1E, 0xC0

0x1F, 0x00

0x20, 0x00

0x21, 0x00

0x22, 0x00

0x23, 0x00

0x24, 0x00

0x25, 0x00

0x26, 0x00

0x27, 0x00

0x28, 0x00

0x29, 0x00

0x2A, 0x00

0x2B, 0x00

0x2C, 0x00

0x2D, 0x00

0x2E, 0xB0

0x2F, 0x00

0x30, 0x00

0x31, 0x0000

0x33, 0x0000

0x35, 0x491E

0x37, 0x0012

0x39, 0x48D4

0x3B, 0x1A01

0x3D, 0x1A16

0x3F, 0x025A

0x41, 0x001E

0x43, 0x0000

0x45, 0x0000

0x47, 0x00

0x48, 0x19


Schematic is below:

Ive tried various ways to solve this issue but to no avail yet. 

  • Hi Ewan,

    If the input voltage falls below poor source voltage (essentially 3.6V), the charger auto enters HiZ mode for 10min and then retries.  

    EN_MPPT can only be set to 1 if V(BAT)>MINSYS voltage, otherwise the periodic MPP sampling while switching is stopped would allow the system to crash.  It is not critical that MPPT be enabled during this time because the charger auto senses the input voltage and sets VINDPM to sensed voltage - 0.7V at power up.  The VINDPM voltage technically isn't the panel MPP but should eventually allow the charger to start charging and charge V(BAT)>MINSYS voltage.

    In short, the charger eventually comes up but it will make multiple attempts with 10 minute between each attempt.

    Regards,

    Jeff

  • Is there any possible configuration that would allow the IC to charge immediately rather than having to wait 10 minutes? It seems strange for a PV charging system to function that way as we want the system to be charging as soon as sufficient light becomes available since its so dependent on weather conditions. 

    After a week of outdoor running we have also noticed that the charger will not initiate any charge cycle in days there isn't direct sunlight. We have a 15W panel attached to the IC which should be able to provide a small amount of current even on days without direct sunlight.

  • Hi Ewan,

    The charger's poor source detection pulls 12mA of current to see if the voltage falls below 3.4V.  If so, then the charger enters HiZ for 10min before trying again. If the charger passes poor source, then it tries to start up and pulls up to 200mA of current.  If that doesn't collapse the panel, then the charger can pull up to input current limit as set per the ILIM_HIZ unless disabled and overwritten by the IINPDM register. You might try setting the input current limit per ILIM_HIZ resistors to a low value.  Then let the host disable ILIM_HIZ pin and set a higher value IINDPM register once the sun is up. Even if EN_MPPT bit =0, the charger still has VINDPM function which tries to prevent input voltage from collapsing below the sensed panel open circuit voltage (Voc) less 0.7V, which is likely not exactly MPP but should eventually result in charging.

    Also, keep in mind that the optimal (MPP) VINDPM setting is only found when EN_MPPT bit =1 but EN_MPPT resets to zero if V(BAT)<MINSYS setting.  

    Regards,

    Jeff