Как стать автором
Обновить

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

Время на прочтение 13 мин
Количество просмотров 48K
Всего голосов 79: ↑79 и ↓0 +79
Комментарии 75

Комментарии 75

Почему ни один производитель не делает подобного? Хорошую клавиатуру купить проблема.
Тогда бы вы задавались вопросом почему она стоит $1000

А почему она должна стоить $1000? Делать подобные клавиатуры не сложнее чем обычные в промышленных условиях. Стоить они должны столько же сколько стоят обычные механические клавиатуры. Другой вопрос, как потом это продать. Нужно ещё убедить людей, сломать их стереотипы и доказать, что вот эти два непонятных куска пластика со странно расположенными кнопками эргономичнее чем их родная "печатная машинка". :)

За 1000$ — это как телефоны Vertu. Дорого, стильно, модно, эксклюзивно.
"Два куска пластика" при желании можно купить и дешевле $100,
А эргономика у каждого своя. В нее нельзя поверить. Ее можно только почувствовать на практике.
Вот я никогда не приму "два куска пластика". Такой клавиатурой ведь совершенно невозможно пользоваться одной рукой. А иногда надо (другая рука в это время что-то держит, например, саму клавиатуру).

Там есть еще доводка под именно Вашу руку. Т.е. нечто вроде подгонки костюма у портного.

А где вы увидели ценник в 1000 долларов? За тысячу можно наверно что-то невероятное по качеству собрать.


Из сплитов самые дорогие и охуенные клавы, типа Ergodox EZ, Moonlander, etc, стоят в районе 300-350$. Цена во многом обусловлена небольшим размером партий, гарантией и поддержкой на несколько лет, и использованием этичного труда (а не низкооплачиваемых рабов в Азии), который недёшево стоит.


Если самому собирать, то можно лёгко уложиться в 100-180$ за конфетку, на плате. Платы стоят долларов 20, микроконтроллеры копейки, корпуса от 15 до 50-60 (в зависимости от охуенности), набор свитчей 20-25, набор кейкапов тоже в районе 20-25. Ещё можно добавить hotswap sockets за 5-10 долларов, чтобы свитчи можно было на горячую заменять без проблем. Можно сэкономить на цене, если самостоятельно изготовить простой корпус за копейки.

geher, semennikov, ppiskun


Да я не на тот комментарий ответил. Хабр весьма глючил тогда, и я, видимо, не заметил, что reply оказался под другим комментарием. Простите меня :)


Я отвечал вот на этот комментарий:
https://habr.com/ru/post/515246/#comment_21958434

Делает. Например, гуглите Ergodox или Moonlander, они уже собранные продаются, правда на плате, а не hand-wired. Очень роскошные клавы. Стоят по 350+ долларов.

Можно купить всякие наборы с платой готовой, корпусом, куда остается только припаять свитчи и диоды. Стоят такие наборы по 30-40-50 долларов/евро.
ZSA Moonlander и прочие ее родственники. Я так понимаю, они из подобных общественных проектов и выросли.
1. Я так и не понял, какой у вашей клавиатуры интерфейс? USB?
2. HDMI — кабели и разъемы для клавиатуры — это как экскаватор в детской песочнице. Я уже молчу о том, что они весьма габаритные, а HDMI — кабели сами по себе гнутся просто ужасно и не предназначены для того, чтобы их постоянно гнули.
3. А с этой клавиатурой работать-то хоть можно? А то я за 25 лет к обычной клавиатуре привык и она меня во всем устраивает. Главное — не покупать дешевое.
4. Разъясните попутно, зачем носить клавиатуру от PC в рюкзаке (!!!!!!!!!!!!!!???????????) Если уж так приспичило, есть ведь гибкие клавиатуры, их хоть в трубочку можно сворачивать…
4) Ну, я мышку с собой постоянно ношу, потому что к тачпадам за всю жизнь так и не смог привыкнуть. Носил бы и клавиатуру, пожалуй.
  1. Использована однокристалка ATmega32U4 со встроенным контроллером USB.
  2. Если посмотреть на хреновые HDMI кабели, то они помягче хороших, а в данном случае их электрические характеристики абсолютно не важны.
  3. -
  4. Если крепко подсесть на такую нестандартную раскладку, то скорее всего ее действительно придется носить с собой везде, где приходится работать за компьютером.

