From c529b6e8a8e13ea9df40ee177d6f2711d32ceaa9 Mon Sep 17 00:00:00 2001 From: Martin Mares Date: Sun, 14 May 2023 15:31:42 +0200 Subject: [PATCH] Clock firmware: Fix USB restart --- clock/firmware/main.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/clock/firmware/main.c b/clock/firmware/main.c index 50ce567..27de39d 100644 --- a/clock/firmware/main.c +++ b/clock/firmware/main.c @@ -505,6 +505,9 @@ static void ep01_cb(usbd_device *dev, uint8_t ep UNUSED) static void ep82_send(u32 key_code) { + if (!usb_configured) + return; + if (usb_tx_in_flight) { debug_printf("USB: Send overrun!\n"); return; @@ -533,6 +536,7 @@ static void set_config_cb(usbd_device *dev, uint16_t wValue UNUSED) usbd_ep_setup(dev, 0x01, USB_ENDPOINT_ATTR_BULK, 64, ep01_cb); usbd_ep_setup(dev, 0x82, USB_ENDPOINT_ATTR_BULK, 4, ep82_cb); usb_configured = true; + usb_tx_in_flight = false; } static void reset_cb(void) -- 2.39.2