Как завести клавиатуру на Хакинтош: от диагностики до фикса ошибок

Если после установки macOS на ПК (Hackintosh) клавиатура не реагирует на ввод, не определяется в Системных настройках или работает с ошибками (залипают клавиши, неверная раскладка, отсутствует подсветка), проблема в 90% случаев связана с отсутствием драйверов для контроллера ввода (USB/PS2) или неправильной конфигурацией config.plist. Первое, что нужно проверить — тип подключения: USB-клавиатуры обычно требуют kext-драйвера USBInjectAll, а PS/2 — патча VoodooPS2Controller. Bluetooth-устройства часто блокируются из-за отключенного модуля в BIOS или конфликта с BrcmPatchRAM.

Симптомы неисправности варьируются от полного игнорирования нажатий до частичной работы (например, функциональные клавиши F1-F12 не срабатывают, а буквы печатаются). В 30% случаев виноват неправильный ACPI-патч для материнской платы, особенно на ноутбуках с встроенными клавиатурами. Прежде чем переустанавливать систему, выполните диагностику по алгоритму ниже — это сэкономит часы на поиск решения.

1. Диагностика проблемы: почему клавиатура не работает

Начните с определения типа подключения клавиатуры и модели контроллера. Это критично, так как драйверы для USB, PS/2 и Bluetooth различаются. Откройте терминал в macOS (если есть доступ к мыши или touchpad) и выполните команду:

system_profiler SPUSBDataType

Если клавиатура не отображается в списке устройств, проблема в одном из трёх:

  • 🔌 USB-порт не инициализирован (нужен USBInjectAll.kext + маппинг портов).
  • 🖥️ Контроллер PS/2 отключён в BIOS (актуально для старых материнских плат Gigabyte или ASUS с legacy-портами).
  • 🚫 Конфликт kext-драйверов (например, одновременно установлены VoodooPS2 и ApplePS2).

Для Bluetooth-клавиатур проверьте, включён ли модуль в BIOS (Onboard BluetoothEnabled) и установлен ли драйвер BrcmPatchRAM (для чипов Broadcom). Если клавиатура определяется, но не печатает, виновата неправильная раскладка — её можно сбросить через Клавиатура → Источники ввода в системных настройках.

⚠️ Внимание: На ноутбуках Lenovo и Dell с PS/2-клавиатурами часто требуется патч SSDT-PS2Key.aml для корректной работы функциональных клавиш. Без него клавиши Fn могут не реагировать или дублировать действия.

2. Настройка USB-клавиатуры: kext-драйверы и маппинг портов

Если клавиатура подключена по USB, но не определяется, выполните следующие шаги:

  1. Установите USBInjectAll.kext в папку /EFI/OC/Kexts/ (для OpenCore) или /Library/Extensions/ (для Clover). Этот драйвер принудительно активирует все USB-порты.
  2. Обновите config.plist: добавьте USBInjectAll в раздел Kernel → Add и убедитесь, что в NVRAM → Add → 7C436110-AB2A-4BBB-A880-FE41995C9F82 прописан параметр UIScale=01 (для масштабирования).
  3. Создайте USB-мап с помощью утилиты Hackintool (вкладка USB). Это позволит отключить лишние порты и избежать предела в 15 устройств (ограничение macOS).

После изменений перезагрузитесь и проверьте клавиатуру в Системной информации → USB. Если устройство появилось, но не работает, попробуйте:

  • 🔄 Переподключить клавиатуру в другой порт (передняя панель ПК часто не маппируется).
  • 🛠️ Отключить XhciPortLimit в config.plist (если используется macOS Big Sur и новее).
  • 📋 Проверить конфликты с другими kext-драйверами (например, VirtualSMC должен быть актуальной версии).

Скачать USBInjectAll.kext|Добавить kext в config.plist|Создать USB-мап в Hackintool|Перезагрузить систему и проверить клавиатуру-->

Для материнских плат на чипсете Intel 300/400/500 серии может потребоваться патч SSDT-UIAC.aml, который вручную прописывает адреса USB-портов. Его можно сгенерировать в Hackintool или скачать готовый для вашей модели.

3. Решение проблем с PS/2-клавиатурами (ноутбуки и старые ПК)

Клавиатуры с интерфейсом PS/2 (встроенные в ноутбуки или подключённые через фиолетовый порт на материнской плате) требуют специального драйвера VoodooPS2Controller.kext. Установите его в папку с kext-драйверами и добавьте в config.plist. Важно:

  • 🔧 Для ноутбуков Lenovo ThinkPad нужна версия VoodooPS2 с поддержкой TrackPoint.
  • 🖱️ Если тачпад перестаёт работать после установки драйвера, добавьте VoodooPS2Mouse.kext отдельно.
  • 📝 Для клавиш Fn может потребоваться патч SSDT-PNLF.aml (регулировка подсветки).

