Конфигурация usb ptp: Что такое MTP, PTP, RNDIS (USB Ethernet), источник аудио и MIDI на Android? – USB Android — MTP, PTP :: Last24Info

Содержание

Что такое MTP, PTP, RNDIS (USB Ethernet), источник аудио и MIDI на Android?

О том, что в разделе «Для разработчика» или «Режим разработчика» на смартфоне Android можно найти массу всевозможных пунктов меню, многие пользователи уже осведомлены. Один из пунктов называется «Конфигурация USB» и содержит в себе различные режимы подключения. В этой статье мы хотели бы рассказать вам немного об этих режимах.

Но для начала давайте вспомним о том, как попасть в раздел «Конфигурация USB». Первым делом вам необходимо открыть настройки:

Тапнуть по строке «Для разработчиков» или «Режим разработчика». Если такого пункта меню вы не наблюдаете, включите его с помощью этой инструкции (по умолчанию режим скрыт).

В разделе «Для разработчиков» нажмите на строку «Конфигурация USB».

Перед вами — выбор режимов.

Теперь немного о каждом из этих режимов.

  • Зарядка. Здесь все понятно, этот режим только заряжает устройство.
  • MTP. Media Transfer Protocol или протокол передачи медиа контента. Протокол для передачи файлов, включая изображения, видеоролики, музыкальные композиции, файлы и т.д.
  • PTP. Picture Transfer Protocol или протокол передачи изображений. В этом режиме позволяет переносить только изображения на компьютер или на принтер для печати.
  • RNDIS (USB Ethernet). Remote Network Driver Interface Specification или спецификация интерфейса удаленного сетевого драйвера. Позволяет создать виртуальный канал Ethernet, используя сеть.
  • Источник аудио. Использование интерфейса USB для вывода звука с компьютера, например, через внешний ЦАП.
  • MIDI. Использование смартфона в качестве MIDI-устройства, например, клавиатуры.

Что делать, когда ПК не видит смартфон

Как известно, андроидные смартфоны можно подключать к компьютеру через USB-кабель — чтобы получить доступ ко встроенной памяти смартфона и содержимому карты памяти (если она установлена в смартфоне).

С брендовыми смартфонами - Samsung, Huawei, Lenovo, Sony, HTC и так далее — обычно так и происходит: подключили смартфон по USB, после этого он появляется в «Устройствах и дисках».

Далее щелкаете по пиктограмме смартфона (ну или планшета, без разницы) - получаете содержимое встроенной памяти и карты памяти. Ну и там вы можете создавать папки, копировать туда аудиокниги, музыку, фото, документы, видео и черта лысого.

Однако многие пользователи китайских смартфонов (планшетов) менее известных производителей жалуются на то, что при подключении смартфона к компьютеру он не появляется в «Устройствах и дисках». Что делать в этом случае?

В этом случае нужно заглянуть в область уведомлений и щелкнуть там по уведомлению «Зарядка через USB». (Обычно называется так, но может называться как-то вроде «Настройка подключения по USB».)

После этого вам откроется окно выбора режима использования USB.

Зарядка — компьютер заряжает подключенный смартфон, но система его не видит.

Передача файлов (MTP) — максимальный доступ с компьютера к смартфону, при котором будет видно содержимое встроенной памяти и карты памяти.

Передача фото (РТР) — при этом виде подключения смартфон в устройствах должен появиться, но доступ будет только к папке с фото, видео (DCIM) и скриншотам (Pictures).

Вам нужно выбрать пункт «Передача файлов», после чего смартфон должен появиться в устройствах.

Ключевое слово — должен появиться. А может и не появиться, что нередко происходит с китайскими смартфонами при первом подключении. Я, тестируя кучу смартфонов, с таким сталкиваюсь постоянно.

Так вот, как решать данную проблему, ведь это очень неудобно, если вы не можете получить доступ к содержимому смартфона? (Карту памяти, если что, можно вытащить и подключить к компьютеру через переходник, а вот со смартфоном этот номер не пройдет.)

Тот факт, что смартфон не появился в списке доступных устройств, говорит только о том, что система не смогла для него установить правильные драйверы.

Подтверждение этому тезису вы найдете, если зайдете в Панель управления — Диспетчер устройств - Переносные устройства. Там наверняка в списке будет значок с названием смартфона, на котором размещен предупреждающий желтый треугольник с черным восклицательным знаком. Это как раз и означает, что для устройства не установлены правильные драйверы.

Щелкаете на устройстве правую кнопку мыши и выбираете пункт «Обновить драйверы». Перед вами появится вот такое окно. Там выбираете «Выполнить поиск драйверов на этом компьютере».

Далее в следующем окне выбираете «Выбрать драйвер из списка уже установленных драйверов».

И там выбираете USB-устройство MTP.

И все, нужный драйвер будет установлен, смартфон появится в системе!


Если вы, увидев в «Диспетчере устройств» значок смартфона с желтым треугольником, попытались при этом обновить драйвер с автоматическим поиском, то с высокой долей вероятности после этого получите вот такое сообщение.

А устройство при этом попадет уже в «Другие устройства» с названием «Android».

В этом случае также нужно произвести вышеописанные действия, вот только после вызова драйвера из списка установленных сначала надо будет выбрать MTD-устройства, и только после этого появится соответствующий список, в котором нужно выбрать USB-устройство MTP.

И все, проблема решена.


Ну и чтобы два раза не вставать. Многих пользователей раздражает тот факт, что по умолчанию при подключении смартфона выставляется режим «Просто зарядка». И вы никак не можете поменять его по умолчанию на режим «Передача файлов».

На самом деле это можно сделать, но путем пары заклинаний.

Для этого сначала вам нужно на смартфоне включить режим разработчика, который по умолчанию выключен. Для этого следует зайти в «Настройки», далее в раздел «О телефоне — Информация об устройстве» и там 8 раз тапнуть пальцем в пункт «Номер сборки». После этого в настройках в самом низу над «О телефоне» появится новый раздел «Для разработчиков».

Заходите туда, там ищете «Конфигурация USB» и в нем выставляете MTP.

Как установить конфигурацию USB по умолчанию для Android M на MTP, а не на «только зарядку»?

Всякий раз, когда мое устройство (Nexus 5, Android M Preview 3) подключается через USB, конфигурация USB всегда по умолчанию имеет значение «только зарядка».

Это довольно проблематично, потому что порт USB на моем устройстве неисправен, а иногда отключается и повторно подключается при столкновении, поэтому мне приходится вручную изменять режим MTP (протокол передачи мультимедиа) из ящика уведомлений каждый раз.

Я просто попробовал это на своем Nexus 5 (Android 6.0.1), и он сработал:

  • Убедитесь, что ваш телефон НЕ подключен к любому устройству через USB-кабель
  • Перейдите в Настройки – Параметры разработчика – Выберите Конфигурация USB
  • Установите желаемый тип подключения по умолчанию

Хитрость заключалась в отключении телефона от USB. Я предполагаю, что идея такого поведения заключалась в том, что если вы установили тип соединения USB, когда ваш телефон не подключен к какому-либо устройству, он будет рассматриваться как поведение по умолчанию.

По умолчанию Android 6.0 не предоставляет автоматизированный метод выбора MTP, когда устройство подключено как USB. После долгого ожидания и исследований через XDA, блоги, stackoverflow и т. Д. Лучшим решением, которое я нашел для этого, было небольшое приложение под названием MTP enabler PRO Marshmallow (4.5 MB) – построенное одним из пользователей для решения этой проблемы.

Для этого требуется корневое устройство.

Ниже приведена ссылка на загрузку файла APK.

http://forum.xda-developers.com/android/apps-games/app-mtp-enbaler-t3263467

Ниже приведена ссылка на приложение в PlayStore (платное приложение)

https://play.google.com/store/apps/details?id=mtp_enabler.esolutions4you.de.mtpenabler&hl=en

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

Это серьезная проблема для неспециалиста. Чтобы получить доступ к файлам на вашем ПК, вам необходимо выполнить следующие шаги:

  1. Проведите пальцем по экрану, коснитесь «USB для передачи файлов».
  2. Выберите опцию «Передача файлов (MTP)».

Прежде всего это должно решить проблему. Но если это НЕ РЕШАЕТ проблему, выполните следующие шаги.

  1. Убедитесь, что SD-карта вставлена ​​правильно.
  2. Перейдите в «Настройки -> Приложения».
  3. Нажмите на три точки в верхнем правом углу экрана и нажмите «Показать системные приложения».
  4. В этом списке приложений найдите приложения «Внешнее хранилище» и «Хранение носителей».
  5. Теперь очистите данные и кеш для этих приложений.
  6. Перезагрузите устройство.
  7. Теперь перейдите в «Настройки -> Параметры разработчика» и включите «Отладка USB».
  8. Затем нажмите «Выбрать конфигурацию USB» и выберите опцию «MTP (Media Transfer Protocol)».

