Подробная инструкция по изготовлению сплит клавиатуры на основе ATmega32U4. Аналог Iris / Jiran своими руками

Моя самоделка

Подробная инструкция по изготовлению сплит клавиатуры на основе ATmega32U4. Аналог Iris / Jiran своими руками
Перед изготовленияем своей клавиатуры я наметил следующие цели:
1. Максимально возможный тактильный комфорт.
2. Добиться того, чтобы совершенно не было необходимости смотреть на клавиатуру при работе, чтобы она никоим образом не отвлекала внимание на себя, чтобы даже смотреть на нее было бессмысленно. Именно поэтому на моих колпачках нет надписей.
3. Клавиатура — это мой рабочий инструмент, сосредотачиваемся на ее функционале и удобстве. Внешний вид совершенно неважен. Кто не может жить без RGB подсветки и внешней броской красоты – нам с вами не по пути, эта статья совсем про другое. В этой статье я вас научу как недорого и просто сделать себе удобный и функциональный инструмент для работы.
4. Удобство перевозки. Сделать компактное и удобное для переноски устройство.
Получилось ли у меня этого добиться? Смотрите, в мой рюкзак помещается без проблем:
image
Предупреждение – 90 сжатых картинок: я постарался написать статью максимально «разжеванной» — понятной максимально широкому кругу лиц, в том числе — технически не подкованным и совершенно не разбирающимся в программировании. Поэтому я заранее извиняюсь, если у кого-то сложится впечатление, что в статье много воды или слишком много картинок.
Клавиатура с коротким HDMI кабелем:
image
Подучим термины для понимания дальнейшего текста. Ниже на фото – кнопка, переключатель, свитч. Свитч – англицизм, позаимствованное слово из иностранного языка.
image
На фото ниже — колпачок, кейкап и резиновые кольца для них:
image
Кому нужен исторический экскурс и почему мной была выбрана именно такая форма клавиатуры, загляните сюда:

Муки выбора раскладки

Итак, поехали. Мы хотим сделать сплит-клавиатуру, гуглим «Iris keyboard», выглядит она примерно так:
image
Можно было бы такую и купить, но на ней отсутствуют кнопки «Х» и «Ъ» и переучиваться на новое их расположение у меня нет никакого желания. Так клавиатура неплоха, но нам она не подходит. Наш соотечественник придумал удобный вариант– «jian keyboard», смотрим:
image
Но и он не удобен, получился концепт, годный лишь для работы в текстовых редакторах. На мой взгляд, он тут перестарался, устранив верхний ряд цифровых клавиш. Есть доработанный вариант – «jiran keyboard»:
image
За этой работать будет уже комфортнее, в отличие от предыдущей. Мне при работе в Word клавиши курсора, F1-F12, блок «Delete, PgDown и т.д.» вполне комфортно нажимать через Fn клавишу. Правой руке намного меньше приходится тянуться к мышке – это огромнейший плюс, который начинаешь понимать, только прочувствовав его. На этой основе можно начинать разработку своего варианта. Первый мой прототип выглядел вот так:
image
Могу сразу сказать – пять клавиш под большой палец – это много. Палец достает с трудом до четвертой кнопки, а до пятой приходится тянуться. Это я тогда пожадничал. И, забегая вперед, скажу – очень не хватало курсорных клавиш. На нынешней раскладке у меня под большими пальцами по 4 кнопки, расположенные по дуге. Мне – удобно:
image
Переходим по ссылке: keyboard-layout-editor и в вкладке Presets выбираем Ergodox. Кнопки можно удалять, добавлять, поворачивать и двигать по своему усмотрению. Потренируйтесь, там нет ничего сложного.
image
Когда освоитесь, переходите по этой ссылке на мой проект: ErgoRU
Тут вам нужны координаты кнопок по оси Y, точнее разница вертикальных рядов друг относительно друга. Но есть возможно важный именно для вас нюанс – у большинства мужчин безымянный палец длиннее указательного, а у женщин немного иначе.
Википедия: Пальцевый индекс
Какое это имеет значение? Возможно, вам придется подкорректировать расположение вертикальных рядов под свои индивидуальные особенности. Мне было проще, необходимости в корректировке не было:
image
Это может показаться вам малозначительным нюансом, но из таких вот маленьких деталей и складывается конструктор под названием «Моя идеальная клавиатура».
После многочисленных корректировок у меня получилось вот так:
image
У вас далеко не сразу, но постепенно выработается свой собственный вариант удобной раскладки. Я просто уверен, что эргономика клавиатуры не может быть универсальной, когда пальцы и тип выполняемой работы за клавиатурой у всех сильно отличаются.
Возможно, я приведу пример не самый удачный, но он показателен. Пилотам Формулы1 сиденья и спинки к ним ставят изготовленные по их слепку тела, а не так называемые «спортивные», выпускаемые на заводском конвейере. В самом деле, почему?
Почему я реализовал отдельным блоком клавиши курсора помимо тех, которые нажимаются через модификатор МО(2)? Я проектировал клавиатуру универсальной, на которой можно еще и поиграть. Попробуйте поиграть в «X3 terran conflict»/«X3 albion prelude» с курсорами через модификатор и вы взвоете. Переназначить кнопки можно, я даже делал четвертый слой именно под игру, но получалось не очень удобно. В этой игре практически вся клавиатура задействована, кто играл – тот знает.
Мы можем узнать получившееся количество кнопок:
image

