@@ -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:
207208class 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