Самодельная клавиатура для андроида

Подключаем наши девайсы к компьютеру. Обсуждаются: порты, протоколы, драйвера, языки программирования и т.д.
rosinovsky
Открыл глаза
Сообщения: 73
Зарегистрирован: Вс июл 05, 2015 14:51:51

Самодельная клавиатура для андроида

Сообщение rosinovsky »

Здравствуйте, заранее прошу прощения за некоторые, откровенно глупые, вопросы.

Вопрос 1, как андроид определяет что подключена именно клавиатура? Как он понимает какую кнопку/символ я нажимаю? В общих чертах если можно расскажите?
Вопрос 2, что можно отковырять/отпаять/отпилить от стандартной усб клавиатуры и сконструировать свои кнопки (количество кнопок)?
Вопрос № 3 эту волшебную деталь/детали можно собрать самому? Что мне для этого потребуется?

Ребята я вас прошу в общих чертах, не заставляйте меня изучать все подряд начиная от статического эл-тва и заканчивая хитрыми, сложными моментами программирования микроконтроллеров. я могу быть не прав, но мне кажется для того чтобы приготовить яичницу мне не стоит заканчивать кулинарный техникум. :shock:
Для предотвращения попыток увода от темы, поясню сразу.
У меня стоит планшет в авто, и хочу все же подключить управление на руле. Я в курсе что продаются готовые изделия, но у меня есть желание заняться этим самому, предполагаю что это получится дольше/дороже/и убого, но хочу приложить к этому руку, по необъяснимым мне причинам :) Вероятно, если потребуется какое либо программирование микроконтроллеров, я переложу эту работу на чьи нибудь плечи, за материальное вознаграждение, но собирать и паять хочу сам. мне нравиться как пахнет канифоль :)
Спасибо за понимание!
Реклама
Аватара пользователя
Андрей Бедов
Друг Кота
Сообщения: 37346
Зарегистрирован: Чт авг 30, 2012 20:24:40
Откуда: Нижний Новгород

Re: Самодельная клавиатура для андроида

Сообщение Андрей Бедов »

rosinovsky писал(а):как андроид определяет что подключена именно клавиатура?
Так же, как и любая другая система - по дескриптору HID.
rosinovsky писал(а):Как он понимает какую кнопку/символ я нажимаю? В общих чертах если можно расскажите?
Клавиатура шлёт по интерфейсу коды клавиш. В соответствии с этими кодами система определяет, что "нарисовать" на экране, либо какие действия предпринять.
rosinovsky писал(а):что можно отковырять/отпаять/отпилить от стандартной усб клавиатуры и сконструировать свои кнопки (количество кнопок)?
Клавиатура устроена по матричному принципу (пересечение строк и столбцов).
Поэтому можно задействовать матрицу из любого количества клавиш (но не более максимального количества, на которое способны входы контроллера).
rosinovsky писал(а):Эту волшебную деталь/детали можно собрать самому? Что мне для этого потребуется?
Клавиатура, слесарные навыки.
Реклама
rosinovsky
Открыл глаза
Сообщения: 73
Зарегистрирован: Вс июл 05, 2015 14:51:51

Re: Самодельная клавиатура для андроида

Сообщение rosinovsky »

Оценил шутку про слесарные навыки, остроумно.

Если я вас правильно понял, мне нужно "нечто", прикидывающееся клавиатурой, и какой либо контроллер, который кодирует нажатие клавиши в код, ну и собственно кнопки. А эти коды клавиатуры они стандартные? То есть 00000000 -01111111, это стандарт? на всех клавиатурах так?
Грубо говоря, мне можно собрать три кнопки, подключить их к микроконтроллеру, в котором записан код каждой кнопки и по большому счету все? ну и вопрос с дескриптором останется решить :)
А как микроконтроллер обрабатывает такое количество кодов? кнопок то в районе 100, а ножек у контроллера ой как мало?
Аватара пользователя
Андрей Бедов
Друг Кота
Сообщения: 37346
Зарегистрирован: Чт авг 30, 2012 20:24:40
Откуда: Нижний Новгород

Re: Самодельная клавиатура для андроида

Сообщение Андрей Бедов »

