Корабль Тесея: сколько деталей нужно заменить, чтобы клавиатура стала новой?


Пролог
В какой момент доработка чужого open source проекта превращается в создание собственного устройства? Когда заменена одна деталь? Половина? Почти все? Или когда от первоначальной конструкции остается только идея?
Несколько лет назад я собрал эргономичную раздельную клавиатуру с встроенным трекболом — Charybdis. Тогда я и представить не мог, что этот проект затянет меня настолько, что я в итоге начну разрабатывать полностью свою клавиатуру.
Все начиналось с небольших изменений — тут подправить геометрию корпуса, здесь изменить толщину посадочного места под свитчи, там переработать крепление деталей, а где то — заменить электронику. Но каждая следующая доработка тянула за собой новые, и постепенно от исходной конструкции оставалось все меньше.
Так появилась Theseus — клавиатура, названная в честь знаменитого парадокса о корабле Тесея, в котором одну за другой заменили каждую деревянную доску.
Но прежде, чем рассказать, как я дошел до этого, стоит вернуться немного назад.
Все начиналось
В 2021 году я впервые услышал о раздельных клавиатурах. В то время я писал код для проектов на ардуино, был знаком с пайкой и увлечен DIY культурой. Мне хотелось сделать рабочее место удобнее и добавить ему индивидуальности, а также отвадить ламеров от попыток сесть за мой компьютер. Отдельное восхищение вызывала прошивка QMK с открытым исходным кодом — она позволяла создать несколько слоев, назначить каждой клавише необходимое значение, добавить макросы, тем самым полностью изменив подход к работе с клавиатурой.
Первой я выбрал Corne — плоскую раздельную клавиатуру на 42 клавиши. Проект был открытым, о нем хорошо отзывались энтузиасты, а на Youtube уже лежали подробные инструкции по сборке.
После сборки — меня зацепило так, что не отпускает до сих пор.
Я настроил раскладку для работы в Arduino IDE — сделал отдельный слой для нужных мне символов, написал макросы для быстрой сборки и заливки проекта, управления громкостью и музыкой и работа пошла намного комфортнее.
Dactyl Manuform — прыжок в третье измерение
Я стал углубляться в тему, купил 3D — принтер, нашел проект такого мастодонта как Dactyl Manuform и собрал его для себя. В отличии от плоской Corne, новая клавиатура имела радиусное закругление колонок каждого пальца — идея была в том, чтобы минимизировать перемещение кончика пальца. Все колонки имели и поперечный шаг в 5 градусов между собой, что позволяло вернуть запястью его естественное нейтральное положение, чему я был рад. Оценил я и большее количество клавиш в блоке большого пальца — шесть вместо трех, что позволило назначить на свободные клавиши модификаторы Ctrl, Shift, добавить Backspace. Я осознанно выбрал формат 4×6 так как он был максимально приближен к классической клавиатуре формата 60% и не прогадал — новичкам было значительно проще адаптироваться к 64 клавишам, чем к 42 — нужно было меньше слоев и цифры всегда были под рукой.
Некоторые друзья, наблюдая за моим искренним восторгом и видя мои горящие глаза, начали просить сделать и для них эргономичную клавиатуру на QMK. Время шло, я бесконечно дорабатывал 3d модель корпуса, добавил Hot‑swap — технологию смены переключателей без необходимости пайки и все думал о том, что хочу попробовать добавить трекбол. Внедрять его самостоятельно на тот момент было слишком непосильной задачей — нужно было разбираться с тем, как работает схемотехника сенсора, разрабатывать печатные платы и искать для него удобное расположение. Я оттягивал этот момент до последнего.
Charybdis — почти идеальная клавиатура
Решение пришло ко мне само — алгоритмы Youtube предлдожили обзор клавиатуры Charybdis от автора BastardKB и влюбился снова — полноценная реализация трекбола, чистая, созданная вручную 3D — модель корпуса, печатные платы, которые заменяли часы ручной навесной пайки, полноценная rgb подсветка каждой клавиши и, главное, полный open source. Все исходники лежали на GitHub и я сразу же пошел в bom‑лист, заказал все необходимое и стал ждать.
После сборки, ситуация с Dactyl Manuform повторилась — друзья хотели перейти на что то более качественное и с трекболом, так я начал собирать Charybdis небольшими партиями.

И вот тут начали проявляться ее недостатки, которые были незаметны при «разовой» сборке:
Свитчи нужно было впаивать сразу и навсегда — не было технологии Hot‑swap.
Печатные платы были плохо подогнаны, их слишком сильно выгибало и FR-4 материал, из которого делаются печатные платы не выдерживал. Иногда они даже переламывались между колонками среднего и указательного пальца, автор на такие случае написал инструкцию по диагностике места поломки и предлагал чинить плату впаиванием перемычки. Соединение печатных плат между собой было реализовано через ворох тонких проводков, создававших буквально гнездо внутри клавиатуры.
Посадочное место трекбола требовало ручной подгонки, вклейки статичных подшипников и не могло похвастаться стабильностью — шар еле держался, а иногда выпадал и с грохотом падал на пол. Позже автор выпустил модифицированную верхнюю деталь, но она требовала высочайшей точности печати — FDM принтер уже не справлялся с подобным. Предлагалось использовать фотополимерные принтеры.
Почти 40% используемого для 3d печати пластика шло на поддержки — структуру, которая после печати отправлялась в мусорку.
Клавиатура переставала определяться после перезапуска компьютера, приходилось отключать и подключать ее каждый раз перед началом работы. Это софтверный баг QMK — после пробуждения половинки не всегда понимали, кто из них должен общаться с ПК по USB и обе занимали позицию Slave.
В схемотехнике использовались дорогие и непопулярные понижайки AP7331-20WG-7, менявшие напряжение с 3.3v до 2v для питания сенсора трекбола.
Соединение половинок было реализовано через 3.5 mini‑jack разъем, который страдает от короткого замыкания в ситуациях, когда одна из половинок уже подключена к ПК, из за чего микроконтроллеры RP2040 иногда умирали, а перепаять их было отдельной формой мазохизма.
Точка невозврата
Уже имея опыт переделки клавиатуры Dactyl Manuform, я начал дорабатывать слабые узлы Charybdis. Поначалу я брал модель отдельной оригинальной детали, доводил ее до состояния «теперь устраивает» и приступал к изменению следующей детали, но, чем дальше — тем сильнее я понимал, что захожу в тупик — ограничения накладывались друг на друга и мешали реализовать идеи так, как я бы этого хотел. Все намекало мне о том, что нужно начать с чистого листа.
KioskNews shows a cleaned-up reading view extracted from the publisher’s page — the original always lives on their site, not ours.