BQ25890/2 - Battery charge and system power path management

Description

Library for interfacing Texas Instruments BQ25890/2 5-A switch-mode battery charge management and system power path management IC with I2C interface

The BQ25890 and BQ25892 are highly-integrated 5-A switch-mode battery charge management and system power path management device for single cell Li-Ion and Li-polymer battery. -) I2C interface with communication speed up to 400 kHz -) Single Input to Support USB Input and Adjustable High Voltage Adapters -) Integrated ADC for System Monitor (Voltage, Temperature, Charge Current) -) BATFET Control to Support Ship Mode, Wake Up, and Full System Reset

OVERVIEW

BQ25892_Abstract:
This library can be used to handle Texas Instruments BQ25890/2 5-A switch-mode battery charge management and system power path management IC.

Interfaces: 1x I2C

The BQ25890 and BQ25892 are highly-integrated 5-A switch-mode battery charge management and system power path management device for single cell Li-Ion and Li-polymer battery.
  • I2C interface with communication speed up to 400 kHz
  • Single Input to Support USB Input and Adjustable High Voltage Adapters
  • Integrated ADC for System Monitor (Voltage, Temperature, Charge Current)
  • BATFET Control to Support Ship Mode, Wake Up, and Full System Reset
  • BQ25892_How_to_use:
    /* Hardware setup */ const { PORT_I2C = 0, // The first I2C interface should be used. CHIP_ADDR = BQ25892_I2C_ADR // I2C Address of the chip // (depends on the chip type) } /* Handles for available sensors */ new hBQ25892[TBQ25892_Handle]; // Handle to manage the BQ25892 /* 1 sec. timer is used for the general program sequence */ #callback MainTimer() { /* Temporary memory for the return value of a function */ new iResult; new ChargingState; // Charging state read from the BQ25892 new PowerGood; // Power good state read from the BQ25892 new aPower{15}; // Buffer for the charging state as text new aCharging{13}; // Buffer for the power good state as text // Reads charging state and power good state ​​from the BQ25892 iResult = BQ25892_ReadChargingState(hBQ25892, ChargingState, PowerGood); if(iResult == OK) { // Issues the current charging state as text via the watch panel switch (ChargingState) { case BQ25892_CHRG_STAT_NO: aCharging = "Not Charging"; case BQ25892_CHRG_STAT_PRE: aCharging = "Pre-charge"; case BQ25892_CHRG_STAT_FAST: aCharging = "Fast Charging"; case BQ25892_CHRG_STAT_TERM: aCharging = "Charging Done"; default: aCharging = "Unknown"; } #watch("Charging=%s", aCharging); // Issues the current power good sate as text via the watch panel if (PowerGood) aPower = "Power Good"; else aPower = "Not Power Good"; #watch("Power=%s", aPower); } } main() { // Init I2C interface catch(rM2M_I2cInit(PORT_I2C, BQ25892_CLOCK, 0)); // Initializes i2c communication with the BQ25892 catch(BQ25892_Init(hBQ25892, PORT_I2C, CHIP_ADDR)); // Initialisation of a cyclic sec. timer setInterval(MainTimer, 1000); }

    BASIC

    BQ25892_CLOCK -

    typical I2C clock speed to be used

    BQ2589x_I2C_ADR:

    Available BQ25890/2 I2C addresses

    BQ25890_I2C_ADR - Must be used for BQ25890
    BQ25892_I2C_ADR - Must be used for BQ25892
    BQ25892_Init(handle[TBQ25892_Handle], i2c, addr)

    Initializes i2c communication with the BQ25892


    First copies the I2C port and address to the transferred empty device handle.Afterward it is checked whether a chip supported by the library has been found.

    handle : TBQ25892_Handle - Empty device handle for a BQ25892
    i2c : s32 - I2C interface where BQ25892 is connected to
    The I2C interface must be initialisation before using rM2M_I2cInit().
    addr : s32 - I2C Address of the chip
    Use only the addresses specified under BQ2589x_I2C_ADR
    returns : s32
    OK - if successful
    ERROR - Found chip not supported by the library
    < OK - if another error occurs
    BQ25892_ReadChargingState(handle[TBQ25892_Handle], &iChargingState, &iPowerGood)

    Reads charging State and Power Good State (indicates a good input source) from the BQ25892

    handle : TBQ25892_Handle - Device handle of a specific BQ25892 (Initialized by BQ25892_Init() )
    ChargingState : s32 - Buffer for storing the Charging State
    BQ25892_CHRG_STAT_NO - (0x00): Not charging
    BQ25892_CHRG_STAT_PRE - (0x01): Pre-charge ( < VBATLOWV)
    BQ25892_CHRG_STAT_FAST - (0x02): Fast charging
    BQ25892_CHRG_STAT_TERM - (0x03): Charging termination done
    iPowerGood : s32 - Buffer for storing the Power Good State
    0 - Bad input source
    1 - Good input source
  • The input voltage is within VVBUS_OP,
  • above SLEEP mode threshold (VSLEEPZ),
  • and current limit is above IBATSRC(30 mA).
  • returns : s32
    OK - if successful
    < OK - if another error occurs
    BQ25892_EnableShippingMode(handle[TBQ25892_Handle],iEnableDelay = 0)

    Activates ship mode


    To extend battery life and minimize power when system is powered off, shipped, or storaged, the BQ25892 can disconnect the rechargeable batterie (turn off the BATFET) from the system voltage to minimize the battery leakage current. This mode is called ship mode.

    handle : TBQ25892_Handle - Device handle of a specific BQ25892 (Initialized by BQ25892_Init() )
    iEnableDelay : s32 - Selection whether the ship mode should be activated immediately
    0 - Ship mode is activated immediately
    > 0 - Ship mode is activated after a delay of 10 to 15 seconds
    returns : s32
    OK - if successful
    < OK - if another error occurs
    BQ25892_RegisterReset(handle[TBQ25892_Handle])

    Resets all BQ25892 registers which can be reset by REG_RST

    See the constant definitions in the _.inc file, the BQ25892_REGxx_x (e.g.BQ25892_REG00_x) description in the help or the datasheet for information about which registers are reset by REG_RST.
    handle : TBQ25892_Handle - Device handle of a specific BQ25892 (Initialized by BQ25892_Init() )
    returns : s32
    OK - if successful
    < OK - if another error occurs

    EXPERT

    BQ25892_CLOCK_MAX -

    absolute maximum I2C clock speed

    BQ25892_REGx:

    Available register (Address | R/W | Default | Description)

    BQ25892_REG00 - 0x00 | R/W | 0x48 |
    REG00 (High impedance mode and Input current limit, see BQ25892_REG00_x)
    BQ25892_REG01 - 0x01 | R/W | 0x06 |
    REG01 (Boost Mode Temperature Monitor Thresholds and Input Voltage Limit Offset, see BQ25892_REG01_x)
    BQ25892_REG02 - 0x02 | R/W | 0x1D |
    REG02 (see BQ25892_REG02_x)
    BQ25892_REG03 - 0x03 | R/W | 0x1A |
    REG03 (see BQ25892_REG03_x)
    BQ25892_REG04 - 0x04 | R/W | 0x20 |
    REG04 (Current pulse control Enable and Fast Charge Current Limit, see BQ25892_REG04_x)
    BQ25892_REG05 - 0x05 | R/W | 0x13 |
    REG05 (Precharge Current Limit and Termination Current Limit, see BQ25892_REG05_x )
    BQ25892_REG06 - 0x06 | R/W | 0x5E |
    REG06 (Charge Voltage Limit, Battery Precharge to Fast Charge Threshold and Battery Recharge Threshold Offset, see BQ25892_REG06_x)
    BQ25892_REG07 - 0x07 | R/W | 0x9D |
    REG07 (see BQ25892_REG07_x)
    BQ25892_REG08 - 0x08 | R/W | 0x03 |
    REG08 (IR Compensation Resistor Setting, IR Compensation Voltage Clamp and Thermal Regulation Threshold, see BQ25892_REG08_x)
    BQ25892_REG09 - 0x09 | R/W | 0x44 |
    REG09 (see BQ25892_REG09_x )
    BQ25892_REG0A - 0x0A | R/W | 0x73 |
    REG0A (Boost Mode Voltage Regulation and Boost Mode Current Limit, see BQ25892_REG0A_x)
    BQ25892_REG0B - 0x0B | R | --- |
    REG0B (Status information, see BQ25892_REG0B_x)
    BQ25892_REG0C - 0x0C | R | --- |
    REG0C (Fault status information see BQ25892_REG0C_x)
    BQ25892_REG0D - 0x0D | R/W | 0x12 |
    REG0D (VINDPM Threshold Setting Method and Absolute VINDPM Threshold, see BQ25892_REG0D_x)
    BQ25892_REG0E - 0x0E | R | 0x00 |
    REG0E (Thermal Regulation Status and ADC conversion of Battery Voltage, see BQ25892_REG0E_x)
    BQ25892_REG0F - 0x0F | R | 0x00 |
    REG0F (ADDC conversion of System Voltage, see BQ25892_REG0F_x)
    BQ25892_REG10 - 0x10 | R | 0x00 |
    REG11 (ADC conversion of TS Voltage (TS) as percentage of REGN, see BQ25892_REG11_x)
    BQ25892_REG11 - 0x11 | R | 0x00 |
    REG11 (VBUS Good Status and ADC conversion of VBUS voltage, see BQ25892_REG11_x)
    BQ25892_REG12 - 0x12 | R | 0x00 |
    REG12 (ADC conversion of Charge Current (IBAT) when VBAT > VBATSHORT, see BQ25892_REG12_x)
    BQ25892_REG13 - 0x13 | R | 0x00 |
    REG13 (VINDPM Status, IINDPM Status and Input Current Limit in effect while Input Current Optimizer, see BQ25892_REG13_x)
    BQ25892_REG14 - 0x14 | R (except REG_RST is R/W) | --- |
    REG14 (see BQ25892_REG14_x)
    BQ25892_REG00_x:

    REG00 configuration bits (High impedance mode and Input current limit)

    BQ25892_REG00_EN_HIZ - bit7: Enable HIZ (High impedance mode) Mode
    Reset by: REG_RST & Watchdog
    0 - Disable (default)
    1 - Enable
    BQ25892_REG00_EN_ILIM - bit6: Enable ILIM Pin
    Reset by: REG_RST & Watchdog
    0 - Disable
    1 - Enable (default: Enable ILIM pin (1))
    BQ25892_REG00_IINLIM_1600 - bit5: See "Input Current Limit" below
    Reset by: REG_RST
    1 - 1600mA
    BQ25892_REG00_IINLIM_800 - bit4: See "Input Current Limit" below
    Reset by: REG_RST
    1 - 800mA
    BQ25892_REG00_IINLIM_400 - bit3: See "Input Current Limit" below
    Reset by: REG_RST
    1 - 400mA
    BQ25892_REG00_IINLIM_200 - bit2: See "Input Current Limit" below
    Reset by: REG_RST
    1 - 200mA
    BQ25892_REG00_IINLIM_100 - bit1: See "Input Current Limit" below
    Reset by: REG_RST
    1 - 100mA
    BQ25892_REG00_IINLIM_50 - bit0: See "Input Current Limit" below
    Reset by: REG_RST
    1 - 50mA
    BQ25892_REG00_IINLIM_MSK - (0x3F): IINLIM (Input Current Limit ) bit mask
    Input Current Limit (bit 0-5)
    Offset: 100mA
    Range: 100mA (000000) – 3.25A (111111)
    Default:0001000 (500mA)
    (Actual input current limit is the lower of I2C or ILIM pin)

    IINLIM bits are changed automaticallly after input source type detection is completed
  • BQ25890
    USB Host SDP = 500mA
    USB CDP = 1.5A
    USB DCP = 3.25A
    Adjustable High Voltage (MaxCharge) DCP = 1.5A
    Unknown Adapter = 500mA
    Non-Standard Adapter = 1A/2A/2.1A/2.4A
  • BQ25892
    PSEL= Hi (USB500) = 500mA
    PSEL= Lo = 3.25A

  • BQ25892_REG00_DEFAULT - (0x48): Default state of the register
    BQ25892_REG01_x:

    REG01 configuration bits (Boost Mode Temperature Monitor Thresholds and Input Voltage Limit Offset)

    BQ25892_REG01_BHOT_x - bit 6-7: Boost Mode Hot Temperature Monitor Threshold
    Reset by: REG_RST & Watchdog
    BQ25892_REG01_BCOLD - bit5: Boost Mode Cold Temperature Monitor Threshold
    Reset by: REG_RST & Watchdog
    0 - VBCOLD0 Threshold (Typ. 77%, Approx. -10°C with 103AT) (default)
    1 - VBCOLD1 Threshold (Typ. 80%, Approx. –20°C with 103AT)
    BQ25892_REG01_VINDPM_OS_1600 - bit4: See "Input Voltage Limit Offset" below
    Reset by: REG_RST
    1 - 1600mV
    BQ25892_REG01_VINDPM_OS_800 - bit3: See "Input Voltage Limit Offset" below
    Reset by: REG_RST
    1 - 800mV
    BQ25892_REG01_VINDPM_OS_400 - bit2: See "Input Voltage Limit Offset" below
    Reset by: REG_RST
    1 - 400mV
    BQ25892_REG01_VINDPM_OS_200 - bit1: See "Input Voltage Limit Offset" below
    Reset by: REG_RST
    1 - 200mV
    BQ25892_REG01_VINDPM_OS_100 - bit0: See "Input Voltage Limit Offset" below
    Reset by: REG_RST
    1 - 100mV
    BQ25892_REG01_VINDPM_OS_MSK - (0x1F): VINDPM_OS (Input Voltage Limit Offset) bit mask
    Input Voltage Limit Offset (bit 0-4)
    Default: 600mV (00110)
    Range: 0mV – 3100mV
    Minimum VINDPM threshold is clamped at 3.9V
    Maximum VINDPM threshold is clamped at 15.3V
    When VBUS at noLoad is ≤ 6V, the VINDPM_OS is used to calculate VINDPM threhold
    When VBUS at noLoad is > 6V, the VINDPM_OS multiple by 2 is used to calculate VINDPM threshold.

    BQ25892_REG01_DEFAULT - (0x06): Default state of the register
    BQ25892_REG01_BHOT_x:

    Boost Mode Hot Temperature Monitor Threshold (REG01, bit 6-7)

    BQ25892_REG01_BHOT_TH_34 - (0x00 << 6): VBHOT1 Threshold (34.75%, Approx. 60°C with 103AT) (default)
    BQ25892_REG01_BHOT_TH_37 - (0x01 << 6): VBHOT0 Threshold (Typ. 37.75%, Approx. 55°C with 103AT)
    BQ25892_REG01_BHOT_TH_31 - (0x02 << 6): VBHOT2 Threshold (Typ. 31.25%, Approx. 65°C with 103AT)
    BQ25892_REG01_BHOT_DISABLE - (0x03 << 6): Disable boost mode thermal protection
    BQ25892_REG01_BHOT_MSK - (0x03 << 6): BHOT bit mask
    BQ25892_REG02_x:

    REG02 configuration bits

    BQ25892_REG02_CONV_START - bit7: ADC Conversion Start Control
    Reset by: REG_RST & Watchdog
    0 - ADC conversion not active (default)
    1 - Start ADC Conversion
    This bit is read-only when CONV_RATE = 1. The bit stays high during ADC conversion and during input source detection.
    BQ25892_REG02_CONV_RATE - bit6: ADC Conversion Rate Selection
    Reset by: REG_RST & Watchdog
    0 - One shot ADC conversion (default)
    1 - Start 1s Continuous Conversion
    BQ25892_REG02_BOOST_FREQ - bit5: Boost Mode Frequency Selection
    Reset by: REG_RST & Watchdog
    0 - 1.5MHz (default)
    1 - 500KHz
    Write to this bit is ignored when OTG_CONFIG (see BQ25892_REG03_x ) is enabled.
    BQ25892_REG02_ICO_EN - bit4: Input Current Optimizer (ICO) Enable
    Reset by: REG_RST
    0 - Disable ICO Algorithm
    1 - Enable ICO Algorithm (default)
    BQ25892_REG02_HVDCP_EN - bit3: High Voltage DCP Enable (BQ25890 only)
    Reset by: REG_RST
    0 - Disable HVDCP handshake
    1 - Enable HVDCP handshake (default)
    BQ25892_REG02_MAXC_EN - bit2: MaxCharge Adapter Enable (BQ25890 only)
    Reset by: REG_RST
    0 - Disable MaxCharge handshake
    1 - Enable MaxCharge handshake (default)
    BQ25892_REG02_FORCE_DPDM - bit1: Force D+/D- Detection
    Reset by: REG_RST & Watchdog
    0 - Not in D+/D- or PSEL detection (default)
    1 - Force D+/D- detection
    BQ25892_REG02_AUTO_DPDM_EN - bit0: Automatic D+/D- Detection Enable
    Reset by: REG_RST & Watchdog
    0 - Disable D+/D- or PSEL detection when VBUS is plugged-in
    1 - Enable D+/D- or PEL detection when VBUS is plugged-in (default)

    BQ25892_REG01_DEFAULT - (0x1D): Default state of the register
    BQ25892_REG03_x:

    REG03 configuration bits

    BQ25892_REG03_BAT_LOADEN - bit7: Battery Load (IBATLOAD) Enable
    Reset by: REG_RST & Watchdog
    0 - Disabled (default)
    1 - Enabled
    BQ25892_REG03_WD_RST - bit6: I2C Watchdog Timer Reset
    Reset by: REG_RST & Watchdog
    0 - Normal (default)
    1 - Reset (Back to 0 after timer reset)
    BQ25892_REG03_OTG_CONFIG - bit5: Boost (OTG) Mode Configuration
    Reset by: REG_RST & Watchdog
    0 - OTG Disable (default)
    1 - OTG Enable
    BQ25892_REG03_CHG_CONFIG - bit4: Charge Enable Configuration
    Reset by: REG_RST & Watchdog
    0 - Charge Disable
    1 - Charge Enable (default)
    BQ25892_REG03_SYS_MIN_04 - bit3: See "Minimum System Voltage Limit" below
    Reset by: REG_RST
    1 - 0,4V
    BQ25892_REG03_SYS_MIN_02 - bit2: See "Minimum System Voltage Limit" below
    Reset by: REG_RST
    1 - 0,2V
    BQ25892_REG03_SYS_MIN_01 - bit1: See "Minimum System Voltage Limit" below
    Reset by: REG_RST
    1 - 0,1V
    BQ25892_REG03_SYS_MIN_MSK - (0x0E): SYS_MIN (Minimum System Voltage Limit) bit mask
    BQ25892_REG03_RESERVED - bit0: Reserved (default = 0)
    Reset by: REG_RST & Watchdog
    Minimum System Voltage Limit (bit 1-3)
    Offset: 3.0V
    Range 3.0V-3.7V
    Default: 3.5V (101)

    BQ25892_REG03_DEFAULT - (0x1A): Default state of the register
    BQ25892_REG04_x:

    REG04 configuration bits (Current pulse control Enable and Fast Charge Current Limit)

    BBQ25892_REG04_EN_PUMPX - bit7: Current pulse control Enable
    Reset by: Softwareby & Watchdog
    0 - Disable Current pulse control (default)
    1 - Enable Current pulse control (PUMPX_UP and PUMPX_DN)
    BQ25892_REG04_ICHG_4096 - bit6: See "Fast Charge Current Limit" below
    Reset by: Softwareby & Watchdog
    1 - 4096mA
    BQ25892_REG04_ICHG_2048 - bit5: See "Fast Charge Current Limit" below
    Reset by: Softwareby & Watchdog
    1 - 2048mA
    BQ25892_REG04_ICHG_1024 - bit4: See "Fast Charge Current Limit" below
    Reset by: Softwareby & Watchdog
    1 - 1024mA
    BQ25892_REG04_ICHG_512 - bit3: See "Fast Charge Current Limit" below
    Reset by: Softwareby & Watchdog
    1 - 512mA
    BQ25892_REG04_ICHG_256 - bit2: See "Fast Charge Current Limit" below
    Reset by: Softwareby & Watchdog
    1 - 256mA
    BQ25892_REG04_ICHG_128 - bit1: See "Fast Charge Current Limit" below
    Reset by: Softwareby & Watchdog
    1 - 128mA
    BQ25892_REG04_ICHG_64 - bit0: See "Fast Charge Current Limit" below
    Reset by: Softwareby & Watchdog
    1 - 64mA
    BQ25892_REG04_ICHG_MSK - (0x7F): ICHG (Fast Charge Current Limit) bit mask
    Fast Charge Current Limit (bit 0-6)
    Offset: 0mA
    Range: 0mA (0000000) – 5056mA (1001111)
    Default: 2048mA (0100000)
  • ICHG = 000000 (0mA) disables charge
  • ICHG > 1001111 (5056mA) is clamped to register value 1001111 (5056mA)

  • BQ25892_REG04_DEFAULT - (0x20): Default state of the register
    BQ25892_REG05_x:

    REG05 configuration bits (Precharge Current Limit and Termination Current Limit)

    BQ25892_REG05_IPRECHG_512 - bit7: See "Precharge Current Limit" below
    Reset by: Softwareby & Watchdog
    1 - 512mA
    BQ25892_REG05_IPRECHG_256 - bit6: See "Precharge Current Limit" below
    Reset by: Softwareby & Watchdog
    1 - 256mA
    BQ25892_REG05_IPRECHG_128 - bit5: See "Precharge Current Limit" below
    Reset by: Softwareby & Watchdog
    1 - 128mA
    BQ25892_REG05_IPRECHG_64 - bit4: See "Precharge Current Limit" below
    Reset by: Softwareby & Watchdog
    1 - 64mA
    BQ25892_REG05_IPRECHG_MSK - (0xF0): IPRECHG (Precharge Current Limit) bit mask

    BQ25892_REG05_ITERM_512 - bit3: See "Termination Current Limit" below
    Reset by: Softwareby & Watchdog
    1 - 512mA
    BQ25892_REG05_ITERM_256 - bit2: See "Termination Current Limit" below
    Reset by: Softwareby & Watchdog
    1 - 256mA
    BQ25892_REG05_ITERM_128 - bit1: See "Termination Current Limit" below
    Reset by: Softwareby & Watchdog
    1 - 128mA
    BQ25892_REG05_ITERM_64 - bit0: See "Termination Current Limit" below
    Reset by: Softwareby & Watchdog
    1 - 64mA
    BQ25892_REG05_ITERM_MSK - (0x0F): ITERM (Termination Current Limit) bit mask
    Precharge Current Limit (bit 4-7)
    Offset: 64mA
    Range: 64mA – 1024mA
    Default: 128mA (0001)
    Termination Current Limit (bit 0-3)
    Offset: 64mA
    Range: 64mA – 1024mA
    Default: 256mA (0011)

    BQ25892_REG05_DEFAULT - (0x13): Default state of the register
    BQ25892_REG06_x:

    REG06 configuration bits (Charge Voltage Limit, Battery Precharge to Fast Charge Threshold and Battery Recharge Threshold Offset)

    BQ25892_REG06_VREG_512 - bit7: See "Charge Voltage Limit" below
    Reset by: Softwareby & Watchdog
    1 - 512mV
    BQ25892_REG06_VREG_256 - bit6: See "Charge Voltage Limit" below
    Reset by: Softwareby & Watchdog
    1 - 256mV
    BQ25892_REG06_VREG_128 - bit5: See "Charge Voltage Limit" below
    Reset by: Softwareby & Watchdog
    1 - 128mV
    BQ25892_REG06_VREG_64 - bit4: See "Charge Voltage Limit" below
    Reset by: Softwareby & Watchdog
    1 - 64mV
    BQ25892_REG06_VREG_32 - bit3: See "Charge Voltage Limit" below
    Reset by: Softwareby & Watchdog
    1 - 32mV
    BQ25892_REG06_VREG_16 - bit2: See "Charge Voltage Limit" below
    Reset by: Softwareby & Watchdog
    1 - 16mV
    BQ25892_REG06_VREG_MSK - (0xFC): VREG (Charge Voltage Limit) bit mask

    BQ25892_REG06_BATLOWV - bit1: Battery Precharge to Fast Charge Threshold
    Reset by: Softwareby & Watchdog
    0 - 2.8V
    1 - 3.0V (default)
    BQ25892_REG06_VRECHG - bit0: Battery Recharge Threshold Offset (below Charge Voltage Limit)
    Reset by: Softwareby & Watchdog
    0 - 100mV (VRECHG) below VREG (REG06[7:2]) (default)
    1 - 200mV (VRECHG) below VREG (REG06[7:2])
    Charge Voltage Limit (bit 2-7)
    Offset: 3.840V
    Range: 3.840V – 4.608V (110000)
    Default: 4.208V (010111)
    VREG > 110000 (4.608V) is clamped to register value 110000 (4.608V)

    BQ25892_REG06_DEFAULT - (0x5E): Default state of the register
    BQ25892_REG07_x:

    REG07 configuration bits

    BQ25892_REG07_EN_TERM - bit7: Charging Termination Enable
    Reset by: Softwareby & Watchdog
    0 - Disable
    1 - Enable (default)
    BQ25892_REG07_STAT_DIS - bit6: STAT Pin Disable
    Reset by: Softwareby & Watchdog
    0 - Enable STAT pin function (default)
    1 - Disable STAT pin function
    BQ25892_REG07_WATCHDOG_x - bit 4-5: I2C Watchdog Timer Setting
    Reset by: Softwareby & Watchdog
    BQ25892_REG07_EN_TIMER - bit3: Charging Safety Timer Enable
    Reset by: Softwareby & Watchdog
    0 - Disable
    1 - Enable (default)
    BQ25892_REG07_CHG_TIMER_x - bit 1-2: Fast Charge Timer Setting
    Reset by: Softwareby & Watchdog
    BQ25892_REG07_JEITA_ISET - bit0: JEITA Low Temperature Current Setting
    Reset by: Softwareby & Watchdog
    0 - 50% of ICHG (REG04[6:0], see BQ25892_REG04_x)
    1 - 20% of ICHG (REG04[6:0], see BQ25892_REG04_x) (default)

    BQ25892_REG07_DEFAULT - (0x9D): Default state of the register
    BQ25892_REG07_WATCHDOG_x:

    I2C Watchdog Timer Setting (REG07, bit 4-5)

    BQ25892_REG07_WATCHDOG_DIS - (0x00 << 4): Disable watchdog timer
    BQ25892_REG07_WATCHDOG_40 - (0x01 << 4): 40s (default)
    BQ25892_REG07_WATCHDOG_80 - (0x02 << 4): 80s
    BQ25892_REG07_WATCHDOG_160 - (0x03 << 4): 160s
    BQ25892_REG07_WATCHDOG_MSK - (0x03 << 4): WATCHDOG bit mask
    BQ25892_REG07_CHG_TIMER_x:

    Fast Charge Timer Setting (REG07, bit 1-2)

    BQ25892_REG07_CHG_TIMER_5 - (0x00 << 1): 5 hrs
    BQ25892_REG07_CHG_TIMER_8 - (0x01 << 1): 8 hrs
    BQ25892_REG07_CHG_TIMER_12 - (0x02 << 1): 12 hrs (default)
    BQ25892_REG07_CHG_TIMER_20 - (0x03 << 1): 20 hrs
    BQ25892_REG07_CHG_TIMER_MSK - (0x03 << 1): CHG_TIMER bit mask
    BQ25892_REG08_x:

    REG08 configuration bits (IR Compensation Resistor Setting, IR Compensation Voltage Clamp and Thermal Regulation Threshold)

    BQ25892_REG08_BAT_COMP_80 - bit7: See "IR Compensation Resistor Setting" below
    Reset by: Softwareby & Watchdog
    1 - 80mΩ
    BQ25892_REG08_BAT_COMP_40 - bit6: See "IR Compensation Resistor Setting" below
    Reset by: Softwareby & Watchdog
    1 - 40mΩ
    BQ25892_REG08_BAT_COMP_20 - bit5: See "IR Compensation Resistor Setting" below
    Reset by: Softwareby & Watchdog
    1 - 20mΩ
    BQ25892_REG08_BAT_COMP_MSK - (0xE0): BAT_COMP (IR Compensation Resistor Setting) bit mask

    BQ25892_REG08_VCLAMP_128 - bit4: See "IR Compensation Voltage Clamp above VREG (REG06[7:2])" below
    Reset by: Softwareby & Watchdog
    1 - 128mV
    BQ25892_REG08_VCLAMP_64 - bit3: See "IR Compensation Voltage Clamp above VREG (REG06[7:2])" below
    Reset by: Softwareby & Watchdog
    1 - 64mV
    BQ25892_REG08_VCLAMP_32 - bit2: See "IR Compensation Voltage Clamp above VREG (REG06[7:2])" below
    Reset by: Softwareby & Watchdog
    1 - 32mV
    BQ25892_REG08_VCLAMP_MSK - (0x1C): VCLAMP (R Compensation Voltage Clamp) bit mask

    BQ25892_REG08_TREG_x - bit 0-1: Thermal Regulation Threshold
    Reset by: Softwareby & Watchdog
    IR Compensation Resistor Setting (bit 5-7)
    Range: 0 – 140mΩ
    Default: 0Ω (000) (i.e. Disable IRComp)
    IR Compensation Voltage Clamp above VREG (REG06[7:2], see BQ25892_REG06_x ) (bit 2-4)
    Offset: 0mV
    Range: 0-224mV
    Default: 0mV (000)

    BQ25892_REG08_DEFAULT - (0x03): Default state of the register
    BQ25892_REG08_TREG_x:

    Thermal Regulation Threshold (REG08, bit 0-1)

    BQ25892_REG08_TREG_60 - (0x00): 60°C
    BQ25892_REG08_TREG_80 - (0x01): 80°C
    BQ25892_REG08_TREG_100 - (0x02): 100°C
    BQ25892_REG08_TREG_120 - (0x03): 120°C (default)
    BQ25892_REG08_TREG_MSK - (0x03): TREG bit mask
    BQ25892_REG09_x:

    REG09 configuration bits

    BQ25892_REG09_FORCE_ICO - bit7: Force Start Input Current Optimizer (ICO)
    Reset by: Softwareby & Watchdog
    0 - Do not force ICO (default)
    1 - Force ICO
    This bit is can only be set only and always returns to 0 after ICO starts
    BQ25892_REG09_TMR2X_EN - bit6: Safety Timer Setting during DPM or Thermal Regulation
    Reset by: Softwareby & Watchdog
    0 - Safety timer not slowed by 2X during input DPM or thermal regulation
    1 - Safety timer slowed by 2X during input DPM or thermal regulation (default)
    BQ25892_REG09_BATFET_DIS - bit5: Force BATFET off to enable ship mode
    Reset by: Softwareby
    0 - Allow BATFET turn on (default)
    1 - Force BATFET off
    BQ25892_REG09_JEITA_VSET - bit4: JEITA High Temperature Voltage Setting
    Reset by: Software & Watchdog
    0 - Set Charge Voltage to VREG-200mV during JEITA hig temperature (default)
    1 - Set Charge Voltage to VREG during JEITA high temperature
    BQ25892_REG09_BATFET_DLY - bit3: BATFET turn off delay control
    Reset by: Softwareby
    0 - BATFET turn off immediately when BATFET_DIS bit is set (default)
    1 - BATFET turn off delay by tSM_DLY (10 to 15sec.) when BATFET_DIS bit is set
    BQ25892_REG09_BATFET_RST_EN - bit2: BATFET full system reset enable
    Reset by: Softwareby
    0 - Disable BATFET full system reset
    1 - Enable BATFET full system reset (default)
    BQ25892_REG09_PUMPX_UP - bit1: Current pulse control voltage up enable
    Reset by: Softwareby & Watchdog
    0 - Disable (default)
    1 - Enable
    This bit is can only be set when EN_PUMPX bit is set and returns to 0 after current pulse control sequence is completed
    BQ25892_REG09_PUMPX_DN - bit0: Current pulse control voltage down enable
    Reset by: Softwareby & Watchdog
    0 - Disable (default)
    1 - Enable
    This bit is can only be set when EN_PUMPX bit is set and returns to 0 after current pulse control sequence is completed

    BQ25892_REG09_DEFAULT - (0x44): Default state of the register
    BQ25892_REG0A_x:

    REG0A configuration bits (Boost Mode Voltage Regulation and Boost Mode Current Limit)

    BQ25892_REG0A_BOOSTV_512 - bit7: See "Boost Mode Voltage Regulation" below
    Reset by: Softwareby & Watchdog
    1 - 512mV
    BQ25892_REG0A_BOOSTV_256 - bit6: See "Boost Mode Voltage Regulation" below
    Reset by: Softwareby & Watchdog
    1 - 256mV
    BQ25892_REG0A_BOOSTV_128 - bit5: See "Boost Mode Voltage Regulation" below
    Reset by: Softwareby & Watchdog
    1 - 128mV
    BQ25892_REG0A_BOOSTV_64 - bit4: See "Boost Mode Voltage Regulation" below
    Reset by: Softwareby & Watchdog
    1 - 64mV
    BQ25892_REG0A_BOOSTV_MSK - (0xF0): BOOSTV (Boost Mode Voltage Regulation) bit mask

    BQ25892_REG0A_RESERVED - bit3: Reserved (default = 0)
    Reset by: Softwareby & Watchdog
    BQ25892_REG0A_BOOST_LIM_x - bit 0-2: Boost Mode Current Limit
    Reset by: Softwareby & Watchdog
    Boost Mode Voltage Regulation (bit 4-7)
    Offset: 4.55V
    Range: 4.55V – 5.51V
    Default:4.998V(0111)

    BQ25892_REG0A_DEFAULT - (0x73): Default state of the register
    BQ25892_REG0A_BOOST_LIM_x:

    Boost Mode Current Limit (REG0A, bit 0-2)

    BQ25892_REG0A_BOOST_LIM_05 - (0x00): 0.5A
    BQ25892_REG0A_BOOST_LIM_075 - (0x01): 0.75A
    BQ25892_REG0A_BOOST_LIM_12 - (0x02): 1.2A
    BQ25892_REG0A_BOOST_LIM_14 - (0x03): 1.4A (defaul)
    BQ25892_REG0A_BOOST_LIM_165 - (0x04): 1.65A
    BQ25892_REG0A_BOOST_LIM_1875 - (0x05): 1.875A
    BQ25892_REG0A_BOOST_LIM_215 - (0x06): 2.15A
    BQ25892_REG0A_BOOST_LIM_245 - (0x07): 2.45A
    BQ25892_REG0A_BOOST_LIM_MSK - (0x07): BOOST_LIM bit mask
    BQ25892_REG0B_x:

    REG0B register bits (Status information)

    BQ25892_REG0B_VBUS_STAT_x - bit 5-7: VBUS Status register
    Note: Software current limit is reported in IINLIM register (see BQ25892_REG00_x )
    BQ25892_REG0B_CHRG_STAT_x - bit 3-4: Charging Status
    BQ25892_REG0B_PG_STAT - bit2: Power Good Status
    0 - Not Power Good
    1 - Power Good
    BQ25892_REG0B_RESERVED - bit1: Reserved: Always reads 0
    BQ25892_REG0B_VSYS_STAT - bit0: VSYS Regulation Status
    0 - Not in VSYSMIN regulation (BAT > VSYSMIN)
    1 - In VSYSMIN regulation (BAT < VSYSMIN)
    BQ25892_REG0B_VBUS_STAT_x:

    VBUS Status register (REG0B, bit 5-7)

    BQ25890:
    BQ25892_REG0B_VBUS_STAT_NO_INP - (0x00 << 5): No input
    BQ25892_REG0B_VBUS_STAT_SDP - (0x01 << 5): USB host SDP
    BQ25890_REG0B_VBUS_STAT_CDP - (0x02 << 5): USB CDP (1.5A)
    BQ25890_REG0B_VBUS_STAT_DCP - (0x03 << 5): USB DCP (3.25A)
    BQ25890_REG0B_VBUS_STAT_AHV_DCP - (0x04 << 5): Adjustable High Voltage DCP (MaxCharge) (1.5A)
    BQ25890_REG0B_VBUS_STAT_UNKNOWN - (0x05 << 5): Unknown Adapter (500mA)
    BQ25890_REG0B_VBUS_STAT_NON_STD - (0x06 << 5): Non-Standard Adapter (1A/2A/2.1A/2.4A)
    BQ25892_REG0B_VBUS_STAT_OTG - (0x07 << 5): OTG
    BQ25892:
    BQ25892_REG0B_VBUS_STAT_NO_INP - (0x00 << 5): No input
    BQ25892_REG0B_VBUS_STAT_SDP - (0x01 << 5): USB host SDP
    BQ25892_REG0B_VBUS_STAT_ADAPTER - (0x02 << 5): Adapter (3.25A)
    BQ25892_REG0B_VBUS_STAT_OTG - (0x07 << 5): OTG

    BQ25892_REG0B_VBUS_STAT_MSK - (0x07 << 5): VBUS_STAT bit mask
    BQ25892_REG0B_CHRG_STAT_x:

    Charging Status (REG0B, bit 3-4)

    BQ25892_REG0B_CHRG_STAT_NO - (0x00 << 3): Not charging
    BQ25892_REG0B_CHRG_STAT_PRE - (0x01 << 3): Pre-charge ( < VBATLOWV)
    BQ25892_REG0B_CHRG_STAT_FAST - (0x02 << 3): Fast charging
    BQ25892_REG0B_CHRG_STAT_TERM - (0x03 << 3): Charging termination done
    BQ25892_REG0B_CHRG_STAT_MSK - (0x03 << 3): CHRG_STAT bit mask
    BQ25892_REG0C_x:

    REG0C register bits (Fault status information)

    BQ25892_REG0C_WATCHDOG_FAULT - bit7: Watchdog Fault Status
    0 - Normal
    1 - Watchdog timer expiration
    BQ25892_REG0C_BOOST_FAULT - bit6: Boost Mode Fault Status
    0 - Normal
    1 - VBUS overloaded in OTG, or VBUS OVP, or battery is too low in boost mode
    BQ25892_REG0C_CHRG_FAULT_x - bit 4-5: Charge Fault Status
    BQ25892_REG0C_BAT_FAULT - bit:3: Battery Fault Status
    0 - Normal
    1 - BATOVP (VBAT > VBATOVP)
    BQ25892_REG0C_NTC_F_x - bit 0-2: NTC Fault Status
    BQ25892_REG0C_CHRG_FAULT_x:

    Charge Fault Status (REG0C, bit 4-5)

    BQ25892_REG0C_CHRG_FAULT_NORM - (0x00 << 4): Normal
    BQ25892_REG0C_CHRG_FAULT_INP - (0x01 << 4): Input fault (VBUS > VACOV or VBAT < VBUS < VVBUSMIN(typical 3.8V) )
    BQ25892_REG0C_CHRG_FAULT_THERM - (0x02 << 4): Thermal shutdown
    BQ25892_REG0C_CHRG_FAULT_CHARGE - (0x03 << 4): Charge Safety Timer Expiration
    BQ25892_REG0C_CHRG_FAULT_MSK - (0x03 << 4): CHRG_FAULT bit mask
    BQ25892_REG0C_NTC_F_x:

    NTC Fault Status (REG0C, bit 0-2)

    Buck Mode:
    BQ25892_REG0C_NTC_F_BUCK_NORM - (0x00): Normal
    BQ25892_REG0C_NTC_F_BUCK_WARM - (0x02): TS warm
    BQ25892_REG0C_NTC_F_BUCK_COOL - (0x03): TS cool
    BQ25892_REG0C_NTC_F_BUCK_COLD - (0x05): TS cold
    BQ25892_REG0C_NTC_F_BUCK_HOT - (0x06): TS hot
    Boost Mode:
    BQ25892_REG0C_NTC_F_BOOST_NORM - (0x00): Normal
    BQ25892_REG0C_NTC_F_BOOST_COLD - (0x05): TS cold
    BQ25892_REG0C_NTC_F_BOOST_HOT - (0x06): TS hot

    BQ25892_REG0C_NTC_FAULT_MSK - (0x07): NTC_FAULT bit mask
    BQ25892_REG0D_x:

    REG0D configuration bits (VINDPM Threshold Setting Method and Absolute VINDPM Threshold)

    BQ25892_REG0D_FORCE_VINDPM - bit7: VINDPM Threshold Setting Method
    Reset by: Softwareby
    0 - Run Relative VINDPM Threshold (default)
    1 - Run Absolute VINDPM Threshold
    BQ25892_REG0D_VINDPM_6400 - bit6: See "Absolute VINDPM Threshold" below
    Reset by: Softwareby
    1 - 6400mV
    BQ25892_REG0D_VINDPM_3200 - bit5: See "Absolute VINDPM Threshold" below
    Reset by: Softwareby
    1 - 3200mV
    BQ25892_REG0D_VINDPM_1600 - bit4: See "Absolute VINDPM Threshold" below
    Reset by: Softwareby
    1 - 1600mV
    BQ25892_REG0D_VINDPM_800 - bit3: See "Absolute VINDPM Threshold" below
    Reset by: Softwareby
    1 - 800mV
    BQ25892_REG0D_VINDPM_400 - bit2: See "Absolute VINDPM Threshold" below
    Reset by: Softwareby
    1 - 400mV
    BQ25892_REG0D_VINDPM_200 - bit1: See "Absolute VINDPM Threshold" below
    Reset by: Softwareby
    1 - 200mV
    BQ25892_REG0D_VINDPM_100 - bit0: See "Absolute VINDPM Threshold" below
    Reset by: Softwareby
    1 - 100mV
    BQ25892_REG0D_VINDPM_MSK - (0x7F): VINDPM (Absolute VINDPM Threshold) bit mask
    Absolute VINDPM Threshold (bit 0-6)
    Offset: 2.6V
    Range: 3.9V (0001101) – 15.3V (1111111)
    Default: 4.4V (0010010)
  • Value < 0001101 is clamped to 3.9V (0001101)
  • Register is read only when FORCE_VINDPM=0 and can be written by internal control based on relative VINDPM threshold setting
  • Register can be read/write when FORCE_VINDPM = 1

  • BQ25892_REG0D_DEFAULT - (0x12): Default state of the register
    BQ25892_REG0E_x:

    REG0E register bits (Thermal Regulation Status and ADC conversion of Battery Voltage)

    BQ25892_REG0E_FORCE_THERM_STAT - bit7: Thermal Regulation Status
    0 - Normal
    1 - In Thermal Regulation
    BQ25892_REG0E_BATV_1280 - bit6: See "ADC conversion of Battery Voltage" below
    1 - 1280mV
    BQ25892_REG0E_BATV_640 - bit5: See "ADC conversion of Battery Voltage" below
    1 - 640mV
    BQ25892_REG0E_BATV_320 - bit4: See "ADC conversion of Battery Voltage" below
    1 - 320mV
    BQ25892_REG0E_BATV_160 - bit3: See "ADC conversion of Battery Voltage" below
    1 - 160mV
    BQ25892_REG0E_BATV_80 - bit2: See "ADC conversion of Battery Voltage" below
    1 - 80mV
    BQ25892_REG0E_BATV_40 - bit1: See "ADC conversion of Battery Voltage" below
    1 - 40mV
    BQ25892_REG0E_BATV_20 - bit0: See "ADC conversion of Battery Voltage" below
    1 - 20mV
    BQ25892_REG0E_BATV_MSK - (0x7F): BATV (ADC conversion of Battery Voltage) bit mask
    ADC conversion of Battery Voltage (VBAT) (bit 0-6)
    Offset: 2.304V
    Range: 2.304V (0000000) – 4.848V (1111111)
    Default: 2.304V (0000000)

    BQ25892_REG0E_DEFAULT - (0x00): Default state of the register
    BQ25892_REG0F_x:

    REG0F register bits (ADDC conversion of System Voltage)

    BBQ25892_REG0F_RESERVED - bit7: Reserved: Always reads 0
    BQ25892_REG0F_SYSV_1280 - bit6: See "ADDC conversion of System Voltage" below
    1 - 1280mV
    BQ25892_REG0F_SYSV_640 - bit5: See "ADDC conversion of System Voltage" below
    1 - 640mV
    BQ25892_REG0F_SYSV_320 - bit4: See "ADDC conversion of System Voltage" below
    1 - 320mV
    BQ25892_REG0F_SYSV_160 - bit3: See "ADDC conversion of System Voltage" below
    1 - 160mV
    BQ25892_REG0F_SYSV_80 - bit2: See "ADDC conversion of System Voltage" below
    1 - 80mV
    BQ25892_REG0F_SYSV_40 - bit1: See "ADDC conversion of System Voltage" below
    1 - 40mV
    BQ25892_REG0F_SYSV_20 - bit0: See "ADDC conversion of System Voltage" below
    1 - 20mV
    BQ25892_REG0F_SYSV_MSK - (0x7F): SYSV (ADDC conversion of System Voltage) bit mask
    ADC conversion of System Voltage (VSYS) (bit 0-6)
    Offset: 2.304V
    Range: 2.304V (0000000) – 4.848V (1111111)
    Default: 2.304V (0000000)

    BQ25892_REG0F_DEFAULT - (0x00): Default state of the register
    BQ25892_REG10_x:

    REG10 register bits (ADC conversion of TS Voltage (TS) as percentage of REGN)

    BQ25892_REG10_RESERVED - bit7: Reserved: Always reads 0
    BQ25892_REG10_TSPCT_29 - bit6: See "ADC conversion of TS Voltage (TS) as percentage of REGN" below
    1 - 29.76%
    BQ25892_REG10_TSPCT_14 - bit5: See "ADC conversion of TS Voltage (TS) as percentage of REGN" below
    1 - 14.88%
    BQ25892_REG10_TSPCT_7 - bit4: See "ADC conversion of TS Voltage (TS) as percentage of REGN" below
    1 - 7.44%
    BQ25892_REG10_TSPCT_3 - bit3: See "ADC conversion of TS Voltage (TS) as percentage of REGN" below
    1 - 3.72%
    BQ25892_REG10_TSPCT_1 - bit2: See "ADC conversion of TS Voltage (TS) as percentage of REGN" below
    1 - 1.86%
    BQ25892_REG10_TSPCT_09 - bit1: See "ADC conversion of TS Voltage (TS) as percentage of REGN" below
    1 - 0.93%
    BQ25892_REG10_TSPCT_04 - bit0: See "ADC conversion of TS Voltage (TS) as percentage of REGN" below
    1 - 0.465%
    BQ25892_REG10_TSPCT_MSK - (0x7F): TSPCT (ADC conversion of TS Voltage (TS) as percentage of REGN) bit mask
    ADC conversion of TS Voltage (TS) as percentage of REGN (bit 0-6)
    Offset: 21%
    Range 21% (0000000) – 80% (1111111)
    Default: 21% (0000000)

    BQ25892_REG10_DEFAULT - (0x00): Default state of the register
    BQ25892_REG11_x:

    REG11 register bits (VBUS Good Status and ADC conversion of VBUS voltage)

    BQ25892_REG11_VBUS_GD - bit7: VBUS Good Status
    0 - Not VBUS attached
    1 - VBUS Attached
    BQ25892_REG11_VBUSV_6400 - bit6: See "ADC conversion of VBUS voltage" below
    1 - 6400mV
    BQ25892_REG11_VBUSV_3200 - bit5: See "ADC conversion of VBUS voltage" below
    1 - 3200mV
    BQ25892_REG11_VBUSV_1600 - bit4: See "ADC conversion of VBUS voltage" below
    1 - 1600mV
    BQ25892_REG11_VBUSV_800 - bit3: See "ADC conversion of VBUS voltage" below
    1 - 800mV
    BQ25892_REG11_VBUSV_400 - bit2: See "ADC conversion of VBUS voltage" below
    1 - 400mV
    BQ25892_REG11_VBUSV_200 - bit1: See "ADC conversion of VBUS voltage" below
    1 - 200mV
    BQ25892_REG11_VBUSV_100 - bit0: See "ADC conversion of VBUS voltage" below
    1 - 100mV
    BQ25892_REG11_VBUSV_MSK - (0x7F): VBUSV (ADC conversion of VBUS voltage) bit mask
    ADC conversion of VBUS voltage (VBUS) (bit 0-6)
    Offset: 2.6V
    Range 2.6V (0000000) – 15.3V (1111111)
    Default: 2.6V (0000000)

    BQ25892_REG11_DEFAULT - (0x00): Default state of the register
    BQ25892_REG12_x:

    REG12 register bits (ADC conversion of Charge Current (IBAT) when VBAT > VBATSHORT,)

    BBQ25892_REG12_UNUSED - bit7: Always reads 0
    BQ25892_REG12_ICHGR_3200 - bit6: See "ADC conversion of Charge Current (IBAT) when VBAT > VBATSHORT" below
    1 - 3200mA
    BQ25892_REG12_ICHGR_1600 - bit5: See "ADC conversion of Charge Current (IBAT) when VBAT > VBATSHORT" below
    1 - 1600mA
    BQ25892_REG12_ICHGR_800 - bit4: See "ADC conversion of Charge Current (IBAT) when VBAT > VBATSHORT" below
    1 - 800mA
    BQ25892_REG12_ICHGR_400 - bit3: See "ADC conversion of Charge Current (IBAT) when VBAT > VBATSHORT" below
    1 - 400mA
    BQ25892_REG12_ICHGR_200 - bit2: See "ADC conversion of Charge Current (IBAT) when VBAT > VBATSHORT" below
    1 - 200mA
    BQ25892_REG12_ICHGR_100 - bit1: See "ADC conversion of Charge Current (IBAT) when VBAT > VBATSHORT" below
    1 - 100mA
    BQ25892_REG12_ICHGR_50 - bit0: See "ADC conversion of Charge Current (IBAT) when VBAT > VBATSHORT" below
    1 - 50mA
    BQ25892_REG12_ICHGR_MSK - (0x7F): ICHGR (ADC conversion of Charge Current (IBAT) when VBAT > VBATSHORT) bit mask
    ADC conversion of Charge Current (IBAT) when VBAT > VBATSHORT (bit 0-6)
    Offset: 0mA
    Range 0mA (0000000) – 6350mA (1111111)
    Default: 0mA (0000000)
    This register returns 0000000 for VBAT < VBATSHORT

    BQ25892_REG12_DEFAULT - (0x00): Default state of the register
    BQ25892_REG13_x:

    REG13 register bits (VINDPM Status, IINDPM Status and Input Current Limit in effect while Input Current Optimizer,)

    BQ25892_REG13_VDPM_STAT - bit7: VINDPM Status
    0 - Not in VINDPM
    1 - VINDPM
    BQ25892_REG13_IDPM_STAT - bit6: IINDPM Status
    0 - Not in IINDPM
    1 - IINDPM
    BQ25892_REG13_IDPM_LIM_1600 - bit5: See "Input Current Limit in effect while Input Current Optimizer (ICO) is enabled" below
    1 - 1600mA
    BQ25892_REG13_IDPM_LIM_800 - bit4: See "Input Current Limit in effect while Input Current Optimizer (ICO) is enabled" below
    1 - 800mA
    BQ25892_REG13_IDPM_LIM_400 - bit3: See "Input Current Limit in effect while Input Current Optimizer (ICO) is enabled" below
    1 - 400mA
    BQ25892_REG13_IDPM_LIM_200 - bit2: See "Input Current Limit in effect while Input Current Optimizer (ICO) is enabled" below
    1 - 200mA
    BQ25892_REG13_IDPM_LIM_100 - bit1: See "Input Current Limit in effect while Input Current Optimizer (ICO) is enabled" below
    1 - 100mA
    BQ25892_REG13_IDPM_LIM_50 - bit0: See "Input Current Limit in effect while Input Current Optimizer (ICO) is enabled" below
    1 - 50mA
    BQ25892_REG13_IDPM_LIM_MSK - (0x3F): IDPM_LIM (Input Current Limit in effect while Input Current Optimizer (ICO) is enabled) bit mask
    Input Current Limit in effect while Input Current Optimizer (ICO) is enabled (bit 0-5)
    Offset: 100mA (default)
    Range 100mA (0000000) – 3.25mA (1111111)

    BQ25892_REG13_DEFAULT - (0x00): Default state of the register
    BQ25892_REG14_x:

    REG14 register bits

    BQ25892_REG14_REG_RST - bit7: Register Reset
    0 - Keep current register setting (default)
    1 - Reset to default register value and reset safety time
    Reset to 0 after register reset is completed
    BQ25892_REG14_ICO_OPTIMIZED - bit6: Input Current Optimizer (ICO) Status
    0 - Optimization is in progress
    1 - Maximum Input Current Detected
    BQ25892_REG14_PN_x - bit 3-5: Device Configuration
    BQ25892_REG14_TS_PROFILE - bit2: Temperature Profile
    1 - 1- JEITA (default)
    BQ25892_REG14_DEV_REV_MSK - bit 0-1: DEV_REV bit mask
    BQ25892_REG14_PN_x:

    Device Configuration (REG14, bit 3-5)

    BQ25892_REG14_PN_BQ25892 - (0x00 << 3): BQ25892
    BQ25892_REG14_PN_BQ25890 - (0x03 << 3): BQ25890
    BQ25892_REG14_PN_MSK - (0x07 << 3): PN bit mask
    BQ25892_RegWrite(handle[TBQ25892_Handle], iReg, iVal, iMask=0xFF)

    Writes register of BQ25892


    This function checks the given register and sends 2 bytes of data to the BQ25892. If the mask is set to only the bits which should be modified, the state of the other bits is preserved.

    handle : TBQ25892_Handle - Device handle of a specific BQ25892 (Initialized by BQ25892_Init() )
    iReg : s32 - Register information contains address and access type (Use BQ25892_REGx)
    iVal : s32 - Value to be written to the register
    iMask : s32 - Mask to preserve the state of the register. Only bits for which a "1" is set in the mask are modified
    returns : s32
    OK - if successful
    ERROR - if one of the following errors occurs
  • Register address is invalid
  • Register is read only
  • < OK - if another error occurs
    BQ25892_RegRead(handle[TBQ25892_Handle], iReg, &iVal)

    Reads register of BQ25892

    Use this function to read a specific value of a BQ25892 register.
    handle : TBQ25892_Handle - Device handle of a specific BQ25892 (Initialized by BQ25892_Init() )
    iReg : s32 - Register information contains address and access type (Use BQ25892_REGx)
    iVal : s32 - Variable for storing the data read from the BQ25892
    returns : s32
    OK - if successful
    ERROR - Register address is invalid
    < OK - if another error occurs

    DEBUG

    BQ25892_Debug_Config:
    To configure debug mode add the following macro to the main.dde file.
    /** * Use this macro to configure the debug mode: * * 0: No debugging * >0: Issues the following information via the console: * -) Content that was read from the register as well as the name of the register * when the function BQ25892_RegRead was called * -) Current content and content that should be written to the register as well * as the name of the register when the function BQ25892_RegWrite was called */ #define BQ25892_DEBUG 0

    On this page

    BQ25890/2 - Battery charge and system power path management