rosinovsky писал(а):Оценил шутку про слесарные навыки, остроумно.
:shock:
А это не шутка.
Если Вы собрались изготавливать свою клавиатуру из покупной - эти навыки Вам пригодятся.
rosinovsky писал(а):Если я вас правильно понял, мне нужно "нечто", прикидывающееся клавиатурой
Клавиатура.
rosinovsky писал(а):и какой либо контроллер, который кодирует нажатие клавиши в код
Её (клавиатуры) контроллер.
rosinovsky писал(а):А эти коды клавиатуры они стандартные?
Да.
rosinovsky писал(а):А как микроконтроллер обрабатывает такое количество кодов? кнопок то в районе 100, а ножек у контроллера ой как мало?
Я бы не сказал, что входов у контроллера мало:

Изображение

Вот пример, как делается самодельная клавиатура:

Изображение

Количество кнопок в матрице зависит от Ваших потребностей.

Программное обеспечение настраивается таким образом, чтобы на код каждой клавиши была желаемая реакция.
Реклама
Эиком - электронные компоненты и радиодетали
Аватара пользователя
Мурик
Друг Кота
Сообщения: 3383
Зарегистрирован: Пн окт 11, 2010 19:00:08

Re: Самодельная клавиатура для андроида

Сообщение Мурик »

USB клавиатуру можно сделать на микроконтроллере типа ATmega8 или подобном, но с нуля будете долго изучать предмет вопроса (нужно хорошо владеть не только программированием, но и знать принцип работы USB, в частности, USB клавиатуры). :dont_know:
Могу помочь с прошивкой для микроконтроллера. Пишите в личку. :)
Реклама
rosinovsky
Открыл глаза
Сообщения: 73
Зарегистрирован: Вс июл 05, 2015 14:51:51

Re: Самодельная клавиатура для андроида

Сообщение rosinovsky »

Мурик писал(а): Пишите в личку. :)
Я вас взял на заметку! Спасибо, обращусь к вам, но после того как у меня сформируется окончательный вариант, что должно получиться в итоге.


Андрей, я метод переделки из покупной клавиатуры держу как запасной.

По хорошему мне нужны пять кнопок от мультимедийной клавиатуры, громкость +/-, перелистывание <</>>, Mute, Mode (я так понимаю это надо эмулировать нажатие 2 клавиш, Alt+Tab). Наврал, 6 кнопок, наверное для этого предложенная Мурзиком, Atmega8 подойдет?

Но вся проблема в том что эти кнопки находятся на руле, и я пропустил один момент, я так понимаю с руля не идет 6 проводов с кнопок а идут какие то сигналы? Как определить что это за сигналы? Их же надо будет перехватить? И уже сигнал, от кнопки с руля, надо определить что за кнопка и перекодировать в понятный для андроида код? Пока все верно?
У меня еще эти кнопки дублируются на панели, там платка и обычные тактовые кнопки, я смогу к ним подпаять входы от контроллера а вот с рулем такое не прокатит.


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

Изображение
Изображение

Есть еще дисплей, на котором информация с БК, и информация с аудио устройства. С БК вопрос решен, Torque + блютус адаптер ODBII
теперь вместо штатного 7'' монитора там живет планшет
примерно вот так
Изображение

И остается еще одна проблема, при подключении внешней клавиатуры в андроиде пропадает экранная, а если я подключу свою собственную с 6ю кнопка как же мне набирать текст например в навигации?

В общем белый пушистый зверек, вопросов больше чем ответов :))
Реклама
rosinovsky
Открыл глаза
Сообщения: 73
Зарегистрирован: Вс июл 05, 2015 14:51:51

Re: Самодельная клавиатура для андроида

Сообщение rosinovsky »

Андрей Бедов писал(а): А это не шутка.
Если Вы собрались изготавливать свою клавиатуру из покупной - эти навыки Вам пригодятся.
Андрей у меня есть всякое разное оборудование и чпу станки и прочая утварь, за исключением 3д принтера (пока что), саму механику и прочие приблуды я изготовлю любые, так то у меня руки не из жопы, простите за выражение, а вот с электроникой все намного хуже )
rosinovsky
Открыл глаза
Сообщения: 73
Зарегистрирован: Вс июл 05, 2015 14:51:51