Приступаем к покупкам

И вот теперь, зная количество нужных кнопок, пришло время выбирать и покупать комплектующие. Механические кнопки различаются между собой требуемой силой нажатия, громкостью и тактильными ощущениями. Вот статья про них:
МЕХАНИЧЕСКИЕ ПЕРЕКЛЮЧАТЕЛИ
А после прочтения я настоятельно рекомендую вам прошвырнуться по магазинам, где продаются клавиатуры с механическими переключателями и собственными пальцами ощутить разницу между синими, коричневыми и остальными свитчами. Меня полностью устроили коричневые Gateron, их я и купил. Но только не у наших барыг с наценкой 300%-500% и еще выше. На Алиэкспрессе есть все, нужно лишь хорошо постараться поискать.
Я не призываю покупать нужные нам комплектующие там, где брал я – вы можете брать, где вам удобнее. Но ссылками я поделюсь.
Переключатели Gateron на Али, которые купил я:
Gateron
Существуют следующие типы колпачков для кнопок:
Все, что нужно знать при выборе профиля кейкапов
image
Я пробовал разные, но остановился на самых низких DSA, на них мне удобнее всего! Помните, у вас может и скорее всего будет иначе. Помните? Идем в магазин и пробуем, пробуем. Это важный кирпичик удобства вашей клавиатуры. Брал тут, качество хорошее:
PBT DSA
Следующее, что нам нужно, ATmega32U4 5Вольт 16 МГц. Их много модификаций есть:
Atmega32U4
Мне же достаточно будет этого с головой:
Pro Micro ATmega32U4 5V 16 МГц
Диоды. Я не заморачивался с беготней по радиомагазинам, заказал тоже на Али:
100 шт 1N4148 DO-35
Далее идут недорогие и необязательные, но очень важные нюансы нашей будущей клавиатуры.
Смазка для переключателей – она уменьшает шумность и улучшает тактильные ощущения при печати в лучшую сторону. Коротко о том, как смазывать свитчи:

Я по наводке приобрел эту смазку, жалеть не пришлось:
Смазка
Резиновые колечки для колпачков.
image
Нужны для уменьшения шума от печати, брал белые 9х4х2.5, нареканий нет:
Резиновые колечки
Кабель Micro USB для подключения платы к компьютеру. Так-то у меня их полно, но нужен был именно угловой, с ним намного удобнее (смотри фото в начале статьи):
Кабель Micro USB

Клавиатуру я сделал разделенной на два блока. Эти блоки нужно было соединить проводами. Поначалу я соединил блоки шлейфом от компьютерного СD привода.
image
Временное решение, для постоянного использования не советую. Лучше сделать съемный соединительный кабель, проще будет в дальнейшем. Хорошо подошел кабель HDMI, у него 19 жил при нужных 12 (5 строк + 7 столбцов). Резать кабель мне очень не хотелось, и я приобрел разъемы для него:
разъем HDMI 19 Pin
Вопрос: можно ли использовать длинный кабель HDMI? Можно, и даже — нужно! Просто посмотрите на фото:
image
Клавиатура не сползает с подлокотников. Запястья рук лежат на подставках под ладони. Каждая подставка двумя магнитами держится за свой блок клавиатуры. Провод HDMI ногам не мешает совершенно. Ничего никуда не уползает, получилось просто круто.
Вам, возможно, пригодятся такие переходники:
HDMI кабель-переходник 270 180 90 градусов
image
Вы можете выбрать любой другой способ соединения, какой вам больше подойдет. Смотрите, как выкрутился один из пользователей Реддита, только учтите, что в этом кабеле всего 10 жил:
image
Это я давненько сфоткал. Тот пост уже вряд ли существует, так что только в таком качестве.
Сложим мои расходы, получилось ~38,5$:
image

