mirror of
https://github.com/jetkvm/kvm.git
synced 2026-03-02 22:58:00 -05:00
USB Keyboard and Mouse Unneeded Write (OUT) Endpoint Descriptors? #250
Labels
No labels
component/keyboard-layout
component: cloud
component: device screen
component: extensions
component: hid/keyboard
component: hid/mouse
component: network
component: timesync
component: ui
component: updater
component: usb
component: usb/hid
component: usb/storage
component: video
component: webrtc
component: webserver
need-more-details
status: working-in-progress
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
starred/kvm#250
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @rmschooley on GitHub (May 6, 2025).
The usb keyboard, the usb absolute mouse, and the usb relative mouse devices all seem to employ two endpoint descriptors: 1) a read (IN) endpoint descriptor, and 2) a write (OUT) endpoint descriptor. Most if not all usb keyboard and usb mice only employ one read (IN) endpoint descriptor. Unless there is some reason for these write (OUT) endpoint descriptors to exist, it seems like they should be eliminated to simplify host software processing.
@wblondel commented on GitHub (May 6, 2025):
Could this unnecessary OUT endpoint descriptor be the cause of missed key release events / repeated key press states / extreme mouse lags?
@rmschooley commented on GitHub (May 6, 2025):
No, I don't believe so. Unless the device is using these endpoints for some special/unusual reason, I don't think they will ever even be used. With perfect host software, I don't think these extra endpoints would ever cause an issue. But, I think we all know that usb device handling is not always perfect within the bios environment of desktops/notebooks/servers. So, I definitely think they should be removed if at all possible to eliminate any unnecessary complication.
Someday (hopefully soon), I hope to put a software usb bus analyzer or better yet a hardware usb bus analyzer on this device and see what is happening during these crazy key events -- which I have indeed seen as well especially when typing fast. Unfortunately, I don't have access to my hardware analyzer right now.