Теперь подключите свое устройство к компьютеру, и вы должны быть готовы к работе.

Вы должны следовать этим шагам только один раз, однако вам нужно каждый раз выбирать тип подключения, открыв экран и выбрав опцию «MTP».

Надеюсь это поможет…!

STM32F4 USB RNDIS драйвер (управление устройством через Web-интерфейс) / Habr

Доброе время суток, дорогие друзья!

Первым делом хотелось бы с лучшими пожеланиями поздравить всех с минувшими новогодними праздниками.

Ранее в статье была анонсирована разработка RNDIS USB драйвера для контроллеров серии STM32F4. С тех пор библиотека постепенно развивалась и нынче доросла до первой release-версии. Библиотека под названием LRNDIS (LWIP + RNDIS) позволяет нам создавать на базе контроллера STM32F4 как устройства класса USB «модем», так и любые другие устройства с управлением через web-интерфейс. Пример управления платой stm32f4-discovery из web-браузера на Android-планшете представлен на видео:

На странице видеоролика представлена ссылка на исходные коды и HEX-файл прошивки для платы discovery, с которым вы сможете повторить данный эксперимент. В статье рассказано о том, как и когда технология доступа через WEB-интерфейс полезна, а также — как работает библиотека LRNDIS для контроллеров STM32F4. Также присутствует обучающий материал о работе USB и устройстве Ethernet-сетей.

Предыстория создания библиотеки

Предыстория проекта весьма типовая. Стоял тёплый летний день. Гхм… Для заказчика стояла задача разработать устройство с сервисным интерфейсом управления.

ПодробностиПо мере развития прошивки было введено несколько команд управления по VCP-интерфейсу. Это значит, что после подключения USB-устройства в ОС создавался виртуальный COM-порт. Используя его, из пользовательского терминала передавались команды управления и диагностики. В ответ от устройства принимался статус выполнения и его текущее состояние.

Система вполне типовая с сервисной точки зрения: есть последовательный порт и набор команд для управления и диагностики.

Всё изменилось в короткий срок. По объективным причинам рос требуемый набор команд. Также понадобилась интерактивность вывода: некоторые параметры стало необходимо отображать в динамике. Как, например, показания магнитного датчика при проносе мимо него ферромагнетика. Для этого были введены дополнительные команды, которые, оперируя управляющими последовательностями, печатали информацию в пользовательском терминале с высокой периодичностью. Это создавало необходимое ощущение риалтаймовости наблюдения. Интерактивные команды оказались настолько удобными для инженеров, что некоторая часть команд позже была добавлена в соответствии с концепцией. И тут раздался треск. Требовалось поддержать сразу несколько групп команд: интерактивные, диагностические, команды управления. При этом периодический рефакторинг кода был связан с трудоёмкой правкой в большом количестве обрабатываемых команд. Ясно стало, что ещё должна быть пользовательская группа команд — для менее квалифицированного персонала, который будет просто следовать инструкциям по эксплуатации. Для них возникла идея написания клиентского терминала с кнопочками и флажочками… И вот тут возникли сомнения: стало ясно, что мы занимаемся сервисной частью, уделяя всё меньше внимания функциональности! А ведь пользовательская программа, запускаемая на клиентской ЭВМ, также должна обладать своими требованиями: кроссплатформенность и LTS (длительностью поддержки).

Устройство, предположим, мы закончили, а пользовательское ПО мы должны портировать и тестировать с каждой версией выпускаемых операционных систем! А как долго?

Так и родился вопрос — как избавиться от дополнительных трудозатрат?


Было принято решение использовать стандарты гарантированно длительной поддержки. Те стандарты, которые нам позволят создать клиентскую программу управления устройством, которая будет поддерживаться максимально полным набором операционных систем в настоящем и будущем времени. На первых парах были найдены недостатки популярных кроссплатформенных фрэймворков:
— java: необходимость наличия в ОС JVM, и вытекающий из противного предположения необходимость дистрибьюции виртуальной машины
— qt: периодическая необходимость версионного портирования и нюансы запуска под Android.

Нет, эти сложности пугать не должны. Вопрос, пожалуй, только в трудочасах, которые мы, бывает, недооцениваем с учётом фактора длительной поддержки.

Так родилась идея сделать WEB-интерфейс для управления устройством. Он не требует разработки стороннего ПО, браузеры для отображения управляющей страницы есть во всех требуемых ОС. Потенциал оформления интерфейса огромный. Длительность поддержки в части стандартов http/html/js тоже не вызывает сомнений.

По замыслу, управление должно было работать следующим образом.
1. Подключаемое по USB устройство представляется сетевой картой
2. Клиентская ЭВМ (ПК или гаджет) получает IP-адрес для работы в сети нашего устройства
3. По запросу web-браузера на клиентской ЭВМ наше устройство отдаёт страницу
4. На странице присутствует информация о текущем состоянии и доступные элементы управления
5. При активации клиентом элементов управления, из браузера передаются соответствующие HTTP-запросы.
По сути, между браузером и устройством, ходят те же самые текстовые команды, но только в формате HTTP протокола.
Надо понимать, что это всего лишь один из вариантов из большого набора возможных решений. Он имеет свои плюсы и минусы. Так случилось, что сейчас к использованию web-интерфейсов прибегают производители в основном сугубо сетевых устройств: настройка модемов и роутеров. Посыл данной статьи — давайте применять то что, действительно, удобно. И давайте не бояться сложностей на пути: их преодоление сейчас нам сэкономит куда больше времени в будущем!

Сфера применения библиотеки

К сожалению, первый анонс в полной мере успешным не был, т.к. рассказ о сфере применения был упущен.
Попробуем немного наверстать упущенное и раскрыть эту тему.
Если мы находимся на этапе системного проектирования устройства, то следующие соображения могут склонить нас в сторону использования web-интерфейсов (вне зависимости от физического канала, Ethernet или USB):
1. Устройство должно иметь интерфейс управления и/или диагностики
2. Средства управления могут использоваться не только на этапе разработки, но и на этапе эксплуатации (ПО пользователя)
3. Квалификация пользователя может быть недостаточно высокой, что требует дружественный интерфейс управления
4. Способ «дружественного» управления должен быть доступен из под разных платформ и ОС
5. Соответствующие средства требуется поддерживать в рабочем состоянии длительное время
Дополнительным критерием может являться то, разрабатываем ли мы изначально сетевое устройство. А также: не будет ли (в противном случае) добавление в прошивку сетевого стека и web-сервера являться избыточным на фоне куда менее богатого функционала устройства. Иными словами, добавление web-интерфейса в контроллер управления лампочкой — очевидно, избыточное решение.

Если мы поверили в web-интерфейс, то следующие соображения, возможно, нам помогут в выборе физического канала связи (из Ethernet и USB перспективы).

Тип Внутрисхемное подключение Типовое применение
Ethernet Ethernet PHY контроллер — Промышленные устройства
— Бытовые устройства с сетевой функцией и доп. питанием
USB ULPI контроллер или прямое подключение к МК Бытовые и часть промышленных устройств. В особенности, если:
— устройства имеют не гарантированный источник питания (питание от батареи, например)
— устройства потенциально подключаемые к хосту только с USB интерфейсом (например, планшет)
— миниатюрный класс устройств

От себя добавлю — не смотря на все прелести, не посоветовал бы применять USB в промышленных узлах с требованием повышенной надёжности: часто встречается негативный опыт. Если альтернативы нет — то вопрос устойчивости требуется изучить досконально.
Исходя из приведённых пунктов, становится ясна сфера применения библиотеки: бытовые и часть промышленных устройств, которые:
— работают на базе МК STM32F4
— должны обладать дружественным интерфейсом управления
— должны управляться из под разного аппаратного и программного набора
— могут не иметь гарантированного источника питания
— должны иметь длительный период поддержки ПО управления
Возможных примеров использования технологии много даже вне области сугубо сетевых устройств.
К примеру, на данный момент есть планы по превращению stm32f4-discovery в инструмент любительской разработки с функциями портативного генератора/анализатора сигналов и осциллографа. Подключите такой помощник к телефону и посмотрите в динамике что происходит в интересующей вас цепи. Из бесплатных плюсов — не требуется собирать или устанавливать ПО; достаточно прошить HEX-файл и открыть браузер — в нём будут присутствовать все прелести GUI-интерфейса. На мой привередливый вкус — то что нужно. Конечно, инструмент не для профессиональной разработки, но известный интерес к нему присутствует.

