On the 64-bit Windows 7 machine my Nexus S appears to connect, but then it disconnects moments later. Neither accessing USB storage or loading an Android application package file (APK) using the Android Debug Bridge (ADB) work. On 32-bit Windows Vista using the same USB cable, USB storage works. I haven't tried the ADB on 32-bit Windows Vista.
Reproduction steps for USB storage:
(I have provided the reproduction steps for USB storage and not ADB, because if one isn't working, then the other isn't working either and the USB storage reproduction steps are shorter to document.)
Connect the USB cable to the Nexus S and my Windows 7 machine.
Effect: The "USB Mass Storage, USB Connected" dialog appears with the button "Turn on USB storage."
Click "Turn on USB Storage"
Effect: The "working circle" appears. A dialog briefly appears saying "USB storage in use," then it either returns me to Step 1 (now that I am running 2.3.4) or is replaced with the Nexus S's application homepage (while I was running 2.3.3). I'm not sure if the version matters, but I mention it for completeness.
On the 32-bit Windows Vista machine the connection is stable. I am able to navigate through the Nexus S file system create, read, update, and delete files, etc. I haven't tried connecting with the ADB.
Tried and failed:
- Uninstalling and reinstalling the Android USB drivers including removing the files.
- Uninstalling my custom software
- Pulling the Nexus S's battery
- Restarting the Nexus S
- Restarting 64-bit Windows 7
- Changing USB ports on the 64-bit Windows 7 box
- Compared the dates and file size on the DLLs in my
google-usb_driver\amd64directory and the
windows\System32directory. They match. The sizes for the
google-usb_driver\i386directory do not match (expected).
- Turning off Debugging mode on the Nexus S does not resolve the problem.
- Searching Google.
Tried and succeeded:
- Connecting to another machine (Windows Vista) using the same USB cable and Nexus S phone.
I notice that uninstalling the device drivers and deleting the files, then reinstalling the drivers, then rebooting 64-bit Windows 7 then unplugging the Nexus S, then plugging it back in occasionally helps for a short amount of time (minutes to hours, not days). When it is working, I can both access the Nexus S's drive and load/test applications using the ADB.
I have observed some wonky behavior in the Device Manager that I haven't tracked down. Sometimes the black Nexus S image appears in the list of devices. Sometimes the image displays as a computer with a green ISA card. Sometimes it neither appears on the top level of devices nor under “other devices,” but it does appear under "disk drives" as "Android UMS Composite USB Device."
- The Nexus S is running Android OS 2.3.4's "Settings\about phone\System updates" indicates that it is up to date as of May 21st 2011.
- Both 32-bit Windows Vista and 64-bit Windows 7 are up to date.
- The Windows Vista system is running on an Intel 32-bit processor. Windows 7 is running on an AMD 64-bit processor.
- I have done Android development on both systems, but I usually develop on the 64-bit Windows 7 machine.