PMIC (Power Management IC)
Fault register
This is the read-only fault register, REG09. It's decoded in one call by getFault(), above, or one bit at a time with the methods below. Like getFault(), reading any of these methods clears the underlying register, so read it twice in a row to get the current fault state rather than the latched fault since the last read.
isWatchdogFault()
bool isWatchdogFault();
Returns true if the I2C watchdog timer expired (WATCHDOG_FAULT, REG09 bit 7), which resets all PMIC registers to their power-on defaults. See setWatchdog() for more information.
getChargeFault()
byte getChargeFault();
Returns the charge fault code (CHRG_FAULT, REG09 bits 5:4): 0 = normal, 1 = input fault (VBUS over-voltage, or battery voltage below VBUS by less than 3.8V), 2 = thermal shutdown, 3 = charge safety timer expired.
isBatFault()
bool isBatFault();
Returns true if the battery over-voltage protection has tripped (BAT_FAULT, REG09 bit 3).
getNTCFault()
byte getNTCFault();
Returns the thermistor (NTC) fault code (NTC_FAULT, REG09 bits 2:0): 0 = normal, 5 = cold, 6 = hot. This only applies to devices with a battery temperature sensor connected to the TS pin, such as the 3-pin LiPo connector on the PM-BAT, Muon, and M.2 breakout board.