Where is the Windows ADB Driver for the Pixel C? [closed]
Asked Answered
A

2

14

I cannot find the proper drivers for ADB for my Google Pixel C tablet. I'm developing on Windows 8.1. I have the latest USB drivers from Google, but they aren't recognized as compatible when I select them for this device. I'm guessing if I manually chose the ADB Interface from my list of drivers, it would work, but Windows gives a warning when doing so. Has Google released their drivers anywhere with the Pixel C in mind?

Atlanta answered 13/1, 2016 at 19:35 Comment(6)
Did you ever figure this out? i'm also in the same boat. Have tried this, but it didn't work for me. forum.xda-developers.com/showthread.php?t=2588979Intercontinental
I got the Pixel C to be recognized on Linux. This seems to be a Windows thing.Intercontinental
Nope, I believe I ended up installing by sending the APK over email, but obviously still had issues debugging.Atlanta
that is most unfortunate. If you ever find a solution, could you please post it as an answer? I'll do the same.Intercontinental
FYI, tried the PIxel C on Windows 10 and didn't have to change the driver INF file as in my answer.Intercontinental
This might be a good candidate for the Documentation sister-site.Impressionable
I
23

I was able to use the current Google USB drivers, but had to modify the android_winusb.inf to include the PID and VID for the Pixel C. I can now connect the Pixel C to my windows comptuer using either a USB 3 cable or a USB 2 cable (with one end being USB type C).

  1. Backup your android_winusb.inf, typically found in C:\Users\%USERNAME%\AppData\Local\Android\android-sdk\extras\google\usb_driver
  2. Open android_winusb.inf for Edit
  3. Under [Google.NTx86] section, add:
;Google Pixel C     
%SingleAdbInterface%        = USB_Install, USB\VID_18D1&PID_5203     
%CompositeAdbInterface%     = USB_Install, USB\VID_18D1&PID_5203&MI_01
  1. Under [Google.NTamd64] add:
;Google Pixel C
%SingleAdbInterface%        = USB_Install, USB\VID_18D1&PID_5203
%CompositeAdbInterface%     = USB_Install, USB\VID_18D1&PID_5203&MI_01
  1. Plug in Pixel C to your windows machine
  2. Go to your device manager where the "unknown ADB device" is listed. Update the driver, and point it to the location where the driver is installed (where the INF file is).
  3. Follow prompts to install driver. I got a notice saying that the drivers were from an unrecognized source. Update: Note, when I try this these days, I don't get a notice about the driver not being signed / recognized, they simply do not work. I had to do "Let me pick from a list of device drivers", select "Show All Devices", and then select one of the android selections, ADB bridge, I believe. Then it should work.

Her'es the full contents of the INF file for reference.

;
; Android WinUsb driver installation.
;
[Version]
Signature           = "$Windows NT$"
Class               = AndroidUsbDeviceClass
ClassGuid           = {3F966BD9-FA04-4ec5-991C-D326973B5128}
Provider            = %ProviderName%
DriverVer           = 08/28/2014,11.0.0000.00000
CatalogFile.NTx86   = androidwinusb86.cat
CatalogFile.NTamd64 = androidwinusba64.cat

[ClassInstall32]
Addreg = AndroidWinUsbClassReg

[AndroidWinUsbClassReg]
HKR,,,0,%ClassName%
HKR,,Icon,,-1


[Manufacturer]
%ProviderName% = Google, NTx86, NTamd64


[Google.NTx86]

;Google Pixel C
%SingleAdbInterface%        = USB_Install, USB\VID_18D1&PID_5203
%CompositeAdbInterface%     = USB_Install, USB\VID_18D1&PID_5203&MI_01

;Google Nexus One
%SingleAdbInterface%        = USB_Install, USB\VID_18D1&PID_0D02
%CompositeAdbInterface%     = USB_Install, USB\VID_18D1&PID_0D02&MI_01
%SingleAdbInterface%        = USB_Install, USB\VID_18D1&PID_4E11
%CompositeAdbInterface%     = USB_Install, USB\VID_18D1&PID_4E12&MI_01

;Google Nexus S
%SingleAdbInterface%        = USB_Install, USB\VID_18D1&PID_4E21
%CompositeAdbInterface%     = USB_Install, USB\VID_18D1&PID_4E22&MI_01
%SingleAdbInterface%        = USB_Install, USB\VID_18D1&PID_4E23
%CompositeAdbInterface%     = USB_Install, USB\VID_18D1&PID_4E24&MI_01

;Google Nexus 7
%SingleBootLoaderInterface% = USB_Install, USB\VID_18D1&PID_4E40
%CompositeAdbInterface%     = USB_Install, USB\VID_18D1&PID_4E42&MI_01
%CompositeAdbInterface%     = USB_Install, USB\VID_18D1&PID_4E44&MI_01

