-
You will need to sign up for a GitHub account, and fork this repository so you can edit it.
-
Navigate to the Actions tab and click the "I understand my workflows, go ahead and run them" button to enable builds.
-
Edit the files for your keyboard(s) in the
config
folder..conf
files configure keyboard features, and.keymap
files change the keymap. Settings indefault.conf
will apply to all keyboards; to make keyboard-specific changes, create a file named after the keyboard (e.g.jlwffre.conf
) and change the settings there. -
Edit the
build.yaml
file to include the board(s) and/or shield(s) you need to build firmware for. -
After committing your changes, your firmware will begin compiling. Assuming there are no typos or other problems, it will eventually be downloadable from the Actions tab.
-
Flash the firmware that matches the board and/or shield you're using, e.g.
jlwffre-zmk.uf2
.
The keymaps here may still be useful, but you probably want to add the zmk-jlw-keyboards
ZMK module to your existing west
manifest instead.
Clicking into the details of the action will show the error log. While very long, this log will often show the exact line number causing the problem in your keymap so it is worth reading closely. Check this against the last changes you made.
Keep in mind that each ZMK "keycode" is made up of a behavior which always has an &
in front (e.g. &kp
for a key press), followed by any details for that behavior.
Resetting to bootloader is just &bootloader
while the letter Z
is &kp Z
. And "select Bluetooth profile #1" is &bt BT_SEL 1
). Read the docs closely.
If you don't remember which profile on the keyboard was used to connect to a specific host, you may have to clear them all. See ZMK's documentation for more information.
As a last resort, try flashing the settings_reset
firmware for your board; this will force-clear everything.
- ZMK's troubleshooting page
- Stop by the jlw channel in the 40s Discord
- Ask the ZMK experts in ZMK's Discord