hub.battery – Battery

The battery module lets you monitor the state and health of the battery.

hub.battery.voltage()int

Gets the battery voltage.

Returns

The voltage in in mV.

hub.battery.current()int

Gets current flowing out of the battery.

Returns

The current in in mA.

hub.battery.capacity_left()int

Gets the remaining capacity as a percentage of a fully charged battery.

Returns

The remaining battery capacity.

hub.battery.temperature()float

Gets the temperature of the battery.

Returns

The temperature in degrees Celsius.

hub.battery.charger_detect()Union[bool, int]

Checks what type of charger was detected.

Returns

See charging constants for all possible return values. Returns False if it failed to detect a charger.

hub.battery.info()dict

Gets status information about the battery.

This returns a dictionary of the form:

{
    # Battery measurements as documented above.
    'battery_capacity_left': 100
    'temperature': 25.7,
    'charge_current': 248,
    'charge_voltage': 8294,

    # Filtered version of the battery voltage.
    'charge_voltage_filtered': 8287,

    # A list of active errors. See constants given below.
    'error_state': [0],

    # Charging state. See constants given below.
    'charger_state': 2,
}
Returns

Battery status information.

Constants

Battery status values

hub.battery.BATTERY_NO_ERROR = 0

The battery is happy.

hub.battery.BATTERY_HUB_TEMPERATURE_CRITICAL_OUT_OF_RANGE = -1

The battery temperature is outside of the expected range.

hub.battery.BATTERY_TEMPERATURE_OUT_OF_RANGE = -2

The battery temperature is outside of the critical range.

hub.battery.BATTERY_TEMPERATURE_SENSOR_FAIL = -3

The battery temperature sensor is not working.

hub.battery.BATTERY_BAD_BATTERY = -4

Something is wrong with the battery.

hub.battery.BATTERY_VOLTAGE_TOO_LOW = -5

The battery voltage is too low.

hub.battery.BATTERY_MISSING = -6

No battery detected.

Charger types

hub.battery.USB_CH_PORT_NONE = 0

No charger detected.

hub.battery.USB_CH_PORT_SDP = 1

Standard downstream port (typical USB port).

hub.battery.USB_CH_PORT_CDP = 2

Charging Downstream Port (wall charger).

hub.battery.USB_CH_PORT_DCP = 3

Dedicated charging port (high current USB port).

Charging states

hub.battery.CHARGER_STATE_FAIL = -1

There was a problem charging the battery.

hub.battery.CHARGER_STATE_DISCHARGING = 0

The battery is discharging.

hub.battery.CHARGER_STATE_CHARGING_ONGOING = 1

The battery is charging.

hub.battery.CHARGER_STATE_CHARGING_COMPLETED = 2

The battery is fully charged.