Перейти к содержимому

Прошивка SRGBmods QMK

Благодаря команде модераторов подавляющее большинство клавиатур, поддерживаемых QMK, теперь доступны сообществу в виде предварительно скомпилированных прошивок. (Для поддержки клавиатуры требуется поддержка RGB Matrix в QMK.) Исходный код GPL для создания этой прошивки можно найти здесь.

Файлы прошивок можно найти здесь.

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

(Перед прошивкой обязательно сделайте резервную копию текущей раскладки с помощью VIA, чтобы иметь возможность восстановить её после!)

Инструкции по прошивке обычно предоставляются производителем клавиатуры. Если инструкции предполагают использование QMK Toolbox — убедитесь, что запускаете QMK Toolbox от имени администратора и устанавливаете драйверы внутри QMK Toolbox!

Вы также можете попросить помощи в каналах QMK на этом Discord. (Пожалуйста, задавайте вопросы только на указанном Discord: если спросить в основном Discord QMK, вас направят к нам! — Что, очевидно, создаёт неудобства…)

После прошивки клавиатуры прочтите руководство ниже для начала разработки плагина клавиатуры.


Начиная с SignalRGB 2.3.20 репозиторий дополнений QMK-плагинов включён по умолчанию. В настройках этого дополнения есть несколько веток, которые могут включить поддержку вашей клавиатуры. В SignalRGB перейдите в Настройки / Настройки дополнений / QMK-Plugins:

Main выбрана по умолчанию и включает хорошо известные работающие плагины; остальные ветки говорят сами за себя… Если клавиатура не заработала после выбора любой из веток, возможно, потребуется создать пользовательский плагин. Инструкции ниже:

  1. После прошивки клавиатуры нужно изменить плагин клавиатуры ниже, чтобы SignalRGB заработал с ней.
  • Пример плагина клавиатуры можно скачать здесь: QMK_Keyboard_Example.js
  • Дополнительные шаблоны плагинов (Full, TKL, 96%, 75%, 65%, 64%, 60% и т. д.) можно скачать здесь.
  • После загрузки плагина клавиатуры из любого из вышеуказанных источников откройте его в текстовом редакторе.
export function Name() { return "QMK Keyboard"; }
export function VendorId() { return 0x0000; }
export function ProductId() { return 0x0000; }
export function Publisher() { return "WhirlwindFX"; }
export function Size() { return [21, 6]; }
export function DefaultPosition(){return [10, 100]; }
export function DefaultScale(){return 8.0}
export function ControllableParameters() {
return [
{"property":"shutdownColor", "group":"lighting", "label":"Shutdown Color", "min":"0", "max":"360", "type":"color", "default":"009bde"},
{"property":"LightingMode", "group":"lighting", "label":"Lighting Mode", "type":"combobox", "values":["Canvas", "Forced"], "default":"Canvas"},
{"property":"forcedColor", "group":"lighting", "label":"Forced Color", "min":"0", "max":"360", "type":"color", "default":"009bde"},
];
}
  1. После открытия плагина клавиатуры вы увидите экран, похожий на показанный выше.
  • Необходимо заполнить некоторые из этих полей, начиная с поля Name.
  • В поле Name нужно ввести название клавиатуры, для которой разрабатывалась прошивка.
export function Name() { return "Massdrop CTRL QMK Keyboard"; }
  1. Далее необходимо заполнить VendorId для клавиатуры. (Следующее пошаговое описание со скриншотами можно пропустить, воспользовавшись этой ссылкой.)
  • Для поиска VendorId откройте SignalRGB.
  • Нажмите значок шестерёнки настроек в нижнем левом углу.

Затем нажмите Информация об устройствах.

Найдите клавиатуру и запишите её VendorID и ProductID.

Теперь заполните поля VendorId и ProductId этими значениями.

export function Name() { return "Massdrop CTRL QMK Keyboard"; }
export function VendorId() { return 0x04d8; }
export function ProductId() { return 0xEED2; }
  1. Следующее поле — Publisher. Можно указать своё имя, псевдоним или никнейм.
export function Name() { return "Massdrop CTRL QMK Keyboard"; }
export function VendorId() { return 0x04d8; }
export function ProductId() { return 0xEED2; }
export function Publisher() { return "WhirlwindFX"; }
  1. Теперь с полями закончено, переходим к массивам.

Нужно изменить 3 массива: vKeys, vKeynames и vKeyPositions

  • Массив vKeys привязывает каждую клавишу клавиатуры к её позиции в RGB-данных, отправляемых на клавиатуру.
  • Массив vKeyNames показывает, какая клавиша соответствует каждому vKey и vKeyPosition.
  • Массив vKeyPositions указывает SignalRGB, где расположена каждая клавиша на клавиатуре.
  • Сначала измените массив vKeyNames в соответствии с вашей клавиатурой.
  • Это означает, что нужно переупорядочить vKeyNames так, чтобы они соответствовали вашей клавиатуре.
    • В нашем случае потребовалось удалить клавиши и реорганизовать оставшиеся, так как наша плата — TKL.

Затем обновите массив vKeyPositions так же, как обновлялся массив vKeyNames.

Наконец, обновите массив vKeys так, чтобы он соответствовал массивам vKeyNames и vKeysPositions.

  1. Теперь сохраните файл плагина в %userprofile%/Documents/WhirlwindFX/plugins, затем перезапустите SignalRGB.
  • Клавиатура должна начать светиться и реагировать на SignalRGB.

Если клавиатура не светится или не реагирует должным образом на SignalRGB:

Заголовок раздела «Если клавиатура не светится или не реагирует должным образом на SignalRGB:»
  1. Перейдите на страницу «Устройства» в SignalRGB.

  1. Затем перейдите к клавиатуре и нажмите значок шестерёнки.

  1. Затем нажмите переключатель «Show Console».

  • В консоли должно быть Device Total LED Count. Сравните его с количеством назначенных светодиодов.
    • В нашем случае — 119 Total LEDs.

Если количество светодиодов совпадает с количеством vKeys:

Заголовок раздела «Если количество светодиодов совпадает с количеством vKeys:»
  • Убедитесь, что поле size вашего плагина на 1 больше в каждом направлении, чем наибольшая координата светодиода:
    • В нашем случае самый дальний светодиод — в позиции [17,6], поэтому поле Size должно быть [18,7].
export function Size() { return [18, 7]; }

Если количество светодиодов не совпадает с количеством vKeys:

Заголовок раздела «Если количество светодиодов не совпадает с количеством vKeys:»
  • Нужно добавить vKeys, vKeyPositions и vKeyNames до совпадения с Total LED Count.
    • В нашем случае устройство имело 119 светодиодов, поэтому потребовалось добавить 32 светодиода для подсветки снизу клавиатуры.

  • Если количество vKeys совпадает с Total LED Count и устройство правильно отмасштабировано, но светодиоды неправильно привязаны:
  • Присоединитесь к Discord и попросите помощи в каналах QMK.