Борьба с клавиатурой Электроника МС 7004

Sep 05, 2022 15:48

Как-то листая доски объявлений, наткнулся на шикарную клавиатуру "Электроника МС 7004". Как-то xlat делала отличный фотообзор на эту клавиатуру. И я что-то загорелся, выглядит она очень круто, решил и купил себе.



Клавиатура просто потрясающая, у неё есть откидной блок со светодиодами. Клавиши очень приятные, просто даже сейчас на ней хочется работать. Но самое потрясное - она совместима с клавиатурой LK201. Просто копипаст описания из одного объявления, которое оказалось ключевым:

Ретро клавиатура. МС7004 - это клавиатура, которая является аналогом клавиатуры LK201 производства компании DEC. МС7004 использовалась с рядом советских ЭВМ конца 80-х годов, совместимых с архитектурой PDP-11, например, ДВК-3, ДВК-3М, Квант-4С, Электроника-85, и вполне возможно, что ещё на кое-каких машинах. Сама клавиатура построена на микроконтроллере, и связь с ЭВМ осущесвляется через стандартный последовательный порт. Прицип работы кнопок - ёмкостный. Раскладка клавиатуры - JCUKEN, в отличие от аналога LK201 с раскладкой QWERTY.

Как ни странно, эта информация оказалась ключевой. И было принято нелёгкое решение её купить. В результате, клавиатура мне пришла, и с этого момента началась большая эпопея.

Для начала покажу внешний вид, того что же пришло. Если откинуть крышку, то видны светодиоды. Клавиш много, примерно также как у терминала .





Вид снизу не так интересен.

Обратите внимание, что раскладка клавиатуры фонетическая, и латинские символы не там где мы привыкли (ненавижу, ага). Ещё к этому моменту вернусь.

Для того, чтобы просто включить клавиатуру, пришлось рыть кучу документации. Нашёл неплохой сайт по ДВК, где приведены два типа паспорта (см. раздел "Клавиатура МС 7004"). В паспорте самое ценное - это схема и коды клавиш. Как ни странно, далее английская документация оказалась более полной. Итак, схема подключения.



Схема разъёма клавиатуры.

Провод клавиатуры съёмный, и можно подключиться как непосредственно к плате, так и к разъёму DIN. Выбрал второй вариант. Для этого набросал распиновку разъёма для подключения. Решил проверить, рабочая ли клавиатура вообще. Обратите внимание, что питается она от 12 В!



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



Первый успешный запуск клавиатуры.

Всё, клавиатура оказалась рабочей! Но, как обычно "есть нюанс", интерфейс клавиатуры не RS-232, и не RS-485/422 - это никому не известный RS-423 (то есть сигналы имеют уровень +/- 5 вольт относительно земли). 423 - это не опечатка, это из документации на интерфейс клавиатуры LK201 Interface.

Погуглил стандарт RS-232, и понял, что по идее эти напряжения попадают в стандарт, и чем чёрт не шутит, прицепил к шнурку USB-COM, настроил терминалку на 4800 8N1. И потыкал клавиши.



Оно живое!!!

Потрясающе! Самое удивительное, что слизали всё подчистую, и коды клавиш точно соответствуют кодам клавиш по физическому расположению у оригинальной клавиатуры LK201.



Вот это поворот! Значит не нужно будет переучиваться, осталось сделать железку конвертер. Для этих целей из закромы Родины достал свои недоделанные проекты, как раз с DIN разъёмом, корпусом. Прикупил Ардуину Леонардо, которая может быть USB-HID. И начал ваять.



Остатки старых проектов.

Самая главная задача была получить +12 В для питания клавиатуры, и ещё надо было как-то сделать преобразователь RS-423. В результате получилась вот такая вот платка.



Но радость была не долгой, при подключении клавиатуры тока порта не хватало и всё просаживалось в ноль. Поэтому такая схема питания оказалась неработоспособной. Затем, с большим трудом добытая дефицитная max232 отказалась работать с интерфейсом RS-423, и не переваривала такой тип напряжения (хотя оно находится в стандартах RS-232). Короче, на этом моё вдохновение закончилось.

Хотя в документации на интерфейс клавиатуры LK201 приводится много полезной информации. В коде ядра Linux можно найти кучу годных примеров, в том числе код ремапа. Короче говоря, энтузиазм закончился.

Полезные ссылки по теме:
1. Описание оригинальной клавиатуры LK201.
2. Паспорта на клавиатуру Электроника МС 7004
3. Описание интерфейса клавиатуры LK201 (англ.) с примерами кода, очень подробное.
4. Пример кода №1 (см. всю репу по теме)
5. Пример кода №2 (см. потом всю репу)

Делай сам, Старое железо, клавиатура, Электроника

Previous post Next post
Up