Самодельная механическая клавиатура, например моя, состоит из идей разных людей, описанных ими в статьях на Хабре и не только. Одна из таких идей оказалась абсолютно неожиданной, как гром среди ясного неба.
“Можешь сделать клавиатуру, такую какую захочешь, и она будет работать"
Дальше мысли, уточняющие углубляющие и расширяющие предыдущую. На эти мысли наводят статьи отцов-клавиатуростроителей.
“Клавиатура может быть меньше, а уметь больше”
Клавиатура - кайф. Первая, собранная лично. Обошлась тысячи в 3 рублей. Некоторые идеи по раскладке и слоям использую до сих пор. Когда-то сделал детальную инструкцию полного цикла с файлами, моделями, явками, паролями.
"Клавиатура может может состоять из двух половин. Такие удобнее в эксплуатации.”
В статье автора не только нюансы по проектированию, сборке и доводке, но и забойные комментарии, вагон увлекательного чтения.
Так же у автора есть вдохновляющая подборка того, что может быть названо клавиатурой (актуальная на 2014 год).
“Можно взять готовое с микросхемами и поменять ему форму."
Из статьи Дениса Лещева по сборке взял важную мысль, что можно взять готовое с микросхемами и транзисторами, поменять ему форму. Автор возводит эту идею в "абсолют" и описывает в статье куда это его привело. Жёсткий техноэкшн.
“Для самодельных клавиатур есть разные прошивки. У разных прошивок разные возможности и размер.”
Для меня переход на прошивку QMK состоялся благодаря инструкции Сергея, в которой он прям по камешкам и полочкам все расписал.
Так же есть интересная русскоязычная статья о возможностях прошивки QMK.
Сервис Keyboard Firmware Builder немного "подустал" в части использования сложных составных кодов клавиш.
Сервис Keyboard Layout Editor прекрасен. Однако заморочки с расположением клавиш вот-прям-как-на-твоей-клавиатуре кажутся избыточными. Сергей в своей инструкции тоже акцентирует внимание на этом моменте. Поэтому для транзита из KLE в KFB приводит клавиатуру к прямоугольному упрощенному виду. Отличный приём.
"У самодельных клавиатур бывают разные замороченные формы”
Классика.
Некоторые решения в предлагаемой технологии сборки кажутся переусложненными/спорными/дорогими, например медная фольга и куски текстолита на красной половинке. Однако навесной монтаж на серой половинке простой и аккуратный.
Также стоит обратить внимание, что исходные файлы моделей корпусов требуют доработки в части размещения как платы, так гнезд под переходники для шлейфов соединения половинок. Когда собирал себе такую, пришлось дорабатывать уже напечатанный корпус.
Туда же Limitium' dactyl manuform.
"К клавиатуре можно прикрутить стик от геймпада, трекболл и даже 3D-манипулятор. "
Получится мышеклава... клавотрек ... клавомышь... джойсти_клаво_треко_мышь
В конструкцию клавиатуры действительно добавляют много чего интересного.
Выглядит конечно аппетитно. От подобных проектов отпугивает ценник в 30 у.е. на оптический сенсор (PMW3389 Motion Sensor) для шара, его сложная доставка, да и сам шар по видимому от трекбола Logitech MX Ergo Graphite, который доступным тоже не назовешь.
Так же есть весьма занимательный youtube-проект от Александра Смирнова @Onefabis, в котором он раскрывает множество интересных мыслей и нюансов. Шар видимо от трекбола Logitech Marble.
Ко всему прочему Александр в одном из видео обозначил проблему некоторого подклинивания шарика в самодельном исполнении подшарового гнезда. Как понял, он решил/решает эту проблему увеличением как жёсткости гнезда, так и количества точек контакта с шариком.
Так же привожу несколько весьма интересных проектов:
Благодарю энтузиастов за то, что поделились своими соображениями и опытом тогда.
Теперь мне очередь делится наработками и мыслями по теме клавиатуростроения в виде то ли туториала, то ли дайджеста. Поехали.
Чтобы собрать себе самодельную клавиатуру с трекболом понадобятся:
корпус;
Проектов самодельных клавиатур в интернете великое множество. Подбираем самый аппетитный вариант или скачиваем модель.
Можно найти покупные варианты корпусов, kit-наборы с кнопками и крышками, но это может быть значительно дороже чем просто 3D-печать понравившегося корпуса.
Из рекомендаций - специально не покупайте под эту задачу 3D-принтер... а то начнется... и закончится только когда уже и все моды поставишь и klipper накатишь. Поэтому 3D-печать понравившегося корпуса проще заказать с помощью сайта с объявлениями.
кнопки = свитчи (switch) + кепки (keycaps);
Детальный материал о кнопках, колпачках и клавиатурах, в которых их можно встретить.
Доступный вариант: идём на сайт с объявлениями, в поисковой строке вбиваем "cherry mx' с сортировкой по стоимости. Когда клавиатура-донор за 500-3000р приедет, разбираем и распаиваем её на свитчи и кепки. Вопрос с кнопками решен. Для распайки может быть удобным такой наборс демонтажными иглами для выпаивания. Делаю без ссылок на магазины, потому что приворот поиск по фотографии надежнее.
Кейкапы клеим на кусок скотча малярного. А свитчи например можно втыкать в готовый корпус.
Любая клавиатура это матрица и строк и столбцов.
для строк - диоды 1N4148;
Немного теории от Владимира Романовича @ibnteo
Как подключить много клавиш к микроконтроллеру с небольшим количеством портов ввода-вывода платы микроконтроллера?
Нужно распределить клавиши по рядам и колонкам, сформировав матрицу. Подавая напряжение на колонку A, и сняв это напряжение с рядов 2 и 3, можно понять, что сейчас клавиши на пересечении этих рядов и этой колонки находятся в нажатом состоянии. Напряжение подаётся на колонки поочерёдно.
Таким образом, до 72 точек пересечения (свитчей) можно получить, сформировав сетку 6x12=72, то есть 6 входов (строк) и 12 выходов (столбцов).
Однако, у этого метода есть один серьёзный недостаток, проявляющийся в блокировании и пропадании нажатий.
Свитчи будем соединять в строки и столбцы. Диодами свитчи соединяем в строки.
Есть варианты с гибкими платами, с hotswap-модулями горячей замены свитчей, с подсветкой свитчей, экранчиками вместо кейкапов и т.д. и т.п. Отличный пример нанотехнологий - денег уходит все больше, а результатов все меньше.
Доступный, простой и скоростной вариант - навесной монтаж. Диод располагаем черной риской (катодом) от ножки свитча к строке.
для столбцов - провод обмоточный;
Проводом соединяем свитчи в столбцы. Удобным оказался обмоточный эмалированный медный провод 0,2мм. Так и гуглить.
Зажигалкой прожигаем конец провода. Накручиваем лишенный изоляции участок провода на ножку свитча, припаиваем. Тянем провод до ножки следующего свитча в столбце, хватаемся пинцетом за провод около ножки, ограничивая тем самым минимальную точку до которой может сгореть изолирующая эмаль, прожигаем небольшой участок провода около места хвата пинцета. Прожжённую оголенную часть провода накручиваем на ножку свитча пока оголенный участок не закончится. Повторяем.
Монтаж ведем единым проводом, зигзагом, с большими зелеными петлями запаса на последние 3 столбца. Далее хорошо бы прозвонить. Если там где надо звенит, а где не надо не звенит, то можно разделить полученный зигзаг в обозначенных крестиками точках. Полученные в результате зеленые хвосты пойдут до контактных точек платы с микроконтроллером либо платы с переходником.
Припаиваемся к строкам и также соединяемся с платой.
Повторить для другой половины.
переходники и кабель соединения половинок;
В коммерческих вариантах и kit-наборах сплит клавиатур часто предлагается использование 2-х макетных плат с микроконтроллерами, 2-х разъемов PJ-320A для синхронизирующего половинки кабеля, специальным витым бронированным ядерновзрывостойким лабороторномедным аудиофилокабелемь, экранчиками, энкодерами и прочими свистелками за которые можно хорошо накрутить. Все понимаю, бизнес.
Тут мне ближе реализация Сергея Дронова с единственной макетной платой, 2-мя hdmi-разъемами на плате и соединяющих половинки в целое кабеля hdmi-hdmi. Просто, надежно и главное без лишних сложностей с прошивками/мастер-половинками и т.д.
У себя делал на "огромных платах" с распаянными HDMI-разъемами, но сейчас доступны и аккуратные маленькие разъемчики. Есть и type-c интересные варианты.
макетная плата с микроконтроллером (МПМ);
На МПМ обитает микроконтроллер, на микроконтроллере будет обитать прошивка.
Полный список поддерживаемых микроконтроллеров из официальной документации QMK.
Детальный список готовых к покупке МПМ. Наиболее ходовые:
Pro-Micro на МК Atmega32U4 (минимально достаточный доступный вариант);
Raspberry Pi Pico на MK PR2040 (много выводов на плате, с прицелом на дополнительные возможности);
Nice!Nano на МК NRF52840 (беспроводной вариант).
Когда МПМ в наличии, определяемся в какой половинке будет стоять МПМ+переходник, а в какой просто переходник. Далее припаиваем хвосты запаса от строк и столбцов к выводам МПМ.
Здесь важно понять принцип. Порядок к каким контактам МПМ что припаивать - непринципиален. Принципиально записать, например в удобный специальный файлик, куда и что припаяно, потом пригодится на этапе конфигурирования пинов в прошивке. Однако мало смысла припаиваться к контактам обозначенным GND, RAW, RESET, VCC.
C паяльником закончили упражнение.
трекбол Logitech M570;
Здесь в жизни инструкции и во всей статье засада и разочарование, потому что появились значительно более доступные трекболы Jelly Comb MT50, ProtoArc EM04.
Одна из фишек предлагаемой реализации в использовании части готового "отполированного" доступного трекбола, и интеграция его в клавиатуру без ковыряния в прошивке и без всех вопросов с заеданием шара/настройкой/ "автоматическим слоем мыши". В рассматриваемой реализации слой мыши включается зажиманием хитрой кнопки основанием основания большого пальца, а рука остается в домашней позиции.
К тому же, в документации QMK говорится о возможности подключения одного датчика для pointing device (либо больше одного, но прошивку надо дописывать и допиливать), и как раз хотел эту возможность использовать на другой половинке для аналогового джойстика.
И все же, несмотря на то, что есть трекболы доступнее, продолжу. Понадобится трекбол Logitech М570, доступный на сайте с объявлениями например.
"Берем готовое с микросхемами и меняем ему форму". Разбираем и скидываем у трекбола верхнюю панель и колесико. А вместо верхней панельки в те же дырки отверстия тем же крепежом крепим правую самодельную половинку клавиатуры.
З.Ы. Если у тебя дорогой читатель по случайному стечению обстоятельств есть время, желание, трекбол с шариком под большой палец и 3D-cканер, то буду рад помощи по адаптации идеи к другим трекболам. В CAD и реверс-инжиниринг умею сам, поэтому минимально достаточно чтобы ты поделился облаком точек с внутренностями трекбола. Logitech Marble тоже возможно подойдет для идеи.
прошить микроконтроллер;
Есть несколько вариантов клавиатурных прошивок. Если в тему сильно не углубляться то актуальными наверно можно считать QMK, ZMK и VIA (надстройка над QMK). Делал на QMK. Еще разок сошлюсь на отличную статью о её богатых возможностях.
Устанавливаем QMK MSYS по инструкции.
Устанавливаем QMK Toolbox по инструкции.
По адресу C:\Users\****username****\qmk_firmware\keyboards
закидываем папочку с конфигом 6x12_сhimera. Папочка лежит в папке с наработками.
Конфиг максимально простой для прямоугольной клавиатуры 6х12, структура и файлы с говорящими названиями на картинке ниже.
В файлике keymap.json
можно обнаружить/поправить раскладку, в файлик info.json
прописывается конфигурация клавиатуры как то, загрузчик, особенности, на каких пинах МК колонки на каких столбцы, используемый МК.
...
"bootloader": "atmel-dfu",
"diode_direction": "COL2ROW",
"features": {
"bootmagic": true,
"command": false,
"console": false,
"extrakey": true,
"mousekey": true,
"nkro": true
},
"matrix_pins": {
"cols": ["E6", "D7", "C6", "D4", "D0", "D1", "F7", "F6", "F5", "F4", "D2", "D3"],
"rows": ["B4", "B5", "B6", "B2", "B3", "B1"]
},
"processor": "atmega32u4",
Если что-то чуть чуть не так, то заполнить/поменять в любом текстовом редакторе нужные строки, или матрицу поменять согласно специального файлика.
Посмотреть на какой МК какой загрузчик (bootloader) можно в интернете.
Вообще, хорошей идеей кажется ознакомиться с документацией QMK, где подробно и плотно обо всем. Сейчас предпочитаю именно компилировать прошивку самостоятельно, потому что у каждого из визуальных помощников в создании прошивки есть ограничения.
KLE вспомогательный сервис для того, чтобы двораком и оптимизациями меряться.
KFB то ли сейчас не может, то ли и не мог добавить на клавиатуру кнопки мыши (инструкция по связке KLE-KFB). (инструкция как из json от готовой KLE_KFB-связки сформировать комплект для самостоятельной компиляции)
VIA кажется странным инструментом ежедневного изменения прошивки, сделанным с ограничения поверх QMK.
QMK_configurator тоже доставляет дискомфорт в области ниже спины своим ошеломляющим выпадающим списком одного и того же.
Поэтому запускаем QMK MSYS и компилируем прошивку.
qmk compile -kb 6x12_chimera -km default
Прошивка лежит по адресу C:\Users\***username***\qmk_firmware\.build\6x12_chimera_default.hex
Открываем QMK Toolbox и прошиваем МК файлом 6x12_chimera_default.hex
если не получается
Если, дорогой читатель, ты дошел до сюда и ничего не получается, то напиши мне, постараюсь помочь.
А дальше в повествовании пойдут прямо крамольные мысли и предложения. Предупрежден - вооружен.
настроить раскладку;
Количество статей на тему крутизны раскладок согласно частотности, мультиязычности, дворакости, типографскости, программируемости, русскоязычности, знакопрепинсовместимости, фонетичности на Хабре значительно. В этом празднике жизни не поучаствовать - грех.
Итак ДЗЕН Python раскладки (личное мнение, никому никак не навязываемое):
QWERTY хорошо, потому что везде. Инвестиции времени и труда на овладение по тому или иному параметру оптимальной альтернативой окупятся, только если это сулит значительный профит.
Оптимальность траекторий и минимизация времени подлета пальца к нужной кнопке на оптимальных раскладках оптимально для стандартных по формфактору клавиатур.
Есть аккордовые клавиатуры, на которых вроде скорости развивают такие, что и в космос летать можно ... на английском языке. А что там насчёт любимых многими букв Ёжэхэбъ? Это веду к тому, что эти ёжэхэбъ-буквы должны быть доступны не на первом слое, а на нулевом и в одно нажатие.
Когда пересаживаешься на нестандартную раскладку, то это история скорее про твой личный компьютер, не рабочий.
Знаки препинания, скобочки, решётки и прочие "не буквы" должны быть совместимы и одинаковы, независимо от языка ввода, иначе больно.
Переключение между языками одной клавишей Caps Lock как тут.
Индикатор Caps Lock показывает текущий язык как тут.
Глобальное состояние раскладки для всех приложений как тут.
Невозможность «шибко умных» программ спонтанно менять раскладку как тут.
Чтобы эту раскладку можно было бы и на Linux-системе повторить.
Чтобы учитывала некоторые статистические данные.
В рассматриваемой реализации клавиши мыши тоже нужны.
Диакритика и прочие спецсимволы нужны специалистам, которые с ними работают чаще чем раз в год/жизнь.
Простота в постоянном использовании за счет преодоления некоторых сложностей в разовой настройке.
Любая цифра и математический знак, как и любая f-клавиша доступна на левой руке. Потому что в CAD-приложениях хочется размеры задавать левой, пока pointing device в правой.
Самой лучшей и оптимальной раскладки "для всех" нет и не должно быть. Самая лучшая и оптимальная раскладка для тебя - есть.
Согласно этим соображениям представляю самую худшую и неоптимальную раскладку, которой совершенно невозможно пользоваться, чем бы ты, дорогой читатель, не был занят. Даже если в десять пальцев порхаешь на клавиатуре.
Да, это ужасная раскладка! Нажимая на цифры верхнего ряда нельзя получить ни одной цифры. Но можно получить абсолютно все "не буквы" со всей клавиатуры независимо от языка ввода (№ доступен и в английской, как и ~` в русской), сгруппированные по смыслу/частотности.
В гейминге и в других программах все работает ожидаемым образом, потому что когда "просят" нажать "1" и ты нажимаешь на клавишу_которая_была_1, то компьютер корректно понимает её как виртуальную клавишу "KC_1", чего программа и ожидает. А какие символы выдает виртуальная клавиша "KC_1" в полях текстового ввода, уже определяется раскладкой. Даже GIMP спокойно обрабатывает комбинации пока клавиатура вроде выдает кириллицу!!!
Цифровой блок с правой части стандартной клавиатуры доступен на левой руке...уиии...ради чего все и затевалось когда-то давно. Все f-клавиши расположены аналогично цифрам, но на слое L3.
Очень странная клавиша КС_EQL которая выдавала (-=), а теперь выдает ( , . … ) и ее не парит, что там стоит в качестве децимального разделителя в системе.
Правая часть клавиатуры содержит в себе и клавиатурную часть и многокнопочный трекбол.
Не выходя из режима мыши можно исполнять любимые действия (оранжевые ячейки слоя L2: вырезать, копировать, вставить, Enter, delete, backspace ). Так же остались все английские скобочки и точечки. Вынужденный компромисс это переезд буквы "Ъ".
На слое L1 расположены стрелочки, enter, delete (голубые ячейки).
Все это реализовано как единственный файл австралийско-английской раскладки, у которого в CapsLock-слое задана кириллица. Посмотреть/сделать_нормально можно программой MSKLC, отредактировав файл. Компилируем, устанавливаем.
Для Linux - аналогично через исправление существующей английской раскладки, расположенной по адресу /usr/share/X11/xkb
.
Поэтому правим самую ужасную раскладку до состояния "нормально" в файлике keymap.json, снова компилируем, прошиваем МК (физическая клавиатурная часть раскладки, выдающая скан-коды).
Правим раскладку логическую, компилируем устанавливаем в систему (логическая часть раскладки, сопоставляющая скан-коды конкретным символам юникода).
Все, клавиатура готова.
Мое почтение и поздравления добравшимся до конца.
картинки на память
Комментарии (19)
corvair
06.04.2024 00:18+1Весь узел шара трекбола лучше взять заводской, там весьма высокие требования по точности и жёсткости. Кроме компьютерных трекболов, есть ещё варианты от аппаратов УЗИ, там внутри обычная Windows и манипулятор графической информации по идее должен быть стандартным. Будучи исходно встраиваемым, он может оказаться удобнее для самоделки.
А так, встроенный трекбол часто встречается в промышленных и антивандальных клавиатурах, иногда попадающихся во всевозможных общедоступных терминалах и киосках самообслуживания. Как правило, там металлический шар довольно большого диаметра. В одной из компактных клавиатур от биохимического анализатора встречал крайне неудобный трекбол с шаром небольшого диаметра и оптомеханической системой, напоминающей старую шариковую мышь. Он был настолько неудобным, что вместо него и не менее мучительного "тугого" тачскрина использовалась обычная мышь. Ещё одни любители трекболов это военные, вспомните "шарово-кнюпельный механизм".
kilokanat Автор
06.04.2024 00:18Да, соглашусь с мыслью про "узел шара трекбола". В статье привел некоторые данные про примерную стоимость датчик+шар. Конкретно, в документации QMK можно встретить описание поддерживаемых pointing device, а в нём ссылку на недешевый крошечный трекбол Pimoroni.
На али есть в продаже несколько аналогичных модулей трекболов, но как вы верно заметили, такие малыши могут быть не самыми удобными.
BlackBerry Trackball Sensor 360 Trackball Module
когда-то продавался интересный трекбол-модуль на али
grove_module для ардуино.
А так да, можно прям взять трекбол-модуль от биохимического анализатора, только несколько пугает "цена по запросу")))
SergeyVSorokin
06.04.2024 00:18А почему хитрую кнопку не засунуть на левую половину клавиатуры?
М570 беспроводной, я не очень просек- он работает напрямую с компом, или через МК клавиатуры?
kilokanat Автор
06.04.2024 00:18Был вариант расположения хитрой кнопки на левой половинке, покатался пару дней - но не зашло. По ощущениям интуитивнее и удобнее показалось с хитрой кнопкой на правой стороне, потому что серфинг по интернету одной рукой например, ''то что мышь" как-то интуитвнее для меня чтобы все на правой руке висело.
М570 беспроводной и он работает напрямую с компом, не вмешиваясь в работу МК клавиатуры. Тут реализация идеи "максимум полученного за минимум потраченного". В других проектах гонят обработку трекбола через МК клавиатуры.
martein
06.04.2024 00:18Какой во всём этом толк, если вы сидите на раскладке QWERTY?
kilokanat Автор
06.04.2024 00:18К сожалению не ухватил суть вопроса. Раскладка QWERTY она на стандартных клавиатурах. Здесь клавиатура многослойная со свистелками и QWERTY-родственной раскладкой, но не QWERTTY-раскладкой. Обо этом в весьма красочной форме высказывается моя супруга, каждый раз когда ей припирает воспользоваться "этой хитрожопой клавиатурой, на которой ничего непонятно. Когда нормальную купишь?". С уважением.
vtb_k
06.04.2024 00:18Colemak-dh намного удобнее qwerty для инглиша. Я ещё больше адаптировал под вим, все равно переучивать мышечную память.
martein
06.04.2024 00:18Для русской раскладки использую раскладку "Диктор", но она DVORAK-подобная, потому что согласные справа, а гласные слева. В Colemak-DHm наоборот, но это мне не помешало пользоваться ими обеими. Мышечная память делает своё дело.
martein
06.04.2024 00:18Нужно на ней сделать механический свитч для переключения между QWERTY для жены и Colemak-DHm для себя. Это умеют делать даже самые дешёвые механические клавиатуры через клавиши M+ и M-
Dooez
06.04.2024 00:18+1Разница между раскладками влияет меньше чем разница между обычной клавиатурой и сплитом с нормальной прошивкой.
Во-первых положение рук у разделенных клавиатур значительно удобнее.
Во-вторых наличие слоев делает работу со специальными клавишами намного удобнее. Иногда необходимо пользоваться стрелочками, home, end, и слои позволяют не двигать руку для доступа к ним.
В-третьих наличие встроенного устройства манипуляции указателем позволит ещё меньше переключаться на мышь. Например, иногда сайты плохо работают с vimium'ом, и чтобы сделать действие удобнее навести курсор и нажать.
У альтернативных раскладок есть объективные преимущества по сравнению с qwerty, но даже первые два фактора делают использование сплит клавиатур удобным и с qwerty.
kilokanat Автор
06.04.2024 00:18Пока готовил материал для статьи думал что-нибудь выдать про эргономичность и положение рук у разделенных клавиатур.
О том, как по разному к этому вопросу подходят
nomorewar
06.04.2024 00:18Вот это красота, вот это diy здорового человека. А насчет трекпоинта не думали? Его полегче интегрировать, мне кажется. И меньше движений пальцем требует.
SergeyVSorokin
06.04.2024 00:18Про интеграцию трекпоинта я бы тоже с удовольствием почитал (так как не умею сделать, например, соответствующую 3D модельку чтобы сделать самому).
Есть несколько интересных вопросов, начиная от где его взять нормальный (HP, например, совершенно не умеет их готовить, и Lenovo что-то тоже деградирует), да и так вариантов не сильно много, мягко говоря. И где, например, взять keycap с дырками.
nomorewar
06.04.2024 00:18Мне кажется, его лучше интегрировать отдельно, а не по классической схеме между клавишами. Типа, как и требол, под большой палец.
kilokanat Автор
06.04.2024 00:18Трекпоинт тоже интегрируют в клавиатуру. Информации достаточно. Однако не совсем вижу в нём необходимости, т.к. стрелочки доступны справа на первом слое в домашней позиции руки. К примеру при интеграции покупного модуля трекбола с обработкой на МК клавиатуры, есть запредельные по крутости решения, когда шар используется как трекпоинт. Т.е. если шар крутишь быстро, то каретка прыгает "по слову", а если медленно - то "по символу". Александр Смирнов на своем канале рассказывал про такое.
Рассматриваемая в статье реализация ни разу не вершина, того что можно достичь. Но она интересна соотношением функционала к простоте, доступности компонентов, и невысокой стоимости. Есть клавиатуры где, к примеру, по желанию можно менять модуль с трекболом на модуль с трекпоинтом. Но стоимость таких девайсов какая-то кусачая.
timonin
Никогда не задумывался о том, что в клавиатуре может быть трекпад, ведь это реально разумно...
Tatooine
Да, я тоже уже не первый раз об этом думал
spqr_voldi
Клавиатуры с трекболами достаточно активно выпускаются, есть модели и у Мальтрона, и Черри, и IBM.
kilokanat Автор
А вот о таком задумывались? ))))))))