Если клавиатура определяется, но клавиши работают некорректно (например, Enter срабатывает как Backspace), проблема в неправильной раскладке. Исправьте её так:

  1. Откройте Терминал и выполните:
    defaults write -g com.apple.keyboard.fnState -bool true
  2. Перезагрузитесь и проверьте работу клавиш F1-F12.
  3. Если проблема осталась, установите утилиту Karabiner-Elements и создайте кастомное сопоставление клавиш.
⚠️ Внимание: На некоторых материнских платах ASUS (например, серии Prime B450) встроенный контроллер PS/2 конфликтует с VoodooPS2. Решение — отключить PS/2 Simulator в BIOS или использовать внешнюю USB-клавиатуру.
Список совместимых версий VoodooPS2 для разных macOS

VoodooPS2 2.2.6 — macOS Catalina (10.15) и новее

VoodooPS2 2.1.6 — macOS Mojave (10.14)

VoodooPS2 2.0.5 — macOS High Sierra (10.13) и старше

4. Bluetooth-клавиатуры: включение модуля и драйверы

Если вы используете Bluetooth-клавиатуру (например, Apple Magic Keyboard или Logitech MX Keys), но она не подключается, выполните проверку:

  1. Активируйте Bluetooth в BIOS (Advanced → Onboard Devices → Bluetooth → Enabled).
  2. Установите драйвер BrcmPatchRAM (для чипов Broadcom) или IntelBluetoothFirmware (для Intel AX200/AX201).
  3. Сбросьте модуль Bluetooth в macOS:
    sudo kextunload /System/Library/Extensions/IOBluetoothFamily.kext
    

    sudo kextload /System/Library/Extensions/IOBluetoothFamily.kext

Если клавиатура подключается, но отключается через несколько минут, проблема в энергосбережении. Отключите его командой:

sudo defaults write /Library/Preferences/com.apple.Bluetooth.plist ControllerPowerState 0
Модель Bluetooth-модуля Требуемый kext-драйвер Дополнительные действия
Broadcom BCM94360, BCM94352 BrcmPatchRAM3.kext + BrcmFirmwareData.kext Установить прошивку через Hackintool
Intel AX200, AX201 IntelBluetoothFirmware.kext + BlueToolFixup.kext Отключить Secure Boot в BIOS
Fenvi T919 (PCIe) AirportBrcmFixup.kext Проверьте антенны (частая проблема с сигналом)

Для Apple Magic Keyboard может потребоваться сброс NVRAM (нажмите Option+Command+P+R при загрузке). Если клавиатура подключается, но не печатает, проверьте раскладку в Системные настройки → Клавиатура → Методы ввода.

USB-проводная|Bluetooth (Apple Magic Keyboard)|PS/2 (встроенная в ноутбук)|Игровая (механическая)|Другая-->

5. Исправление раскладки и горячих клавиш

