Android – macbook adb cannot open interface

adbandroidmacosnexus6usb

I am encountering a problem with Android ADB debugging through USB.

Using Macbook Air 2013 and trying to connect Nexus 6 dev phone.

On the MAC Android Studio, android latest sdk is installed.

When I do

adb kill-server
adb devices

I get:

adb I   661  9881 usb_osx.cpp:259] Found vid=18d1 pid=**** serial=*****
adb I   661  9881 usb_osx.cpp:259] 
adb E   661  9881 usb_osx.cpp:331] Could not open interface: e00002c5
adb E   661  9881 usb_osx.cpp:265] Could not find device interface

So it found the device, vendor id, product id and serial match what I find in the system information for the Nexus 6.

Following suggestions found online I tried – but no success – the following to resolve:

  • dis- and reenabling debugging mode on the phone, also switching between USB configs for charging, MTP, PTP, RNDIS, Audio Source, MIDI, always making sure the authoriztation for the Mac's RSA fingerprint is given

  • closing Android Studio / DDMS, killing adb through 'kill-server' command as well as killing process through Apple activity monitor

  • run adb as root

  • reboot the Mac several times

  • reboot the Nexus 6

  • reinstall Android SDK completely

  • tried with another debugging enabled Android Device (Samsung Galaxy Tab, also here adb found correct device info but cannot access interface with same error)

  • tried with 3 different USB cables, all cables which were originally shipped with Android devices

Through google I learned that error code e00002c5 means the device is already in use by another driver.

I had recently installed Sophos Home Antivir. Thinking that this might prevent ADB from opening the device interface, I uninstalled Sophos completely with the provided uninstaller and rebooted the Mac.

Any hint is appreciated:

  • which steps to resolve?

  • as e00002c5 seems to be a clear indicator that another driver has the device in use, how to find out which process that is and how to stop it from doing that

Best Answer

I ran into this error as well, and it turned out that the problem for me was that a Stetho tab was open in Chrome (i.e. a tab at URL chrome://inspect/#devices ), which I guess was causing the device to be in use. Closing that tab, then running adb kill-server, made adb devices work again.