Итак, надеюсь, разобрались. А теперь о том как работает библиотека.

Как оно работает

При ответе на этот вопрос спешить не будем. Человек, имеющий небольшой опыт взаимодействия с сетями, может вполне справедливо смутиться. Поэтому, касаясь того или иного протокола взаимодействия я буду также давать его краткое техническое описание на том уровне… которого когда-то не хватало самому.

Шаг 1. Подключаем USB-устройство.
Как говорилось раньше, на этом этапе наше устройство говорит хосту «я — сетевая карта!».
Хост (т.е. клиентская ЭВМ) после подключения к нему нашей поделки, начинает отправлять запросы.

Хосту требуется получить следующую информацию — как изделие называется
— какой у изделия VID и PID (идентификаторы производителя и изделия, см. список)
— к какому классу и подклассу относится устройство
— по каким endpoint точкам и какими блоками следует обмениваться данными
Ну, и некоторую другую информацию. Конфигурационные пакеты при этом передаются по точке endpoint 0. Ответные пакеты от устройства с информацией о себе обычно называют «дескрипторы USB устройства».

Подробно ознакомиться о процессе опроса (энумерации) можно здесь.

Вообще, протокол USB достаточно богат… иногда даже кажется, что избыточно. Однако, это богатство вот уже много лет позволяет подключать совершенно разные устройства, даёт возможность передавать изохронные потоки, блоки данных, прерывания. В общем, всё необходимое, что может потребоваться широкому набору современных устройств. Обратная сторона медали — высокий порог входа в разработку USB-устройств.


После получения информации об устройстве, ОС хоста производит поиск подходящего драйвера для взаимодействия. В типовом случае, вроде flash-носителей (USB класс MSC) или клавиатуры с мышкой (HID класс), загружается стандартный для класса драйвер. В более «тяжёлом» случае, вроде нашей USB сетевой карты (CDC класс с RNDIS подклассом), операционная система поступает по усмотрению:
— ОС linux/android/mac, как правило, успешно пытается наладить типовой обмен
— ОС windows просит установить внешний драйвер
Наше устройство в первом случае работает сразу.
В случае ОС windows (позднее XP) можно установить стандартный драйвер фирмы Microsoft. Для Windows XP необходимо поставить inf-файл, доступный в репозитории библиотеки LRNDIS.

Шаг 2. Драйвер инициализирует RNDIS-устройство
На данной картинке изображён принцип связи с RNDIS устройством (ОС Windows).

Более подробно о нём можно почитать тут и там.

Если вкратце, то RNDIS протокол — это расширение NDIS для внешних устройств. Роль протокола — обеспечить поддержку PnP и обмен сетевыми пакетами. По сути своей, RNDIS — самостоятельный сетевой интерфейс, информационной нагрузкой которого являются кадры канального/сетевого уровней (Ethernet или IP кадры, опционально).

На приведённой схеме это реализует кубик «Минипорт Remote NDIS», который отвечает за:
— сервис общения (спросить у сетевого устройства его MAC-адрес, размер пакета, скорость работы и прочее)
— оборачивает отправляемые хостом сетевые пакеты в RNDIS заголовок
— транслирует принимаемые от устройства пакеты, выбрасывая RNDIS заголовок
Кубик «Минипорт Remote NDIS USB» отвечает за транзит RNDIS посылок, работая с драйвером USB шины.
На стороне контроллера STM32 за поддержку RNDIS протокола и работу с USB отвечает файл usbd_rndis_core.c. Он делает то же самое, что и «кубик» хоста «Минипорт Remote NDIS» — занимается приклеиванием/отклеиванием заголовков, а также отвечает на вопросы драйвера. Ответы, вроде MAC-адреса и скорости он берёт из файла usbd_rndis_core.h.
После успешной инициализации RNDIS драйвер Windows создаёт сетевой интерфейс, который в последствии отображается в «Центре управления сетями» и в области трей-индикатора.

Шаг 3. Получение IP-адреса
Итак, для чего нужна служба получения динамического адреса. Эта служба называется DHCP (протокол динамической настройки узла).
После того как хост инициализирует наше устройство, он создаёт сетевой интерфейс.

Сетевой интерфейс (если кто не знает)Сетевой интерфейс — это программная сущность, предоставляющая доступ к ресурсам физической или виртуальной сети.
Чаще всего каждому сетевому интерфейсу хоста соответствует конкретный сетевой адаптер. Но есть множество других интерфейсов, вроде локальной петли или те, что служат для взаимодействия с виртуальной машиной. В их случае в сигнальном виде из хоста «ничего не выходит» — обмен происходит программным способом.

Каждому сетевому интерфейсу хоста должен быть сопоставлен хотябы один IP-адрес. По нему «жители сети» может обратиться к хосту.

Если «на проводе» адресовано несколько сетей (например, устройства с IP адресами 10.4.1.xx и 192.168.1.xx), то интерфейсу может назначаться два «личных» IP-адреса. Они могут выглядеть так: 10.4.1.151 и 192.168.1.200. Узнать набор сетевых интерфейсов и сопоставленных им IP-адресов в ОС Windows можно с помощью команды ipconfig и с помощью ifconfig в ОС Linux.

Для описания сетей/подсетей используется маска. Например, правильное описание сети 10.4.1.xx такое: сеть 10.4.1.0, маска 255.255.255.0. Либо, если 4-ёх байтовое число маски представить в двоичном виде и посчитать число ведущих едениц, то получится значение 24. Тогда сеть можно описать так: 10.4.1.0/24.

Подробнее об этом можно почитать в соответствующих источниках.


Известны две основные стратегии назначения IP-адреса интерфейсу: статический способ (когда пользователь сам прописывает адрес интерфейсу) и динамический (с помощью DHCP-службы).

Последний заключается в том, что при создании интерфейса на хосте активизируется служба DHCP-клиента. Она начинает посылать в сеть (конфигурация которой пока не известна) широковещательные пакеты по протоколу UDP, в надежде на то, что в сети присутствует DHCP-сервер.

Функция DHCP-сервера в общем, и в частности на нашем контроллере — ответить клиенту. В ответе контроллер «говорит»: клиент, ты в такой-то сети, держи такой-то IP-адрес, а ещё у нас имеется DNS-сервер с таким-то адресом.

После этого хост «чувствует себя» намного лучше: он назначает интерфейсу выданный IP-адрес и запоминает IP-адрес DNS-сервера.

Инициализация закончилась, теперь можно вводить имя страницы (run.stm) в браузере хоста.

Надо сказать, что поведение библиотеки LRNDIS настраивается. Службу DHCP-сервера можно исключить из сборки. Тогда на хосте придётся прописывать любой адрес, принадлежащий диапазону 192.168.7.(2-254). Такая сеть создаётся по умолчанию. Её параметры (192.168.7.0/24) также настраиваются. В примере клиенту выдаются адреса в диапазоне 192.168.7.2… 192.168.7.4 с временем лизинга 24 часа.
Более подробно по вопросу настройки библиотеки можно посмотреть в предыдущей статье.

Шаг 4. Загрузка страницы
Для загрузки страницы пользователь может ввести адрес нашего устройства 192.168.7.1 напрямую.
Однако, запоминать цифры не требуется, т.к. помимо DHCP-сервера, есть возможность собрать библиотеку с поддержкой DNS-сервера, функция которого — разрешать сетевые имена. В публикуемом примере DNS-сервер обучен разрешать имя ресурса «run.stm».

Поэтому, если в браузере написать run.stm, сетевая служба хоста отправит нашему (и не только) DNS-серверу запрос, в ответ на который сервер услужливо сообщит: доменному имени «run.stm» соответствует IP-адрес 192.168.7.1. Далее браузер хоста по известному адресу совершит TCP подключение с целью отправить HTTP запрос на получение корневой страницы.

Запрос и ответ между браузером Firefox и контроллером:

История запросов при загрузке страницы:

