blhost became useless on Mac OS X

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

blhost became useless on Mac OS X

Jump to solution
2,987 Views
laszlomonda
Contributor V

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

0 Kudos
Reply
1 Solution
2,032 Views
Hui_Ma
NXP TechSupport
NXP TechSupport

Hi,

Please check Kinetis product team feedback:

pastedImage_1.jpg

I also attached the KBOOT V2.0 blhost mca tool for your reference.

The related command reference below:

pastedImage_2.jpg

Wish it helps.


Have a great day,
Ma Hui

-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

View solution in original post

0 Kudos
Reply
5 Replies
2,033 Views
Hui_Ma
NXP TechSupport
NXP TechSupport

Hi,

Please check Kinetis product team feedback:

pastedImage_1.jpg

I also attached the KBOOT V2.0 blhost mca tool for your reference.

The related command reference below:

pastedImage_2.jpg

Wish it helps.


Have a great day,
Ma Hui

-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

0 Kudos
Reply
2,032 Views
epicedium
Contributor II

I just download the 2.0.0 version from the NXP website.

Running blhost on latest OSX (10.13.3) I get...

sudo ./blhost -u -- get-property 1
Segmentation fault: 11

Any ideas? 

0 Kudos
Reply
2,032 Views
laszlomonda
Contributor V

blhost is fundamentally unstable on some platforms despite of what NXP states, including various versions of OSX, Linux, and possibly Windows. It is causing problems for our customers.

I think the only solution might be to rewrite blhost using HIDAPI.

An alternative is pyKBoot. This may or may not work.

0 Kudos
Reply
2,032 Views
laszlomonda
Contributor V

Thank you for your reply, Ma Hui!

We've just checked blhost with the latest OSX and I can confirm that it does work as expected.

Have a nice day!

- Laci

0 Kudos
Reply
2,032 Views
Hui_Ma
NXP TechSupport
NXP TechSupport

Hi Laci,

Thank you for the feedback.
I will check this issue with Kinetis product team and let you know later.
Thank you for the patience.

best regards,

Mike

0 Kudos
Reply