SensorLib 0.5.0
Multi-platform sensor driver library for Arduino, PlatformIO, and ESP-IDF
Loading...
Searching...
No Matches
GaugeBase Class Referenceabstract

Base class for battery gauge implementations. More...

#include <GaugeBase.hpp>

Inheritance diagram for GaugeBase:
[legend]

Public Member Functions

virtual ~GaugeBase ()=default
 
 GaugeBase (const GaugeBase &)=delete
 
GaugeBaseoperator= (const GaugeBase &)=delete
 
virtual bool refresh ()=0
 Refresh cached gauge data.
 
virtual float getTemperature ()=0
 Get battery temperature.
 
virtual uint16_t getVoltage ()=0
 Get battery voltage.
 
virtual float getCurrent ()=0
 Get battery current.
 
virtual uint16_t getStateOfCharge ()=0
 Get state of charge.
 
virtual uint16_t getTimeToEmpty ()=0
 Get time to empty.
 
virtual uint16_t getTimeToFull ()=0
 Get time to full.
 
virtual uint16_t getChipID ()=0
 Get chip ID.
 
virtual void reset ()=0
 Reset gauge to initial state.
 
virtual bool isCharging ()=0
 Check if battery is charging.
 
virtual bool isDischarging ()=0
 Check if battery is discharging.
 

Protected Member Functions

 GaugeBase ()=default
 

Detailed Description

Base class for battery gauge implementations.

Provides a common interface for various battery gauge ICs to read battery status information such as voltage, current, temperature, state of charge, and time estimates.

Definition at line 39 of file GaugeBase.hpp.

Constructor & Destructor Documentation

◆ ~GaugeBase()

virtual GaugeBase::~GaugeBase ( )
virtualdefault

◆ GaugeBase() [1/2]

GaugeBase::GaugeBase ( const GaugeBase )
delete

◆ GaugeBase() [2/2]

GaugeBase::GaugeBase ( )
protecteddefault

Member Function Documentation

◆ getChipID()

virtual uint16_t GaugeBase::getChipID ( )
pure virtual

Get chip ID.

Returns
Chip identifier

Implemented in GaugeBQ27220, and GaugeAXP2602.

◆ getCurrent()

virtual float GaugeBase::getCurrent ( )
pure virtual

Get battery current.

Returns
Current in milliamps (positive = charging, negative = discharging)

Implemented in GaugeBQ27220, and GaugeAXP2602.

◆ getStateOfCharge()

virtual uint16_t GaugeBase::getStateOfCharge ( )
pure virtual

Get state of charge.

Returns
SOC percentage (0-100)

Implemented in GaugeBQ27220, and GaugeAXP2602.

◆ getTemperature()

virtual float GaugeBase::getTemperature ( )
pure virtual

Get battery temperature.

Returns
Temperature in Celsius

Implemented in GaugeBQ27220, and GaugeAXP2602.

◆ getTimeToEmpty()

virtual uint16_t GaugeBase::getTimeToEmpty ( )
pure virtual

Get time to empty.

Returns
Time to empty in minutes

Implemented in GaugeBQ27220, and GaugeAXP2602.

◆ getTimeToFull()

virtual uint16_t GaugeBase::getTimeToFull ( )
pure virtual

Get time to full.

Returns
Time to full charge in minutes

Implemented in GaugeBQ27220, and GaugeAXP2602.

◆ getVoltage()

virtual uint16_t GaugeBase::getVoltage ( )
pure virtual

Get battery voltage.

Returns
Voltage in millivolts

Implemented in GaugeBQ27220, and GaugeAXP2602.

◆ isCharging()

virtual bool GaugeBase::isCharging ( )
pure virtual

Check if battery is charging.

Returns
true if charging, false otherwise

Implemented in GaugeBQ27220, and GaugeAXP2602.

◆ isDischarging()

virtual bool GaugeBase::isDischarging ( )
pure virtual

Check if battery is discharging.

Returns
true if discharging, false otherwise

Implemented in GaugeBQ27220, and GaugeAXP2602.

◆ operator=()

GaugeBase & GaugeBase::operator= ( const GaugeBase )
delete

◆ refresh()

virtual bool GaugeBase::refresh ( )
pure virtual

Refresh cached gauge data.

Returns
true if refresh successful, false otherwise

Implemented in GaugeBQ27220, and GaugeAXP2602.

◆ reset()

virtual void GaugeBase::reset ( )
pure virtual

Reset gauge to initial state.

Implemented in GaugeBQ27220, and GaugeAXP2602.


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