My company sells a USB barcode scanner that acts as a USB HID keyboard (scanning a barcode types the barcode value). It does not require any additional software to be installed as it behaves as a keyboard. We've been selling them for about 14 years and haven't had any compatibility issues until now. It works with every operating system we've encountered except for El Capitan. Connecting the scanner shows these messages in Console:
9/30/15 5:15:43.413 PM cfprefsd[136]: BUG in libdispatch: 15A284 - 1631 - 0x0
9/30/15 5:15:43.000 PM kernel[0]: 000214.585772 IOUSBHostHIDDevice@14100000,0: IOUSBHostHIDDevice::start: unable to set device idle milliseconds
9/30/15 5:15:43.000 PM kernel[0]: 000214.585777 IOUSBHostHIDDevice@14100000,0: IOUSBHostHIDDevice::start: start has failed
9/30/15 5:15:43.000 PM kernel[0]: 000214.587844 IOUSBHostHIDDevice@14100000,0: IOUSBHostHIDDevice::start: unable to set device idle milliseconds
9/30/15 5:15:43.000 PM kernel[0]: 000214.587848 IOUSBHostHIDDevice@14100000,0: IOUSBHostHIDDevice::start: start has failed
The device will scan a barcode but nothing is typed and the scanner stops responding until it is disconnected and reconnected. This behavior occurs in OS X 10.11.1 beta 2 (15B22c) and the final OS X 10.11 (15A284). It looks like Apple rewrote the USB stack/APIs in 10.11, which wasn't supposed to break anything but did:
https://developer.apple.com/library/mac/releasenotes/Darwin/RN_USB/Articles/10_11Changes.html
Has anyone else seen this kind of behavior? Are there any workarounds?