PMIC (Power Management IC)

Precharge/termination current control reg

This is register REG03. It sets the pre-charge current limit (IPRECHG), used for a deeply-discharged battery below the BATLOWV threshold, and the termination current (ITERM), the current level at which the PMIC considers the battery fully charged and stops charging. Both fields have a valid range of 128 to 2048 mA, default 256 mA, and have no equivalent in the Power Manager API.

setPreChargeCurrent()

bool setPreChargeCurrent();

Sets the pre-charge current limit (IPRECHG, REG03 bits 7:4) to the PMIC default (256 mA). This method does not currently take a parameter to select a different value; see setChargeCurrent() if you need to change the fast-charge current instead.

getPreChargeCurrent()

byte getPreChargeCurrent();

Returns the raw pre-charge current register bits (IPRECHG).

setTermChargeCurrent()

bool setTermChargeCurrent(uint16_t current);

Sets the termination current (ITERM, REG03 bits 3:0), in mA. Valid values are 128 to 2048, in 128 mA steps; the default is 256 mA. When the charge current tapers below this value during the constant-voltage phase, the PMIC considers charging complete and stops.

getTermChargeCurrent()

byte getTermChargeCurrent();

Returns the raw termination current register bits (ITERM).