PDA

Просмотр полной версии : [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).

Gorynch
15.12.2012, 17:08
Лучше строить сразу на 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. я тему создал для других, чтоб повторили девайс, а не чтоб задавать вопросы.

Девайс уже готов и проверен на коленке. сейчас пишу программу для конфигурирования.

ancc
16.12.2012, 21:31
рекомендую Teensy 2.0 http://pjrc.com/store/teensy.html
всего 16$
сразу есть аппаратное USB. Может работать как клава+мышка+джойстик+ком-порт одновременно.
В ардуине поддерживается, если доп. модуль установить.

Ну и паять почти ничего не надо. Я себе на ней все построил, мне очень понравилось из всего что я еще пробовал.

Gorynch
16.12.2012, 22:42
Ну извини, я же не знал, что в твоей теме нельзя задавать вопросы

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

Alex_St
16.12.2012, 23:28
Gorynch, А действительно, зачем мега16? Для этой цели меги 8 хватит с головой... А размеры чипа играют далеко не в пользу меги16.

Gorynch
17.12.2012, 00:04
Мне казалось, что я уже ответил на этот вопрос постом выше - для потенциальной возможности расширения функционала (всё равно захочется)
Размер - да мне кажется, что в данном случае не принципиально - не в кармане же носить

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

Sol_S
17.12.2012, 11:51
Круто. Всегда вызывало уважение к людям выкладывающим свои разработки в свободный доступ.
Жду с нетерпением завершения проекта. Как раз кучка AtMega8 в Dip и TQFP лежат, ждут своего часа.

Gorynch
17.12.2012, 12:42
можно ещё один вопрос?

а сочетание только из двух клавиш? из трех, четырех не будет?

kostya740
17.12.2012, 18:07
можно до шести, а нужно ли?

Gorynch
17.12.2012, 19:47
Есть вероятность, что из 16 комбинаций можно нарваться на хоткей или винды, или какого либо приложения

А почему 6? Вроде 8 служебных (shift, ctrl, alt, gui * лево и право) + одна простая

Alex_St
17.12.2012, 19:49
8 служебных + 6 простых одновременно. Или 1 мультимедийная.

Gorynch
17.12.2012, 21:44
8 служебных + 6 простых одновременно. Или 1 мультимедийная.
это простая клава может?

просто в VUSB это зависит от того, как описать устройство и как передавать данные. В самом простом случае (для USB клавы) - это 2 байта без управления лампочками локов. Т.е. получается одновременно можно передать нажатие до 8 служебных + 1 простая кнопка

Alex_St
17.12.2012, 21:50
А кто сказал, что тут самый простой случай? ;)

Gorynch
17.12.2012, 23:26
ваши ответы весьма информативны

Alex_St
18.12.2012, 01:06
Так выше ж точно написал...

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

BlkDem
08.01.2013, 14:30
Было бы не плохо, если бы проект был бы открытым.
Помимо большого респекта автору, можно было развивать тему в несколько потоков.

mendisabal
15.02.2013, 09:54
и как это планируется выглядеть в конце пути ?

kostya740
17.02.2013, 06:16
разработка идет медленнооооо.
Рефакторинг - переделана в матрицу кнопок. Теперь имеем 60 кнопок.
Работа энкодера в данный момент нестабильна. Не могу время найти, чтоб отдебажить.
В планах закончить через месяц.

LavTeam
20.02.2013, 16:37
Слева на фотке кнопки (без платы ответной), хочу сделать под эти кнопки клаву. По вашей теме совсем не понял что и как.
Есть ли какой-нибудь мануальчик, или схема...
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 клавиатурой.

LavTeam
21.02.2013, 09:55
Если сами кнопочки там есть (микрики например), то вы сможете их подключить к контроллеру, а его подключить по средству USB в комп. Запустить программу и настроить комбинации в системе по своему желанию.
Физически кнопочки есть, контроллера нет :) В этом и вопрос был)

Sangreal
11.03.2014, 14:41
Заранее извиняюсь за поднятие старой темы - но как обстоят дела? Проект заглох?

kostya740
11.03.2014, 22:28
Проект не заглох. Есть тестовых 20 плат. Но они не прошли еще полевых испытаний. И не ясно, где и как продавать. До лета должно все рассосаться, и быть уже известно.

RhinoOne
14.03.2014, 15:11
Проект не заглох. Есть тестовых 20 плат. Но они не прошли еще полевых испытаний. И не ясно, где и как продавать. До лета должно все рассосаться, и быть уже известно.

Можно ли софтовую часть и исходники прошивки куда-нибудь выложить? имею мегу32, есть желание потестить

YAM1966
14.03.2014, 16:21
Я смотрю мой "одногородник" тоже что-то начудил в хорошем понимании...
У меня тоже все сначала было на 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
выложил схему, софт и прошивку. Пользуйтесь.

vtyns
24.12.2016, 23:54
ребят а никто не пробывал врезать в idrive контроллер или как там его.. от клавиатуры? подпаяться к кнопкам джойстика и как бы все. Idrive USB готово. или есть какие нюансы?

Alex_St
25.12.2016, 11:20
А зачем его курочить, если можно к нему подключиться по шине CAN?