mirror of
https://github.com/dragonpilot/dragonpilot.git
synced 2026-02-22 07:13:54 +08:00
Log modem version and some NV values (#24137)
* add back modem version number logging * tici only * log nv * make event * str cast
This commit is contained in:
@@ -134,9 +134,11 @@ class HardwareBase(ABC):
|
||||
def get_gpu_usage_percent(self):
|
||||
pass
|
||||
|
||||
@abstractmethod
|
||||
def get_modem_version(self):
|
||||
pass
|
||||
return None
|
||||
|
||||
def get_modem_nv(self):
|
||||
return None
|
||||
|
||||
@abstractmethod
|
||||
def get_modem_temperatures(self):
|
||||
|
||||
@@ -411,9 +411,6 @@ class Android(HardwareBase):
|
||||
except Exception:
|
||||
return 0
|
||||
|
||||
def get_modem_version(self):
|
||||
return None
|
||||
|
||||
def get_modem_temperatures(self):
|
||||
# Not sure if we can get this on the LeEco
|
||||
return []
|
||||
|
||||
@@ -92,9 +92,6 @@ class Pc(HardwareBase):
|
||||
def get_gpu_usage_percent(self):
|
||||
return 0
|
||||
|
||||
def get_modem_version(self):
|
||||
return None
|
||||
|
||||
def get_modem_temperatures(self):
|
||||
return []
|
||||
|
||||
|
||||
@@ -317,6 +317,19 @@ class Tici(HardwareBase):
|
||||
except Exception:
|
||||
return None
|
||||
|
||||
def get_modem_nv(self):
|
||||
timeout = 0.2 # Default timeout is too short
|
||||
files = (
|
||||
'/nv/item_files/modem/mmode/ue_usage_setting',
|
||||
'/nv/item_files/ims/IMS_enable',
|
||||
'/nv/item_files/modem/mmode/sms_only',
|
||||
)
|
||||
try:
|
||||
modem = self.get_modem()
|
||||
return { fn: str(modem.Command(f'AT+QNVFR="{fn}"', math.ceil(timeout), dbus_interface=MM_MODEM, timeout=timeout)) for fn in files}
|
||||
except Exception:
|
||||
return None
|
||||
|
||||
def get_modem_temperatures(self):
|
||||
timeout = 0.2 # Default timeout is too short
|
||||
try:
|
||||
|
||||
@@ -99,6 +99,9 @@ def hw_state_thread(end_event, hw_queue):
|
||||
registered_count = 0
|
||||
prev_hw_state = None
|
||||
|
||||
modem_version = None
|
||||
modem_nv = None
|
||||
|
||||
while not end_event.is_set():
|
||||
# these are expensive calls. update every 10s
|
||||
if (count % int(10. / DT_TRML)) == 0:
|
||||
@@ -108,6 +111,14 @@ def hw_state_thread(end_event, hw_queue):
|
||||
if len(modem_temps) == 0 and prev_hw_state is not None:
|
||||
modem_temps = prev_hw_state.modem_temps
|
||||
|
||||
# Log modem version once
|
||||
if TICI and ((modem_version is None) or (modem_nv is None)):
|
||||
modem_version = HARDWARE.get_modem_version() # pylint: disable=assignment-from-none
|
||||
modem_nv = HARDWARE.get_modem_nv() # pylint: disable=assignment-from-none
|
||||
|
||||
if (modem_version is not None) and (modem_nv is not None):
|
||||
cloudlog.event("modem version", version=modem_version, nv=modem_nv)
|
||||
|
||||
hw_state = HardwareState(
|
||||
network_type=network_type,
|
||||
network_metered=HARDWARE.get_network_metered(network_type),
|
||||
|
||||
Reference in New Issue
Block a user