Coverage for src/bluetooth_sig/gatt/characteristics/pm1_concentration.py: 100%
11 statements
« prev ^ index » next coverage.py v7.11.0, created at 2025-10-30 00:10 +0000
« prev ^ index » next coverage.py v7.11.0, created at 2025-10-30 00:10 +0000
1"""PM1 Concentration characteristic implementation."""
3from __future__ import annotations
5from ...types.gatt_enums import ValueType
6from .base import BaseCharacteristic
7from .templates import ConcentrationTemplate
10class PM1ConcentrationCharacteristic(BaseCharacteristic):
11 """Particulate Matter - PM1 Concentration characteristic (0x2BD5).
13 org.bluetooth.characteristic.particulate_matter_pm1_concentration
15 PM1 particulate matter concentration characteristic (0x2BD7).
17 Represents particulate matter PM1 concentration in micrograms per
18 cubic meter with a resolution of 1 μg/m³.
19 """
21 _template = ConcentrationTemplate()
23 _characteristic_name: str = "Particulate Matter - PM1 Concentration"
24 _manual_value_type: ValueType | str | None = ValueType.INT
25 _manual_unit: str = "µg/m³" # Override template's "ppm" default
27 # Template configuration
28 resolution: float = 1.0
29 max_value: float = 65533.0 # Exclude special values 0xFFFE and 0xFFFF