Если клавиатура работает, но символы печатаются неверно (например, вместо " вводится @), проблема в неправильной раскладке. macOS по умолчанию использует US-английскую, даже если в настройках выбрана русская. Исправляем:

  1. Откройте Системные настройки → Клавиатура → Методы ввода.
  2. Удалите все раскладки и добавьте только нужную (например, Русская — PC).
  3. Включите опцию Показывать меню ввода в строке меню для быстрого переключения.

Для горячих клавиш (Command+C, Option+Tab) может потребоваться переназначение. Используйте Karabiner-Elements:

  • 🔄 Сопоставьте Left AltCommand (для привычного контроля).
  • 🔍 Настройте Caps Lock как Escape (полезно для разработчиков).
  • 🎯 Отключите неиспользуемые комбинации (например, Fn+F12 для Dashboard).

Если клавиши F1-F12 работают как медиа-кнопки (регулировка яркости, звука), отключите это в Системные настройки → Клавиатура → Использовать клавиши F1, F2 и т. д. как стандартные функциональные клавиши.

6. Проблемы с подсветкой и дополнительными функциями

Если клавиатура не подсвечивается или не работают мультимедийные клавиши (Play/Pause, Volume Up/Down), причины могут быть следующими:

  • 💡 Отсутствует драйвер для RGB (например, OpenRGB для Razer или Corsair).
  • 🔊 Нет патча для мультимедийных клавиш (добавьте SSDT-AWAC.aml для Realtek ALC аудио).
  • Не хватает питания на USB-порту (актуально для клавиатур с подсветкой, например, SteelSeries Apex).

Для ноутбуков с подсветкой клавиатуры (ASUS ROG, MSI) установите ECEnabler.kext и добавьте патч в config.plist:

DeviceProperties → Add → PNP0C09 → ec-enable=01

Если подсветка мигает или отключается, проверьте:

  • 🔋 Источник питания (подключите клавиатуру к USB 3.0, а не 2.0).
  • 🛠️ Настройки энергосбережения в BIOS (ErP Ready → Disabled).
  • 🔄 Конфликты с другими USB-устройствами (отключите веб-камеру или флешку).
⚠️ Внимание: На клавиатурах Logitech G Pro X и Corsair K95 подсветка может не работать из-за отсутствия драйверов для Lightsync в macOS. Решение — использовать OpenRGB или переключиться на статический режим.

7. Устранение конфликтов с другими драйверами

Если клавиатура работала, но перестала после обновления macOS или установки нового kext, вероятен конфликт драйверов. Проверьте следующие комбинации:

Симптом Вероятная причина Решение
Клавиатура работает только в BIOS Конфликт VoodooPS2 и ApplePS2 Удалите ApplePS2Controller.kext из /S/L/E
Залипание клавиш или двойной ввод Несовместимая версия VoodooInput Обновите VoodooInput.kext до 1.1.0+
Не работают Fn-клавиши Отсутствует SSDT-PNLF.aml Сгенерируйте патч в Hackintool

Чтобы выявить конфликт:

  1. Загрузитесь в Safe Mode (удерживайте Shift при загрузке). Если клавиатура работает — виноват сторонний kext.
  2. Поочерёдно отключайте драйверы в config.plist, начиная с последних установленных.
  3. Проверьте логи загрузки через Console.app (фильтр: kernel[0]: (AppleUSBHostPort)).

Для игровых клавиатур (например, Razer BlackWidow) может потребоваться отключить Razer Synapse в Windows, если вы используете dual-boot. Это ПО блокирует доступ к клавишам на уровне прошивки.

8. Альтернативные решения и радикальные меры

Если ни один из методов не помог, рассмотрите следующие варианты:

  • 🔄 Переустановите macOS с чистой EFI-папкой (иногда конфигурационные файлы повреждаются).
  • 🖥️ Используйте USB-hub с внешним питанием для клавиатур с высоким энергопотреблением.
  • 🛠️ Замените контроллер клавиатуры (актуально для ноутбуков со сгоревшим PS/2-портом).
  • 🖊️ Подключите клавиатуру по Bluetooth (если USB/PS2 не работают).

Для виртуальных машин (например, macOS на VMware или Parallels) настройте передачу USB-устройств вручную:

  1. Откройте настройки ВМ и добавьте клавиатуру в список USB & Bluetooth.
  2. Установите VMware Tools или Parallels Tools для корректной работы HID-устройств.
  3. Если клавиатура "зависает", отключите опцию USB 3.0 Support в настройках ВМ.

Если вы используете механическую клавиатуру с макросами (Corsair K100, Razer Huntsman), учтите, что их ПО (iCUE, Synapse) не работает в macOS. Альтернатива — QMK Toolbox для прошивки кастомной firmware.

FAQ: Частые вопросы по клавиатурам на Хакинтош

Почему клавиатура работает в BIOS, но не в macOS?

Это указывает на отсутствие драйверов для контроллера ввода. Для USB установите USBInjectAll.kext, для PS/2VoodooPS2Controller.kext. Если проблема остаётся, проверьте, не отключён ли контроллер в config.plist (раздел Kernel → Block).

Как настроить клавиши Fn на ноутбуке?

Установите VoodooPS2 с поддержкой Fn-клавиш и добавьте патч SSDT-PNLF.aml. Для регулировки яркости может потребоваться WhateverGreen.kext + правильный device-id для видеокарты в config.plist.

Клавиатура печатает не те символы. Как исправить?

Сбросьте раскладку в Системные настройки → Клавиатура и установите нужный язык. Если проблема в Command/Option, переназначьте клавиши в Karabiner-Elements или измените модификаторы в Системные настройки → Клавиатура → Модификаторы клавиш.

Bluetooth-клавиатура подключается, но отключается через 5 минут. Почему?

Это связано с энергосбережением macOS. Отключите его командой:

sudo defaults write /Library/Preferences/com.apple.Bluetooth.plist ControllerPowerState -bool false

Затем перезагрузитесь. Также проверьте, не разрядилась ли батарея клавиатуры.

Можно ли использовать игровую клавиатуру (Razer, Corsair) на Хакинтош?

Да, но часть функций (RGB-подсветка, макросы) будет недоступна без фирменного ПО. Для базовой работы достаточно стандартных драйверов. Для RGB используйте OpenRGB, для макросов — Karabiner-Elements или BetterTouchTool.