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

10 statements  

« prev     ^ index     » next       coverage.py v7.13.1, created at 2026-01-11 20:14 +0000

1"""Local East Coordinate characteristic implementation.""" 

2 

3from __future__ import annotations 

4 

5from .base import BaseCharacteristic 

6from .templates import ScaledSint24Template 

7 

8 

9class LocalEastCoordinateCharacteristic(BaseCharacteristic[float]): 

10 """Local East Coordinate characteristic (0x2AB1). 

11 

12 org.bluetooth.characteristic.local_east_coordinate 

13 

14 Local East Coordinate characteristic. 

15 """ 

16 

17 # Manual overrides required as Bluetooth SIG registry doesn't provide unit/value type 

18 _manual_unit = "m" 

19 _manual_value_type = "float" 

20 # SIG spec: sint24 with 0.1 m resolution → fixed 3-byte payload; no GSS YAML 

21 expected_length = 3 

22 min_length = 3 

23 max_length = 3 

24 _template = ScaledSint24Template(scale_factor=0.1)