[Mac OS X] Working dfu-util

Simon Moore simon at snmoore.net
Tue Aug 7 19:50:11 CEST 2007


Dr. H. Nikolaus Schaller wrote:

> 
> One more question - how did you manage that dfu-util is not blocked by 
> the AppleUSBCDC driver which also tries to bind to the same USB interface?
> 
> _______________________________________________
> OpenMoko community mailing list
> community at lists.openmoko.org
> http://lists.openmoko.org/mailman/listinfo/community
> 

It could be a cause of why I have to disconnect & reconnect the USB 
cable for each invocation of dfu-util. I have seen this in the output at 
times:

Cannot claim interface: usb_claim_interface: couldn't claim interface

I just checked with kextstat (kextstat | grep CDC), and it does show the 
  many CDC drivers being loaded when the Neo is connected. They are not 
present when the Neo is not connected.

A quick google shows you can manually unload the drivers (not sure the 
-b is correct):
sudo kextunload -b com.apple.driver.AppleUSBCDC
sudo kextunload -b com.apple.driver.AppleUSBCDCACMControl
sudo kextunload -b com.apple.driver.AppleUSBCDCECMData
sudo kextunload -b com.apple.driver.AppleUSBCDCACMData

Then the next time the Neo is connected the CDC driver is not loaded.


I just tried this, but it's strange. Unloading AppleUSBCDC worked ok. 
Unloading AppleUSBCDCACMControl threw an error that it could not unload, 
but thereafter all the CDC drivers were no longer being loaded. But I 
still had another 'couldn't claim interface' error.

Maybe the 'couldn't claim interface' error is not resulting from the 
Apple drivers? I don't really know enough about USB or libusb, but the 
NULL pointer problems (e.g bug #672) make me suspicious.

So far my most successful approach is the disconnect & reconnect of the 
USB cable...

Simon





More information about the community mailing list