Я не автор, но зато статью прочитал, таких вопросов не возникло.
Клава — усб, hdmi — для соединения половинок, один из самых удобных в данном случае разъемов, кабели бывают и очень гибкие, работать с этой клавиатурой можно, носить с собой иногда очень полезно, потому что я вот ноут ношу и клавиатуру к нему иногда, из-за того, что на маке нет нет инсерта и прочих пейджапов, а нужно бывает.
А гибкую клавиатуру надо свернуть в трубочку и забить тому, кто ее придумал в попочку.

ЗЫ. У вас знаки препинания рассыпались там в комменте
Если уж так приспичило, есть ведь гибкие клавиатуры, их хоть в трубочку можно сворачивать…

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

Оргстекло, если есть возможность, лучше резать лазером. Такие детали, как в статье, любая контора, занимающаяся лазерной резкой, изготовит по вашему вектору за 10 минут и возьмет недорого (скорее всего).

По-моему, вы статью дольше писали, чем клаву делали, настолько все разжевано подробно и круто. БОльшое спасибо, буду себе тоже делать.
Я бы все же нанес на клавиши надписи, а то сложно будет привыкать тому, кто эту клавиатуру повторит
Помните? моя идеология — ни в коем случае не смотреть на клавиатуру.
Решение элементарное — на фото сверху справа:

image
Если вы будете делать так же — в чем проблема купить вместо прозрачных кейкапов, как у автора, любые другие и поставить их?
На том же Алиэкспрессе

К сожалению, для программистов всё печальнее. Например, в IntelliJ IDEA есть множество сочетаний клавиш Ctrl+Alt+… — насколько удобно их будет набирать? И клавиша Ins тоже активно используется — в том числе и в клавиатурных комбинациях.

В качестве безумной идеи — добавить под левый мизинец отдельную клавишу Ctrl+Alt.

P.S. А в Windоws есть комбинация Ctrl+Alt+Tab.

Вы упускаете главную мысль — это полностью программируемая клавиатура. Вы можете любые раскладки и расстановки клавиш сделать себе, настроить несколько разных слоев с разным расположением клавиш — что угодно вообще сделать. Например, завести слой где Ctrl+Alt будет прямо под большим пальцев, вместе с парочкой других распространённых префиксов.

Смазка для переключателей – она уменьшает шумность и улучшает тактильные ощущения при печати в лучшую сторону. Коротко о том, как смазывать свитчи:

Если вы решили пойти по пути улучшения тактильных характеристик, то почему вы выбрали обычные дешевые гатероны? Ведь есть множество вариантов, те же тактильные и бесшумные Aliaz или например тихая серия тех же gateron — gateron silent
p.s. спасибо за статью, было интересно
До этого где-то с месяц ходил везде изучал разницу между свитчами и кейкапами, достал всех конкретно. А тип я довольно въедливый. Потом: сижу дома у знакомого, клацаю его клавиатуры. Мой гуру, так сказать. Остановился на одной, на которой клик не громкий и тактильно в целом устраивал.
Он: — Нравится?
Я: — Вот эти практически без звука и дают слабый тактильный эффект щелчка.
Он: — Так нравится или нет?
Я: — Да.
Он: — Бери такие же и не морочь мне голову.
Так у него дома я 1 мая все детали и заказал со своего смартфона. Не я выбрал, за меня выбрали.
Вот хоть убейте, но я практически не чувствую разницы между Aliaz и Gateron Silent Brown, кроме веса. А так, конечно, silent-свитчи лучше, чем обычные + кольцо.

Спасибо вам огромное за такую подробную статью! Разожгли во мне желание сделать себе нечто подобное. Как разработчику ПО, мне бы очень хотелось иметь такой инструмент. Особенно впечатлила возможность легко и очень гибко менять назначение клавиш!

С такой сильной кастомизацией уже из дома без такой клавы не выйдешь :)
Отличная стая!
Тоже захотелось такое попробовать.
Сейчас пользуюсь 65% клавой с brown cherry свичами. После хорошего уже не хочется пользоваться обычным офисным ширпотребом. Это и клавы и мышки касается.

