What happens
Launching WhatCable freezes my wireless USB mouse. The receiver stays enumerated in ioreg (it is not disconnected) — the pointer just stops responding.
Cause
On launch, USBWatcher runs BillboardDescriptorReader against every USB device, including plain HID receivers. The reader opens a USB device user client (and on the no-BOS path even calls USBDeviceOpen) just to read a Billboard descriptor that input devices don't have. On a mouse/keyboard receiver this knocks the kernel HID driver off the device.
Evidence
The frozen device is a plain HID device (bDeviceClass 0), not a Billboard device (0x11), and stays enumerated the whole time:
+-o Wireless Mouse@20114000 <class IOUSBHostDevice, registered, matched, active>
"bDeviceClass" = 0 # HID, NOT Billboard (0x11)
"USB Product Name" = "Wireless Mouse"
ioreg device tree is identical before and after launch → no disconnect; the HID driver just loses its grab.
Note: a wired USB keyboard on the same machine is probed the same way but is unaffected; only the 2.4 GHz wireless mouse receiver freezes — likely because its RF report pipe doesn't re-arm after the kernel HID driver is bumped off.
Mac model
MacStudio M4 Max
macOS version
26.5.1 (25F80)
WhatCable version
1.1.2
Cable
USB 1.1 2.4 GHz receiver for Cherry wireless mouse
What's plugged into the other end?
Cherry wireless mouse
whatcable --json --raw output
{
"isDesktopMac" : true,
"version" : "1.1.2",
"otherUSBDevices" : {
"behindPort" : "Port-USB-C@1",
"devices" : [
{
"name" : "Vulcan TKL",
"vendorName" : "Turtle Beach",
"vendorID" : 4341,
"productID" : 20515,
"speed" : "Full Speed (12 Mbps)",
"note" : "wired keyboard, USB 2.0 (bcdUSB 0x0200) — probed the same way, NOT affected"
},
{
"name" : "Wireless Mouse",
"vendorName" : "CHERRY",
"vendorID" : 1130,
"productID" : 41095,
"speed" : "Full Speed (12 Mbps)",
"note" : "2.4 GHz wireless receiver, USB 1.1 (bcdUSB 0x0110), bDeviceClass 0 (HID) — freezes on launch"
}
]
}
}
System Information cross-check (optional)
No response
How often does this happen?
Every time
Anything else
No response
What happens
Launching WhatCable freezes my wireless USB mouse. The receiver stays enumerated in
ioreg(it is not disconnected) — the pointer just stops responding.Cause
On launch,
USBWatcherrunsBillboardDescriptorReaderagainst every USB device, including plain HID receivers. The reader opens a USB device user client (and on the no-BOS path even callsUSBDeviceOpen) just to read a Billboard descriptor that input devices don't have. On a mouse/keyboard receiver this knocks the kernel HID driver off the device.Evidence
The frozen device is a plain HID device (
bDeviceClass 0), not a Billboard device (0x11), and stays enumerated the whole time:ioregdevice tree is identical before and after launch → no disconnect; the HID driver just loses its grab.Note: a wired USB keyboard on the same machine is probed the same way but is unaffected; only the 2.4 GHz wireless mouse receiver freezes — likely because its RF report pipe doesn't re-arm after the kernel HID driver is bumped off.
Mac model
MacStudio M4 Max
macOS version
26.5.1 (25F80)
WhatCable version
1.1.2
Cable
USB 1.1 2.4 GHz receiver for Cherry wireless mouse
What's plugged into the other end?
Cherry wireless mouse
whatcable --json --rawoutput{ "isDesktopMac" : true, "version" : "1.1.2", "otherUSBDevices" : { "behindPort" : "Port-USB-C@1", "devices" : [ { "name" : "Vulcan TKL", "vendorName" : "Turtle Beach", "vendorID" : 4341, "productID" : 20515, "speed" : "Full Speed (12 Mbps)", "note" : "wired keyboard, USB 2.0 (bcdUSB 0x0200) — probed the same way, NOT affected" }, { "name" : "Wireless Mouse", "vendorName" : "CHERRY", "vendorID" : 1130, "productID" : 41095, "speed" : "Full Speed (12 Mbps)", "note" : "2.4 GHz wireless receiver, USB 1.1 (bcdUSB 0x0110), bDeviceClass 0 (HID) — freezes on launch" } ] } }System Information cross-check (optional)
No response
How often does this happen?
Every time
Anything else
No response