Переделка клавиатуры PS/2 на USB: от теории к практике

Даже самая надёжная клавиатура с разъёмом PS/2 рано или поздно становится бесполезной: современные материнские платы, ноутбуки и даже некоторые моноблоки отказываются от этого порта в пользу USB. Но выбрасывать проверенное временем устройство не обязательно — его можно адаптировать под новые стандарты. Переделка разъёма PS/2 → USB не только продлит жизнь клавиатуре, но и позволит использовать её с любыми устройствами, от Raspberry Pi до современных игровых ПК.

В этой статье мы разберём три основных метода переделки: с помощью готовых адаптеров, пайкой контроллера и программной прошивкой. Каждый способ имеет свои нюансы — от простоты (подключил и забыл) до сложности (требуется паяльник и знание электроники). Выбор зависит от ваших навыков, бюджета и модели клавиатуры. Например, для редких IBM Model M или Cherry G80-3000 лучше использовать специализированные контроллеры, а для офисных клавиатур подойдёт даже самый дешёвый адаптер.

⚠️ Внимание: Не все клавиатуры PS/2 совместимы с USB на аппаратном уровне. Старые модели (до 2000 года) могут требовать модификации протокола обмена данными, что выходит за рамки этой статьи. Если ваша клавиатура не определяется после переделки, проверьте её на совместимость с базой данных Deskthority.

📊 Зачем вы хотите переделать PS/2 клавиатуру на USB?
Для использования с современным ПК
Для ретро-проекта
Клавиатура редкая/дорогая
Просто интересно
Другой вариант

1. Способы переделки: какой выбрать?

Прежде чем браться за паяльник или покупать адаптер, определитесь с методом. Их три, и каждый подходит для разных ситуаций:

  • 🔌 Готовый адаптер PS/2 → USB — самый простой и быстрый способ. Подходит для 90% клавиатур, выпущенных после 1998 года. Стоимость: от 100 до 500 рублей.
  • 🔧 Замена контроллера — требует пайки и базовых знаний электроники. Нужно выпаять старый контроллер и установить новый (например, Teensy или Pro Micro). Подходит для редких или нестандартных клавиатур.
  • 💻 Программная прошивка — для энтузиастов. Позволяет переназначить клавиши, добавить макросы или даже эмулировать HID-устройство. Требует навыков работы с Arduino IDE или QMK Firmware.

Если вы новичок, начните с адаптера. Он работает по принципу "подключил и забыл", но имеет ограничения:

  1. Не все клавиатуры поддерживают USB-протокол на аппаратном уровне (особенно старые IBM или Focus FK-2001).
  2. Адаптер не всегда корректно передаёт скан-коды для мультимедийных клавиш.
  3. Могут возникать задержки ввода (латентность) до 10–15 мс.

Для профессионалов лучший вариант — замена контроллера. Это даёт полный контроль над клавиатурой: можно переназначить любые клавиши, добавить RGB-подсветку или даже сделать её беспроводной. Минус — высокая сложность и риск повредить плату при пайке.

2. Метод 1: Использование готового адаптера

Это самый доступный способ, не требующий навыков пайки. Вам понадобится только сам адаптер и клавиатура. Однако есть нюансы:

  • 🔍 Выбор адаптера: Берите модели с чипом FT232RL или PL2303 — они лучше совместимы со старыми клавиатурами. Избегайте китайских "no-name" адаптеров без маркировки.
  • Питание: Некоторые клавиатуры требуют дополнительного питания 5V. Если адаптер не работает, попробуйте подключить его через USB-хаб с внешним питанием.
  • 🖥️ Драйвера: На Windows 7/10 адаптер обычно определяется автоматически. Для Linux может потребоваться ручная установка пакета usbhid.

Пошаговая инструкция:

  1. Подключите адаптер к клавиатуре (разъём PS/2 вставляется в гнездо адаптера).
  2. Вставьте адаптер в USB-порт компьютера.
  3. Дождитесь установки драйверов (если требуется).
  4. Проверьте работу клавиатуры в Блокноте или Word.

Если клавиатура не работает:

⚠️ Внимание: Проверьте полярность подключения. На разъёме PS/2 контакты расположены так:
КонтактНазначениеЦвет провода
1DataЗелёный/белый
2+5VКрасный
3GNDЧёрный
4ClockЖёлтый

На адаптере контакты могут быть промаркированы иначе. Используйте мультиметр, чтобы избежать короткого замыкания!

☑️ Проверка адаптера перед покупкой

Выполнено: 0 / 5

3. Метод 2: Замена контроллера (пайка)

Этот метод подходит для клавиатур, которые не работают с адаптерами или требуют расширенной функциональности. Вам понадобятся:

  • 🔧 Паяльник (мощность 30–40 Вт) и припой.
  • 🧲 Отсоска для припоя или оплётка.
  • 🔌 Новый контроллер: Teensy 2.0, Pro Micro (ATmega32U4) или Arduino Leonardo.
  • 🔍 Лупа или микроскоп (для работы с мелкими контактами).

Процесс замены контроллера:

  1. Демонтаж старого контроллера:

    Аккуратно выпаяйте старый чип, не повредив дорожки на плате. Используйте флюс для облегчения процесса. На некоторых клавиатурах (например, Cherry MX-board 3.0) контроллер может быть приклеен — прогрейте его феном.

  2. Подготовка нового контроллера:

    Для Pro Micro или Teensy нужно припаять провода к контактам VCC, GND, Data и Clock. Схему подключения смотрите в даташите к вашей клавиатуре.

  3. Прошивка:

    Скачайте прошивку для вашего контроллера (например, QMK Firmware для Pro Micro). В файле конфигурации (config.h) укажите модель клавиатуры или создайте свою раскладку.

  4. Тестирование:

    Подключите контроллер к USB и проверьте работу клавиш в Keyboard Tester (например, keyboardtester.com).

Критично! На некоторых клавиатурах (например, IBM Model M) сигналы Data и Clock инвертированы. Если клавиатура не работает, попробуйте поменять их местами или добавьте инверторы на транзисторах (2N3904).

Что делать, если после пайки клавиатура не определяется?

1. Проверьте цепь питания (+5V и GND) на короткое замыкание.

2. Убедитесь, что контроллер правильно прошит (светодиод на плате должен мигать при подключении).

3. Попробуйте другую прошивку (например, TMK вместо QMK).

4. Проверьте целостность дорожек на плате клавиатуры — они могли отслоиться при пайке.

4. Метод 3: Программная прошивка (для опытных)

Если вы хотите не просто адаптировать клавиатуру, а добавить новые функции (макросы, слои, подсветку), понадобится программная прошивка. Этот метод требует знания C++ и работы с Arduino IDE или QMK Toolbox.

Пошаговая инструкция для QMK Firmware:

  1. Установка окружения:

    Скачайте QMK MSYS с официального сайта и установите зависимости:

    pacman -S mingw-w64-x86_64-toolchain git
  2. Клонирование репозитория:
    git clone https://github.com/qmk/qmk_firmware.git
    

    cd qmk_firmware

  3. Создание конфигурации:

    Скопируйте шаблон для вашей клавиатуры (например, cp keyboards/handwired/dactyl_manuform/ keyboards/handwired/my_keyboard/) и отредактируйте файлы config.h и keymap.c.

  4. Компиляция и прошивка:

    Для Pro Micro используйте команду:

    make handwired/my_keyboard:default:avrdude

Пример простейшей раскладки в keymap.c:

const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {

[0] = LAYOUT(

KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5,

KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T

)

};

Для отладки используйте QMK Toolbox или команду:

qmk console

5. Частые проблемы и их решения

Даже при правильной переделке клавиатура может работать некорректно. Вот самые распространённые проблемы и способы их устранения:

ПроблемаВозможная причинаРешение
Клавиатура не определяетсяНеправильное подключение Data/ClockПоменяйте провода местами или проверьте пайку
Работают не все клавишиПовреждена матрица клавишПроверьте дорожки мультиметром в режиме прозвонки
Задержки при вводеДешёвый адаптер без буфераИспользуйте контроллер с QMK или TMK
Клавиши "залипают"Проблемы с дебаунсингомНастройте параметр DEBOUNCE в прошивке
Не работают мультимедийные клавишиАдаптер не поддерживает расширенные скан-кодыПерепрошейте клавиатуру с кастомной раскладкой

