From 4a9d8ef79574fe2d4dbb5f55a0717efda845c27f Mon Sep 17 00:00:00 2001 From: Shane Smiskol Date: Tue, 12 Sep 2023 02:23:54 -0700 Subject: [PATCH] even better --- selfdrive/thermald/thermald.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/selfdrive/thermald/thermald.py b/selfdrive/thermald/thermald.py index db32b8ce5b..beb059c560 100755 --- a/selfdrive/thermald/thermald.py +++ b/selfdrive/thermald/thermald.py @@ -34,7 +34,8 @@ NetworkStrength = log.DeviceState.NetworkStrength CURRENT_TAU = 15. # 15s time constant TEMP_TAU = 5. # 5s time constant DISCONNECT_TIMEOUT = 5. # wait 5 seconds before going offroad after disconnect so you get an alert -PANDA_STATES_TIMEOUT = int(1000 / SERVICE_LIST['pandaStates'].frequency * 1.5) # 1.5x the expected pandaState frequency +PANDA_STATES_FREQUENCY = SERVICE_LIST['pandaStates'].frequency +PANDA_STATES_TIMEOUT = round(1000 / PANDA_STATES_FREQUENCY * 1.5) # 1.5x the expected pandaState frequency ThermalBand = namedtuple("ThermalBand", ['min_temp', 'max_temp']) HardwareState = namedtuple("HardwareState", ['network_type', 'network_info', 'network_strength', 'network_stats', @@ -212,7 +213,7 @@ def thermald_thread(end_event, hw_queue) -> None: sm.update(PANDA_STATES_TIMEOUT) # Run at 2Hz - if sm.frame % 5 != 0: + if sm.frame % round(PANDA_STATES_FREQUENCY / 2) != 0: continue pandaStates = sm['pandaStates']