Quantum Mechanical Keyboard Firmware
This is a keyboard firmware based on the tmk_keyboard firmware with some useful features for Atmel AVR and ARM controllers, and more specifically, the OLKB product line, the ErgoDox EZ keyboard, and the Clueboard product line.
Documentation
The docs are powered by VitePress. They are also viewable offline; see Previewing the Documentation for more details.
You can request changes by making a fork and opening a pull request.
Supported Keyboards
The project also includes community support for lots of other keyboards.
Maintainers
QMK is developed and maintained by Jack Humbert of OLKB with contributions from the community, and of course, Hasu. The OLKB product firmwares are maintained by Jack Humbert, the Ergodox EZ by ZSA Technology Labs, the Clueboard by Zach White, and the Atreus by Phil Hagelberg.
Official Website
qmk.fm is the official website of QMK, where you can find links to this page, the documentation, and the keyboards supported by QMK.
Installation
To install (on Arch), run:
$ sudo pacman -S qmkThen clone this repo (this guide assuesm ~/Dev-Config/), and run:
$ qmk setup -H ~/Dev-Config/qmk_firmwareFlashing the Sofle
In order to flash the sofle, disconnect the keyboard from the computer, then detach the TRRS cable between the halves. Then connect one half first, and run:
$ qmk flash -kb sofle/rev1 -km n1ghtmareWhen asked to reset your controller press the reset button next to the OLED screen (bottom right).
Flashing the Sofle Choc
In order to flash the sofle choc, disconnect the keyboard from the computer, then detach the TRRS cable between the halves. Then connect the left half first, and double press the button below the OLED screens. This will cause the half to appear as a USB storage device on the system, if you're on Linux do:
$ lsblk -fFind the newly attached device (in this example it's /dev/sdd1), then mount it to a folder of your choosing:
$ sudo mount /dev/sdd1 ~/Mount/soflechoc
Go to the qmk folder (in this case it's ~/Dev-Config/qmk_firmware/), and switch to the choc2 branch. You might need to run:
$ qmk clean --allNow compile the firmware using the following command:
$ qmk compile -kb sofle_choc -km n1ghtmare -e CONVERT_TO=promicro_rp2040Once the compile is done, a new file will appear in the qmk folder. Copy that file to the folder the USB flash device was mounted to (in this case ~/Mount/soflechoc/). Disconnect the half, connect the other one, mount it and copy the same file to it.