Если после переделки клавиатура определяется как Unknown Device:

⚠️ Внимание: В Windows попробуйте вручную установить драйвер HID Keyboard через Диспетчер устройств. В Linux проверьте вывод команды:
lsusb

Если устройство не отображается, проблема в аппаратной части (питание, пайка).

6. Совместимость с разными устройствами

Переделанная клавиатура должна работать с любым устройством, поддерживающим USB HID. Однако есть нюансы:

  • 🖥️ ПК (Windows/Linux/macOS): Обычно проблем нет, но на macOS может потребоваться переназначение клавиш (Command/Option).
  • 📱 Android (через OTG): Работает, но некоторые клавиши (например, Win) могут не распознаваться.
  • 🎮 Игровые консоли (PS4/PS5/Xbox): Только через специальные адаптеры (например, Brook Wingman).
  • 🍓 Raspberry Pi / Микрокомпьютеры: Может потребоваться ручная настройка /boot/config.txt для поддержки USB-клавиатур.

Для Raspberry Pi добавьте в config.txt строку:

dtoverlay=dwc2,dr_mode=host

и перезагрузите устройство.

На Android проверьте поддержку USB OTG в настройках телефона. Некоторые производители (например, Xiaomi) блокируют подключение клавиатур по умолчанию.

7. Модификации и апгрейды

Переделка на USB — только начало. Вы можете улучшить клавиатуру ещё сильнее:

  • 🌈 RGB-подсветка: Подключите ленту WS2812B к свободным пинам контроллера и настройте эффекты в QMK.
  • 🔋 Беспроводное подключение: Используйте модуль Bluetooth HM-10 или ESP32 для создания беспроводной клавиатуры.
  • 🎛️ Дополнительные кнопки: Добавьте энкодер или сенсорные клавиши для управления громкостью/подсветкой.
  • 🔇 Звуковые эффекты: Подключите пьезодинамик для кликов (как на IBM Model M).

Пример кода для управления подсветкой в QMK:

#define RGB_DI_PIN D3

#define RGBLED_NUM 12

void keyboard_post_init_user(void) {

rgblight_init();

rgblight_setrgb(0xFF, 0x00, 0x00); // Красный цвет при старте

}

Для беспроводного варианта понадобится:

  1. Модуль ESP32 (например, ESP32-S2 с native USB).
  2. Прошивка ZMK Firmware (альтернатива QMK для беспроводных устройств).
  3. Аккумулятор (например, 18650) и модуль зарядки (TP4056).

FAQ: Ответы на частые вопросы

Можно ли переделать клавиатуру PS/2 на USB без пайки?

Да, с помощью готового адаптера. Однако некоторые старые клавиатуры (до 1998 года) могут не работать из-за различий в протоколах обмена данными. В этом случае потребуется замена контроллера.

Почему после переделки не работают мультимедийные клавиши?

Дешёвые адаптеры не поддерживают расширенные скан-коды. Решение:

  1. Используйте контроллер с прошивкой QMK.
  2. Переназначьте клавиши вручную в файле keymap.c.

Как проверить, совместима ли моя клавиатура с USB?

Подключите её через адаптер к ПК и проверьте в Диспетчере устройств (Windows) или командой dmesg | grep -i keyboard (Linux). Если устройство определяется как HID Keyboard, всё в порядке. Если нет — потребуется замена контроллера.

Можно ли переделать клавиатуру PS/2 на Bluetooth?

Да, но для этого нужно:

  1. Установить контроллер с поддержкой Bluetooth (например, ESP32).
  2. Прошить его через ZMK Firmware.
  3. Добавить аккумулятор и схему питания.

Готовых решений "из коробки" нет — потребуются навыки пайки и программирования.

Почему при нажатии нескольких клавиш некоторые не регистрируются?

Это проблема N-key rollover (NKRO). Решения:

  • Используйте контроллер с поддержкой NKRO (например, Teensy 2.0).
  • Включите NKRO в прошивке (#define FORCE_NKRO в config.h).
  • Проверьте, не ограничивает ли NKRO ваш адаптер.