Kext + Programming Shield

I’m trying to get set up and running with the particle programming shield (on Mac OSX Yosemite), but I’m running into some bugs. I’ve been following these guides:

I’ve gotten through compiling OpenOCD and flashing the firmware. I am now trying to run OpenOCD with the following command:

openocd -f interface/ftdi/particle-ftdi.cfg -f target/stm32f2x.cfg -c "gdb_port 3333" -c "\$_TARGETNAME configure -rtos FreeRTOS"

I am getting the following error:

Error: libusb_claim_interface() failed with LIBUSB_ERROR_ACCESS
Error: unable to open ftdi device with vid 0403, pid 6010, description '*' and serial '*'

In the second guide (README), it mentions that on Yosemite, I might need to unload/load kext:

Note: On OS X Yosemite, you will have to unload and load the kext for the serial1 to showup after every restart of the computer.

sudo kextunload -bundle com.apple.driver.AppleUSBFTDI
sudo kextload -bundle com.apple.driver.AppleUSBFTDI

I thought this might be the issue, but when I try to run either of the commands, I get the following error:

(kernel) Kext com.apple.driver.AppleUSBFTDI not found for unload request.
Failed to unload com.apple.driver.AppleUSBFTDI - (libkern/kext) not found.

I’m not sure what the problem could be, and I’m stuck. Any help/advice appreciated!

Try also unloading FTDI driver:

sudo kextunload -bundle-id com.FTDI.driver.FTDIUSBSerialDriver
2 Likes

Yes this is correct, though I’m not entirely sure why. I’ve now been solving this problem by loading/unloading com.FTDI.driver.FTDIUSBSerialDriver and com.Apple.driver.AppleUSBFTDI.

I’ve not taken the time to figure out a deterministic pattern … there doesn’t seem to be one at the moment. I just load and unload these drivers until it works.