diff --git a/selfdrive/car/car_helpers.py b/selfdrive/car/car_helpers.py index 14154a384..d74892993 100644 --- a/selfdrive/car/car_helpers.py +++ b/selfdrive/car/car_helpers.py @@ -7,6 +7,7 @@ from common.fingerprints import eliminate_incompatible_cars, all_known_cars from selfdrive.swaglog import cloudlog import selfdrive.messaging as messaging import pickle +import selfdrive.crash as crash def get_startup_alert(car_recognized, controller_available): @@ -124,9 +125,10 @@ def fingerprint(logcan, sendcan, is_panda_black): frame += 1 - params.put("DragonCachedModel", pickle.dumps(car_fingerprint)) - params.put("DragonCachedFP", pickle.dumps(finger)) - params.put("DragonCachedVIN", pickle.dumps(vin)) + if succeeded: + params.put("DragonCachedModel", pickle.dumps(car_fingerprint)) + params.put("DragonCachedFP", pickle.dumps(finger)) + params.put("DragonCachedVIN", pickle.dumps(vin)) cloudlog.warning("fingerprinted %s", car_fingerprint) return car_fingerprint, finger, vin @@ -139,6 +141,12 @@ def get_car(logcan, sendcan, is_panda_black=False): if candidate is None: cloudlog.warning("car doesn't match any fingerprints: %r", fingerprints) candidate = "mock" + else: + cloudlog.warning("car does match fingerprint: %r", fingerprints) + try: + crash.capture_warning("fingerprinted %s" % candidate) + except: # fixes occasional travis errors + pass CarInterface, CarController = interfaces[candidate] car_params = CarInterface.get_params(candidate, fingerprints[0], vin, is_panda_black)