Из истории мы видим, что, после загрузки корневого HTML-документа браузер также загружает из контроллера другие два файла: discovery.svg и zepto.min.js. Первый — это изображение платы discovery. SVG формат выбран, т.к., являясь изображением векторной графики, мало занимает места в ПЗУ микроконтроллера. Скриптовый файл zepto.min.js включён, т.к. является урезанным аналогом знаменитого JQUERY. Надо заметить, что скрупулёзной экономии места в ПЗУ не производилось, т.к. не смотря на жертву в 35 Кб на все статические ресурсы, памяти контроллера ещё вполне достаточно. К тому же данный размер с дальнейшим увеличением сложности интерфейса обещает расти заметно медленней. Если же интерфейс разросся существенно — всегда есть выход хранить и отдавать статические ресурсы в сжатом виде — все известные браузеры на данный момент поддерживают декомпрессию «на лету».

Ещё один запрос, который отправляет браузер — это запрос /state.cgi. Он формируется скриптом из корневого HTML-документа с периодичностью 5 раз в секунду. Нужен запрос для получения в динамике текущего состояния устройства.
При приёме данного запроса, контроллер формирует и отвечает следующей строкой в JSON формате:

{ "systick": 9528746, "button": 0, "acc": [54, -288, 936], "leds": { "g": 0, "o": 0, "r": 0 } } 

Она и содержит все данные о текущем состоянии устройства, которые впоследствии отображаются на странице средствами JavaScript кода.

Ну и, пожалуй, последний момент в общении с браузером — способ управления.

В примере происходит управление тремя светодиодами. Например, при щелчке на флажок красного светодиода средствами JavaScript отправляется HTTP GET запрос с передачей параметра «r» и значения 0 или 1. Полностью запрос выглядит так: /ctl.cgi?r=1

Таким или альтернативными способами можно передавать любой набор данных, будь то логическое состояние 0/1, или значение текстового поля, или уведомление о нажатии кнопки. Красота подхода заключается в том, что программная логика вовсе может не знать о элементах управления, ибо получает строго формализованные управляющие сообщения. Также можно менять и отлаживать интерфейсную часть (HTML+JS) локально со всеми удобствами, после чего однократно заливать в составе прошивки в контроллер. Локальной web-разработкой, что не мало важно, может заниматься соответствующий специалист.

О стеке LWIP
Никакого сетевого обмена устроить бы не получилось, если бы не данный сетевой стек, который и был встроен в библиотеку.
Поскольку библиотека работает под «голым» железом (без ОС и динамической аллокации памяти), то надстройка в виде сокетов для использования недоступна. Написание сетевых приложений поэтому происходит с использованием сырого API стека. По этой теме, к счастью, в сети много информации.

Также в составе пакета contributions есть множество уже готовых решений. В том числе оттуда и был использован HTTP-сервер.

В прошлой статье я давал краткое описание стека и его настройки. На данный момент был уточнён набор важных для стека определений в файле:

lwipopts.h
#define NO_SYS                          1
#define MEM_ALIGNMENT                   4
#define LWIP_RAW                        1
#define LWIP_NETCONN                    0
#define LWIP_SOCKET                     0
#define LWIP_DHCP                       0
#define LWIP_ICMP                       1
#define LWIP_UDP                        1
#define LWIP_TCP                        1
#define ETH_PAD_SIZE                    0
#define LWIP_IP_ACCEPT_UDP_PORT(p)      ((p) == PP_NTOHS(67))

#define MEM_SIZE                        10000
#define TCP_MSS                         (1500 /*mtu*/ - 20 /*iphdr*/ - 20 /*tcphhr*/)
#define TCP_SND_BUF                     (2 * TCP_MSS)

#define ETHARP_SUPPORT_STATIC_ENTRIES   1

#define LWIP_HTTPD_CGI                  1
#define LWIP_HTTPD_SSI                  1
#define LWIP_HTTPD_SSI_INCLUDE_TAG      0

Также была решена проблема с mem_malloc. Хоть текущая версия прошивки и не использует динамическую аллокацию, аппаратный крах при вызове mem_malloc держал настороже. Разрешилось добавлением определения MEM_ALIGNMENT, который раньше был обойдён вниманием.

По этой же причине стабильно заработал поддерживаемый сообществом HTTP-сервер, что и побудило отказаться от планов создания собственного.

Нерешённые вопросы
1. Ньюансы релицензирования стека lwip, который может иметь свои условия включения в состав другого ПО;
2. Доработка DNS-сервера для обработки «многовопросных» пакетов;

Вместо заключения
Благодарю читателя за терпение и надеюсь, что данная статья окажется для него полезной. Опубликованная в исходных кодах библиотека LRNDIS доступна для использования на правах MIT-лицензии. Считаю замечательным, если работа, на которую было уделено ощутимое время и запас сил, окажется полезной ещё кому-то. На худой конец, без использования открытых библиотек не получилось бы и этой.

В данный момент планируется поддержка библиотеки, поэтому за вопросами можно обращаться по адресу электронной почты [email protected].

USB — устройство MTP — Отказ — Заметки VictorZ

Как исправить ошибку: USB - устройство MTP - Отказ
Для того чтобы со своего телефона данные скинуть на компьютер или наоборот с компьютера данные скопировать на телефон я подключаю телефон к компьютеру с помощью кабеля. Недавно приобрёл новый телефон и придя на работу подключил его к компьютеру, чтобы скопировать данные, которые мне понадобились на работе. Однако я был сильно удивлён, когда увидел на мониторе компьютера ошибку «USB — устройство MTP — Отказ».

Как исправить ошибку: USB - устройство MTP - Отказ

Судя по всему, была проблема с установкой драйвера Mobile MTP Device. В связи с этим телефон не определялся в системе. На домашнем компьютере такой проблемы не было. В итоге через определённое время я нашёл, как избавиться от ошибки «USB — устройство MTP — Отказ» о чём и расскажу вам далее.

Первое что необходимо сделать, это отключить своё проблемное устройство от компьютера (телефон, фотоаппарат, планшет и т.д.). Далее необходимо запустить редактор реестра. Нажимаем сочетание клавиш «Win + R»:

Как исправить ошибку: USB - устройство MTP - Отказ

В появившемся окне вводите:

regedit

И нажимаете «ОК»:

Как исправить ошибку: USB - устройство MTP - Отказ

Откроется редактор реестра, в котором вам необходимо найти ветку реестра:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{EEC5AD98-8080-425F-922A-DABF3DE3F69A}

Выделяем её, и справа увидим параметр «UpperFilters». Выделяем и удаляем параметр «UpperFilters»:

Как исправить ошибку: USB - устройство MTP - Отказ

После этого подключаете своё устройство к компьютеру и драйвера должны установиться без проблем и ваше устройство будет определено в системе.

Если нет параметра в реестре

Если в реестре нет параметра «UpperFilters», то отключите устройство от компьютера, скачайте MTPPK и установите. После этого снова подключите устройство к компьютеру.

Возможно это не единственное решение, но мне оно помогло. Если есть другие решения, то пишите в комментариях о новых решениях, чтобы помочь другим.

Решение 1 от читателя (Павел):
Ключ в реестре отсутствовал.
Переустановил драйверы Samsung -> установил MTPPK -> перезагрузил компьютер — не помогло (MTP отказ).
После перезагрузки изменил в телефоне тип подключения на Камера (PTP) — в этом варианте телефон определился и уже можно было загружать файлы. Вернул тип подключения на телефоне в мультимедиа и драйвер установился без ошибки.

Решение 2 от читателя (Дмитрий):
Windows 7 x64 Максимальная.
Планшет Lenovo.
В реестре записей не было, установка МТРРК не дала результата. Помогла установка программы адаптера от Самсунга samsung.com/ru/support/usefulsoftware/KIES/

Решение 3 от читателя (Алексей):
Подключал Asus Zenfone Max. В настройках смартфона в режиме «Для разработчиков» была включена «отладка по USB». С протоколом MTP — система Windows 7 выдавала ошибку: usb-устройство mtp отказ.
Но удалив файл UpperFilters и отключив «отладку по USB» всё заработало! Система распознала смартфон как «Портативное устройство»!

Решение 4 от читателя (Максим):
Кто стремится себя огородить от всякого зла и любящих побаловаться с параметрами Безопасности для папок, мой совет пригодится в решении проблемы отказа. Первое, кликаем ПКМ (правый клик мыши) по диску «C», проходим во вкладку «Безопасность» проверяем есть ли строчка «Прошедшие проверку» в разделе «Группы или пользователи» с разрешением «Чтение». Второе, кликаем ПКМ по папке «Windows», также проходим во вкладку «Безопасность» и смотрим есть ли строчка «Прошедшие проверку» с разрешением «Чтение». Если нету, то добавляем. После этого мой iPhone 5 стал определяться и карта памяти с фотками появляться в «Моем компьютере».

