Browse Source

Keyboard - Allow > 8 keyboard max report size

There has been at least one keyboard that does not report the report size !=8 that works...

So try to allow for any that report >=8  <=64 to work.
main
Kurt Eckhardt 7 years ago
parent
commit
a234bae99e
1 changed files with 2 additions and 2 deletions
  1. +2
    -2
      keyboard.cpp

+ 2
- 2
keyboard.cpp View File

@@ -125,8 +125,8 @@ bool KeyboardController::claim(Device_t *dev, int type, const uint8_t *descripto
if (descriptors[21] != 3) return false; // must be interrupt type
uint32_t size = descriptors[22] | (descriptors[23] << 8);
println("packet size = ", size);
if (size != 8) {
return false; // must be 8 bytes for Keyboard Boot Protocol
if ((size < 8) || (size > 64)) {
return false; // Keyboard Boot Protocol is 8 bytes, but maybe others have longer...
}
#ifdef USBHS_KEYBOARD_INTERVAL
uint32_t interval = USBHS_KEYBOARD_INTERVAL;

Loading…
Cancel
Save