3 ms·
I'm not from GL. I write my own USB HID handlers and I'm being nosy about bad protocol that exists in the wild. Was the 0 byte in some input report? In a desc
by JdeBP 4mo ago
I'm not from GL. I write my own USB HID handlers and I'm being nosy about bad protocol that exists in the wild. Was the 0 byte in some input report? In a descriptor? Somewhere else?
- gregsadetsky 4mo agoTLDR - GLKVM's kernel emits a trailing 0-byte DATA packet (ZLP) (which PiKVM does not) Supposedly, this is due to the `req->zero = ((count % maxpacket) == 0)` line in the kernel's f_hid.c - which, for 8-byte HID keyboard reports, makes it append a trailer packet. Strict BIOS HID stacks treat this 0-byte packet as malformed and beep.
- JdeBP 4mo agoInteresting. My first thought is wondering whether the keyboard HID is adding report IDs to its input reports, because it isn't in boot mode or something. That would have that effect.
- trumpdong 4mo agoIsn't that expected in USB so the receiving side knows it's at the end of the data transfer?