mirror of
https://github.com/dragonpilot/dragonpilot.git
synced 2026-06-26 08:22:05 +08:00
IsoTpParallelQuery: extend timeouts when receiving consecutive frames (#27762)
* change to rx_in_progress * bump panda * bump panda
This commit is contained in:
+1
-1
Submodule panda updated: a12c0a7956...8efbcf041c
@@ -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:
|
||||
|
||||
Reference in New Issue
Block a user