-
Notifications
You must be signed in to change notification settings - Fork 183
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Claim interface on OS X. #16
Conversation
hi Tim, with your change to main.c (see here) and the described unloading of the kernel extensions (see here) I can now program using stm8flash under MacOS X. Thanks a lot for that! But is unloading the kernel extensions the only possible solution? Afterwards I cannot use USB-sticks or SD-cards. And I am concerned that I forget to re-load them and lose this important functionality - until reboot (just checked) or I find this thread again... Under Linux and Windows the ST-Link mounts as a drive with 3 files, under OS X not. Is that the reason why the kernel extensions have to be disabled? If yes, would it be an option to identify and solve the issue with mounting the ST-Link? Sorry to be so annoying, but the current solution just seems very complicated. For your support thanks a lot in advance! Georg |
There are lots of issues with USB CDC drivers too on OS X which require unloading. You may find some luck in looking into if there are solutions there (google kextunload, CDC, Arduino)
That's the case. Inside USB Prober the device is listed as a Mass Storage Device, but why it doesn't mount is beyond me. I suspect that solving the mounting issues would not resolve this particular problem though—if it is an issue with the kernel claiming the device, the specified endpoints would still not be able to be accessed. |
this works for me on OS/X without the need to unload any kernel extensions. |
hi Torsten, I just downloaded the fresh version of stm8flash from GitHub. And with patch #17 merged I can now compile and run "stm8flash" under MacOSX 10.10.3. However, I just still need to unload the Kernel extensions for USB-sticks and flash cards using: sudo kextunload -b com.apple.driver.AppleUSBCardReader Any idea what do you do different? While the above is not the end of the world it makes stm8flash impossible to use for non-admins and it is inconvenient. Any help is highly appreciated! Georg |
Hi Georg, What are the symptoms you are facing? Cheers, |
Hi Torsten, below is the console output with and without unloading kernel extensions. This is similar to what is described (and solved) here Georg stm8flash -c stlink -p stm8s105 -w blinky.ihx stm8flash -c stlink -p stm8s105 -w blinky.ihx |
It would be interesting to know which other process claimed the usb device. Does this occur when starting stm8flash the first time on a freshly booted computer? |
I think the process is the kernel extension itself, e.g. As for why different machines behave differently—a great question, perhaps this is reflected in the USB Prober logs? |
hi Torsten, yes, this occurs also on a freshly booted computer. I guess tcr is correct, since the ST-Link on the discovery board is mounted as a drive under Win and Linux - and it doesn't under OS X. However, that information doesn't really help... @tcr: where can I find the USB Prober logs? |
This might not be useful to merge in, but this is the fix I had to apply to fix endpoint enumeration failing on OS X. See #9 for the same error message.