Чем больше эргономичных клавиатур тем лучше :)
Вставлю свои сумбурные пять копеек
1. Вместо решения с HDMI кабелем можно взять вторую ардуину (мы их промикрами в сообществе называем) и соединить их так, как обычно делают на сплит клавиатурах — понадобится всего 3 контакта и достаточно будет аудиокабеля. В документации QMK всё это есть. Благо стоят они копейки и не сильно дороже разъёмов hdmi. Дополнительный плюс — в случае чего можно будет просто подключить usb провод в промикру на другой половине и продолжать работать. Плюс актуален, ведь у этих контроллеров есть неприятная особенность — разъём держится на соплях и его легко можно оторвать неловким движением провода (чтобы снизить вероятность этого — используй провода с разъёмами на магнитах и держи стратегический запас контроллеров)
2. Если есть возможность — лучше провода припаивать не прямо к ножкам свитчей, а использовать сокеты от kailh (гуглить kailh hot-swap sockets). В результате получаем сплошные плюсы: паять проще (контактные площадки там больше), ножки у свитчей остаются чистыми, а также появляется возможность эти самые свитчи без пайки менять. Сокеты замечательно держатся на ножках за счёт силы трения — у меня больше одной клавиатуры так собрано и нареканий нет.

Сообщество можно найти вот тут, если что
Я был бы только рад увидеть нормальный русскоязычный гайд (англоязычных хватает) как сделать сплит на двух ардуинах. Вот бы кто-нибудь с отличным знанием языка сделал перевод. Но у такого решения, в отличие от моего, могут быть неожиданные подводные камни.
Так делаете просто две клавиатуры. Каждая половинка — самостоятельная клавиатура и подключается к компу отдельно. если не хочется занимать 2 порта USB в компе — берёте какой-нибудь дешёвый USB хаб, выбрасываете корпус и вставляете его в одну из половинок.

Так не будет работать переключение слоёв между половинками.

Согласен. Но их можно переключить на каждой клавиатуре. В конце концов, никто не переключает слои каждую минуту. А с двумя клавиатурами надёжность и гибкость решения недостижимы для того, что собрал автор.

Переключение слоёв крайне удобно для маленьких сплитов. У меня на Corne половина пунктуации, стрелки, цифры, F-клавиши и ещё много чего на слоях.
Иметь свои модификаторы слоёв на каждой половине неудобно.

можно в каждую половинку воткнуть nRF52 для связи друг с другом, но это заметно усложнит реализацию.

Это модификация проводка между клавиатурами, а не 2 отдельных клавиатур со своим подключением к компьютеру.
У меня походная Corne готовится как раз с модулями от Joric, к слову.

тут 2 варианта: или одна половинка ведомая, просто по радиоканалу, или они обе самостоятельные, но умеют синхронизироваться друг с другом.

Одновременно иметь соединение с компьютером и с другой половиной гораздо сложнее, я не уверен, что nRF52 так может.
Ну и смысла особого в этом нет, раз уж канал между половинами есть.

Я имел в виду, что каждая половинка — это отдельная клавиатура на атмеге, но с добавкой nRF52 для синхронизации друг с другом. Но это потребует серьёзной доработки прошивки.

Для чего тут атмега? https://github.com/joric/nrfmicro/wiki
Что вообще в схеме с синхронизацией между половинами должно делать второе подключение к компьютеру по проводу? Показывать в ОС вторую клавиатуру и ловить баги?

Это мои контроллеры. Нет там никакой атмеги и не было никогда (непонятно, зачем при чипе, который умеет хардварный USB, имеет в сто раз больше RAM и флеша и 64 мгц нужна атмега из 80-х годов).

Второго подключения тоже нет, только одно. Поддерживать один канал к компьютеру и свой внутренний канал между половинками (неважно проводной это канал или беспроводной) полностью забота такой сплит-клавиатуры. Как две клавиатуры их подключать нельзя, т.к. невозможно синхронизировать слои на двух разных логических клавиатурах без клиентского софта.

Поддерживать второй радиоканал и не жрать батарею при этом умеют все чипы (central+peripheral), nRF5x уж точно. Для этого можно использовать или bleuart как в QMK-nrf52, или свой собственный сервис, как в bluemicro. (В проводном режиме для коммуникации достаточно ОДНОГО провода для duplex serial, плюс питание.)

На этих чипах кстати кроме хардкорной сишечки можно гонять circuitpython и писать прошивку на питончике, что довольно прикольно, при правильном подходе вся «прошивка» помещается на страничку и даже вроде как-то работает github.com/joric/nrfmicro/wiki/Circuitpython

У вас очень "дружелюбное" сообщество, статью закидали ссаными тряпками и сходят пеной на всех кто с ней приходит.

А как сокеты закрепить в данном случае, когда нет платы?

Они без проблем держатся за счёт силы трения и соединяющих их проводов, ничего дополнительного не требуется.

