PMIC charger capability interface.
virtual uint16_t getPreChargeCurrent()=0
Get pre-charge current setting.
virtual bool enableCharging(bool enable)=0
Enable or disable charging.
virtual bool isCharging()=0
Check whether charger is currently charging.
virtual bool setChargeVoltage(uint16_t mV)=0
Set charge voltage (CV mode voltage)
virtual Status getStatus()=0
Get current charger status.
ChargingStatus
Charging status enumeration.
@ NO_CHARGING
Not charging, battery idle or disconnected.
@ PRE_CHARGE
Pre-charge phase (low current for weak battery)
@ UNKNOWN
Unable to determine status.
@ TERMINATION
Charging terminated (battery full)
@ FAST_CHARGE
Fast charge phase (constant current)
virtual bool setFastChargeCurrent(uint16_t mA)=0
Set fast charge (constant-current) current.
virtual uint16_t getChargeVoltage()=0
Get charge voltage setting.
virtual uint16_t getFastChargeCurrent()=0
Get fast charge current setting.
virtual bool setTerminationCurrent(uint16_t mA)=0
Set termination current.
virtual uint16_t getTerminationCurrent()=0
Get termination current setting.
virtual ~PmicChargerBase()=default
Virtual destructor.
virtual bool setPreChargeCurrent(uint16_t mA)=0
Set pre-charge current.
Charger status structure.
bool vbusPresent
VBUS detected / good (USB power present)
bool chargeDone
Charge termination/done (battery full)
uint32_t faultCode
Optional raw fault code for diagnostics.
bool fault
Any fault latched/active.
bool charging
Charging state (coarse: true if in precharge/fastcharge)
bool batteryPresent
Battery present and detected.
ChargingStatus chargingStatus
Charging status enumeration.
bool online
PMIC reachable / initialized.