Решение 5 от читателя (Виталий):
Ничего не помогало. От имени администратора загрузил операционную систему в безопасном режиме, подключил телефон, сразу установились драйвера и он определился. Потом при обычной загрузке операционной системы стало без проблем работать.

Решение 6 от читателя (Никита):
У меня устройство Galaxy A3 (2017), сделал я это следующим способом:
1. Зайти в «Диспетчер устройств».
2. Выбрать пункт «Переносные устройства» (там будет значок с восклицательным знаком) нажимаем его.
3. Откроется окно свойств этого устройства, выбрать вкладку драйвер.
4. Нажать кнопку «Обновить».
5. Выбрать пункт «Выполнить поиск драйверов на этом компьютере».
6. Выбрать пункт «Выбрать драйвер из списка уже установленных драйверов».
7. Выбрать «USB — устройство MTP».
После этого произойдет установка стандартного драйвера для всех MTP устройств, и телефон откроется

Решение 7 от читателя (Дмитрий):
Решил проблему так. Подключил телефон через провод к компьютеру. В диспетчере устройств удалил не определившееся «нехорошее» устройство. Отключил телефон от компьютера (отсоединив провод), снова подключил провод к компьютеру и всё заработало.

Конфигурация USB mtp что это?

Компьютер не видит телефон через USB — почему и как исправить

25.09.2019  windows | для начинающих | мобильные устройства

Если вы столкнулись с тем, что телефон не подключается через USB, то есть компьютер его не видит для передачи файлов, а происходит только зарядка, при этом звук подключения проигрывается, в этой инструкции — подробно о том, как это исправить и включить возможность просматривать содержимое памяти телефона при подключении по USB кабелю.

Шаги, описанные ниже, подойдут для телефонов Android как последних, так и предыдущих версий в случае, если смартфон не виден после подключения по USB на компьютере с Windows 10, 8.1, Windows 7 и XP или Mac OS.

Почему Android телефон не виден на компьютере по USB и происходит только зарядка — простые причины и решения

Прежде чем приступать к дополнительным методам решения проблемы, когда телефон не видно через USB подключение, рекомендую обратить внимание на следующие простые моменты: очень часто причина оказывается в чем-то из перечисленного:

  1. Если вы взяли кабель для USB подключения от не оригинальной дешевой зарядки или идущий в комплекте с другим устройством (к примеру — для зарядки беспроводных наушников или другого устройства, не предназначенного для приема и передачи данных), то причина может быть именно в этом: не все кабели могут передавать данные, нет соответствующих контактов, и внешне этого не заметить. Решение — исправный кабель с гарантированной возможностью передачи данных.
  2. Если вы столкнулись с тем, что при подключении смартфона к компьютеру он не виден, а недавно был ремонт телефона и ремонтировалось что-то связанное с платой или разъемом, велика вероятность, что ремонт и вызвал проблему: очень часто разъемы паяют так, что после этого исправно работает лишь зарядка. Решение — только переделывать.
  3. Если у вас Mac OS, просто установите приложение Android File Transfer для возможности передачи данных, официальный сайт: https://www.android.com/filetransfer/
  4. Если вдруг у вас ещё Windows XP, установите драйвер MTP (Media Transfer Protocol) — https://www.microsoft.com/en-in/download/details.aspx?id=19153

Дополнительно, учитывайте, что подключение даже исправным кабелем через USB-хаб (разветвитель USB-портов), к неисправному USB разъему компьютера или ноутбука, а иногда — к передней панели ПК может вызвать рассматриваемую проблему. Попробуйте прямое подключение к USB, другой разъем, заднюю панель ПК, если подключали к разъему USB 3.0 (обычно, синего цвета) — проверьте, сохранится ли проблема при подключении к USB 2.0.

И последний простой момент: после подключения телефона к компьютеру для того, чтобы он начал отображаться в проводнике с возможностью просмотра фото, видео и других файлов, требуется:

  1. Разблокировать телефон при подключении, если он заблокирован — получить доступ к данным на заблокированных современных телефонах Android не получится.
  2. В области уведомлений нажать по уведомлению о USB подключении (по умолчанию большинство телефонов подключаются только для зарядки). Если уведомление не появляется, точнее там не сообщается о том, что это именно USB подключение, а только текст о зарядке, значит с «точки зрения» телефона подключение не служит для передачи данных (неправильный кабель, повреждение кабеля, разъема на телефоне или компьютере). Ниже — скриншоты с внешним видом уведомления на чистом Android 9 и 8, на Samsung Galaxy и на Android 6-7.
  3. Выбрать режим передачи файлов MTP для USB-подключения. На старых версиях Android также может присутствовать пункт для подключения как USB Mass Storage, он тоже подойдет, причем может сработать даже лучше.

Если перечисленные методы не помогли, перейдем к более сложным способам исправления.

Как исправить, если компьютер не видит подключенный по USB телефон — дополнительные методы

Если ваш телефон не подключается по USB к компьютеру с возможностью передачи данных, а только заряжается, попробуйте следующие методы исправить проблему.

Проверка работы телефона (MTP устройства) в диспетчере устройств

  1. Откройте диспетчер устройств на компьютере с Windows 10, 8.1 или Windows 7, когда телефон подключен. Для открытия диспетчера устройств можно нажать клавиши Windows+R на клавиатуре, ввести devmgmt.msc и нажать Enter. Windows — это клавиша с эмблемой ОС.
  2. Посмотрите, есть ли в диспетчере устройств устройство с именем MTP (MTP Device, MTP-Устройство) или именем вашего телефона (может находиться в разделе «Переносные устройства).
  3. Если есть, дважды нажмите по нему, перейдите на вкладку «Драйвер», нажмите «Обновить драйвер» — «Выполнить поиск драйверов на этом компьютере» — «Выбрать из списка доступных драйверов на компьютере» и посмотрите список.

    Если в нем более одного совместимого устройства, попробуйте выбрать не тот драйвер, который установлен в настоящий момент, обычно нужно выбрать «USB-устройство MTP».

  4. Если никаких новых устройств в диспетчере при отключении и подключении телефона по USB не появляется, это еще один довод в пользу проблем с кабелем, разъемом на телефоне или компьютере.

Подробнее на эту тему, если устройство отображается в диспетчере устройств с восклицательным знаком, в отдельной инструкции Неправильная секция установки службы в этом INF-файле MTP.

Безопасный режим Android, режим разработчика драйверы материнской платы и другие нюансы

Помимо прочего в случае возникновения рассматриваемой проблемы, обратите внимание на следующие моменты:

  • Включите режим разработчика на Android, а затем в параметрах разработчика включите отладку по USB и, отдельно, найдите в настройках для разработчика пункт Конфигурация USB по умолчанию и установите режим «Передача файлов». Здесь может быть полезно: Как включить отладку по USB на Android.
  • Если вы пользовались режимом USB-модема на телефоне, в настройках (обычно в разделе «Подключения» или «Сеть и Интернет» — «Точка доступа и модем») выключите опцию «USB-модем».
  • Если телефон перестал быть виден после переустановки или обновления Windows, установите оригинальные драйверы материнской платы, чипсета с сайта её производителя или с сайта производителя ноутбука, если у вас ноутбук.
  • Попробуйте перезагрузить ваш Android телефон в безопасном режиме. Если после этого он стал виден при подключении на компьютере, то вероятнее всего, причина в каких-то сторонних приложениях, чаще всего, связанных с защитой, контролем и аналогичных.
  • Попробуйте использовать встроенное устранение неполадок в Windows: зайдите в Панель управления — Устранение неполадок — Оборудование и звук — Настройка устройства (в последних версиях Windows 10 пункт отсутствует).
  • Если существует такая возможность, попробуйте подключить телефон к другому компьютеру. Если там он тоже не виден, опять же дело скорее всего в кабеле или разъеме. Причем разъем на телефоне может перестать функционировать для передачи файлов просто из-за попадания грязи или воды с последующим окислением контактов.
  • Также могут помочь (а могут и создать проблемы с другими USB накопителями, так что беритесь лишь в том случае, если готовы к этому) способы, касающиеся очистки драйверов из инструкции Компьютер не видит флешку по USB.

Источник: https://remontka.pro/computer-ne-vidit-telefon/comment-page-15/

Android от А до Я: Что кроется за аббревиатурой MTP, и как правильно этим распорядиться

МTP (Media TransferProtocol) впервые появился на Android девайсах с Honeycomb. Протокол немного отличается от привычного USBMass Storage (UMS), при котором вы включаете USB мод и начинаете перемещать файлы.

