diff --git a/selfdrive/manager/manager.py b/selfdrive/manager/manager.py index 0bcd686d70..b8ed6db814 100755 --- a/selfdrive/manager/manager.py +++ b/selfdrive/manager/manager.py @@ -155,6 +155,12 @@ def manager_init() -> None: else: serial = params.get("HardwareSerial") raise Exception(f"Registration failed for device {serial}") + if params.get("HardwareSerial") is None: + try: + serial = HARDWARE.get_serial() + params.put("HardwareSerial", serial) + except Exception: + cloudlog.exception("Error getting serial for device") os.environ['DONGLE_ID'] = dongle_id # Needed for swaglog if not is_dirty(): diff --git a/selfdrive/sentry.py b/selfdrive/sentry.py index 43bd9101cc..7dfdf81b53 100644 --- a/selfdrive/sentry.py +++ b/selfdrive/sentry.py @@ -97,7 +97,9 @@ def get_properties() -> Tuple[str, str]: params = Params() dongle_id = params.get("DongleId", encoding='utf-8') if dongle_id in (None, UNREGISTERED_DONGLE_ID): - dongle_id = UNREGISTERED_DONGLE_ID + hardware_serial = params.get("HardwareSerial", encoding='utf-8') + hardware_serial = "" if hardware_serial is None else hardware_serial + dongle_id = UNREGISTERED_DONGLE_ID + hardware_serial gitname = params.get("GithubUsername", encoding='utf-8') if gitname is None: gitname = ""