Pull to refresh

Comments 16

Прикольная штука получилась. Когда-то делал отдалённо похожее, но на Pico. А причина проста - самый дешёвый клон Pico, что у меня был, стоил примерно столько же, сколько МК отдельно, а плату разводить было немного лениво.

Один день я пролистывал ленту новостей и наткнулся на кейкап Hornet из Hollow Knight и звезды сошлись, теперь я понимал зачем мне макропад — коллекционировать кейкапы.

Кстати, а насколько удобно пользоваться с такими насадками? Нет боязни при нажатии что-то ненароком отломать?

Кстати, а насколько удобно пользоваться с такими насадками? Нет боязни при нажатии что-то ненароком отломать?

Если честно, то не совсем удобно, т.к. нажать разово нормально, а вот печатать уже я бы не стал. Но в целом сломать не боязно, кроме кейкапа с тонькими рожками (кейкап полого рыцаря, у него рожки толщиной 1-2 мм.), они хоть и не сломаются, но боязно. Например, по началу думал, что кейкап хорнет будет хрупким, но оказалось, что все хорошо, там детали не хрупкие и не маленькие.

Когда-то делал отдалённо похожее, но на Pico

О, интересно, почитаю!

(кейкап полого рыцаря, у него рожки толщиной 1-2 мм.)

"рыцарь полорогий"™

Спасибо, годный DIY! Свитчи для клавиш, насколько я понял, стандартные 3-пиновые использовали? Я по мере вовлечения в мир механических клавиатур начал обрастать разными свитчами, и вот уже заказал про запас на Али контактные площадки (Kailh hot-swappable PCB Socket CPG151101S11), чтоб не паять свитчи и можно было их легко менять.

Да, они, правда там только 2 металических пина, но в сумме 3.

Интересно, про контактные площадки, крепко ли они держат клавишу. Это конечно не проблема, но провода я тоже не люблю зачищать и паять)

Ага, третьим пином пластиковый прилив по центру считают, похоже. Да, стандартный MX-свитч, вижу синий шток — предполагаю, что с кликом значит он.

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

делал макропад и из numpad клавиатур и просто отдельный макропад покупал 12кнопок / 4 энкодера, но как то не прижилось. а вот мышки с 12ью кнопками с боку - имба. уже не представляю жизнь без таких. энкодер в основной клавиатуре тоже удобно и обычно достаточно.
AutoHotKey также использую, даже одно время делал какие то сложные комбинации на нумпаде основной клавиатуре но тоже не приживается, не удобно контролировать постоянно состояние numpad (цифры/стрелки).

Я бы сделал DIY мышку со множеством кнопок, но не представляю как это сделать, там вроде какие-то механические детали, чтобы определять движения с помощью лазера. Только если взять готовую мышку и разобрать её на части. Знаю, что есть наборы, чтобы распечатать корпус на 3д принтере для мышки, а потом туда вставить плату и детали из набора, но это не совсем то.

Я хочу клавиатуру из двух кнопок. Но так чтобы я мог быстро программировать код клавиши.

Из того, что я успел посмотреть, то и на Raspberry Pi Pico и на других микроконтроллерах для того, чтобы изменить код клавиши нужно залить новую прошивку. Возможно, это можно сделать и по-другому, но я этого не знаю, может кто поправит. Вроде и QMK это тоже про залить прошивку с новыми значениями клавиш.

Обычно, т.к. у МК будет поддержка USB, то залить новую прошивку не проблема.

Я попытался коротко и просто объяснить проблему матричных клавиатур и не стал углубляться, потому что материала очень много и думаю есть какая-нибудь статья даже на Хабре

Туть https://habr.com/ru/articles/394585/ достаточно подробно

Спасибо, что описали опыт использования rv003usb. Хоть для USB миллиард решений, и конкретно для клавомышей даже существуют модули CH9329, это решение достойное.

В первой часты вы жаловались, что rv003usb не работает через USB-изолятор. На самом деле через изолятор на ADUM3160 из коробки не работают никакие устройства USB 1.0. Этот изолятор настраивается на режим 1.0 или 1.1 аппаратно, пайкой перемычки.

Спасибо, что подсказали с изолятором, никогда бы не догадался.

Китайцы это не пишут, а в описании микросхемы режимы работы есть. Я не пробовал, но вроде существуют вот такие варианты

с переключателем

Без перепайки перемычек работает связка хост-изолятор-хаб-клавиатура. Или уже скоростные изоляторы USB 2.0 на основе или CH318 или ADuM3165/66.

В конечном итоге, как всегда, мне понравилась идея делать модульно и все устройство разбил на части: плата контроллера (MacroPad Controller), плата с 3-мя энкодерами (Encoders Module), две платы со светодиодом (Led Module) и одна плата с разъемом usb (куплена на Aliexpress).

Модульная архитектура интересна еще тем, что модули заменяемые, если кто-то решит делать такое же устройство, например, на другом микроконтроллере, то может заменить только одну плату.

Как раз, взять rpi-pico или любую другую плату с USB и достаточным количеством контактов и подпаяться проводами - гораздо лучшая затея.
Потому как это "прототип", и даже если вы захотите сделать еще одно устройство, то, наверняка, изменений будет достаточно много, что исходные платы тоже придется переделывать.

Ну и там можно 15 кнопок + 3 энкодера (с кнопками) безо всяких матричных опросов и диодов.

А если уже готовый "продукт" делать, то всяко лучше - одна плата и стандартные разхемы для свитчей.

  • эта картинка (как и большинство в гугле по запросу энкодер) очень далека от действительности, если вы используете распространенные дешевые энкодеры с Али.
    Ибо в реальности, сигналы получаются сдвинуты не на 90, а на единицы градусов. И это без учета дребезга. Отсюда как пропуски шагов, так и "вращение" в произвольную сторону.

Ну и если так хочется разобраться более детально, как работает USB, Endpoints, HID-Descriptors, то AVR + V-USB все же интереснее/нагляднее.

А если говорить про практичность, то лучше смотреть в сторону nrf52 - помимо USB можно использовать BLE и батарейное питание. Или же zigbee/matter использовать все то же устройство для управления умным домом.

С одной стороны вы говорите правильные вещи, с другой на многое уже дал ответ в статье. Например, делать на Raspberry Pi Pico мне не хотелось, больше из-за того, что мне интереснее более детально разобраться в CH32V003, т.к. чаще его использую. Поэтому и на AVR слабо поглядываю, но в то же время мне AVR нравится, поэтому иногда и там что-то делаю охотно.

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

И вы как-то странно написали по поводу продукта, т.к. в целом эта клавиатура полноценный продукт. Сделанная по фабричным технологиям, т.е. я могу сделать еще и еще такую же без проблем, они будут одинаковые. (Или заказать, файлы тоже на руках.) Здесь вопрос в целосообразности, цене и качестве. Но даже при этом, от этой клавиатуры до полноценного продукта не так далеко. Но ничего из этого не было моей целью, и это отразил в статье, потому что по сути это DIY клавиатура.

А с nrf52 и BLE соглашусь, эту технологию я еще всерьез не пробовал и хотел. Например, когда делал брелок с светодиодной матрицей, очень хотел добавить туда BLE, но оно не влезало.

Sign up to leave a comment.

Information

Website
timeweb.cloud
Registered
Founded
Employees
201–500 employees
Location
Россия
Representative
Timeweb Cloud