Re: Самодельная клавиатура для андроида

Сообщение rosinovsky »

О, вот какая штукенция Изображение
Bluefruit EZ-Key вроде как 12 кнопок, поддерживает, вот что то такое необходимо видимо? тоестьтак же подпаять к кнопкам на руле и никаких шлейфов? а как же тогда ОДБ сканер он у меня тоже по блютусу?
Аватара пользователя
Мурик
Друг Кота
Сообщения: 3383
Зарегистрирован: Пн окт 11, 2010 19:00:08

Re: Самодельная клавиатура для андроида

Сообщение Мурик »

rosinovsky писал(а):Atmega8 подойдет
Подойдет, но мультимедийная клавиатура немного сложнее в реализации чем простая...
rosinovsky писал(а):Но вся проблема в том что эти кнопки находятся на руле, и я пропустил один момент, я так понимаю с руля не идет 6 проводов с кнопок а идут какие то сигналы?
Они уже установлены на руле? Тогда нужно разобрать руль и посмотреть как производится передача данных.
rosinovsky писал(а):при подключении внешней клавиатуры в андроиде пропадает экранная
Экранная клавиатура это приложение и скорее всего его можно принудительно запустить, если знать название файла. Может в настройках есть возможность отключить авто-скрытие экранной клавиатуры при подключении внешней.
Нужно еще протестировать планшет на возможность работы с мультимедийной клавиатурой. Поддерживать ее должен, но всякое бывает...
Аватара пользователя
Андрей Бедов
Друг Кота
Сообщения: 37346
Зарегистрирован: Чт авг 30, 2012 20:24:40
Откуда: Нижний Новгород

Re: Самодельная клавиатура для андроида

Сообщение Андрей Бедов »

rosinovsky писал(а):О, вот какая штукенция:

Изображение
rosinovsky писал(а):вроде как 12 кнопок
Там 12 входов. Кнопок вероятно может быть и больше (не читал ещё спецификацию).
Особенно хорошо вот это:
Advanced users can reprogram the module's keys using an FTDI or other Serial console cable, for any HID key report they desire.
v1.2 adds support for multimedia keys such as "volume up" and "play/pause".
You can now map keys to mouse button clicks and mouse movement (up/down/left/right) as well as send mouse commands over the UART.
We also now have 'over the air' remapping, no Serial cable required to re-map the pins!
rosinovsky писал(а):а как же тогда ОДБ сканер он у меня тоже по блютусу?
Будет работать. У них же ID разные.
rosinovsky
Открыл глаза
Сообщения: 73
Зарегистрирован: Вс июл 05, 2015 14:51:51

Re: Самодельная клавиатура для андроида

Сообщение rosinovsky »

Мурик писал(а):Подойдет, но мультимедийная клавиатура немного сложнее в реализации чем простая...
Кнопки у меня вроде как резистивные, и шлейф я так примерно смотрю подходит отдельно к штатному ГУ.

Скажите такое можно реализовать? некий контроллер, к которому подключается шлейф от кнопок на руле, параллельно кнопки на панели, а уже с этого контроллера, усб выход на планшет, и наверное что бы не выпендриваться кнопка к примеру на панели которая отключает всю эту систему для того что бы планшет мог вызывать экранную клавиатуру? По сути нужен контроллер который прикидывается клавиатурой, и обрабатывает и кодирует нажатие соответствующих кнопок?
rosinovsky
Открыл глаза
Сообщения: 73
Зарегистрирован: Вс июл 05, 2015 14:51:51

Re: Самодельная клавиатура для андроида

Сообщение rosinovsky »

Андрей Бедов писал(а): Особенно хорошо вот это
Он может и мышку эмулировать получается?
Аватара пользователя
Андрей Бедов
Друг Кота
Сообщения: 37346
Зарегистрирован: Чт авг 30, 2012 20:24:40
Откуда: Нижний Новгород

Re: Самодельная клавиатура для андроида

Сообщение Андрей Бедов »

