src.bluetooth_sig.gatt.characteristics.battery_energy_status

Battery Energy Status characteristic implementation.

Implements the Battery Energy Status characteristic (0x2BF0) from the Battery Service. An 8-bit flags field controls the presence of six optional medfloat16 (IEEE 11073 SFLOAT) fields.

All flag bits use normal logic (1 = present, 0 = absent).

References

Bluetooth SIG Battery Service 1.1 org.bluetooth.characteristic.battery_energy_status (GSS YAML)

Classes

Name

Description

BatteryEnergyStatus

Parsed data from Battery Energy Status characteristic.

BatteryEnergyStatusCharacteristic

Battery Energy Status characteristic (0x2BF0).

BatteryEnergyStatusFlags

Battery Energy Status flags as per Bluetooth SIG specification.

Module Contents

class src.bluetooth_sig.gatt.characteristics.battery_energy_status.BatteryEnergyStatus

Bases: msgspec.Struct

Parsed data from Battery Energy Status characteristic.

flags

Raw 8-bit flags field.

external_source_power

Power consumed from external source (watts). None if absent.

present_voltage

Terminal voltage of battery (volts). None if absent.

available_energy

Available energy (kWh). None if absent.

available_battery_capacity

Capacity at full charge (kWh). None if absent.

charge_rate

Energy flow into battery (watts, negative = discharge). None if absent.

available_energy_at_last_charge

Available energy at last charge (kWh). None if absent.

available_battery_capacity: float | None = None
available_energy: float | None = None
available_energy_at_last_charge: float | None = None
charge_rate: float | None = None
external_source_power: float | None = None
flags: BatteryEnergyStatusFlags
present_voltage: float | None = None
class src.bluetooth_sig.gatt.characteristics.battery_energy_status.BatteryEnergyStatusCharacteristic(info: src.bluetooth_sig.types.CharacteristicInfo | None = None, validation: src.bluetooth_sig.gatt.characteristics.characteristic_meta.ValidationConfig | None = None)

Bases: src.bluetooth_sig.gatt.characteristics.base.BaseCharacteristic[BatteryEnergyStatus]

Battery Energy Status characteristic (0x2BF0).

Reports battery energy information including voltage, energy capacity, and charge/discharge rates.

Flag-bit assignments (from GSS YAML):

Bit 0: External Source Power Present Bit 1: Present Voltage Present Bit 2: Available Energy Present Bit 3: Available Battery Capacity Present Bit 4: Charge Rate Present Bit 5: Available Energy at Last Charge Present Bits 6-7: Reserved for Future Use

All value fields are medfloat16 (IEEE 11073 SFLOAT, 2 bytes each).

allow_variable_length: bool = True
expected_type
min_length: int = 1
class src.bluetooth_sig.gatt.characteristics.battery_energy_status.BatteryEnergyStatusFlags

Bases: enum.IntFlag

Battery Energy Status flags as per Bluetooth SIG specification.

AVAILABLE_BATTERY_CAPACITY_PRESENT = 8
AVAILABLE_ENERGY_LAST_CHARGE_PRESENT = 32
AVAILABLE_ENERGY_PRESENT = 4
CHARGE_RATE_PRESENT = 16
EXTERNAL_SOURCE_POWER_PRESENT = 1
PRESENT_VOLTAGE_PRESENT = 2