show registration debug info after 60s (#21679)

* show registration debug info after 60s

* little nicer

* larch

* aarch

Co-authored-by: Comma Device <device@comma.ai>
pull/21680/head
Adeeb Shihadeh 2021-07-21 23:30:02 -07:00 committed by GitHub
parent 0d0c6bea72
commit 987abb31dd
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 12 additions and 2 deletions

12
selfdrive/athena/registration.py 100644 → 100755
View File

@ -1,7 +1,7 @@
#!/usr/bin/env python3
import os
import time
import json
import jwt
from datetime import datetime, timedelta
@ -50,6 +50,8 @@ def register(show_spinner=False) -> str:
private_key = f2.read()
# Block until we get the imei
serial = HARDWARE.get_serial()
start_time = time.monotonic()
imei1, imei2 = None, None
while imei1 is None and imei2 is None:
try:
@ -58,11 +60,14 @@ def register(show_spinner=False) -> str:
cloudlog.exception("Error getting imei, trying again...")
time.sleep(1)
serial = HARDWARE.get_serial()
if time.monotonic() - start_time > 60 and show_spinner:
spinner.update(f"registering device - serial: {serial}, IMEI: ({imei1}, {imei2})")
params.put("IMEI", imei1)
params.put("HardwareSerial", serial)
backoff = 0
start_time = time.monotonic()
while True:
try:
register_token = jwt.encode({'register': True, 'exp': datetime.utcnow() + timedelta(hours=1)}, private_key, algorithm='RS256')
@ -82,6 +87,9 @@ def register(show_spinner=False) -> str:
backoff = min(backoff + 1, 15)
time.sleep(backoff)
if time.monotonic() - start_time > 60 and show_spinner:
spinner.update(f"registering device - serial: {serial}, IMEI: ({imei1}, {imei2})")
if show_spinner:
spinner.close()

View File

@ -54,7 +54,9 @@ Spinner::Spinner(QWidget *parent) : QWidget(parent) {
main_layout->addWidget(new TrackWidget(this), 0, 0, Qt::AlignHCenter | Qt::AlignVCenter);
text = new QLabel();
text->setWordWrap(true);
text->setVisible(false);
text->setAlignment(Qt::AlignCenter);
main_layout->addWidget(text, 1, 0, Qt::AlignHCenter);
progress_bar = new QProgressBar();

Binary file not shown.

Binary file not shown.