Просмотр полной версии : [HID Front Keys] Клава своими руками.
kostya740
15.12.2012, 03:29
Начал разрабатывать клавиатуру HID, чтоб рулить всякими кнопками.
Почему строю:
1. дешево (~4$)
2. никаких доп драйверов
3. настраиваемые системные кнопки, либо комбинации
4. настройка происходит без программирования чипа
База собрана на AtMega8. В распоряжении минимум 16 кнопок.
Либа в основе V-USB.
Если вам завтра захочется переназначит кнопки, то достаточно запустить программу и сделать конфигурацию.
Сейчас все выглядит так
UPD 04.01.2016
Выложил полную версию проекта. Пользуйтесь. Кому нужны заводские печатные платы, пишем в личку.
UPD 16.06.2017
Спрашивали про фьюзы. выкладываю по памяти(Low: 0xFF, High: 0xD1), фото ниже.
Здесь fuse bit's по аннотации Atmel(как в даташитах):
без галочки — значит не запрограммирован (1),
стоит галочка — запрограммирован (0).
Лучше строить сразу на mega16, потому что потом без проблем можно воткнуть mega32
Мне лень было рисовать травить плату, поэтому я просто купил макетку microsin . ru, там же много инфы и прошивка с бутлоадером. Уже кспешно подключил джойстик BMW, так что если будут вопросы - спрашивай
kostya740
15.12.2012, 19:44
Лучше строить сразу на mega16, потому что потом без проблем можно воткнуть mega32
Мне лень было рисовать травить плату, поэтому я просто купил макетку microsin . ru, там же много инфы и прошивка с бутлоадером. Уже кспешно подключил джойстик BMW, так что если будут вопросы - спрашивай
1. Зачем mega16? прошивка в данный момент весит менее 5к. что-то больше городить на чип безмыслено.
2. Мне 16 пинов с головой хватит от mega8. А мега16 вообще бессмысленная покупка. за эти деньги можно ARM купить, жаль что не в дипе.
3. либа v-usb заберет 90% производительности чипа. больше флеша бес мысленно, на другие действия не останется достаточно ресурсов.
4. mega8 дороже в 2 раза и имеет большие габариты, 40пин как ни как.
чтоб работал бутлоадер, вам нужно достать плату и нажать спец пин для прошивки. а идея не разбирать ничего, чтоб менять конфигурацию.
6. я тему создал для других, чтоб повторили девайс, а не чтоб задавать вопросы.
Девайс уже готов и проверен на коленке. сейчас пишу программу для конфигурирования.
рекомендую Teensy 2.0 http://pjrc.com/store/teensy.html
всего 16$
сразу есть аппаратное USB. Может работать как клава+мышка+джойстик+ком-порт одновременно.
В ардуине поддерживается, если доп. модуль установить.
Ну и паять почти ничего не надо. Я себе на ней все построил, мне очень понравилось из всего что я еще пробовал.
Ну извини, я же не знал, что в твоей теме нельзя задавать вопросы
Mega32 меньше, чем за $4 (http://www.ebay.com/itm/1PCS-IC-ATmega32A-AU-ATmega32A-MCU-8BIT-TQFP44-NEW-GOOD-QUALITY-date-code-11-/290739993336?pt=LH_DefaultDomain_0&hash=item43b1743af8)
Mega16 или mega32 как раз для того, чтобы работала не только VUsb
Gorynch, А действительно, зачем мега16? Для этой цели меги 8 хватит с головой... А размеры чипа играют далеко не в пользу меги16.
Мне казалось, что я уже ответил на этот вопрос постом выше - для потенциальной возможности расширения функционала (всё равно захочется)
Размер - да мне кажется, что в данном случае не принципиально - не в кармане же носить
kostya740
17.12.2012, 09:24
Повторяю. V-USB занимает меньше 3к флеша. Но занимает серьезно ресурсы процессорные.
против mega16 - TQFP нужно травить плату(DIP можно на монтажке, деталей мало), DIP40 дорого и габаритно. больше 4к флеша бессмысленно, т.к. после v-usb остается мало ресурсов процессорных.
Сейчас данные по прошивке
Program Memory Usage : 2610 bytes 31.9 % Full
Data Memory Usage : 140 bytes 13.7 % Full
EEPROM Memory Usage : 51 bytes 10.0 % Full
Больше никакие серьезные задачи на него не возложить. мало мегагерц, так яснее? 12MHz утилизирует практически полностью.
Девайс окончен. Установлю в машину, погоняю. Потом выложу прошивки, если потребуется кому-то.
софт выглядит так
http://www.gyry.com.ua/uploads/screenshot/20121217062842000062012.png
Круто. Всегда вызывало уважение к людям выкладывающим свои разработки в свободный доступ.
Жду с нетерпением завершения проекта. Как раз кучка AtMega8 в Dip и TQFP лежат, ждут своего часа.
можно ещё один вопрос?
а сочетание только из двух клавиш? из трех, четырех не будет?
kostya740
17.12.2012, 18:07
можно до шести, а нужно ли?
Есть вероятность, что из 16 комбинаций можно нарваться на хоткей или винды, или какого либо приложения
А почему 6? Вроде 8 служебных (shift, ctrl, alt, gui * лево и право) + одна простая
8 служебных + 6 простых одновременно. Или 1 мультимедийная.
8 служебных + 6 простых одновременно. Или 1 мультимедийная.
это простая клава может?
просто в VUSB это зависит от того, как описать устройство и как передавать данные. В самом простом случае (для USB клавы) - это 2 байта без управления лампочками локов. Т.е. получается одновременно можно передать нажатие до 8 служебных + 1 простая кнопка
А кто сказал, что тут самый простой случай? ;)
ваши ответы весьма информативны
Так выше ж точно написал...
kostya740
08.01.2013, 05:11
Проект на 90% окончен. В каком виде его распространять еще решается.
Вот так выглядит софт.
http://www.gyry.com.ua/uploads/screenshot/20130108021004000022013.png
Так же реализована работа енкодеров. Можно назначит любые два пина для енкодера.
http://www.gyry.com.ua/uploads/screenshot/20130108021221000022013.png
Было бы не плохо, если бы проект был бы открытым.
Помимо большого респекта автору, можно было развивать тему в несколько потоков.
mendisabal
15.02.2013, 09:54
и как это планируется выглядеть в конце пути ?
kostya740
17.02.2013, 06:16
разработка идет медленнооооо.
Рефакторинг - переделана в матрицу кнопок. Теперь имеем 60 кнопок.
Работа энкодера в данный момент нестабильна. Не могу время найти, чтоб отдебажить.
В планах закончить через месяц.
Слева на фотке кнопки (без платы ответной), хочу сделать под эти кнопки клаву. По вашей теме совсем не понял что и как.
Есть ли какой-нибудь мануальчик, или схема...
http://www.arvinlin.com/ebayimage/2DINKIT/2dinKIT-1.jpg
e-statik
20.02.2013, 17:55
Я так понимаю, здесь просто будет N выводов на замыкание, идущих в девайс, воткнутный в USB, с обработкой драйвером в винде.
Всё верно?
kostya740
21.02.2013, 07:43
Слева на фотке кнопки (без платы ответной), хочу сделать под эти кнопки клаву. По вашей теме совсем не понял что и как.
Есть ли какой-нибудь мануальчик, или схема...
Если сами кнопочки там есть (микрики например), то вы сможете их подключить к контроллеру, а его подключить по средству USB в комп. Запустить программу и настроить комбинации в системе по своему желанию.
kostya740
21.02.2013, 07:45
Я так понимаю, здесь просто будет N выводов на замыкание, идущих в девайс, воткнутный в USB, с обработкой драйвером в винде.
Всё верно?
Да. но фишка в том, что по этому же кабелю вы сможете перенастраивать комбинации системных команд-клавиш. Это значит, что вы запускаете спец. программу, настраиваете и программа больше не нужна. Завтра вы сменили оболочку или решили сделать другие повадки на физических кнопках, запустили программу, перенастроили, и опять отложили ее в дальний угол. Таким образом доступ к самому девайсу вам не потребуется.
ну и естественно, оно работает без драйверов, т.к. является стандартной HID клавиатурой.
Если сами кнопочки там есть (микрики например), то вы сможете их подключить к контроллеру, а его подключить по средству USB в комп. Запустить программу и настроить комбинации в системе по своему желанию.
Физически кнопочки есть, контроллера нет :) В этом и вопрос был)
Sangreal
11.03.2014, 14:41
Заранее извиняюсь за поднятие старой темы - но как обстоят дела? Проект заглох?
kostya740
11.03.2014, 22:28
Проект не заглох. Есть тестовых 20 плат. Но они не прошли еще полевых испытаний. И не ясно, где и как продавать. До лета должно все рассосаться, и быть уже известно.
RhinoOne
14.03.2014, 15:11
Проект не заглох. Есть тестовых 20 плат. Но они не прошли еще полевых испытаний. И не ясно, где и как продавать. До лета должно все рассосаться, и быть уже известно.
Можно ли софтовую часть и исходники прошивки куда-нибудь выложить? имею мегу32, есть желание потестить
Я смотрю мой "одногородник" тоже что-то начудил в хорошем понимании...
У меня тоже все сначала было на mega8, потом переросло в mega168 и mega328, благо все они в одном корпусе на 32 ноги...
Ну а потом уже stm32f103... Делать - так по-большому :acute:
kostya740
14.03.2014, 17:55
у меня все прекрасно уместилось в мегу8. даже 1к осталось свободно.
kostya740
14.03.2014, 18:00
Можно ли софтовую часть и исходники прошивки куда-нибудь выложить? имею мегу32, есть желание потестить
Проект коммерческий.
Но будет урезанная версия софта и прошивки для повторения. Цена проекта будет очень низкой, так что врятли кому то захочется заниматься лично. Ну максимум есть смысл делать самому, если есть желание поднять скилы :tease:
RhinoOne
16.03.2014, 17:12
Я бы не отказался и от урезанной части, есть много задумок на мегу32 и хочется реализовать всё самому, но опыта маловато, по-этому и прошу исходники =)
kostya740
01.04.2016, 15:18
выложил схему, софт и прошивку. Пользуйтесь.
ребят а никто не пробывал врезать в idrive контроллер или как там его.. от клавиатуры? подпаяться к кнопкам джойстика и как бы все. Idrive USB готово. или есть какие нюансы?
А зачем его курочить, если можно к нему подключиться по шине CAN?
Работает на vBulletin® версия 3.8.4. Copyright ©2000-2024, Jelsoft Enterprises Ltd. Перевод: zCarot