PCCar.ru - Ваш автомобильный компьютер

PCCar.ru - Ваш автомобильный компьютер (http://pccar.ru/index.php)
-   Разработка программ (http://pccar.ru/forumdisplay.php?f=27)
-   -   BtCarService - эмуляция клавиатуры и тачскрина для android (http://pccar.ru/showthread.php?t=23435)

p_osipov 10.09.2015 11:59

BtCarService - эмуляция клавиатуры и тачскрина для android
 
Всем привет.
Для реализации своего варианта CarPC я разработал приложение, принимающее с внешнего Bluetooth контроллера (arduino с Bluetooth shield) и передающее в android нажатия клавиатуры и тача.
Держите. Может еще кому понадобится.

Из приложения запускается сервис (может так же запускаться при загрузке устройства) и обеспечивает:
Подключение к Bluetooth контроллеру на выбор - при старте сервиса, при подключении ЗУ, при подключении HDMI или при подключении Miracast/MHL.
Возможно отключение от контроллера при отключении ЗУ/HDMI/Miracast.

Краткие возможности сервиса:
Контроль соединения и переподключение при обрыве.
Эмуляция 5-ти пальцевого тача.
Эмуляция полной android клавиатуры
Эмуляция Mock Location
Блокировка гашения экрана
Принудительная установка яркости экрана
Принудительняа установка планшетной ориентации для указанных приложений.
т.к. для тача и клавиатуры используется uinput приложению нужен рут.

Поскольку писал для себя - интерфейс не вылизывал.

Обновление версии 1.0.395:
Исправлена работа тач-скрина и добавлена опция разворота осей координат для TV-стиков.
Добавлена работа через USB-подключение. Точно работает с Arduino-Micro, остальные проверить не на чем.
Добавлена обработка сообщений статуса и показ пустой activity, когда видео-вход переключен не на андроид.
Куча мелких исправлений

В архиве обновлено описание - описаны новые возможности.
Добавлен пример скетча для работы с тачсрином и имитация нажатия кнопки питания.

Изменения в версии 1.0.613
- добавлена поддержка ttyUSB/ttyACM.
- добавлена закладка с состоянием спутников.
- добавлена передача в контроллер состояния сервиса (готов обрабатывать тачскрин, экран - вкл/выкл).
- ну и всякое по мелочи (в архиве Changes.doc)
BtCarService.1.0.613.rar

p_osipov 12.09.2015 00:18

Исправил вылет программы на устройствах с android 4.x
Заменил архив в шапке.

(vS) 12.09.2015 08:18

зачот

p_osipov 12.05.2016 16:54

Обновление програмы в шапке до версии 1.0.395

p_osipov 29.12.2016 12:10

Обновление програмы в шапке до версии 1.0.613
- добавлена поддержка ttyUSB/ttyACM.
- добавлена закладка с состоянием спутников.
- добавлена передача в контроллер состояния сервиса (готов обрабатывать тачскрин, экран - вкл/выкл).
- ну и всякое по мелочи (в архиве Changes.doc)

YAM1966 29.12.2016 12:26

Зачетное приложение!
По эмуляции мыши.
Возможно это лучше сделать как отдельную команду типа $MOUSE... При этом эмулируется мышь, а $TOUCH... работает как и работал.

p.s.
$MOUSE,DX,DY,DW,KEY*CRC
DX +/- смещение по X
DY +/- смещение по Y
DW +/- колесико
KEY битовое поле нажатых кнопок мыши.

p_osipov 29.12.2016 13:13

Так мышь не эмулируется - ардуинина реально представляется мышью. а дальше обработкой мышь/тач занимается скетч.

YAM1966 29.12.2016 13:38

Ой, проглядел :blush:
"Изменен приложенный пример скрипта для Arduino"
И точно.


Часовой пояс GMT +4, время: 07:47.

Работает на vBulletin® версия 3.8.4.
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.
Перевод: zCarot