only in notebook

pull/26939/head
Shane Smiskol 2 years ago
parent 37f23e9e03
commit 78330bc029
  1. 46
      selfdrive/car/fw_versions.py

@ -54,52 +54,6 @@ def get_brand_addrs() -> Dict[str, Set[Tuple[int, Optional[int]]]]:
return dict(brand_addrs) return dict(brand_addrs)
# def match_fw_to_car_fuzzy_orig(fw_versions_dict, log=True, exclude=None):
# """Do a fuzzy FW match. This function will return a match, and the number of firmware version
# that were matched uniquely to that specific car. If multiple ECUs uniquely match to different cars
# the match is rejected."""
#
# # These ECUs are known to be shared between models (EPS only between hybrid/ICE version)
# # Getting this exactly right isn't crucial, but excluding camera and radar makes it almost
# # impossible to get 3 matching versions, even if two models with shared parts are released at the same
# # time and only one is in our database.
# exclude_types = [Ecu.fwdCamera, Ecu.fwdRadar, Ecu.eps, Ecu.debug]
#
# # Build lookup table from (addr, sub_addr, fw) to list of candidate cars
# all_fw_versions = defaultdict(list)
# for candidate, fw_by_addr in FW_VERSIONS.items():
# if candidate == exclude:
# continue
#
# for addr, fws in fw_by_addr.items():
# if addr[0] in exclude_types:
# continue
# for f in fws:
# all_fw_versions[(addr[1], addr[2], f)].append(candidate)
#
# match_count = 0
# candidate = None
# for addr, versions in fw_versions_dict.items():
# for version in versions:
# # All cars that have this FW response on the specified address
# candidates = all_fw_versions[(addr[0], addr[1], version)]
#
# if len(candidates) == 1:
# match_count += 1
# if candidate is None:
# candidate = candidates[0]
# # We uniquely matched two different cars. No fuzzy match possible
# elif candidate != candidates[0]:
# return set()
#
# if match_count >= 2:
# if log:
# cloudlog.error(f"Fingerprinted {candidate} using fuzzy match. {match_count} matching ECUs")
# return {candidate}
# else:
# return set()
def match_fw_to_car_fuzzy(fw_versions_dict, config, log=True, exclude=None): def match_fw_to_car_fuzzy(fw_versions_dict, config, log=True, exclude=None):
"""Do a fuzzy FW match. This function will return a match, and the number of firmware version """Do a fuzzy FW match. This function will return a match, and the number of firmware version
that were matched uniquely to that specific car. If multiple ECUs uniquely match to different cars that were matched uniquely to that specific car. If multiple ECUs uniquely match to different cars

Loading…
Cancel
Save