diff --git a/firmware/protect.c b/firmware/protect.c index b79dae8..1cac5ed 100644 --- a/firmware/protect.c +++ b/firmware/protect.c @@ -57,7 +57,7 @@ bool protectButton(ButtonRequestType type, bool confirm_only) // button acked - check buttons if (acked) { - delay(100000); + usbDelay(3500); buttonUpdate(); if (button.YesUp) { result = true; @@ -165,7 +165,7 @@ bool protectPin(bool use_cached) } layoutDialog(DIALOG_ICON_INFO, NULL, NULL, NULL, "Wrong PIN entered", NULL, "Please wait", secstr, "to continue ...", NULL); // wait one second - delay(24000000); + usbDelay(840000); } } const char *pin; diff --git a/firmware/usb.c b/firmware/usb.c index 43c7bd9..03baabd 100644 --- a/firmware/usb.c +++ b/firmware/usb.c @@ -332,3 +332,10 @@ void usbTiny(char set) { tiny = set; } + +void usbDelay(int cycles) +{ + while (cycles--) { + usbd_poll(usbd_dev); + } +} diff --git a/firmware/usb.h b/firmware/usb.h index eec42e3..d1dc250 100644 --- a/firmware/usb.h +++ b/firmware/usb.h @@ -24,5 +24,6 @@ void usbInit(void); void usbPoll(void); void usbReconnect(void); void usbTiny(char set); +void usbDelay(int cycles); #endif