Coverage for src/bluetooth_sig/gatt/characteristics/sulfur_dioxide_concentration.py: 100%

10 statements  

« prev     ^ index     » next       coverage.py v7.11.0, created at 2025-10-30 00:10 +0000

1"""Sulfur Dioxide Concentration characteristic implementation.""" 

2 

3from __future__ import annotations 

4 

5from ...types.gatt_enums import ValueType 

6from .base import BaseCharacteristic 

7from .templates import ConcentrationTemplate 

8 

9 

10class SulfurDioxideConcentrationCharacteristic(BaseCharacteristic): 

11 """Sulfur Dioxide Concentration characteristic (0x2BD8). 

12 

13 org.bluetooth.characteristic.sulfur_dioxide_concentration 

14 

15 Sulfur dioxide concentration measurement characteristic (0x2BD3). 

16 

17 Represents sulfur dioxide (SO2) concentration in parts per billion 

18 (ppb) with a resolution of 1 ppb. 

19 """ 

20 

21 _template = ConcentrationTemplate() 

22 

23 _manual_value_type: ValueType | str | None = ValueType.INT 

24 _manual_unit: str = "ppb" # Override template's "ppm" default 

25 

26 # Template configuration 

27 resolution: float = 1.0 

28 max_value: float = 65533.0 # Exclude special values 0xFFFE and 0xFFFF