Skip to main content
To change what a configurator can’t, such as the dial rotation or firmware macros, you build your own firmware. GitHub Actions compiles it for you in the cloud, so you don’t need a ZMK development environment or build tools on your computer.

What is a fork?

A fork is your own copy of a GitHub repository. When you fork the MinimalPad firmware repository, you get your own version at https://github.com/YOUR-USERNAME/zmk-config-minimalpad. Changes in your fork only affect your copy.
GitHub’s web editor is enough for small changes such as the encoder rotation. You don’t need Git or any other setup on your computer.

Steps

1

Sign in to GitHub

Go to github.com and sign in. If you don’t have an account, create a free one. You don’t need a paid plan to build the firmware.
2

Fork the firmware repository

Open the firmware repository, click Fork in the top-right corner, then click Create fork.
3

Enable Actions on your fork

In your fork, click Actions. GitHub turns workflows off in a new fork, so click I understand my workflows, go ahead and enable them.
4

Make your changes

Edit the firmware files in your fork. Advanced customization explains which files to change.In the web editor, open a file, click the pencil icon, make your change and click Commit changes. If you use Git on your computer, push your changes to the main branch of your fork.
5

Wait for the build

A push that changes the firmware starts a build. To start one yourself, click Actions, select Build ZMK firmware and click Run workflow.A build takes a few minutes. A green check mark means it succeeded. A red ✕ means something went wrong: click the run to see the error.
6

Download the firmware

Click the finished run and scroll to Artifacts at the bottom of the page. Click the file listed there to download it. It is a .zip file. Unzip it to get minimalpad_with_studio.uf2.
7

Flash the firmware

Flash minimalpad_with_studio.uf2 with the steps in Update the firmware, starting from Connect MinimalPad to your computer.
Keys you changed and saved from a configurator keep that setting after you flash, even if you change them in the keymap file. Change those keys in the configurator instead.