This document lists all available commands for generating and flashing firmware for each keyboard type in this repository.
- Install direnv:
direnv allow - Enter nix shell:
nix develop(or use direnv automatically)
This repository supports three keyboard types:
- Totem (seeeduino_xiao_ble controller)
- Eyelash Corne (custom board)
- Sofle (nice_nano_v2 controller)
# Build both left and right firmware
nix build .#totem
# Build output location: ./result/# Build both left and right firmware
nix build .#eyelash_corne
# Build output location: ./result/# Build both left and right firmware
nix build .#sofle
# Build output location: ./result/# Build all keyboards at once
nix build .#totem .#eyelash_corne .#sofle# Flash firmware to connected device
nix run .#flash-totem# Flash firmware to connected device
nix run .#flash-eyelash_corne# Flash firmware to connected device
nix run .#flash-sofle# Update ZMK and dependencies
nix run .#update# Enter development environment
nix developIf automatic flashing doesn't work, you can manually flash the generated firmware:
- Build the firmware using the commands above
- Put your keyboard into bootloader mode
- Copy the appropriate
.uf2file from./result/to the mounted bootloader drive
After building, firmware files are located in ./result/:
totem_left.uf2andtotem_right.uf2eyelash_corne_left.uf2andeyelash_corne_right.uf2sofle_left.uf2andsofle_right.uf2
Each keyboard has its configuration files in:
- Totem:
config/boards/shields/totem/ - Eyelash Corne:
boards/arm/eyelash_corne/andconfig/ - Sofle:
config/sofle.keymapandconfig/sofle.conf