Покупки будут ползти из Китая ориентировочно месяц. И у нас полно времени, чтобы сделать корпус нашей клавиатуры.

Делаем верхнюю панель и корпус клавиатуры

Возвращаемся к нашему онлайн-конструктору. Надо ввести данные, какой тип свитча мы используем:
image
И следующая картинка:
image
Сейчас нам понадобится вот эта вкладка:
image
Комбинацией Ctrl+A выделяем весь текст и копируем его в буфер обмена Ctrl+C. Открываем ссылку:
Plate & Case Builder
image
И получаем вот такое:
image
Не повезло, изображение расползлось. Не беда, поправим в Photoshop:
image
Отправляем печатать это на принтер. Измеряем линейкой размеры квадратов на бумаге – везде должны быть 14 мм. А расстояние между квадратными отверстиями должно быть не менее 5 мм, иначе колпачки будут задевать друг друга. У меня сохранились распечатки промежуточных результатов:
image
Это мы только что распечатали трафарет, с помощью которого будет удобно делать разметку для отверстий под клавиши. Далее вы должны выбрать материал верхней панели вашей будущей клавиатуры: алюминий, стеклотекстолит, оргстекло, акрил, поликарбонат… Материалов очень много всяких разных, я же выбрал оргстекло. Используйте материал толщиной не более 2 мм, иначе кнопки не будут держаться на пластине – защелки не смогут зацепиться.
image
Только вот прежде, чем приступать работать с вашей будущей панелью, очень вам советую примерить кнопки на куске картона. Так вы получите примерное представление об удобстве расположения кнопок вашей будущей клавиатуры.
image
Когда вы наконец-то решите, что выбрали вариант, который полностью вас устраивает, можно будет приступать к изготовлению верхней пластины клавиатуры. У меня это было вот так:
image
image
Разметку на оргстекло можно наносить как процарапывая чертилкой, так и просто рисуя ручкой – ее хватит. Далее я плавил отверстия паяльником, а доводил их до размера напильником. Можно поработать и дремелем. Не забывайте, посылкам ползти из Китая месяц. Торопиться некуда, поэтому я и не носился в поисках лазерной резки.
image

Это верхние пластины первого варианта, в которые вставляются кнопки. Нижние пластины точно такие же по размерам, только без отверстий под свитчи. Осталось только придумать способ крепления верхних пластин к нижним. Я реализовал крепление на стойках, как материнские платы в компьютерных корпусах. В нижних пластинах просверлил отверстия такого диаметра, чтобы в отверстия помещалась гайка М3.
image
И вклеиваем в эти отверстия наши гайки с помощью суперклея.
image
В гайки вкручиваем стойки.
image
Стойки я выбрал по высоте такие, чтобы впритык хватало высоты для свисающих с верхней пластины свитчей.
image
Чем меньше получится высота нашей клавиатуры, тем лучше для наших рук! Высота корпуса моей клавиатуры с резиновыми ножками менее 12мм:
image
Полностью высота составляет 25 мм:
image
В дальнейшем я планирую найти где-нибудь резину/резиновое уплотнение квадратного сечения и приклеить его по периметру нижней пластины, сделав таким образом стенку корпуса клавиатуры. Просто не успел еще.
Вариант 2 до обтягивания пленкой:
image
Далее совсем необязательная вещь – я обтянул пленкой верхнюю панель клавиатуры. Но в паре мелочей она все же помогла: бликов от настольной лампы больше нет и теперь не видно светящий красным светодиод на работающей ардуине.
image
Объяснять, как клеить пленку — не вижу необходимости. Все что требовалось от этой пленки – не отвлекать на себя внимание при работе. И эту задачу она отлично выполняет. Куплена была на Али года четыре назад.
image
Материал, который пошел на подставки под ладони. Как называется, не имею ни малейшего понятия. Вспененное что-то там. Обернул скотчем, а сверху наклеил пленку.
image
Под скотч в двух местах подложил небольшие металлические шайбы, а напротив них к корпусу клавиатуры приклеил выломанные из древнего жесткого диска неодимовые магниты.
image
Теперь подставки под ладони никуда не денутся от клавиатуры – магниты очень хорошо держат. И при необходимости убрать подставки совсем не сложно – притяжение магнитов перебороть вы точно сможете. Очень советую вам также с магнитами сделать, не пожалеете.

