Раскладка на текущий момент:
` q w e r t y u i o p =
\ a s d f g h j k l ; '
[ z x c v b n m , . / ]
Русские буквы находятся на тех же клавишах, что и обычно. Расположение стандартное, только буква Х уехала влево вниз, слева от Я.
Ряд модификаторов (цветные) включает в себя как модифицирующие клавиши, так и обычные. Модифицирующие срабатывают при нажатии в комбинации, а при однократном нажатии — обычная.
Однократное:
Рыж Жлт Зел Роз Сир Сир Роз Зел Жлт Рыж
Spc Spc Esc Tab Del Tab AGr Bsp Ent Ent
Комбинация:
Lr1 Sft Ctl Alt Met Met AGr Ctl Sft Lr1
Второй слой, работает в комбинации с рыжими клавишами. Стрелок, на мой взгляд, их даже перебор. Два варианта, для фанатов Vim — справа (hjkl), и для фанатов WASD — слева (dxcv на самом деле).
1 2 3 4 5 6 7 8 9 0 -
↰ ↑ ↳ ⤒ ← ↓ ↑ →
← ↓ → ⤓
Трудозатраты
Скоро топик читается, да нескоро дело делается.
Если бы я изначально правильно спроектировал конструкцию, то в принципе на всё ушло бы часов 10. А так — два месяца на ожидание некоторых деталей, и ещё три месяца на сборку и доработку всего этого.
Финансы
Деталь Цена
Микроконтроллер Teensy 2.0 с ножками 780
Переключатели Cherry MX MX1A-E1JW (голубые) 1110
Колпачки на переключатели 900
Оргстекло 150
Нарезка оргстекла 350
Итого: 3290 руб.
Не стал включать такие мелочи, как припой, провода, шлейф, разьёмы и диоды. Последние мне достались чрезвычайно недорого, несмотря на дорогую доставку, но если размазать по общей сумме заказанного, то получается что-то около 25 копеек за штуку при магазинной цене в 6 руб.
Мне досталась бесплатно подставка под запястья, можно её купить примерно за 20 долларов.
Довольно много потратил на инструменты, но это мне ещё не раз пригодится. Некоторые недорогие из них (пинцет с жароустойчивыми пластиковыми рычажками, которые сразу поплавились при 200'C, лупа, через которую ничего не видно, кусачки, которые не очень кусают), были дешёвыми, но служили очень недолго.
Впечатления
Пока печатал на этой клавиатуре не так много. Наверняка найду что улучшить в раскладке. В целом — удобно, даже очень.
Предвижу комментарии типа «а как же xxxx клавиша?». В моей модификации tmk_keyboard задействовано всего два слоя. Можно добавить ещё хоть 30 штук, и запихнуть туда все возможные клавиши.
На комментарии типа «а как вы будете нажимать сочетания клавиш xxx+yyy+zzz?» могу ответить, что специально выбирал себе программное обеспечение, чтобы не мучить пальцы (Linux, Awesome, Vim, Chromium+Vimium, Zathura). Самое сложное сочетание из тех, которыми я пользуюсь это Ctrl+Meta+[1-9], совмещение нескольких виртуальных рабочих столов на текущий. Сейчас работает нажатием оранжевой, зелёной, сиреневой и клавишей цифры на верхнем ряду, не слишком удобно, но определённо придумаю, как попроще это сделать.
Усовершенствования, которые я хочу сделать в версии 2
Нашёл замечательный расширитель портов ввода-вывода NXP PCF8574AP в корпусе DIP. Можно межплатный шлейф заменить на тонюсенький четырёхжильный провод. Пока не понимаю, стоит ли связываться с I2C, по слухам протокол очень небыстр, и много времени в работе прошивки тратится именно на него. Как вариант — использовать регистры сдвига 74HC164 и 74HC165.
Есть сильное желание заменить Teensy на голый AVR с количеством вводов и выводов достаточным для одной половины клавиатуры, а вторую половину доверить PCF'ам. Есть ещё вариант сделать на базе микроконтроллера от Microchip, PIC18F25K50, он ещё дешевле, а помимо прочего ему не нужен внешний кварц для работы с USB.
Сделать печатную плату, чтобы не было этого навесного монтажа, желательно тонкую и гнущуюся. В идеале на неё уже напаять все компоненты, такие как контроллер, диоды, конденсатор, кнопку программирования.
Добавить трекпоинт на датчике Холла, желательно между клавишами HJNM, и три кнопки под мышь (возможно, использовать клавиатурные). Пока не понял, где рукам будет удобно их находить.
Попробовать прозрачные или красные (после вот этой заметки) переключатели Cherry MX.
Сделать корпус из фанеры 1.5мм вместо оргстекла. Не так красиво выглядит, но. Фанера легко поддаётся обработке, менее хрупка. При должной обработке достаточно долговечна и стойка к влажности. Её труднее сгибать, но при такой толщине должно быть не так уж и тяжело. Ко всему прочему можно сделать конструкцию из нескольких листов, сделав прорези и штыри, чтобы её можно было собирать-разбирать, по принципу лего. Есть уверенность, что толщина фанеры не гуляет по площади листа на +20% в отличии от оргстекла.
Сделать недорогую, регулируемую по положению и с креплением для обеих половин клавиатуры руку-манипулятор, крепящуюся на плоскую поверхность.
PS
И да, конечно, как я мог забыть!
Добавлено в 17:50 У меня всё, отсюда:
http://habrahabr.ru/post/177347/