QMK

Как прошить клавиатуру под QMK

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

Ваша клавиатура работает на двух микроконтроллерах, если она раздельная. И на одном если это моносплит.

Контроллеры могут быть разными - Pro Micro, Elite-C, Blackpill, RP2040, nRF22480, nRF52840, nRF52833 и так далее.

Controllers

Для того чтобы ваша клавиатура работала вам нужно прошить этот контроллер. Для этого нужно сначала скомпилировать прошивку, а потом загрузить ее на контроллер.

Звучит страшно, но на самом деле это довольно простой процесс. Особенно если для контроллера есть поддержка VIA или Vial.

Прошивка клавиауры на QMK

Для того чтобы прошить клавиатуру с помощью QMK, нам надо для начала установить непосредственно сам QMK.

Open the QMK MSYS shortcut

Run qmk setup

Прошивка на Mac

Установка qmk через brew

$ brew tap qmk/qmk
$ brew install qmk
$ qmk setup

qmk setup может остановиться с ошибкой. Исправьте их))) и попробуйте заново

Установка QMK Toolbox

Просто скачайте pkg файл отсюда https://github.com/qmk/qmk_toolbox/releases

Изменяем раскладку в QMK

Для того чтобы изменить раскладку вам нужно отредактировать файл кеймапа своей клавиатуры

Например, у вас клавиатура 3x6 с трекболом

Для этого нужно редактировать файл bastardkb/charybdis/3x6/keymaps/default/keymap.c

Если у вас 4x6, то соответственно редактируем charybdis/4x6/keymaps/default/keymap.c

Пример нулевого слоя charybdis/4x6/keymaps/default/keymap.c

  [LAYER_BASE] = LAYOUT(
  // ╭──────────────────────────────────────────────────────╮ ╭──────────────────────────────────────────────────────╮
        KC_ESC,    KC_1,    KC_2,    KC_3,    KC_4,    KC_5,       KC_6,    KC_7,    KC_8,    KC_9,    KC_0, KC_MINS,
  // ├──────────────────────────────────────────────────────┤ ├──────────────────────────────────────────────────────┤
        KC_TAB,    KC_Q,    KC_W,    KC_E,    KC_R,    KC_T,       KC_Y,    KC_U,    KC_I,    KC_O,    KC_P, KC_LBRC,
  // ├──────────────────────────────────────────────────────┤ ├──────────────────────────────────────────────────────┤
       KC_LSFT,    KC_A,    KC_S,    KC_D,    KC_F,    KC_G,       KC_H,    KC_J,    KC_K,    KC_L, KC_SCLN, KC_QUOT,
  // ├──────────────────────────────────────────────────────┤ ├──────────────────────────────────────────────────────┤
       KC_LCTL,    KC_Z,    KC_X,    KC_C,    KC_V,    KC_B,       KC_N,    KC_M, KC_COMM,  KC_DOT, KC_SLSH, KC_RBRC,
  // ╰──────────────────────────────────────────────────────┤ ├──────────────────────────────────────────────────────╯
                                     LOWER, KC_LGUI, KC_SPC,       KC_ENT,   RAISE,
                                           XXXXXXX, XXXXXXX,      KC_LALT
  //                            ╰───────────────────────────╯ ╰──────────────────╯
  ),

Кей коды можно взять например тут https://config.qmk.fm/#/bastardkb/charybdis/4x6/v2/stemcell/LAYOUT

Замечание: Для работы с режимами трекбола используйте коды: DRGSCRL, SNIPING, CARRETM

По своему желанию можете собрать и кеймап с поддержкой VIA или Vial.

Компилируем прошивку

Первым делом нужно установить QMK и в разорхивировать в архив bastardkb.zip из этого репозитария. Для этого берем и переименовываем папку bastardkb в вашей папке qmk/keyboards например в bastardkb2. А после этого разорхивируем туда папку из ахрива bastardkb.zip

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

Если у вас Scylla с трекболом указываем charybdis/4x6 Если у вас TBK Mini с трекболом указываем charybdis/3x6 Если у вас Charybdis Mini с трекболом указываем charybdis/3x5

Кроме того нужно знать какой у вас контроллер. Чаще всего это promicro. (Данного контроллера нет в общем репозитории https://github.com/qmk/qmk_firmware поэтому используйте прошивку из архива)

Например, bastardkb/charybdis/3x6/v2/promicro Обратите внимание что файл конфигов лежит в другой папке bastardkb/charybdis/3x6/keymaps/default/keymap.c. Так и должно быть.

В итоге, сама команда для компиляции прошивки будет выглядеть как-то так

qmk compile -kb bastardkb/charybdis/3x6/v2/promicro -km default

Будет скомпилирован файл (.hex или .bin), который нужно будет залить на контроллер клавиатуры.

>>> Если вы попробуете залить на контроллер прошивку, скомпилированную для другого контроллера, вы можете получить непредвиденное поведение, вплоть до отказа контроллера.

Закачиваем прошивку в клавиатуру

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

После этого запусаем программу "QMK Toolbox"

После этого по очереди подключаем каждую половину к компьютеру и входим в режим бутлоадера Это делается двойным нажатием кнопки reset. Чаще всего это маленькая кнопка на дне клавиатуры.

Далее в программе "QMK Toolbox" станет активной кнопка "Flash". Указываем путь до файла с прошивкой и нажимаем на эту кнопку.

Хочу изменить чувствительность трекбола, чувствительность прокрутки или чувствительность прокрутки каретки

Все это делается в файле charybdis/charybdis.c

Раскладка

Для этой клавиатуры (да и для всех раздельных клавиатур) нет какой-то универсальной раскладки — то есть каждый составляет раскладку которая будет удобна лично ему.

Поэтому, пожалуйста, не нужно задавать вопросы вроде "А где у этой клавиатуры слой с цифрами?". Слой с цифрами будет там где вы этого захотите.