А поскольку МТР стал частью Ice Cream Sandwich на GalaxyNexus, то неплохо было бы выяснить все нюансы. В посте мы попробуем максимально разобраться с тем, что конкретно представляет собой этот протокол, какая в нем необходимость, и как его настроить для упрощения трансфера файлов.

Что такое МТР?

МТР — это набор кастомных расширений для PTP (Picture Transfer Protocol), который направлен на трансфер файлов и связанных с ними метаданных по USB. Все еще тут? Тогда продолжим.

Изначально часть структуры WindowsMedia, но в 2008 МТР был стандартизирован как тип USB устройства, тем самым, став сформировавшимся стандартом.

Ели вы были обладателем iriver или Creative MP3 плееров, вы вероятно сталкивались с МТР.

Если вы пользуетесь цифровой камерой, которая при подключении к ПК автоматически распознается как устройство, то в работе задействован РТР, который, по сути, является  тем же, что и МТР. Вещь достаточно старая, но не для Android.

Зачем использовать MTP вместо USB Mass Storage?

Суть использования MTP заключается в том, что теперь производителям мобильных девайсов не надо создавать два отдельных раздела, один для приложений, второй для медиа файлов. Раньше за ними был замечен грешок, который заключался в расширении второго раздела за счет первого, а это очень часто приводило к нехватке места для новых приложений. С МТР оба типа фалов можно хранить вместе.

У USB Mass Storage есть один большой недостаток — когда вы создаете разделы памяти, то один из них оказывается полностью во власти другого девайса. Это означает, что у вашего планшета или смартфона не будет доступа к этому разделу, но компьютер, к которому подключен девайс, может всячески им распоряжаться. По этой причине некоторые приложения и, особенно, виджеты, помещенные на SD карту, не работают.

Еще одним преимуществом МТР является отсутствие необходимости использования файловой системы FAT для хранения. Это в конечном итоге приводит к более быстрой работе девайса.

Установка МТР

Со времен Windows XPMTP девайсы без пролем работают с Windows. Подключаете свой GalaxyNexus, выбираете MTP в качестве типа соединения, операционная система компьютера сама находит нужные драйвера, вам необходимо будет лишь немного подождать. Перемещение файлов между смартфоном и ПК без каких-либо проблем обеспечено. Но что делать тем пользователям, которые отдали предпочтение Linux и Mac?

Mac OS

Ребята с Android сделали этот процесс максимально безболезненным. Вам необходимо просто скачать и установить программу Android File Transfer, подключить девайс к компьютеру, запустить приложение и начать работу. Вы можете перетаскивать любые файлы как с устройства, так и на устройство, но объем каждого отдельного не должен превышать 4 ГБ.

Linux

С Linux начинаются некоторые трудности. Вы не добьетесь необходимой цели в один клик, но зато сможете детально изучить все происходящие при этом процессы. Не отчаивайтесь, просто придется немного повеселиться с командным окном. Вот как надо использовать GalaxyNexus с Ubuntu:

Установите UDEV rule, открыв rulesфайл через терминал

sudo nano -w /etc/udev/rules.d/51-android.rules

Затем введите следующую строку внизу файла (на забудьте указать имя пользователя):

SUBSYSTEM==»usb», ATTR{idVendor}==»04e8″, ATTR{idProduct}==»6860″, MODE=»0600″, OWNER=»»

После чего настанет черед для:

  • sudo apt-get install mtpfs
  • sudo mkdir /media/GNexus
  • sudo chmod 775 /media/GNexus

Затем следует подключить GalaxyNexus к ПК и в том же, что и ранее окне ввести:

sudo mtpfs -o allow_other /media/GNexus

Это все позволит вам перетаскивать файлы, используя Nautilus, и не забудьте ввести следующую команду по завершении работы:

sudo umount mtpfs

Альтернатива

В качестве альтернативы можете использовать комбинацию  Wifi File Explorer и QuickSSHd и отправлятьфайлы по беспроводному соединению.

Adnroid Ice Cream Sandwich, Android, Android ICS, Galaxy, Honeycomb, Linux, Mac OS, Media Transfer Protocol, MTP, PTP, Ubuntu, Windows, Андроид от А до Я

Android от А до Я: Что кроется за аббревиатурой MTP, и как правильно этим распорядиться:
рейтинг 80 из 80 на основе 80 оценок.
Всего 80 отзывов.

Источник: http://droidtune.com/4179/chto-kroetsya-za-abbreviaturoj-mtp-i-kak-pravilno-etim-rasporyaditsya.html

Соединение mtp. Ошибка «USB-устройство MTP. Отказ»: рекомендации по устранению проблемы

Если вы читаете эту статью, тогда очевидно, что у вас проблемы с передачей файлов через USB на вашем Android устройстве. Не волнуйтесь, вы не первый, кто обращается к нам с подобным вопросом.

К счастью, мы знаем несколько способов решить эту проблему. Итак, без дальнейших церемоний, вот, что вам нужно сделать, чтобы передача файлов через USB снова заработала.

Причина ошибки передачи файлов через USB

Есть несколько причин, по которым вы не можете передать файлы через USB:

  • USB-кабель не поддерживает передачу файлов
  • Устройство не настроено для приема файлов через USB
  • Вы установили приложение Samsung Kies
  • Micro-USB порт на вашем Android устройстве сломан (к сожалению, не могу вам помочь с этим)

Шаг 1 — Включить передачу файлов на вашем Android устройстве

Это первое, что вы должны сделать, чтобы иметь возможность передавать файлы через USB на Android устройство.

Чтобы включить передачу файлов по USB, перейдите в раздел Настройки> Память> Нажмите на три вертикальные точки в правом верхнем углу экрана> USB подключения к компьютеру> Установите флажок рядом с «Медиа-устройство (MTP)»

Если вы думаете, что проблема с передачей файлов через USB связана с программным обеспечением, попробуйте подключить устройство к компьютеру с помощью USB, выбрать «Камера (PTP)» и снова убрать. Некоторым пользователям это помогает.

Шаг 1.1 — дополнение для «чистой» версии Android 6.0 Marshmallow

Если вы не видите вышеупомянутого варианта в разделе «Память», убедитесь, что вы включили отладку по USB. После этого выполните небольшую хитрость:

  1. Отсоедините USB-кабель от устройства.
  2. Включите режим разработчика. Для этого перейдите в Настройки> О телефоне >нажмите на номер сборки несколько раз, пока не появится всплывающее сообщение, что вы стали разработчиком.
  3. Перейдите в раздел Настройки> Параметры разработчика.
  4. Включите отладку по USB.
  5. Заблокируйте свое устройство (кнопка блокировки на боковой или верхней панели).
  6. Подключите смартфон к компьютеру с помощью USB кабеля.
  7. Разблокируйте Android устройство.
  8. Проведите пальцем вниз, чтобы открыть панель уведомлений и нажмите на «Зарядка по USB».
  9. Выберите «Передача файлов» из всплывающего окна.
  10. Заблокируйте устройство и разблокируйте снова.

Используя данный метод, вы будете иметь возможность передавать файлы через USB. По какой-то причине эта опция недоступна без активации режима разработчика.

Шаг 2 – Удалить программу Samsung Kies

Пропустите этот шаг, если у вас нет установленного программного обеспечения Samsung Kies.

Официальная программа от Samsung для передачи файлов часто вызывает помехи для передачи файлов через USB. Чтобы удалить Samsung Kies, вам необходимо сначала скачать программу, после чего выбрать «Удалить».

Шаг 3 – Проверить USB-кабель

Не все USB кабеля одинаковые: некоторые из них способны передавать файлы, некоторые нет. Рекомендуется использовать USB кабель, который идет в комплекте с вашим Android устройством. Как правило, они имеют функцию передачи файлов через USB.

Если же ни один из способов не помог решить проблему, тогда попробуйте установить AirDroid. Данное программное обеспечение позволяет передавать файлы на Android устройства без USB кабеля.

Нередко можно встретить ситуации, когда пользователь подключает мобильное устройство к компьютеру посредством кабеля USB, а система девайс не распознает да еще и выдает при этом сообщение об ошибке. И это, к сожалению, относится не только к самым простым телефонам, но и к современным планшетам, смартфонам и даже фотоаппаратам или камерам. Как опознать USB-устройство MTP, сделать его видимым и полностью работоспособным, далее предлагается рассмотреть максимально подробно. Попробуем применить несколько классических методов и решений, которые предлагают пользователи в интернете.

Ошибка Windows 7: «USB-устройство MTP. Отказ». Общая суть проблемы