Переходим к изготовлению прошивки

Возвращаемся к онлайн-редактору, нам нужна вот эта вкладка:
image
Комбинацией Ctrl+A выделяем весь текст и копируем его в буфер обмена Ctrl+C. С помощью скопированного текста мы можем увидеть, как примерно будет выглядеть наша будущая клавиатура. Переходим по ссылке:
Keyboard Layout 3D Viewer
image
Можно повращать камеру мышкой и поиграться с зумом. В общем, разберетесь.
Следующий этап, открываем в новой вкладке браузера ссылку онлайн-конструктора нашей прошивки для ардуины:
Keyboard Firmware Builder
Вставляем скопированное, как на скриншоте:
image
Автоматически получится такая корявая и непригодная для дальнейшего использования разводка электрических проводов.
image
Надо помочь алгоритму сработать правильно, сам он справиться не в состоянии. Для этого возвращаемся в онлайн-конструктор и приводим нашу клавиатуру к виду:
image
Заново открываем вкладку Keyboard Firmware Builder и вставляем скопированное:
image
Результат отличный:
image
То, что нужно. Вы должны добиться подобной разводки и у себя. Далее переходим к вкладке PINS, в ней мы укажем, какими контактами ардуины будем пользоваться. Смотрите внимательно, если вы купили такую же плату, как у меня, то у вас в наличии будут только такие контакты как на рисунке ниже:
image
Исходя из того, что мы имеем, выставляем в столбцах ROWS и COLUMNS пины, которые есть в наличии. Ниже на скриншоте пример расстановки:
image
Необязательно расставлять пины в том же порядке, как на картинке выше. Делайте в порядке, удобном вам. Главное, не ошибитесь и не укажите пины, которые отсутствуют на плате ардуины.
Переходим к вкладке KEYMAP, в ней мы зададим поведение кнопок:
image
Частично конструктор присвоил значения кнопкам за нас, доделаем остальное. Тут очень интересно, можно столько всего напридумывать! Начнем с элементарного:
image
И следом жмем:
image
И кнопке присваивается значение «3». Далее аналогично присваиваем значения остальным кнопкам. Вот пример, как сделать правую или левую клавиши «Windows»:
image

Это все у нас была основная раскладка (слой ноль) по умолчанию, давайте теперь сделаем второй слой.
image
Как пользоваться этой МО(1)? Она работает аналогично клавише SHIFT. Только клавиатурой выдаваться будет то, что мы запрограммируем на слое 1. Начинаем наполнять слой1:
image
Сделаем клавишу DELETE:
image
По умолчанию эта кнопка работает, как BACKSPACE. Но теперь, если мы ее нажмем, удерживая нажатой МО(1), то кнопка будет работать как DELETE. Вот так все просто. Аналогично присваиваем значения остальным кнопкам. Причем необязательно всем. Если мы не присвоили кнопке значение на слое 1, то она будет давать значение слоя ноль (который по умолчанию). Давайте сделаем мультимедийные клавиши управления громкостью.
image
VOLD, VOLU – это регулировка громкости. Управление плеером, например Foobar2000: PLAY, STOP, PREV, NEXT. И это все – глобальные клавиши, которые будут управлять плеером даже если вы при этом будете работать в WORD либо играть в какую-то игру.
Далее будет волшебство, недоступное обычным клавиатурам. Вспомните, как часто вам приходилось убирать руку с клавиатуры к мышке, чтобы прокрутить (проскроллить) колесиком мышки документ в WORD или страничку в браузере. Часто, наверное? Открываем ссылку:
Mouse Keys
Сейчас мы научим клавиатуру вести себя как компьютерная мышь.
image
image
Смотрите, что я могу сделать одной левой рукой! Я могу двигать курсором мыши (если честно, этим почти не пользуюсь), могу нажимать левую и правую кнопки мыши (периодически клацаю правую), кручу колесо мыши (использую все время, даже привыкать не пришлось!) и управляю плеером Foobar2000 и громкостью. Ладонь при этом ни на миллиметр не смещается в сторону.
image
С этим, я думаю, всем должно быть все понятно. А давайте сделаем, чтобы комбинация Ctrl+Alt+Del нажималась одной кнопкой! Не то чтобы очень надо, но знать, как делается – полезно.
image
Следующая операция:
image
Снова модификатор:
image
Следующая операция:
image
Наконец-то уже сама кнопка:
image
Должно получиться вот так:
image
И подобных комбинаций можно придумать множество.

