usb_hid: Allow USB work to progress while waiting for tud_hid_ready
Otherwise, examples like the one attached to the related issue fail because tud_hid_ready never returns true. Testing performed: Adapted the example to nrf particle xenon (it was handy), removed dependency on IR, verified that the problem occurred before this change, and that it was fixed after this change. Closes: #2048
This commit is contained in:
parent
47a0b7cba1
commit
be5205d020
@ -47,7 +47,11 @@ void common_hal_usb_hid_device_send_report(usb_hid_device_obj_t *self, uint8_t*
|
||||
|
||||
// Wait until interface is ready, timeout = 2 seconds
|
||||
uint64_t end_ticks = ticks_ms + 2000;
|
||||
while ( (ticks_ms < end_ticks) && !tud_hid_ready() ) { }
|
||||
while ( (ticks_ms < end_ticks) && !tud_hid_ready() ) {
|
||||
#ifdef MICROPY_VM_HOOK_LOOP
|
||||
MICROPY_VM_HOOK_LOOP;
|
||||
#endif
|
||||
}
|
||||
|
||||
if ( !tud_hid_ready() ) {
|
||||
mp_raise_msg(&mp_type_OSError, translate("USB Busy"));
|
||||
|
Loading…
x
Reference in New Issue
Block a user