;Google Nexus Q
%SingleBootLoaderInterface% = USB_Install, USB\VID_18D1&PID_2C10
%SingleAdbInterface%        = USB_Install, USB\VID_18D1&PID_2C11

;Google Nexus (generic)
%SingleBootLoaderInterface% = USB_Install, USB\VID_18D1&PID_4EE0
%CompositeAdbInterface%     = USB_Install, USB\VID_18D1&PID_4EE2&MI_01
%CompositeAdbInterface%     = USB_Install, USB\VID_18D1&PID_4EE4&MI_02
%CompositeAdbInterface%     = USB_Install, USB\VID_18D1&PID_4EE6&MI_01
%CompositeAdbInterface%     = USB_Install, USB\VID_18D1&PID_4EE7

;Google Glass
%SingleAdbInterface%        = USB_Install, USB\VID_18D1&PID_9001
%CompositeAdbInterface%     = USB_Install, USB\VID_18D1&PID_9001&MI_01

;Project Tango (generic)
%SingleBootLoaderInterface% = USB_Install, USB\VID_18D1&PID_4D00
%CompositeAdbInterface%     = USB_Install, USB\VID_18D1&PID_4D02&MI_01
%CompositeAdbInterface%     = USB_Install, USB\VID_18D1&PID_4D04&MI_02
%CompositeAdbInterface%     = USB_Install, USB\VID_18D1&PID_4D06&MI_01
%CompositeAdbInterface%     = USB_Install, USB\VID_18D1&PID_4D07


[Google.NTamd64]

;Google Pixel C
%SingleAdbInterface%        = USB_Install, USB\VID_18D1&PID_5203
%CompositeAdbInterface%     = USB_Install, USB\VID_18D1&PID_5203&MI_01

;Google Nexus One
%SingleAdbInterface%        = USB_Install, USB\VID_18D1&PID_0D02
%CompositeAdbInterface%     = USB_Install, USB\VID_18D1&PID_0D02&MI_01
%SingleAdbInterface%        = USB_Install, USB\VID_18D1&PID_4E11
%CompositeAdbInterface%     = USB_Install, USB\VID_18D1&PID_4E12&MI_01

;Google Nexus S
%SingleAdbInterface%        = USB_Install, USB\VID_18D1&PID_4E21
%CompositeAdbInterface%     = USB_Install, USB\VID_18D1&PID_4E22&MI_01
%SingleAdbInterface%        = USB_Install, USB\VID_18D1&PID_4E23
%CompositeAdbInterface%     = USB_Install, USB\VID_18D1&PID_4E24&MI_01

;Google Nexus 7
%SingleBootLoaderInterface% = USB_Install, USB\VID_18D1&PID_4E40
%CompositeAdbInterface%     = USB_Install, USB\VID_18D1&PID_4E42&MI_01
%CompositeAdbInterface%     = USB_Install, USB\VID_18D1&PID_4E44&MI_01

;Google Nexus Q
%SingleBootLoaderInterface% = USB_Install, USB\VID_18D1&PID_2C10
%SingleAdbInterface%        = USB_Install, USB\VID_18D1&PID_2C11

;Google Nexus (generic)
%SingleBootLoaderInterface% = USB_Install, USB\VID_18D1&PID_4EE0
%CompositeAdbInterface%     = USB_Install, USB\VID_18D1&PID_4EE2&MI_01
%CompositeAdbInterface%     = USB_Install, USB\VID_18D1&PID_4EE4&MI_02
%CompositeAdbInterface%     = USB_Install, USB\VID_18D1&PID_4EE6&MI_01
%CompositeAdbInterface%     = USB_Install, USB\VID_18D1&PID_4EE7

;Google Glass
%SingleAdbInterface%        = USB_Install, USB\VID_18D1&PID_9001
%CompositeAdbInterface%     = USB_Install, USB\VID_18D1&PID_9001&MI_01

;Project Tango (generic)
%SingleBootLoaderInterface% = USB_Install, USB\VID_18D1&PID_4D00
%CompositeAdbInterface%     = USB_Install, USB\VID_18D1&PID_4D02&MI_01
%CompositeAdbInterface%     = USB_Install, USB\VID_18D1&PID_4D04&MI_02
%CompositeAdbInterface%     = USB_Install, USB\VID_18D1&PID_4D06&MI_01
%CompositeAdbInterface%     = USB_Install, USB\VID_18D1&PID_4D07


[USB_Install]
Include = winusb.inf
Needs   = WINUSB.NT

[USB_Install.Services]
Include     = winusb.inf
AddService  = WinUSB,0x00000002,WinUSB_ServiceInstall

[WinUSB_ServiceInstall]
DisplayName     = %WinUSB_SvcDesc%
ServiceType     = 1
StartType       = 3
ErrorControl    = 1
ServiceBinary   = %12%\WinUSB.sys

