IsoTpParallelQuery: extend timeouts when receiving consecutive frames (#27762)

* change to rx_in_progress

* bump panda

* bump panda
This commit is contained in:
Shane Smiskol
2023-03-31 20:57:32 -07:00
committed by GitHub
parent 1ee4f41d5a
commit a0f33658f2
2 changed files with 5 additions and 3 deletions
+1 -1
Submodule panda updated: a12c0a7956...8efbcf041c
+4 -2
View File
@@ -105,13 +105,14 @@ class IsoTpParallelQuery:
for tx_addr, msg in msgs.items():
try:
dat, updated = msg.recv()
dat, rx_in_progress = msg.recv()
except Exception:
cloudlog.exception(f"Error processing UDS response: {tx_addr}")
request_done[tx_addr] = True
continue
if updated:
# Extend timeout for each consecutive ISO-TP frame to avoid timing out on long responses
if rx_in_progress:
response_timeouts[tx_addr] = time.monotonic() + timeout
if not dat:
@@ -123,6 +124,7 @@ class IsoTpParallelQuery:
if response_valid:
if counter + 1 < len(self.request):
response_timeouts[tx_addr] = time.monotonic() + timeout
msg.send(self.request[counter + 1])
request_counter[tx_addr] += 1
else: