Какой драйвер USB мы должны использовать для Nexus 5?

На момент написания этой статьи Google не предоставлял драйвер USB (для Windows) для Nexus 5. Обычная ссылка ( http://developer.android.com/sdk/win-usb.html) показывает драйверы USB для Windows для нескольких из линии Nexus. Однако "Нексус 5" в комплект не входит. Обратите внимание, что Nexus "S" (буква-S, а не номер5) поддерживается.

Также с этого сайта последняя версия текущей загрузки - версия-8, июль-17-2013. Когда я сравниваю это с его предшественником, версией 7, файлы одинаковы.

Пока Google не исправит это, что нам делать? Как мы можем отлаживать и разрабатывать для Nexus 5?

18 ответов

Решение

У меня есть решение.

Я обновил файл android_winusb.inf, чтобы отразить VID и PID Nexus-5. Теперь он загружает общий драйвер и поддерживает ADB в Eclipse.

Обратите внимание, что после любых предыдущих попыток вы можете перейти в диспетчер устройств и обновить драйвер для "Nexus 5" (отображается с желтым восклицательным знаком).

Вы должны перейти в каталог драйверов USB, который на моей машине был:C: \ Users \ Xxxxxxxxx \ android-sdk \ extras \ google \ usa_driver

В этом каталоге отредактируйте файл android_winusb.inf в разделах x86 и amd64 и вставьте одну строку:

%CompositeAdbInterface% = USB_Install, USB\VID_18D1&PID_4EE1&MI_01

Этого было достаточно для меня, чтобы заставить это работать.

Вот содержимое моего файла:

;
; Android WinUsb driver installation.
;
;
;
; Includes FIX for the Nexus-5 ADB,
;                  --- jonovos         ---
;                  --- petuniaPlatypus ---
;                  --- 2013-11-07      ---
;
;        By snooping on the USB for the Nexus-5,
;        it is known that the VID = 18D1 and PID = 4EE1.
;        With this, we insert them into the GENERIC sections bwlow.
;
;
[Version]
Signature           = "$Windows NT$"
Class               = AndroidUsbDeviceClass
ClassGuid           = {3F966BD9-FA04-4ec5-991C-D326973B5128}
Provider            = %ProviderName%
DriverVer           = 07/09/2013,8.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 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
;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-new-line-added:
%CompositeAdbInterface%     = USB_Install, USB\VID_18D1&PID_4EE1&MI_01
;;;;;;;;
%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


[Google.NTamd64]

;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
;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-new-line-added:
%CompositeAdbInterface%     = USB_Install, USB\VID_18D1&PID_4EE1&MI_01
;;;;;;;;
%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

[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"

Я просто хотел внести небольшой вклад, потому что я смог отлаживать на своем устройстве Nexus 5 в Windows 8, не делая всего этого.

Когда я подключил его, в диспетчере устройств не было желтого восклицательного знака. Так что для меня водители были в порядке. Но устройство не было в моем Eclipse DDMS. После небольшого поиска, это была просто возможность изменить настройки устройства. По умолчанию компьютерное соединение Nexus 5 USB находится в режиме MTP (медиаустройство).

Что вам нужно сделать, это:

  • Отключите устройство от компьютера
  • Зайдите в Настройки -> Хранение.
  • В панели действий нажмите меню параметров и выберите "USB-подключение к компьютеру".
  • Проверьте соединение "Камера (PTP)".
  • Подключите устройство, и на нем должно появиться всплывающее окно, позволяющее принять входящее подключение компьютера или что-то в этом роде.
  • Наконец, вы должны увидеть это сейчас в DDMS и вуаля.

Я надеюсь, это поможет!

Это сработало для меня:

  1. Загрузите драйверы Nexus 5 с Google USB Driver
  2. Извлеките содержимое ZIP и поместите все файлы в одну папку на рабочем столе.
  3. Подключите ваше устройство к компьютеру.
  4. Запустите Диспетчер устройств на вашем ПК.
  5. Теперь вы должны увидеть Nexus 5 в списке оборудования.
  6. Щелкните правой кнопкой мыши по строке "Nexus 5" и выберите " Обновить драйвер".
  7. Затем нажмите "Обзор моего компьютера".
  8. В новом окне нажмите кнопку "Обзор…".
  9. Перейдите в папку, разархивированную на шаге 2. Выберите папку, в которую вы извлекаете драйверы USB. Нажмите кнопку "Далее.
    • Обязательно поставьте галочку и в подпапке.
  10. Теперь установщик Windows будет искать драйверы Nexus 5. Нажмите Install, когда вас спросят о разрешении.
  11. Дождитесь завершения процесса, а затем проверьте список диспетчера устройств, чтобы убедиться, что установка прошла успешно.

Источник: Загрузите и установите Google Nexus 5 USB-драйверы (ADB / Fastboot)

Мой Nexus 5 идентифицируется по id = USB\VID_18D1&PID_D001.

Используйте драйверы Google USB и измените файл android_winusb.inf, Найдите строки:

;Google Nexus (generic)
%SingleBootLoaderInterface% = USB_Install, USB\VID_18D1&PID_4EE0

И добавьте ниже:

%CompositeAdbInterface%     = USB_Install, USB\VID_18D1&PID_D001

Повторите это, потому что есть два раздела для изменения, [Google.NTx86] а также [Google.NTamd64],

Если вы продолжаете с проблемами, попробуйте это:

Подключите Nexus 5, зайдите в Диспетчер устройств, найдите Nexus 5 в "другом" и щелкните правой кнопкой мыши. Выберите свойства, детали и в списке выбора, а также выберите идентификатор оборудования. Запишите короткий идентификатор и измените строку:

%CompositeAdbInterface% = USB_Install, YOUR_SHORT_ID

Я нашел решение в Как я исправил проблемы MTP на Nexus 7.


Другой способ исправить это в Windows 8: эта проблема может возникнуть, потому что у вас установлен драйвер Google ADB из Android SDK. Windows выберет драйвер ADB вместо драйвера MTP, даже если отладка USB отключена на Nexus 7. Она также возвращается при обновлении с Windows 8 до Windows 8.1. Чтобы исправить это:

  1. Подключите Nexus 7 и убедитесь, что режим USB установлен на MTP
  2. Запустите devmgmt.msc
  3. Найдите драйвер ADB, который может находиться в разделе "Устройства Android" или "Устройства ADB".
  4. Щелкните по нему правой кнопкой мыши и выберите "Обновить программное обеспечение драйвера".
  5. "Просмотрите мой компьютер для программного обеспечения драйвера"
  6. "Позвольте мне выбрать из списка драйверов устройств на моем компьютере"
  7. Если установлен флажок "Показать совместимое оборудование", вы должны увидеть два драйвера в разделе "Модель":
  8. "Интерфейс Android ADB"
  9. Либо "Устройство USB MTP", либо "Композитное устройство USB"
  10. Выберите "MTP/Composite USB Device" (то есть, не "Android ADB Interface") и нажмите "Далее".
  11. Устройство должно теперь появиться как устройство MTP.

Было подтверждено, что работа с Nexus 7 2013 также была подтверждена.

Я установил LG United Mobile Driver и наконец смог заставить ADB распознать мое устройство.

У меня были такие же проблемы, как у людей с Nexus 5 в Windows 7. Не нужно редактировать файлы.inf, мой компьютер завис на старой версии драйверов Google USB (7.0.0.1). Windows 7 отказалась устанавливать более новую версию, даже если я попытался вручную выбрать каталог или файл.inf. Пришлось вручную удалять определенные кэшированные INF-файлы в папке WINDOWS\inf, следуя указаниям здесь: http://code.google.com/p/android/issues/detail?id=62365

Также убедитесь, что отладка по USB включена в настройках разработчика. Есть хитрость, чтобы раскрыть опции разработчика, кликните 7 раз по номеру сборки в нижней части информации "О телефоне"!

Существует несколько аппаратных версий Nexus 5. Таким образом, принятый ответ не работает для всех устройств (он не работал для меня).

  1. Откройте диспетчер устройств, щелкните правой кнопкой мыши и выберите " Свойства". Теперь перейдите на вкладку "Подробности" А теперь выберите свойство "Аппаратные идентификаторы". Запишите PID и VID.

  2. Загрузите драйвер Google

  3. Обновите файл android_winusb.inf с указанными выше VID и PID.

    %CompositeAdbInterface% = USB_Install, USB\VID_18D1&**PID_4EE1**
    
  4. Теперь в диспетчере устройств найдите Nexus 5, обновите программное обеспечение драйвера и перейдите в каталог, в который вы загрузили.

  5. Драйвер должен быть установлен, и вы должны увидеть устройство в ADB.

У меня тоже была такая же проблема. В диспетчере устройств все драйверы были в порядке, но Eclipse не смог найти устройство. Даже после обновления драйверов Google USB с помощью SDK Manager.

Проблема была в том, что у меня не были включены опции разработчика. Для этого я пришел сюда, как включить опции разработчика на Nexus 5 & KitKat.

Затем мне пришлось вручную обновить драйверы Google USB, см. Загрузка и установка драйверов USB Nexus 5 Google (ADB / Fastboot).

После этого моя установка Eclipse распознала мое устройство.

Сначала я тоже заблудился, но нашел довольно простое решение. Обратите внимание, что я сделал все это в Windows 7 после включения параметров разработчика и отладки USB на моем Nexus 5 (на 4.4.2), а затем подключил его к компьютеру через USB.

Если вы перейдете по ссылке для скачивания - http://developer.android.com/sdk/win-usb.html - в шаге 4 внизу вы увидите расположение установки драйвера. Если затем вы перейдете к "Устройствам и принтерам" из панели управления и найдете свое устройство, щелкните правой кнопкой мыши и перейдите к свойствам, затем перейдите на вкладку "Оборудование" вверху, выберите отображаемое устройство с проблемами, нажмите "Свойства", а затем "Изменить настройки". Затем выберите "Обновить драйвер", выберите местоположение вручную и выберите каталог, который Google отметил как каталог установки, который они отметили как \extras\google\usb_driver\

Это исправило проблему для меня, и теперь мой Nexus 5 появляется в DDMS.

Этот ответ для тех, у кого Windows 8.1N! (а может и все N версии)

Короткий ответ - установить Media Feature Pack для N и KN версий Windows 8.1

Большое спасибо Matej Drolc, который решил эту проблему в популярном посте здесь.

Один из Google USB Driver отлично работал на двух машинах (Windows 7 x64 на обеих). Как только Windows не удалось автоматически установить драйвер, я просто щелкнул правой кнопкой мыши на телефоне в диспетчере устройств, выбрал "обновить драйвер" и указал путь, по которому я распаковал этот драйвер.

Вы уверены, что это проблема с драйверами? Устройство, которое не обнаружено, возможно, имеет проблемы с аппаратным или программным обеспечением. Если он не обнаружен, вы не услышите звуковой сигнал, обнаруженный устройством USB. Это может быть несерьезно, например, некоторые USB-кабели на самом деле являются только зарядными кабелями. Попробуйте использовать USB-кабель, который, как вы знаете, работает с данными, например, тот, который поставляется с телефоном, или тот, который вы используете для подключения внешнего жесткого диска.

Я на Windows 8.1, и я попробовал все из других ответов, и ничего не получалось. Наконец, я решил попробовать "Выбрать из списка драйверов" и обнаружил "LGE Mobile Sooner Single ADB Interface" в разделе "ADB Interface". ADB.exe наконец-то смог найти Nexus 5 и загрузить 4.4.1.

Надеюсь, это поможет.

Все остальное здесь поначалу мне не удавалось (оно продолжало появляться как устройство MTP, независимо от того, сколько раз я удалял и перезапускал).

Однако, включив и включив отладку по USB, все заработало. Просто сделай это:

  1. Удалите драйвер Nexus 5
  2. Отключить от компьютера
  3. Включите параметры разработчика, см. Как включить параметры разработчика на Nexus 5 & KitKat.
  4. Включить отладку по USB: выберите "Настройки" -> " Параметры разработчика" -> " Отладка по USB".
  5. Заново
  6. Вероятно, не удастся установить все драйверы. Обновите драйверы, как описано в других ответах.

Попробовав другие решения, я смог посылать команды ADB на телефон, пока он загружался в Android. Однако, когда телефон находился в режиме восстановления, я столкнулся с новой проблемой, и я хотел бы поделиться своим опытом здесь.

При загрузке в Android телефон устанавливается в Windows как устройство под названием "Nexus 5". После того, как телефон был выключен и загружен в режим восстановления, телефон все еще был установлен как "Nexus 5", но ADB не смог обнаружить устройство. Мне пришлось вручную принудительно установить драйвер с "Nexus 5" на драйвер USB Google, поставляемый с SDK или доступный через драйвер USB Google.

. Inf файл имеет три доступных устройства. Я использовал "Android Composite ADB Interface", и все, кажется, работает.

Я использую версию Windows 7 Ultimate N, и мой Nexus 5 обнаружился с желтым восклицательным знаком в диспетчере устройств, и ни одно из решений не сработало.

Я проверил, что телефон сообщил о себе как:

USB\VID_18D1&PID_4EE1

Который не работает с текущей версией (v11) драйвера Google USB.

Но после включения параметров разработчика и отладки по USB на телефоне он идентифицировал себя как:

USB\VID_18D1&PID_4EE2&MI_01
USB\VID_18D1&PID_4EE2&REV_0232&MI_01

Который устанавливает просто отлично.

Так что просто включите Параметры разработчика на вашем телефоне и повторите попытку установки устройства.

Пока владельцы Nexus 5 ждут выделенного драйвера, вы можете попробовать этот драйвер, который является LG G2, с веб - сайта LG Electronics, поскольку обычно драйверы USB не ограничиваются одной конкретной моделью. Этот, например, выглядит как универсальный драйвер USB. Вам предлагается скачать ту же модель для нескольких моделей на сайте LG Electronics.

Я надеюсь, это поможет вам;)

Другие вопросы по тегам