[USB_Install.Wdf]
KmdfService = WINUSB, WinUSB_Install

[WinUSB_Install]
KmdfLibraryVersion  = 1.9

[USB_Install.HW]
AddReg  = Dev_AddReg

[Dev_AddReg]
HKR,,DeviceInterfaceGUIDs,0x10000,"{F72FE0D4-CBCB-407d-8814-9ED673D0DD6B}"

[USB_Install.CoInstallers]
AddReg    = CoInstallers_AddReg
CopyFiles = CoInstallers_CopyFiles

[CoInstallers_AddReg]
HKR,,CoInstallers32,0x00010000,"WdfCoInstaller01009.dll,WdfCoInstaller","WinUSBCoInstaller2.dll"

[CoInstallers_CopyFiles]
WinUSBCoInstaller2.dll
WdfCoInstaller01009.dll

[DestinationDirs]
CoInstallers_CopyFiles=11

[SourceDisksNames]
1 = %DISK_NAME%,,,\i386
2 = %DISK_NAME%,,,\amd64

[SourceDisksFiles.x86]
WinUSBCoInstaller2.dll  = 1
WdfCoInstaller01009.dll = 1

[SourceDisksFiles.amd64]
WinUSBCoInstaller2.dll  = 2
WdfCoInstaller01009.dll = 2

[Strings]
ProviderName                = "Google, Inc."
SingleAdbInterface          = "Android ADB Interface"
CompositeAdbInterface       = "Android Composite ADB Interface"
SingleBootLoaderInterface   = "Android Bootloader Interface"
WinUSB_SvcDesc              = "Android USB Driver"
DISK_NAME                   = "Android WinUsb installation disk"
ClassName                   = "Android Device"
Intercontinental answered 25/2, 2016 at 13:50 Comment(12)
I tried using the default Google USB drivers on Windows 10 in to a USB 3.0 port (USB 2.0 cable), and it worked without having to do anything special. It's probably safe to say that my answer here is only necessary on Windows 8 and below.Intercontinental
Are you running Windows 10 32-bit or 64-bit? I can't get it to recognize my Pixel C with or without this solution on Win 10 x64Disfeature
I'm on win 10 x64. I imagine that basically no one uses Win 10 32-bit. Have you tried other USB ports?Intercontinental
Tried all 3 USB ports. All of them get Error 43 and "Unknown USB Device (Invalid Configuration Descriptor)", but only for the Pixel C. Other devices work fine.Disfeature
I'm sorry, I'm not familiar with that error code. All I could suggest is uninstall all other android USB drivers or, be extra sure that Device Manager is using the google drivers with the modifications in my answer above.Intercontinental
I had to add the identifiers on Win 7 Home x64, usb driver downloaded via SDK manager. Just throwing in a data point.Bali
Also getting the error 43 on my macbook (running win 10 x64). My desktop pc doesn't see the pixel c at all (nothing in device manager, no media storage).Pigeonwing
@Pigeonwing did you try different USB ports on your PC? As for your MAC problems, I have no idea. this question/answer is about macs. I would create a new question for macs.Intercontinental
@stealth yea i tried both usb ports. But it looks like the err43 is unrelated, i still get it even when no device is connected to usb, even after reboot. I guess my usb-c cable is messing with me..? Btw, it's a mac but it runs win10 :)Pigeonwing
Once .inf file is altered attempting to install gives "the hash for the file is not present in the specified catalog file" error and prevents installation of driver (even after disabling driver signature enforcement). Am I missing something obvious here? (using Windows8.1 and PixelC)Apocarpous
If you alter the driver the certification is broken. Therefore you get the key/hash/certificate error. But nevertheless this works perfectly fine on Windows 7. Thanks!Therese
This worked for me. It blows my mind that Google release own branded products without updating their own drivers.Prepotency
G
5

For some people altering the android_winusb.inf file will not work since some versions of Windows will detect the tampering of the file. In this case, there is a simple solution that worked for me:

  1. In Device Manager, right click your device and click "Update Driver"
  2. Choose "Browse my computer for driver software"
  3. Click "Let me pick from a list of device drivers". WARNING: Do not use the windows automated search. It will not work!
  4. Click "Have disk" and browse to your unaltered "android_winusb.inf" file and use that.

Windows will complain that it might not be compatible with your device but you can just ignore that and continue. Done!

Gules answered 1/9, 2016 at 17:53 Comment(2)
This worked for me. In the dialog that appears after choosing the .inf file, I chose ADB bridge.Strong
This worked for me on a different Win7 machine. Very strange that windows would block the altered android_winusb.inf but not give you a clear metho of doing this.Intercontinental

© 2022 - 2024 — McMap. All rights reserved.