X-Git-Url: https://git.friedersdorff.com/?a=blobdiff_plain;f=converter%2Fusb_usb%2Fusb_usb.cpp;h=26721de0a5e2f9a63e9fd02c3dc6829262a52d4a;hb=ec60203fd7f10ddc4025731be73ddef78c2fd5f6;hp=969e89f357673feb4c9b7d12a7625426bc179234;hpb=338744ba2fdfdcd07824f325a8112e041d6cd0a5;p=max%2Ftmk_keyboard.git diff --git a/converter/usb_usb/usb_usb.cpp b/converter/usb_usb/usb_usb.cpp index 969e89f3..26721de0 100644 --- a/converter/usb_usb/usb_usb.cpp +++ b/converter/usb_usb/usb_usb.cpp @@ -32,6 +32,8 @@ along with this program. If not, see . #include "timer.h" #include "matrix.h" #include "led.h" +#include "host.h" +#include "keyboard.h" /* KEY CODE to Matrix @@ -151,6 +153,16 @@ uint8_t matrix_scan(void) { dprintf("host.Task: %d\n", timer); } + static uint8_t usb_state = 0; + if (usb_state != usb_host.getUsbTaskState()) { + usb_state = usb_host.getUsbTaskState(); + dprintf("usb_state: %02X\n", usb_state); + + // restore LED state when keyboard comes up + if (usb_state == USB_STATE_RUNNING) { + keyboard_set_leds(host_keyboard_leds()); + } + } return 1; }