Да.
Поэтому я бы присмотрелся.
Тем более с проводами не путаться (для связи с планшетом).
rosinovsky
Открыл глаза
Сообщения: 73
Зарегистрирован: Вс июл 05, 2015 14:51:51

Re: Самодельная клавиатура для андроида

Сообщение rosinovsky »

Мне жалко будет кнопки на руле, вернее сами платы курочить, а если подключать к шлейфу, который подходит ГУ, тогда я совсем запутался, нужно будет промежуточный обработчик, так как кнопки резистивные и всего 2 проводка, этот промежуточный обработчик сначала определит какая кнопка нажата и передаст сигнал на Bluefruit, а тот уже в свою очередь планшету, и в добавок к этому Bluefruit нужно цеплять параллельно кнопки с панели, по моему проводов будет ничуть не меньше :shock:

Это при условии что кнопки резистивные, я только бегло глянул.
Аватара пользователя
Мурик
Друг Кота
Сообщения: 3383
Зарегистрирован: Пн окт 11, 2010 19:00:08

Re: Самодельная клавиатура для андроида

Сообщение Мурик »

rosinovsky писал(а):некий контроллер, к которому подключается шлейф от кнопок на руле, параллельно кнопки на панели, а уже с этого контроллера, усб выход на планшет
Теоретически возможно. Точнее можно сказать увидев схему подключения.
Аватара пользователя
Андрей Бедов
Друг Кота
Сообщения: 37346
Зарегистрирован: Чт авг 30, 2012 20:24:40
Откуда: Нижний Новгород

Re: Самодельная клавиатура для андроида

Сообщение Андрей Бедов »

Это при условии что кнопки резистивные, я только бегло глянул.
Если вообще не 1-Wire.
Поэтому разбирайтесь сначала с автомобилем.
СпойлерНо по-мне, Вы затеяли недоброе.
Раньше ни у кого на баранке никаких кнопок не было, и как-то жили люди.
Переключали музыку на морде магнитолы.
Вы там пол-машины разнесёте, чтобы эту свою идею воплотить.
rosinovsky
Открыл глаза
Сообщения: 73
Зарегистрирован: Вс июл 05, 2015 14:51:51

Re: Самодельная клавиатура для андроида

Сообщение rosinovsky »

Андрей, вы зря так, раньше жили в пещере и катались на лошадях, а сейчас? :)

Ну вот что бы не разнести пол автомобиля, я и не хочу ломать сами кнопки, и вообще обойтись штатными, по возможности, разъемами и переходниками, за исключением дисплея, его уже нет :)
Я уточню по поводу типа сигналов с руля, и в принципе переделок то чуть меньше чем мало :)
rosinovsky
Открыл глаза
Сообщения: 73
Зарегистрирован: Вс июл 05, 2015 14:51:51

Re: Самодельная клавиатура для андроида

Сообщение rosinovsky »

Мурик писал(а):
rosinovsky писал(а):некий контроллер, к которому подключается шлейф от кнопок на руле, параллельно кнопки на панели, а уже с этого контроллера, усб выход на планшет
Теоретически возможно. Точнее можно сказать увидев схему подключения.
Вот из сервисного мануала
Изображение

как видно на руль идет шлейф из 4 жил, 2 на подсветку и 2 сигнальные, и по схеме видно что подключение резистивное, значит не все так жутко? никаких CAN и прочей херни :)
Аватара пользователя
Мурик
Друг Кота
Сообщения: 3383
Зарегистрирован: Пн окт 11, 2010 19:00:08

Re: Самодельная клавиатура для андроида

Сообщение Мурик »

Были бы еще и номиналы этих резисторов...
Аватара пользователя
Андрей Бедов
Друг Кота
Сообщения: 37346
Зарегистрирован: Чт авг 30, 2012 20:24:40
Откуда: Нижний Новгород

Re: Самодельная клавиатура для андроида

Сообщение Андрей Бедов »

А что дадут номиналы?
Я бы отрезал кнопки, и подключил к тому модулю (по ссылке выше).
Малыми кровями, если применять аккуратный шлейф.
К нему-же параллельно и кнопки с приборной панели.
Ответить

Вернуться в «Интеграция с ПК»