AnsweredAssumed Answered

blhost became useless on Mac OS X

Question asked by László Monda on Jun 20, 2017
Latest reply on Jun 16, 2018 by László Monda

Hi there,


As it turns out, blhost segfaults on recent versions of OSX when trying to access the target USB device, making it useless. We've investigated the problem, so let me delve into the details.


OSX version 10.12.5 is certainly affected, however OSX version 10.9.5 and 10.11.6 don't seem to be affected.


We've recompiled blhost on OSX 10.12.5 using Xcode, hoping that it will resolve the issue, but it did not. blhost keeps segfaulting as soon as it tries to access the USB device.


According to our understanding, this happens because OSX recently changed its internal USB library which broke libusb. As a matter of fact, libusb explicitly states that:

On Mac OS X, you must install a codeless kext kernel driver and then reboot, before you will be able communicate with the device. This may not be easy with the release of later Mac OS X versions. So it is not recommended. HIDAPI should be the library of choices if you need Mac OS X support.

There are a lot of other reasons on the linked page why libusb is a poor choice for non-Linux systems and why HIDAPI is so much better.


The above begs the question: When do you plan to fix blhost on OSX? We really do believe that blhost being a HID-only application, the best way forward is HIDAPI.


We rely on blhost quite heavily to enable our customers to upgrade the firmware of our keyboard on all the three major OSes, so an insider answer would be much appreciated.


Thanks in advance,

- Laci