tmk / tmk_keyboard

Keyboard firmwares for Atmel AVR and Cortex-M
3.96k stars 1.7k forks source link

USB-USB: multiple boot keyboard interface #764

Closed tmk closed 1 year ago

tmk commented 1 year ago

When keyboard has multiple boot keyboard interfaces only the first one is handled but others is ignored.

Rapoo 9300M doesn't work with USB-USB converter. It has two boot keyboard interfaces and the second one is what we need to handle. https://geekhack.org/index.php?topic=69169.msg3166102#msg3166102

Rapoo 9300M USB descriptor: https://gist.github.com/tmk/20e2a574dc45ce7789b93e15e9ca9eb6

Keyboard at interface 1 sends vendor specific data, system/consumer control. Keyboard at interface 2 sends normal keyboard data.

Interface Subclass Protocol
0 Boot(1) Mouse(2)
1 Boot(1) Keyboard(1)
2 Boot(1) Keyboard(1)
tmk commented 1 year ago

Fixed.