src.bluetooth_sig.gatt.characteristics.battery_health_information

Battery Health Information characteristic implementation.

Implements the Battery Health Information characteristic (0x2BEB) from the Battery Service. An 8-bit flags field controls the presence of optional fields.

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

Bit 1 gates two fields simultaneously: Min and Max Designed Operating Temperature.

References

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

Classes

Name

Description

BatteryHealthInformation

Parsed data from Battery Health Information characteristic.

BatteryHealthInformationCharacteristic

Battery Health Information characteristic (0x2BEB).

BatteryHealthInformationFlags

Battery Health Information flags as per Bluetooth SIG specification.

Module Contents

class src.bluetooth_sig.gatt.characteristics.battery_health_information.BatteryHealthInformation

Bases: msgspec.Struct

Parsed data from Battery Health Information characteristic.

flags

Raw 8-bit flags field.

cycle_count_designed_lifetime

Designed number of charge cycles. None if absent.

min_designed_operating_temperature

Min operating temperature (C). 127 means “>126”, -128 means “<-127”. None if absent.

max_designed_operating_temperature

Max operating temperature (C). 127 means “>126”, -128 means “<-127”. None if absent.

cycle_count_designed_lifetime: int | None = None
flags: BatteryHealthInformationFlags
max_designed_operating_temperature: int | None = None
min_designed_operating_temperature: int | None = None
class src.bluetooth_sig.gatt.characteristics.battery_health_information.BatteryHealthInformationCharacteristic

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

Battery Health Information characteristic (0x2BEB).

Reports designed battery health parameters including designed cycle count and designed operating temperature range.

Flag-bit assignments (from GSS YAML):

Bit 0: Cycle Count Designed Lifetime Present Bit 1: Min and Max Designed Operating Temperature Present Bits 2-7: Reserved for Future Use

Note: Bit 1 gates two fields (min + max temperature) simultaneously.

allow_variable_length: bool = True
expected_type
min_length: int = 1
class src.bluetooth_sig.gatt.characteristics.battery_health_information.BatteryHealthInformationFlags

Bases: enum.IntFlag

Battery Health Information flags as per Bluetooth SIG specification.

CYCLE_COUNT_DESIGNED_LIFETIME_PRESENT = 1
TEMPERATURE_RANGE_PRESENT = 2