FPv2: log query request and response address (#24733)

* log fw query response offset

* one line still

* log request bytes as well

* bump cereal

* prettier order

* bump cereal

* I wonder if the radar sends a response pending...

debug

dont cache

fix

debug

* Revert "I wonder if the radar sends a response pending..."

This reverts commit 12a9552c27.

* log addr too

* bump cereal
pull/25192/head
Shane Smiskol 3 years ago committed by GitHub
parent a2c6b30c98
commit 124f3f02d5
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 2
      cereal
  2. 6
      selfdrive/car/fw_versions.py
  3. 2
      selfdrive/car/isotp_parallel_query.py

@ -1 +1 @@
Subproject commit a36a91ed095e04d191250821f42ccc11f58759ac Subproject commit 61cee7c2a745685c2e140998d78ad11edca8a9e1

@ -333,18 +333,20 @@ def get_fw_versions(logcan, sendcan, extra=None, timeout=0.1, debug=False, progr
if addrs: if addrs:
query = IsoTpParallelQuery(sendcan, logcan, r.bus, addrs, r.request, r.response, r.rx_offset, debug=debug) query = IsoTpParallelQuery(sendcan, logcan, r.bus, addrs, r.request, r.response, r.rx_offset, debug=debug)
t = 2 * timeout if i == 0 else timeout t = 2 * timeout if i == 0 else timeout
fw_versions.update(query.get_data(t)) fw_versions.update({addr: (version, r.request, r.rx_offset) for addr, version in query.get_data(t).items()})
except Exception: except Exception:
cloudlog.warning(f"FW query exception: {traceback.format_exc()}") cloudlog.warning(f"FW query exception: {traceback.format_exc()}")
# Build capnp list to put into CarParams # Build capnp list to put into CarParams
car_fw = [] car_fw = []
for addr, version in fw_versions.items(): for addr, (version, request, rx_offset) in fw_versions.items():
f = car.CarParams.CarFw.new_message() f = car.CarParams.CarFw.new_message()
f.ecu = ecu_types[addr] f.ecu = ecu_types[addr]
f.fwVersion = version f.fwVersion = version
f.address = addr[0] f.address = addr[0]
f.responseAddress = addr[0] + rx_offset
f.request = request
if addr[1] is not None: if addr[1] is not None:
f.subAddress = addr[1] f.subAddress = addr[1]

@ -132,7 +132,7 @@ class IsoTpParallelQuery:
request_done[tx_addr] = True request_done[tx_addr] = True
else: else:
request_done[tx_addr] = True request_done[tx_addr] = True
cloudlog.warning(f"iso-tp query bad response: 0x{dat.hex()}") cloudlog.warning(f"iso-tp query bad response: {tx_addr} - 0x{dat.hex()}")
cur_time = time.monotonic() cur_time = time.monotonic()
if cur_time - last_response_time > timeout: if cur_time - last_response_time > timeout:

Loading…
Cancel
Save