Давайте сделаем слой МО(2):
image
В слое МО(2) я у себя расставил клавиши F1 – F12, клавиши курсора и PgDn/ PgUp/ Home/ End. Insert, как и Caps Lock, я счел ненужной клавишей и не стал вводить ее у себя.
image
Таким образом, я могу с помощью этого слоя, вообще никак не перемещая правую ладонь, пользоваться клавишами курсора и блоком PgDn/ PgUp/ Home/ End. Уж поверьте, это удобно! После этого смотреть на обычные стандартные клавиатуры даже не хочется.
Все мы играем в компьютерные игры, одна из моих любимых – NFS Underground. Давайте создадим слой кнопок, предназначенный только для этой игры! Естественно, удерживать во время игры все время нажатой кнопку МО(3), чтобы рулить клавишами курсора — будет очень неудобно. Вместо него используем модификатор TG(3) — он аналогичен принципу работы клавиши Caps Lock. Нажали клавишу TG(3) и отпустили – клавиатура остается в режиме работы слоя TG(3). Нажали и отпустили эту клавишу еще раз – клавиатура вернется в режим работы слоя по умолчанию. Вот так все просто. Для примера давайте представим себе, что игра не позволяет изменять клавиши, а нам хочется настроить под себя поудобнее.
image
Я сделал себе вот так:
image
Для удобства я замылил на скриншоте неиспользуемые кнопки. На обеих половинках клавиатуры сделал клавиши курсора – на случай если рука затечет и захочется дать ей отдохнуть. Не забыл в этом слое реализовать клавишу TG(3) – чтобы можно было вернуться из этого слоя в слой по умолчанию. Сделал также в слое 3 клавишу МО(1) – для управления мультимедийными кнопками. Ну а остальное в принципе и так понятно. Очевидно, с таким слоем кнопок играть точно будет комфортнее.
Идем далее. Всего слоев можно сделать 15 штук. Мне сложно представить, как их можно все задействовать. И еще тяжелее представить, как их всех запомнить. Я сейчас использую только 4 слоя и пока их достаточно.
Я вам рассказал лишь про малую часть способов кастомизации прошивки. Но того, что рассказал – уже достаточно для вас, чтобы начали эффективнее работать с клавиатурой. Хотите «нафаршировать» свою клавиатуру больше – смотрите там:
Коды клавиш
Как сохранить свои наработки, чтобы в следующий раз не начинать все заново:
image
И вот теперь мы можем забрать готовую прошивку с этой вкладки:
image
Теперь нам нужно залить прошивку в нашу ардуину. Проще некуда. Переходим по ссылке:
QMK Toolbox
image
А теперь качаем последнюю версию программы:
image
Инсталлируем программу, на всякий случай перезагружаем компьютер и с потрясением смотрим как вовремя нашей Windows10 приспичило обновиться.
Сейчас вам нужно будет взять в руки паяльник и припаять двумя проводками кнопку к ардуине к контактам GND и RESET.
image
Подключаем кабелем micro usb к компьютеру нашу плату – на ней должен загореться светодиод. Запускаем программу QMK Toolbox. Выбираем файл прошивки *.hex, который мы недавно скачали.
image
Жмем на кнопку, которую мы перед этим подпаяли к ардуине, и ждем появления желтой строки на темном фоне программы. Как только она появилась, не тормозим и быстренько нажимаем на кнопку FLASH:
image
Если вы все же протормозили и появилась вторая желтая строка – кнопка FLASH не начнет прошивку платы. Начинайте заново: нажимаем припаянную кнопку и т.д.

Переходим к пайке деталей

