diff options
Diffstat (limited to 'protocol/vusb/main.c')
-rw-r--r-- | protocol/vusb/main.c | 16 |
1 files changed, 13 insertions, 3 deletions
diff --git a/protocol/vusb/main.c b/protocol/vusb/main.c index 1bf9035b39..1ba40a27a2 100644 --- a/protocol/vusb/main.c +++ b/protocol/vusb/main.c @@ -62,6 +62,11 @@ int main(void) debug("initForUsbConnectivity()\n"); initForUsbConnectivity(); + int i; + while(--i){ /* To configured */ + usbPoll(); + _delay_ms(1); + } debug("main loop\n"); while (1) { @@ -90,10 +95,15 @@ int main(void) } } #endif - if (!suspended) + if (!suspended) { usbPoll(); - keyboard_proc(); - if (!suspended) + + // TODO: configuration process is incosistent. it sometime fails. + // To prevent failing to configure NOT scan keyboard during configuration + if (usbConfiguration && usbInterruptIsReady()) { + keyboard_proc(); + } vusb_transfer_keyboard(); + } } } |