Hi MPS team,
We are using an MP2790 with a low-side pack current sense resistor. The board originally had RSENSE = 50 mOhm, but we replaced RSense with 2 mOhm. Firmware uses the datasheet formula:
Current = Reading * 100 / 32768 / RSENSE(A)
At confirmed 0 A load, RD_ITOP(0x6B) reads about 0x0218 / 536 counts. With 2 mOhm, that corresponds to about +818 mA, or +1.64 mV at SRP-SRN. Using a Picoscope TC-08, I am reading about -77µV.
With a confirmed 100 mA discharge load, RD_ITOP averages about 0x0176 / 374 counts. The delta is therefore about -163 counts, or -497 uV. For 100 mA through 2 mOhm, I expected only -200 uV / -66 counts. Picoscope TC-08 reads about -417 µV.
So this does not look like only a display/sign/two’s-complement issue. The raw register values are small positive signed values, and all RD_ICELL(n) synchronized current readings track similarly.
Relevant register/config observations:
- TRIMG_IPCB(0x9B) = 0x4000, lower 10-bit gain correction appears zero.
- Datasheet notes current-sense offset spec is after post-PCB assembly calibration and says to contact MPS FAE.
- Sense filter is the recommended style: 100 ohm series resistors to SRP/SRN with filter capacitors.
Questions:
- Is there an official MP2790 post-PCB current offset calibration procedure/app note?
- Is there an offset trim register/OTP/MTP setting separate from TRIMG_IPCB, which appears to be gain-only?
- Would an uncalibrated part/board normally show ~1.6 mV current ADC offset, or does that indicate a hardware/sense routing issue?
- Does changing RSENSE from 50 mOhm to 2 mOhm require any MTP/config change beyond host-side scaling?
Any guidance on the correct calibration flow or expected raw zero-current behavior would be appreciated.
Jim