Reputation: 1748
I am unable to connect to my phone using adb. I am getting the following error:
D:\softwares\Development\Android\android-sdk-windows\platform-tools>adb devices -l
List of devices attached
* daemon not running. starting it now on port 5037 *
* daemon started successfully *
error: protocol fault (couldn't read status): Invalid argument
http://s18.postimg.org/7fdc8w9dl/screenshot_97.png
Previously i am getting this error in windows 8.1 then i have installed windows 10 and error resolved but now again i am unable to connect my cellphone with adb :(.
I am getting this error even if no device is connected.
Eclipse error:
[2015-10-24 13:25:02 - ddms] Failed to initialize Monitor Thread: Unable to establish loopback connection
[2015-10-24 13:25:02 - adb] error: protocol fault (couldn't read status): Invalid argument
[2015-10-24 13:25:02 - ddms] 'D:\softwares\Development\Android\android-sdk-windows\platform-tools\adb.exe,start-server' failed -- run manually if necessary
Update: Even adb tcp is also not working so i think this is not a driver issue.
ADB traces http://s24.postimg.org/mtfdwf3id/screenshot_99.png
Upvotes: 38
Views: 99168
Reputation: 408
None of the above solution worked for me because I installed Google.PlatformTools
using winget
winget install Google.PlatformTools
I had to remove and download it from here
winget remove Google.PlatformTools
Make sure to kill any server if you started any, before removing the package, using
adb kill-server
Upvotes: 0
Reputation: 4291
I have to turn off my Macbook wifi and run adb start-server.
It worked! and Android Studio started detecting my emulator!
Upvotes: 1
Reputation: 4413
In my case turning off my VPN connection fixed a similar issue with adb pair
.
Upvotes: 2
Reputation: 1748
None of mentioned solutions worked for me, seems like something wrong with windows, finally i ended up with resetting my windows 10 and issue resolved.
Upvotes: 5
Reputation: 29
adb.exe: protocol fault (couldn't read status): connection reset
adb kill-server adb start-server
This helped in my case.
Upvotes: 0
Reputation: 157
In my case:
adb kill-server
adb start-server
then (can change port 5555
with preferred port):
adb tcpip 5555
which results in: restarting in TCP mode port: 5555
issue resolved
Upvotes: -1
Reputation: 5183
I had a similar issue after updating android studio.
None of the above solutions are worked.
https://developer.android.com/studio/releases/platform-tools
I solved it by downloading platform-tools
from the above link. And replaced the contents of my android SDK's platform-tools with downloaded one
Upvotes: 1
Reputation: 4565
See my answer here, for me adb port 5037
was in use, killing the process using the port resolve the issue.
Upvotes: 1
Reputation: 1148
Uninstall and re-install ADB from Android Studio and check your path to make sure you aren't pointing to any other ADB installations.
I had no other installations but for some reason the ADB instance I had was corrupted (v 1.0.41
).
I went to Preferences >> Android SDK >> Unchecked the installed version >> Clicked next to uninstall.
Then I went back and re-checked the box to install it again and it worked. Still version 1.0.41
Upvotes: 0
Reputation: 9650
Although not exactly the same error as the OP, I was getting a similar error in Windows:
❯ adb.exe start-server
error: protocol fault (couldn't read status): No error
This error was related to my port proxy. It seems I had setup some rules that resulted in the adb client/server not being able to communicate with each other.
I was able to solve this by resetting my portproxy settings:
netsh interface portproxy reset
And now I can start the adb server:
❯ adb.exe start-server
* daemon not running; starting now at tcp:5037
* daemon started successfully
Upvotes: 6
Reputation: 89
I was also getting this error so here's how I solved it. I killed the adb process and start again.
adb start-server
and it will start the adb again.Upvotes: 3
Reputation: 393
You can get more info with:
export ADB_TRACE=all
This gave me the full log when connecting:
adb D 12-15 11:48:11 1014 18521 adb_trace.cpp:187] Android Debug Bridge version 1.0.41
adb D 12-15 11:48:11 1014 18521 adb_trace.cpp:187] Version 30.0.2-6538114
adb D 12-15 11:48:11 1013 18519 adb_client.cpp:155] _adb_connect: host:connect:192.168.1.109
adb D 12-15 11:48:11 1013 18519 adb_io.cpp:107] writex: fd=3 len=30 30303161686f73743a636f6e6e656374 001ahost:connect [truncated]
adb D 12-15 11:48:11 1013 18519 adb_io.cpp:81] readx: fd=3 wanted=4
adb D 12-15 11:48:11 1013 18519 adb_io.cpp:97] readx: fd=3 wanted=4 got=4 4f4b4159 OKAY
adb D 12-15 11:48:11 1013 18519 adb_client.cpp:189] _adb_connect: return fd 3
adb D 12-15 11:48:11 1013 18519 adb_client.cpp:364] adb_connect: return fd 3
adb D 12-15 11:48:11 1013 18519 adb_io.cpp:81] readx: fd=3 wanted=4
adb D 12-15 11:48:11 1013 18519 adb_io.cpp:91] readx: fd=3 disconnected
error: protocol fault (couldn't read status length): Undefined error: 0
I resolved the issue by updating my Platform Tools from the SDK Manager in Android Studio.
$ adb --version
Android Debug Bridge version 1.0.41
Version 30.0.5-6877874
Upvotes: 1
Reputation: 85
In your task manager, find adb.exe > right click and End Process.
solved this way for me..
Upvotes: 3
Reputation: 217
Just Restart PC and everything mean Android Studio and your android Device its working for me
Upvotes: 3
Reputation: 6960
As you may found in source code of ADB, something raised up this error:
if (!ReadFdExactly(fd, buf, 4)) {
*error = perror_str("protocol fault (couldn't read status)");
return false;
}
Try to export
export ADB_TRACE=all
And rerun adb devices
With this env
variable you will see much more info
Upvotes: 6