Skip to content

Commit 7f9a2c2

Browse files
committed
New findings with nanobeam and liteac gps
1 parent 93cd2b8 commit 7f9a2c2

File tree

1 file changed

+12
-6
lines changed

1 file changed

+12
-6
lines changed

airos/data.py

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -152,6 +152,7 @@ class Polling:
152152
fixed_frame: bool
153153
gps_sync: bool
154154
ff_cap_rep: bool
155+
flex_mode: int | None = None # Not present in all devices
155156

156157

157158
@dataclass
@@ -207,9 +208,14 @@ class EthList:
207208
class GPSData:
208209
"""Leaf definition."""
209210

210-
lat: str
211-
lon: str
212-
fix: int
211+
lat: str | None = None
212+
lon: str | None = None
213+
fix: int | None = None
214+
sats: int | None = None # LiteAP GPS
215+
dim: int | None = None # LiteAP GPS
216+
dop: float | None = None # LiteAP GPS
217+
alt: float | None = None # LiteAP GPS
218+
time_synced: int | None = None # LiteAP GPS
213219

214220

215221
@dataclass
@@ -235,7 +241,6 @@ class Remote:
235241
totalram: int
236242
freeram: int
237243
netrole: str
238-
mode: WirelessMode
239244
sys_id: str
240245
tx_throughput: int
241246
rx_throughput: int
@@ -263,11 +268,12 @@ class Remote:
263268
unms: UnmsStatus
264269
airview: int
265270
service: ServiceTime
271+
mode: WirelessMode | None = None # Investigate why remotes can have no mode set
266272

267273
@classmethod
268274
def __pre_deserialize__(cls, d: dict[str, Any]) -> dict[str, Any]:
269275
"""Pre-deserialize hook for Wireless."""
270-
_check_and_log_unknown_enum_value(d, "mode", WirelessMode, "Wireless", "mode")
276+
_check_and_log_unknown_enum_value(d, "mode", WirelessMode, "Remote", "mode")
271277
return d
272278

273279

@@ -329,7 +335,6 @@ class Wireless:
329335
"""Leaf definition."""
330336

331337
essid: str
332-
mode: WirelessMode
333338
ieeemode: IeeeMode
334339
band: int
335340
compat_11n: int
@@ -362,6 +367,7 @@ class Wireless:
362367
count: int
363368
sta: list[Station]
364369
sta_disconnected: list[Disconnected]
370+
mode: WirelessMode | None = None # Investigate further (see WirelessMode in Remote)
365371

366372
@classmethod
367373
def __pre_deserialize__(cls, d: dict[str, Any]) -> dict[str, Any]:

0 commit comments

Comments
 (0)