Сразу хочется отметить, что проблема состоит в том, что мобильный девайс не определяется операционной системой исключительно как накопитель (ни внутренний раздел, ни съемная карта не видны).

Многие пользователи думают, что основная причина состоит в неправильной работе драйвера Да, действительно, такая ситуация наблюдаться может, но только лишь отчасти. Иногда проблема может состоять в настройках самого девайса или даже в параметрах системного реестра Windows. Кроме того, если в системе не установлены некоторые дополнительные компоненты и обновления, призванные обеспечить корректную работу подключаемых устройств такого типа, ошибка появляться тоже может.

Первоначальные действия с реестром

Итак, прежде чем скачать драйвер USB-устройства MTP, можно предпринять, так сказать, превентивные меры, используя для этого системный реестр, поскольку некоторые установленные ключи могут содержать в себе запреты на определение мобильных девайсов.

Первым делом вызываем редактор (regedit в меню «Выполнить») и переходим к ветке HKLM. Через раздел SOFTWARE и каталоги контроля переходим к конечному каталогу, как показано на изображении выше. Справа имеется ключ UpperFilters, который как раз нам и мешает. Удаляем запись, выходим из редактора и перегружаем систему. После этого, как правило, при подключении девайса к компьютеру или ноутбуку драйверы, если их не было, установятся автоматически, а само USB-устройство MTP становится видимым в системе.

Установка или обновление драйвера

Но бывает и так, что вышеуказанный ключ в реестре изначально отсутствует, а устройства не определяются ни под каким предлогом. Что делать в такой ситуации?

Тут необходимо при подключенном к компьютеру девайсе зайти в «Диспетчер устройств», найти свое устройство, помеченное желтым треугольником, и через меню ПКМ выбрать обновление драйвера (таже можно использовать и раздел свойств). Когда система начнет выдавать рекомендации, следует выбирать только совместимые драйвера. Если это не поможет, скачайте в интернете универсальный драйвер MTPPK, установите его самостоятельно или укажите системе полный путь к сохраненному файлу.

Иногда нерабочее USB-устройство MTP можно идентифицировать, если на вкладке сведений в выпадающем информационном списке выбрать ИД оборудования, после чего задать поиск драйвера в интернете по самой длинной строке, содержащей идентификаторы DEV и VEN. Само собой разумеется, что после загрузки драйвер также придется инсталлировать самому.

Инсталляция дополнительных компонентов системы

Иногда, даже при условии наличия работоспособного драйвера, ошибка может возникать снова и снова. Считается, что такая ситуация большей частью связана с отсутствием особых компонентов самой операционной системы.

Исправление ошибки состоит в том, чтобы загрузить с официального сайта Microsoft пакет Windows Media Feature Pack или его недостающие элементы, а затем установить. Отзывы пользователей свидетельствуют о том, что иногда это срабатывает.

Другие варианты устранения сбоя

Некоторые владельцы мобильной техники после удаления вышеописанного ключа реестра рекомендуют отключить режим Иногда помогает установка настроек с использованием типа подключения PTP (камера) вместо MTP.

Обладатели смартфонов и планшетов Samsung утверждают, что для определения USB-устройства MTP достаточно установить соответствующий адаптер (инсталлируется он вместе с программой Samsung Kies).

Еще один вариант действий, как утверждается, состоит в том, чтобы загрузить Windows в безопасном режиме и войти в систему под регистрационной записью администратора. В этом случае драйверы устанавливаются автоматически и без проблем.

Для определения мобильной техники Apple многие пользователи рекомендуют использовать следующий действия. Через ПКМ на системном разделе (диск «С») выбирается раздел свойств и вкладка безопасности, а в меню групп или пользователей проверяется наличие строки «Прошедшие проверку» с параметром «Чтение».

Аналогичные действия производятся для каталога Windows. Если указанный параметр не задействован, его нужно добавить через кнопку изменения опций. После перезагрузки Windows «яблочные» девайсы системой будут распознаны.

Наконец, если система подвергалась воздействию вирусов, следует произвести полную проверку, используя для этого портативные антивирусные утилиты.

Android application/vnd.android.package-archive Приложение Android

МTP (Media TransferProtocol) впервые появился на девайсах с Honeycomb. Протокол немного отличается от привычного USBMass Storage (UMS), при котором вы включаете USB мод и начинаете перемещать файлы. А поскольку МТР стал частью на, то неплохо было бы выяснить все нюансы. В посте мы попробуем максимально разобраться с тем, что конкретно представляет собой этот протокол, какая в нем необходимость, и как его настроить для упрощения трансфера файлов.

Инструкции по установке драйвера Intel® USB для устройств Android*

Этот документ поможет вам установить пакет драйвера Intel® USB для устройств Android*, с помощью которого вы сможете подключить ваше устройство с ОС Windows* к вашему устройству с ОС Android на базе процессора Intel® Atom™.

Системные требования

Аппаратные требования: Мобильное устройство Android на базе процессора Intel Atom, за исключением SoFIA Кабель micro-USB — USB (кабель, используемый для зарядки устройства)

Поддерживаемые операционные системы компьютера:

Windows® 10 (32/64-разрядная)

Windows 8.1 (32/64-разрядная) Windows 8 (32/64-разрядная) Windows 7 (32/64-разрядная) Windows Vista (32/64-разрядная) Windows XP (только 32-разрядная)

Поддерживаемые операционные системы устройства Android:

Android 2.3.7 – Gingerbread (ГБ) Android 4.0.x – Ice Cream Sandwich (ICS) Android 4.4 – Kit Kat

Android 5.x – Lollipop

Действия установки

Внимание: Во время процесса установки не подключайте устройство Android к компьютеру.

  1. Загрузите установочный пакет с сайта https://software.intel.com/ru-ru/android/tools
  2. Запустите установщик и, если необходимо, примите условия функции контроля учетных записей (UAC).
  3. Появится следующий экран. Нажмите кнопку «Next», чтобы продолжить. (Если установщик обнаружит устаревшую версию драйвера, примите предложение для его удаления.)
  4. Появится следующий экран. Прочитайте и примите условия лицензионного соглашения Intel с конечным пользователем об использовании драйвера Intel USB для Android (EULA).
  5. Вам будет предложено выбрать компоненты, как показано на рисунке ниже. Щелкните на кнопку «Next» (Далее) чтобы продолжить.
  6. Выберите путь для установки и нажмите «Install» (Установить).
  7. Начнется установка драйверов USB для Android. Для ее выполнения может потребоваться несколько минут.
  8. После завершения установки во всплывающем окне нажмите OK, а затем «Готово», чтобы закрыть программу установки.

Поддерживаемые профили USB

После установки пакета драйверов для USB подключите ваше устройство Android к компьютеру с помощью кабеля micro-USB — USB. Далее представлены профили USB, используемые пакетом драйверов USB Intel для Android:

  • ADB (Android Debug Bridge). Это отладочный интерфейс Android. Он, главным образом, используется для обновления флэш-памяти и отладки.
  • MTP (Media Transfer Protocol): Это протокол Windows для передачи медиа-файлов.
  • PTP (Picture Transfer Protocol): Это протокол для пересылки изображений из цифровых фотоаппаратов в компьютеры.
  • RNDIS: Эта функция создает виртуальный канал Ethernet, используя телефонную сеть.
  • CDC Serial (Modem AT Proxy): Эта функция создает канал связи с модемом для использования команд AT через виртуальный коммуникационный порт:

Поиск и устранение неисправностей

1/ Устройство не определяется совершенно

  • Эти драйверы предназначены только для устройств Intel®. Если вы используете устройство, произведенное одним из OEM-поставщиков, пожалуйста, получите драйверы непосредственно с веб-сайта изготовителя или воспользуйтесь ссылками, которые предлагаются Google здесь.

2/ У меня возникли ошибки в Диспетчере устройств Windows

  • Откройте Диспетчер устройств Windows:
    • Вы можете обнаружить элемент USB Mass Storage вместо ADB Device. В этом случае нажмите значок устройства Mass Storage правой кнопкой мыши и выберите ‘Удалить’.
      Затем отсоедините устройство от компьютера и вновь запустите программу установки драйверов.
    • Вы можете увидеть значок устройства Android с желтым восклицательным знаком. В этом случае нажмите значок устройства Android правой кнопкой мыши и выберите ‘Удалить’.
      Затем отсоедините устройство от компьютера и вновь запустите программу установки драйверов.

3/ Портативное устройство отображается, но нет профиля Android Debug Bridge (ADB)