Сколько одновременных нажатий клавиатура может зафиксировать? А сколько передать (особенности реализации usb hid)?
Не смешиваются одновременные нажатия в одном столбце, в одной строке, в квадрате 2х2 три нажатия соответствуют тому, что нажато?
Какая частота опроса в прошивке ~= задержки при вводе?
Клавиатура с QMK умеет в nkro, поэтому одновременно зафиксируется сколько угодно нажатий. При работе клавиш со слоями есть некоторые особенности, однако «обычные» клавиши фиксируются и передаются в любом количестве.
Пост который сподвигнет множество на создание своих клав! Браво!

Вопрос по существу — у меня есть bluepill (stm32f103) плата и для неё доступна такая же настройка слоёв и клавиш «на лету» в QMK Toolbox или нет?
BluePill и куча других контроллеров на ARM поддерживается в QMK через ChibiOS. Сейчас там всё красиво обернули, и работать не сложнее, чем с AVR, но с поддержкой сплитов есть определённые ограничения.
Вместо Blue Pill лучше использовать Black Pill (либо сверхдешёвые noname, либо от Robotdyn). Нет проблем с неправильным номиналом резисторов, и не попадались платы на клонах STM.
Спасибо за ответ.
P.S. Одноклавишный пример. Полнофункциональный пример из последних: Z150.
Для Blue Pill и других плат на STM32F103C8T6 см. подкаталог bluepill.
Не забудьте про резистор и про то, что на A11 и A12 висит USB.
Загрузчик удобно использовать STM32duino. Несколько видов HID-загрузчиков у меня не заработало почему-то.
Да я уже сделал(взял готовую) клавиатуру Robotron 1987 г.в. и всандалил туда bluepill с qmk на борту. На пикабу пост сделал… Всё работает, но ремап пока у меня не «на лету», а через прошивку. Утомляет. Хотелось бы более удобно для bluepill — залил прошивку и перемапил под себя.
К AVR можно приделать прошивку с поддержкой VIA. Там можно налету многие вещи делать, конфигурация сохраняется в EEPROM, которого у STM32F103C8T6 нет.
P.S. Меня перешивка STM не напрягает. Компилируется всё практически мгновенно, если это делать не в MSYS2, а в Linux, или в виртуалке с Linux. Шьётся с STM32duino тоже легко: никаких нажатий на reset и переключений джамперов, просто запускаю скрипт и тут же вставляю USB.
В своей раскладке в основном слое я сделал упор на максимальную совместимость со стандартной раскладкой (включая букву Ъ). Для минимизации перемещения пальцев отказался от цифрового ряда. В слое для цифровых клавиш (и им подобных) — упор на совместимость с NumPad. В слое знаков — расположение для наибольшей простоты запоминания. Есть еще слой базового редактирования (редактирование с использованием клавиш Shift, Ctrl, Alt. Слой расширенного редактирования — использование универсальных модификаторов (независимо от приложений) и макросы для выполнения команд с модификаторами. В эту раскладку заложено еще множество других идей.
www.keyboard-layout-editor.com/#/gists/853291256ec0f234fe6fb904c0697797
Скажите, автор, а схему электрическую принципиальную рисовать уже немодно, что ли?
Зачем долго объяснять какой диод куда припаивать, если проще всего это показать схемой?
Принципиальная схема для того и придумана, чтобы объяснить что с чем соединять, и справляется она с этой задачей куда лучше текстового описания.
Вы невнимательно изучили текст статьи, там есть такой абзац:
Предупреждение – 90 сжатых картинок: я постарался написать статью максимально «разжеванной» — понятной максимально широкому кругу лиц, в том числе — технически не подкованным и совершенно не разбирающимся в программировании.
Я всегда внимательно читаю тексты статей. И упрек был не в том, что картинок много, а в том, что одной недостает.
Не вижу никакой корреляции между программированием и выполнением электрического монтажа. Это совершенно непересекающиеся друг с другом виды деятельности.
При чем тут программирование, я не понял вообще. Нужно скачать программу и из неё прошить ардуину. Все. Где тут программирование?
А фраза насчет «максимально понятной технически не подкованным» содержит в себе лукавство. Совершенно технически не подкованный в этой сфере условный кочегар сельской котельной и не будет такие вещи делать. Повторять это будут как раз те, кто так или иначе «подкован».
Я понимаю, что меня сейчас заминусят, но я это скажу. Выросло поколение «разработчиков», которые умеют лишь составить что-то из готовых «кирпичиков».
В комментах был вопрос про вторую ардуину. Тут не нужна вторая ардуина. Тут достаточно примитивной ATtiny2313-20PU в DIP-корпусе и кусочка фольгированного текстолита на котором от силы за полтора часа можно дремелем вырезать дорожки платы, под шаг 2,54 это не по силам только подслеповатому алкоголику с трясущимися руками.
Соединить «ведомую» часть клавиатуры с «ведущей» тремя проводами — питание, земля и TXD в сторону ведущей части.
Для задачи опроса кнопок хватит скорости передачи 1200 бит/с, на такой скорости можно и кварц не ставить, внутреннего генератора достаточно.
А для «ведущего» контроллера написать свою прошивку для такой элементарной задачи, как опрос матрицы кнопок и отправки пакета в компьютер можно за неделю совершенно не напрягаясь. В ней же и предусмотреть получение данных от второго контроллера. И выложить в статье готовую прошивку для «технически неподкованных».
Выросло поколение «разработчиков»

На неправильное поколение ещё Сократ жаловался 2,5 тысячелетия назад. Совсем не обязательно всё сводить к двум категориям: или ты глубоко погружаешься в предмет и через несколько лет становишься настоящим разработчиком, или у тебя вообще не может быть потребности собрать эту железку.

Цель статьи, насколько я могу судить, заключается в том, чтобы дать возможность дилетанту решить вполне определённую задачу — сделать клавиатуру под себя. Точка. Не изучить досконально в процессе цифровую схемотехнику и программирование микроконтроллеров, а сделать клавиатуру и начать её пользоваться.

Именно для этого предназначены готовые блоки. Зачем нужен онлайн-генератор плейтов, если любой настоящий разработчик напишет соответствующий скрипт для своего CAD за пару часов? Зачем нужен онлайн-генератор прошивок, если QMK можно собрать локально? Зачем вообще нужен QMK, если можно «написать свою прошивку для такой элементарной задачи, как опрос матрицы кнопок и отправки пакета в компьютер можно за неделю совершенно не напрягаясь»? Люди, толком не умеющие готовить, пользуются рецептами для мультиварок. Люди, не умеющие пользоваться ручным фрезером, собирают мебель из Икеи.
А что делать людям имеющим полнофункциональный CNC фрезер? В ИКЕА идти далеко… :-))
«Дать возможность дилетанту решить вполне определенную задачу». Вы кого под «дилетантом» понимаете? Автора статьи или потенциального пользователя, которому просто нужна клавиатура? Если последнего, то разве я требую от него знания цифровой схемотехники? Повторюсь — чем для новичка будут отличаться процессы:
1. Установить программу и прошить из-под неё ардуину.
2. Установить среду разработки ардуино и из-под неё прошить предоставленный автором скетч.
По-моему, ни один из них не требует никакого знания. Кабель HDMI стоит примерно столько же, сколько и вторая ардуина, а удобство подключения тонким гибким кабелем вместо жесткого HDMI очевидно.
Вы кого под «дилетантом» понимаете?

