ZHCSJ56C February 2018 – September 2019 BQ25882
PRODUCTION DATA.
The device provides innovative Input Current Optimizer (ICO) to identify maximum power point without overloading the input source. The algorithm automatically identifies maximum input current limit of a power source without staying in VINDPM to avoid input source overload.
This feature is enabled by default (EN_ICO=1) and can be disabled by setting EN_ICO bit to 0. After DCP type input source is detected based on the procedures describe above (Input Source Type Detection), the algorithm runs automatically when EN_ICO bit is set. The algorithm can also be forced to execute by setting FORCE_ICO bit regardless of input source type detected (EN_ICO = 1 is required for FORCE_ICO to work).
DEVICE | INPUT SOURCE | INPUT CURRENT LIMIT (IINDPM) | AUTOMATIC START ICO ALGORITHM WHEN EN_ICO = 1 |
---|---|---|---|
BQ25882 (D+/D–) | USB SDP (USB500) | 500mA | Disable |
USB CDP | 1.5A | Disable | |
USB DCP | 3.0A | Enable | |
Divider 3 | 1A | Disable | |
Divider 1 | 2.1A | Disable | |
Divider 4 | 2.4A | Disable | |
Unknown 5V Adapter (1) | 500mA | Disable | |
Unknown 5V Adapter (2) | 1000mA | Disable |
The actual input current limit used by the Dynamic Power Management is reported in ICO_ILIM register while Input Current Optimizer is enabled (EN_ICO = 1) or set by IINDPM register when the algorithm is disabled (EN_ICO = 0). In addition, the current limit is clamped by ILIM pin unless EN_ILIM bit is 0 to disable ILIM pin function.
When the algorithm is enabled, it runs continuously to adjust input current limit of Dynamic Power Management (IINDPM) using ICO_ILIM register until ICO_STAT[1:0] and ICO_FLAG bits are set (the ICO_FLAG bit indicates any change in ICO_STAT[1:0] bits). The algorithm operates depending on battery voltage:
When optimal input current is identified, the ICO_STAT[1:0] and ICO_FLAG bits are set to indicate input current limit in ICO_ILIM register would not be changed until the algorithm is forced to run by the following event (these events also reset the ICO_STAT[1:0] bits to '01'):