Пришло время рассказать вам, как правильно спаять электронные компоненты.
Для начала нужно распаять диоды на кнопках. Вам необходимо будет выучить маркировку диодов. Тут все просто: сторона диода, промаркированная нарисованным черным кольцом – катод, другая – анод. Что это такое и зачем оно нужно вы должны были выучить в школе.
image
Смотрите, что из себя представляет левая часть клавиатуры:
image
А теперь посмотрите на фото ниже:
image
Верхний ряд клавиш ESCAPE,1,2,3,4,5 мы соединили диодами. Диоды мы спаяли друг с дружкой катодами, а сами диоды припаяли к контактам кнопок анодами. Точно так же мы поступаем со строкой кнопок TAB,Q,W,E,R,T. Это второй ряд кнопок сверху. Диоды спаиваем между собой катодами, в общем, точно так же, как и верхний ряд кнопок. Остальные ряды спаиваем диодами точно так же. Следом распаиваем проволочки как на фото ниже.
image
Я специально паял разноцветными проводками от кабеля витой пары, чтобы можно было легко разобраться. Внимательно посмотрите на правый край фото. Я соединил синей проволокой свободные контакты ВЕРТИКАЛЬНОГО РЯДА клавиш: ESCAPE,TAB,ALT,CTRL,TG(3). С остальными вертикальными рядами поступаем совершенно точно также.
Когда вы все это спаяете, можно будет переходить к подключению ардуины. Вспоминаем эту картинку:
image
И сравниваем ее с этой картинкой:
image

Проволоку, соединяющую вертикальный ряд клавиш ESCAPE,TAB,ALT,CTRL,TG(3) соединяем проводом к контакту ардуины С6. Проволоку, соединяющую вертикальный ряд клавиш 1,Q,A,Z, TG(4) соединяем проводом к контакту ардуины D7. Проволоку, соединяющую вертикальный ряд клавиш 2,W,S,X,LShift соединяем проводом к контакту ардуины E6. Далее действуем по аналогии. Переходим к строкам. Спаянные между собой катоды диодов строки ESCAPE,1,2,3,4,5 подключаем к контакту ардуины D3. Спаянные между собой катоды диодов строки TAB,Q,W,E,R,T подключаем к контакту ардуины D2. Катоды диодов строки Alt,A,S,D,F,G подключаем к контакту D1. И далее аналогично. Правая половина клавиатуры готовится аналогично левой.
image
Если б не клавиши курсора, фото ниже не было бы таким запутанным:
image
Но мы то уже знаем, что на самом деле все просто – строки кнопок соединяем диодами, а столбцы кнопок – проволочками по схеме перед этим фото. И как подключить этот блок клавиатуры, вы тоже уже должны понимать сами.
Спаянные между собой катоды диодов строки UP,6,7,8,9,0,] — подключаем к контакту ардуины D3. Спаянные между собой катоды диодов строки DOWN,Y,U,I,O,P,[ — подключаем к контакту ардуины D2. И так далее. Проволоку, соединяющую вертикальный ряд клавиш UP,DOWN,LEFT,RIGHT соединяем проводом к контакту ардуины B2. Проволоку, соединяющую вертикальный ряд клавиш 6,Y,H,N, МО(1) соединяем проводом к контакту ардуины B3. И снова далее по аналогии.
Когда соберете конструкцию, запустите на компьютере Блокнот и проверьте как работают кнопки. У меня ни с первого, ни со второго раза нормально работать клавиатура не хотела – я перепутывал провода, подпаивая их не на свои контакты ардуины. Было также, что я по неаккуратности коротил их между собой. Исправить несложно – берете мультиметр и прозваниваете провода, какой куда ведет. Просто откройте эти картинки на экране монитора перед собой и проверяйте куда на самом деле ведут провода.
image

Вот и все. Основываясь на этой статье, вы без проблем сможете изготовить для себя клавиатуру, заточенную под вас и удобную лично для вас. Такую клавиатуру, которую вы не сможете купить ни за какие деньги нигде и никогда.
P.S. Если вы решитесь сделать свою клавиатуру, не стесняйтесь — делитесь своими наработками! Мне всегда очень интересно посмотреть на новые идеи. Возможно, благодаря вам я смогу добавить к своей клавиатуре что-то новое и классное.

 

Источник

arduino, ATmega32U4, DIY, diy или сделай сам, dsa, ergonomic keyboard, Gateron, hdmi, keyboard, Micro-USB, pbt, split, клавиатура, эргономика

Читайте также