Всех перечисленных и себя в первую очередь. Например, у меня весьма приблизительные представления об архитектуре ARM и о работе ChibiOS. Я не разработчик железа и не программист. Прикрутить к ChibiOS поддержку нового устройства или написать с нуля собственную клавиатурную прошивку — для меня задача не то чтобы непосильная, но я просто не вижу необходимости во всё это погружаться, когда настоящие разработчики для таких дилетантов, как я, всё красиво обернули и задокументировали.
Я могу себе представить, что для кого-нибудь другого, находящегося на начальном этапе, столь же тяжело и, возможно, вовсе не нужно разбираться с git, msys и C — нужно быстро через GUI удалённо сгенерировать прошивку под произвольную клавиатурную матрицу и собственную логическую раскладку. Появится необходимость (например, нужно будет сделать правильный сплит или наворотить функционал, недоступный через веб-генератор) копнуть глубже — дилетант соберет QMK из исходников.
Установить среду разработки ардуино и из-под неё прошить предоставленный автором скетч

Зачем автору изобретать велосипед и писать собственную клавиатурную прошивку в рамках задачи «дилетант для дилетантов о сборке собственной клавиатуры», когда есть QMK? Это же не «дилетант для дилетантов об основах программирования МК», а реализовать в одиночку хотя бы малую часть функционала (см. Software Features в документации) будет очень сложно.

Кабель HDMI стоит примерно столько же, сколько и вторая ардуина, а удобство подключения тонким гибким кабелем вместо жесткого HDMI очевидно.

