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.

BQ25756EVM: Input current is much bigger than what is set in IAC_DPM(REG0x06_Input_Current_DPM_Limit)

Part Number: BQ25756EVM
Other Parts Discussed in Thread: BQ25756

Tool/software:

Using ESP32 to set configuration to BQ25756.

When setting IAC_DPM to 400mA the actual input current (measured at PSU) is 1046mA.IAC_ADC reports 360mA and potential between TP45 and TP46 is 2.7mV.

AMP meter was used to verify that the current reported by PSU is real.(It is)

I've made a table with different settings for IAC_DPM and the measurements for each setting.

In this table we can see that actual current being drawn is 2.5-2.6 times bigger than what was set as a limit.Do you have any idea why that is?

IAC_DPM (Input current limit) (mA) IAC_ADC(reported current) (mA) Power Supply reported current (mA) Potential between TP45 and TP46 (mV)
400 360 1046 2.7
450 413 1172 3
500 462 1296 3.3
550 515 1422 3.6
600 564 1541 3.9
650 612 1662 4.2
700 661 1787 4.5
750 708 1900 4.8
800 760 2024 5.1
850 810 2151 5.5
900 860 2275 5.8
950 912 2400 6.1
1000 960 2521 6.4
1050 1010 2641 6.7
1100 1060 2762 7
1150 1112 2891 7.4
1200 1162 3017 7.7
1250 1213 3141 8
1300 1263 3266 8.3
1350 1313 3389 8.7
1400 1363 3510 9
1450 1410 3630 9.3
1500 1460 3746 9.6
1550 1510 3867 9.9
1600 1561 3993 10.2
1650 1610 4120 10.6
1700 1660 4244 10.9
1750 1713 4371 11.2
1800 1762 4493 11.5
1850 1812 4610 11.8
1900 1860 4735 12.1
1950 1910 4864 12.5
2000 1964 4986 12.8
2050 2014 5112 13.1

As an adition, this is how data is written to register REG0x06_Input_Current_DPM_Limit:

    temp = (uint8_t)(current_limit / 50);

    reg_data = (uint16_t) temp << 2;

    bq25756_write_reg_16bit(0x06, reg_data);