Coverage for src/bluetooth_sig/gatt/services/device_information.py: 100%
6 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"""Device Information Service implementation."""
3from __future__ import annotations
5from typing import ClassVar
7from ..characteristics.registry import CharacteristicName
8from .base import BaseGattService
11class DeviceInformationService(BaseGattService):
12 """Device Information Service implementation.
14 Contains characteristics that expose device information:
15 - Manufacturer Name String - Required
16 - Model Number String - Optional
17 - Serial Number String - Optional
18 - Hardware Revision String - Optional
19 - Firmware Revision String - Optional
20 - Software Revision String - Optional
21 """
23 service_characteristics: ClassVar[dict[CharacteristicName, bool]] = {
24 CharacteristicName.MANUFACTURER_NAME_STRING: True, # required
25 CharacteristicName.MODEL_NUMBER_STRING: False, # optional
26 CharacteristicName.SERIAL_NUMBER_STRING: False, # optional
27 CharacteristicName.HARDWARE_REVISION_STRING: False, # optional
28 CharacteristicName.FIRMWARE_REVISION_STRING: False, # optional
29 CharacteristicName.SOFTWARE_REVISION_STRING: False, # optional
30 }