Да кто ж спорит-то. Тут просто дело в том, что веб-генератор не поддерживает такие сплиты или в том, что в самом QMK поддержку сплитов только недавно оформили по-человечески, ещё год назад там сложночитаемый для новичка лес из костылей был.
настоящие разработчики для таких дилетантов, как я, всё красиво обернули и задокументировали
Если это действительно «настоящие разработчики», то почему бы им было не избавиться от развязывающих диодов на каждую кнопку? Да, я помню, что ATmega не имеет необходимого для этого режима выхода с открытым стоком. Но во первых на ATmega свет клином не сошелся, а во вторых это вполне обходится и на ATmega, если для сканирования переключать не состояние вывода, а его режим.

А расскажите, как можно избавиться от диодов и не потерять корректную регистрацию нескольких одновременно нажатых клавиш?

Если Вы хотите корректно регистрировать вообще любую нажатую комбинацию — то никак, тут Вы правы. Но ведь отнюдь не все клавиши являются клавишами-модификаторами.

А вообще Ваш вопрос поначалу мне показался тривиальным, но при попытке сформулировать решение поставил в тупик, посыпаю голову пеплом.

Одновременно можно нажимать не только модификатор и букву. Люди ещё играют на компьютерах, например.


Вот именно поэтому все ставят по диоду на свитч и не придумывают себе сложностей.

Люди, не умеющие пользоваться ручным фрезером, собирают мебель из Икеи.
А ещё есть люди, которые умеют пользоватся фрезером. Но не имеют места для фрезера и стола.
Интересно, во сколько вы бы оценили в деньгах
«написать свою прошивку «ведущего» контроллера (+ получение данных от второго) для такой элементарной задачи, как опрос матрицы кнопок и отправки пакета в компьютер»
?
Уважаемый, возник такой вопрос:
А где можно найти трекпоинты на подобие тех что есть в среии ноутов thinkpad?
Просто хочется встроить один такой в свою клаву, посередине, и без него считаю делать клаву под себя нецелесообразно.
Увидел 3д модельки, красивые, да.
А может вы знаете конкретно pcb модули трекпоинтов? Буду благодарен.
Они там внизу указаны: тут
Мне лично больше по душе такой вариант: trackball но цена на него совсем не бюджетная, а похоже что-то другое не поддерживается прошивкой
Я понимаю что-то вроде этого?
image
Вот честно, самый сложный момент для меня было понять, что и куда вы там припаивали.
Соглашусь с человеком, что именно ВОТ такой картинки и не хватает. ¯\_(ツ)_/¯
Не мануал а МАНУАЛИЩЕ! (да, знаю, капслок!)
Спасибо огромное!
Собираю сейчас свою клавиатуру, и Ваша статья очень помогла прояснить некоторые моменты.
Мне радостно было прочитать Ваш комментарий. Хочу попросить, когда закончите, поделитесь фотками клавиатуры и слоями раскладок. Думаю, не одному мне будет интересно на это взглянуть.
Благодаря тому, что не было Вашей статьи, и я не знал как можно технично обращаться с Layout Editor'ом и Firmware Builder'ом, пришлось лезть «под капот» QMK, и потихоньку разбираться тем, как оно там устроено.

Даже накатал небольшую заметку на эту тему.
В формате ч2ч (чайник для чайника), про понятия, которыми эта прошивка оперирует.

Сейчас передо мной встал вопрос русификации прошивки.
И т.к. не хочу использовать QWERTY, а взять что-то более связанное с частотностью в английском языке.
А это вносит некоторые коррективы, с которыми надо разобраться.

Не счёт публикации проделанной работы на хабре — вопрос, интересен ли будет очередной сплит с некоторыми нюансами?
А tg-сообществе klava-org — да, опубликуюсь конечно.

Если же сделаю backtype (есть такой проект), то — да. Но для него пока не находится подходящих «свичей».
Даже накатал небольшую заметку на эту тему

Неплохо, но можно было бы проще. С привязкой к QMK терминология выглядит так:
  1. Matrix — матрица клавиш, ряды и колонки. На неиспользуемые позиции в матрице вставляем KC_NO.
  2. Layout — физическая раскладка. Определяет, где физически на клавиатуре расположены клавиши из матрицы. По физической раскладке мы можем узнать, например, что клавиши в верхнем левом углу подключена к 3-му ряду и 6-й колонке.
  3. Keymap — логическая раскладка. Описывает, какие сканкоды выдают клавиши из физической раскладки.
Зарегистрируйтесь на Хабре , чтобы оставить комментарий

Публикации

Истории