Возможно, вы не включили параметр «Отладка USB».
По умолчанию параметры для разработчиков на вашем телефоне скрыты. Откройте меню настроек на своем телефоне и найдите раздел О телефоне. Пролистайте и найдите элемент «Сборка». Нажмите его пять раз и вы должны увидеть небольшой диалог, сообщающий, что вы активировали функции для разработчиков.
Вернитесь в главное меню настроек и откройте Параметры для разработчиков, а затем включите ВеDebugging.

4/ Я все еще использую Windows XP. После активации MTP не появляется всплывающий диалог, который должен открыть доступ к файловой системе телефона или пересылке медиа-файлов.

По умолчанию MTP не поддерживается в ОС Windows XP. Вы должны установить приложение Windows Media Player 10 или его более новую версию.

Дополнительные вопросы и поддержка
Для получения другой поддержки в отношении поиска и устранения неисправностей размещайте свои вопросы на форуме поддержки Intel для разработчиков Android на странице: (https://software.intel.com/ru-ru/android)

Источник: https://software.intel.com/ru-ru/android/articles/installation-instructions-for-intel-android-usb-driver

Как включить USB порты в БИОСе: подробная инструкция

Если на вашем ПК не работают порты USB, а настройки Windows и обновление драйверов не помогают, возможно, контроллер был отключен в БИОСе. В этом случае вам потребуется зайти в меню конфигураций и включить все назад.

Существует множество различных версий BIOS со своими интерфейсами и тонкостями работы. Также на вашем компьютере может работать более современный комплекс — UEFI, который поддерживает полноценный графический интерфейс. В данной статье рассмотрены дистрибутивы, которые чаще всего устанавливаются на материнские платы.

first boot devicefirst boot device

Вход в настройки BIOS

Чтобы приступить к изменению конфигурации, нужно попасть в соответствующее меню. Его можно открыть во время включения персонального компьютера — до того, как началась загрузка Windows с жесткого диска.

Включите ПК. В случае, если он уже работает: перезагрузите. Дождитесь звукового сигнала спикера: короткий одиночный гудок свидетельствует о том, что все внутренние компоненты, необходимые для работы компьютера, обнаружены.

Теперь необходимо нажать горячую клавишу для вызова конфигурации. Это нужно сделать до смены экрана. Если вы не успели, и началась загрузка Windows — перезагружайтесь. Клавиши зависят от модели установленной материнской платы и версии прошивки BIOS. Узнать ее можно в руководстве пользователя, которое прилагается к материнке, на официальном сайте производителя или посмотреть на экране вашего ПК при его загрузке:

Экран ПК при загрузкеЭкран ПК при загрузке

Если вы не знаете модель платы — ничего страшного. Просто попробуйте нажимать следующие клавиши: Tab, Delete, Esc, F1, F2, F8, F10, F11, F12. Одна из них наверняка подойдет.

Необязательно пробовать только 1 вариант за раз. Вы без проблем можете быстро нажать все кнопки из списка. Одна из них подойдет и запустит настройки БИОСа, а остальные будут проигнорированы.

Вход в настройки BIOS / UEFI новейших ПК


Многие современные компьютеры загружаются так быстро, что попасть методом нажатия клавиш при включении не получится. Также это актуально для ноутбуков. Поэтому последние версии ОС Windows обзавелись новой особенность запуска. Покажем на примере ОС Windows 8.1.
  1. Проведите мышью сверху-вниз или снизу-вверх по правому краю экрана и в появившемся окне нажмите «Параметры».
  2. Кликните на надпись «Изменение параметров компьютера»
  3. Нажмите «Обновление и восстановление».Перезагрузка в особом режимеПерезагрузка в особом режиме
  4. Далее: «Восстановление».
  5. В разделе «Особые варианты загрузки» нажмите кнопку Перезагрузить сейчас.

Восстановление - перезагрузкаВосстановление - перезагрузка

Ваш компьютер или ноутбук перезагрузится в режиме настройки. После перезагрузки ПК вы также сможете выбрать вариант запуска с USB-накопителя или DVD-диска.

Навигация в меню

Практически все версии БИОС лишены графического интерфейса. Это значит, что вам придется работать только с помощью клавиатуры, как, например, в консоли Windows. Навигация осуществляется с помощью стрелок «вверх-вниз» и «вправо»-«влево». Чтобы открыть какой-либо раздел, используйте клавишу Enter, чтобы вернуться назад – «Escape». Небольшая памятка по используемым клавишам всегда показывается на экране.

bios setup utilitybios setup utility

Комплекс микропрограмм UEFI устанавливается на самых дорогих и мощных материнских платах. Он поддерживает большее количество драйверов и умеет работать с мышью. Его интерфейс будет привычен пользователям Windows и других современных операционных систем.

asus efi bios utilityasus efi bios utility

Каждая версия обладает собственным интерфейсом и наборами опций. Даже названия одних и тех же параметров могут различаться. Далее в статье описано несколько популярных релизов БИОС.

AMI BIOS

Очень распространенный вариант, который можно встретить на многих современных компьютерах. Главное меню разделено на 2 части: список категорий и различные действия, вроде выхода или сохранения. Вы будете работать с левой частью.

award biosaward bios

Вам необходимо перейти в раздел, который называется «Integrated Peripherals». Русскоязычной версии интерфейса нет, поэтому все команды только на английском. С помощью стрелки «Вниз» выделите данный пункт и нажмите Enter.

Здесь нужно включить (Enabled) 4 опции:

  • USB EHCI controller – основной контроллер. Если на материнской плате есть порты версии 3.0, этот пункт будет разделен на 2 части: «Controller» и «Controller 2.0»;
  • USB Keyboard Support – поддержка клавиатур;
  • USB Mouse Support – поддержка мышек;
  • Legacy USB storage detect – работа с внешними хранилищами данных: флешками, дисковыми накопителями, дисками смартфонов и цифровых фотоаппаратов.

legacy usb storage detectlegacy usb storage detect

В некоторых старых версиях присутствует всего 2 пункта «USB controller» и «Legacy USB storage support».

Когда закончите с настройками, нажмите клавишу F10, чтобы сохранить внесенные изменения и перезагрузить компьютер.

Phoenix AwardBIOS

Другая популярная версия, которую часто можно встретить на современных ноутбуках. Не имеет главной страницы, как AMI, но снабжен удобными тематическими закладками вверху. Перемещаться между разделами можно с помощью стрелок «влево»-«вправо», а между пунктами — с помощью «вверх» и «вниз».

advanced biosadvanced bios

Перейдите в раздел «Advanced» с помощью стрелки «Вправо». В ней найдите категорию «USB configuration». Все пункты этого раздела необходимо перевести в положение «Enabled». В некоторых версиях категория «USB configuration» может находиться во вкладке «Peripherals» а не в «Advanced».

Для завершения работы в меню нажмите F10 и подтвердите выход.

legacy usb supportlegacy usb support

AMI BIOS for Asus

Версия AMI, используемая на ноутбуках Asus. Внешне очень похожа на Phoenix — аналогичная панель закладок. Настройки USB находятся в разделе «Advanced». Перейдите туда, включите все опции и выйдите с помощью кнопки F10.

UEFI

Вопреки распространенному мнению, UEFI — не часть BIOS. Его скорее можно назвать более продвинутым, но менее популярным конкурентом. Существует большое количество различных версий, каждая со своими интерфейсами. Однако здесь управление похоже на привычную Windows, поэтому вы без труда найдете нужные опции.

uefi dualbiosuefi dualbios

Настройки Windows

Если на уровне БИОСа все порты и контроллеры включены, но USB порты все-равно не работают, возможно, проблема в настройках вашей системы Windows.

Во-первых, попробуйте просто отключить и подключить устройство заново. Это вызовет проверку корректности драйверов. Если с ними что-то не так, Windows постарается переустановить их.

Если при переподключении ничего не происходит — попробуйте включить контроллер в реестре Windows. Для этого необходимо сделать следующее:

  1. Вызовите диалог «Выполнить» с помощью Win + R (либо через «Пуск»: в XP и 7-ке щелкнув по ней левой кнопкой мыши, а в 8 и 10 версиях — правой кнопкой мыши).ввод regeditввод regedit
  2. Введите regedit и нажмите OK.
  3. Перейдите в раздел «HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ USBSTOR».Редактор реестраРедактор реестра
  4. Дважды кликните по записи «Start», чтобы открыть окно редактирования.
  5. Измените значение на «3». При любых других значения параметра, USB порты работать не будут.Изменение параметраИзменение параметра
  6. Нажмите OK и закройте редактор.

Видео: как настроить любой BIOS на загрузку с USB флешки

Leave a comment