CDC Badge OS
Firmware for the CDC Badge v1.0 hardware security key
Loading...
Searching...
No Matches
IPowerManager Class Referenceabstract

#include <IPowerManager.h>

Inheritance diagram for IPowerManager:
cdc::core::IService cdc::hal::BQ25895Power

Public Member Functions

virtual ~IPowerManager ()=default
virtual uint16_t getBatteryVoltage () const=0
virtual uint8_t getBatteryPercent () const=0
virtual bool isUsbConnected () const=0
virtual PowerSource getPowerSource () const=0
virtual ChargeStatus getChargeStatus () const=0
virtual bool isBatteryLow () const=0
virtual bool isBatteryCritical () const=0
virtual bool isBatteryPresent () const=0
virtual void setChargingEnabled (bool enabled)=0
virtual void enterShipMode ()=0
virtual void update ()=0
virtual void refresh ()=0
Public Member Functions inherited from cdc::core::IService
virtual ~IService ()=default
virtual bool init ()=0
virtual bool start ()=0
virtual void stop ()=0
virtual ServiceState getState () const =0
virtual const char * getName () const =0

Detailed Description

Power Manager interface (BQ25895)

Definition at line 31 of file IPowerManager.h.

Constructor & Destructor Documentation

◆ ~IPowerManager()

virtual cdc::hal::IPowerManager::~IPowerManager ( )
virtualdefault

Member Function Documentation

◆ enterShipMode()

virtual void cdc::hal::IPowerManager::enterShipMode ( )
pure virtual

Enable ship mode (deep power off)

◆ getBatteryPercent()

virtual uint8_t cdc::hal::IPowerManager::getBatteryPercent ( ) const
pure virtual

Get battery percentage (0-100)

◆ getBatteryVoltage()

virtual uint16_t cdc::hal::IPowerManager::getBatteryVoltage ( ) const
pure virtual

Get battery voltage in mV

◆ getChargeStatus()

virtual ChargeStatus cdc::hal::IPowerManager::getChargeStatus ( ) const
pure virtual

Get charging status

◆ getPowerSource()

virtual PowerSource cdc::hal::IPowerManager::getPowerSource ( ) const
pure virtual

Get current power source

◆ isBatteryCritical()

virtual bool cdc::hal::IPowerManager::isBatteryCritical ( ) const
pure virtual

Check if battery is critical (<5%)

◆ isBatteryLow()

virtual bool cdc::hal::IPowerManager::isBatteryLow ( ) const
pure virtual

Check if battery is low (<20%)

◆ isBatteryPresent()

virtual bool cdc::hal::IPowerManager::isBatteryPresent ( ) const
pure virtual

Check if battery is physically connected

◆ isUsbConnected()

virtual bool cdc::hal::IPowerManager::isUsbConnected ( ) const
pure virtual

Check if USB is connected

◆ refresh()

virtual void cdc::hal::IPowerManager::refresh ( )
pure virtual

Force a synchronous re-read of charger status registers. Bypasses the IRQ-driven cache so the caller observes the current hardware state. Intended for paths that need an up-to-date reading on demand, e.g. the lock-screen refresh.

◆ setChargingEnabled()

virtual void cdc::hal::IPowerManager::setChargingEnabled ( bool enabled)
pure virtual

Enable/disable charging

◆ update()

virtual void cdc::hal::IPowerManager::update ( )
pure virtual

Update power status (poll from main loop)


The documentation for this class was generated from the following file: