В блоге:

2014-04-11

Диагностические USB-адаптеры и Android (теория)

Изучаю вопрос использования в программе для Android не только беспроводных (Bluetooth, Wi-Fi) диагностических адаптеров, но и USB адаптеров. Конечно, на тех устройствах, где есть поддержка USB Host (через OTG или даже полноценный USB разъем).

Если на старых версиях Android все как-то тоскливо (нужен root, драйвера и т.п. муть, которой обычный пользователь не будет заниматься), то с 3.1 (API Level 12) появилась родная поддержка USB Host. А это нааааамного интереснее.

Так-то вариантов много, но большая часть нормальных диагностических USB-адаптеров сделаны на чипах FTDI, поэтому имеет смысл начинать именно с них. А там есть с чего начинать.

Есть фирменные FTDI Android-"драйвера" (в кавычках, поскольку это jar-библиотека): http://www.ftdichip.com/Drivers/D2XX.htm - Android (Java D2XX).

Есть описание этого API в AppNotes 233: http://www.ftdichip.com/Support/Documents/AppNotes/AN_233_Java_D2xx_for_Android_API_User_Manual.pdf

Есть примеры: http://www.ftdichip.com/Support/SoftwareExamples/Android_JAVA_D2XX_Projects.htm

И есть описание примеров в Technical Note 147: http://www.ftdichip.com/Support/Documents/TechnicalNotes/TN_147_Java_D2xx_for_Android.pdf


И ко всему этому есть страшненькое, но живое приложение-пример в виде терминалки: FTDI UART Terminal

Пример попробовал. На телефоне Samsung Galaxy SII через OTG-переходник система увидела диагностический USB-адаптер, программа попросила разрешение на доступ:



И что-то даже принималось-передавалось.

Единственное, получится ли на достаточно слабых мобильных устройствах выдержать временные параметры соединения (в случае простого K-Line адаптера). Надо проверять. Но работа с USB-адаптерами в Android - это задача не первой важности, хотя и достаточно интересная.


Изображения из альбомов:

0 comments:

Post a Comment

Blog Archive