Browse Source

Added customization page

xmkb
Kevin 4 years ago
parent
commit
dad2d339b3
  1. 33
      docs/docs/customization.md
  2. 2
      docs/docs/feature/keymaps.md
  3. 2
      docs/docs/hardware.md
  4. 2
      docs/docs/intro.md
  5. 24
      docs/docs/user-setup.md
  6. 2
      docs/sidebars.js

33
docs/docs/customization.md

@ -0,0 +1,33 @@
---
id: customization
title: Customizing ZMK
sidebar_label: Customizing ZMK
---
After verifying you can successfully flash the default firmware, you will probably want to begin customizing your keymap and other keyboard options.
## Configuration Changes
The setup script creates a `config/<shield>.conf` file that allows you to add additional configuration options to
control what features and options are built into your firmware. Opening that file with your text editor will allow you to see the
various config settings that can be commented/uncommented to modify how your firmware is built.
## Keymap
Once you have the basic user config completed, you can find the keymap file in `config/<shield>.keymap` and customize from there.
Refer to the [Keymap](/docs/feature/keymaps) documentation to learn more.
## Publishing
After making any changes you want, you should commit the changes and then push them to GitHub. That will trigger a new
GitHub Actions job to build your firmware which you can download once it completes.
:::note
If you need to, a review of [Learn The Basics Of Git In Under 10 Minutes](https://www.freecodecamp.org/news/learn-the-basics-of-git-in-under-10-minutes-da548267cc91/) will help you get these steps right.
:::
## Flashing Your Changes
For normal keyboards, follow the same flashing instructions as before to flash your updated firmware.
For split keyboards, only the central (left) side will need to be reflashed if you are just updating your keymap.

2
docs/docs/feature/keymaps.md

@ -4,7 +4,7 @@ title: Keymaps & Behaviors
sidebar_label: Keymaps sidebar_label: Keymaps
--- ---
ZMK uses an declarative approach to keymaps, instead of using C code for all keymap configuration. ZMK uses a declarative approach to keymaps instead of using C code for all keymap configuration.
Right now, ZMK uses the devicetree syntax to declare those keymaps; future work is envisioned for Right now, ZMK uses the devicetree syntax to declare those keymaps; future work is envisioned for
supporting dynamic loading of declarative keymaps, e.g. over USB Mass Storage or via a custom BLE supporting dynamic loading of declarative keymaps, e.g. over USB Mass Storage or via a custom BLE
service. service.

2
docs/docs/hardware.md

@ -11,7 +11,7 @@ have had their hardware details codified in boards/shields for ZMK.
::: :::
Being built on a solid technical foundation of the Zephyr™ RTOS, it's possible to make ZMK support a wide diversity of hardware targets. With the solid technical foundation of Zephyr™ RTOS, ZMK can support a wide diversity of hardware targets.
That being said, there are currently only a few specific [boards](/docs/faq#what-is-a-board)/[shields](/docs/faq#what-is-a-shield) that have been written and tested by the ZMK contributors. That being said, there are currently only a few specific [boards](/docs/faq#what-is-a-board)/[shields](/docs/faq#what-is-a-shield) that have been written and tested by the ZMK contributors.
## Boards ## Boards

2
docs/docs/intro.md

@ -5,7 +5,7 @@ sidebar_label: Introduction
--- ---
ZMK Firmware is an open source (MIT) keyboard ZMK Firmware is an open source (MIT) keyboard
firmware built on the [Zephyr™ Project](https://zephyrproject.com/) RTOS. firmware built on the [Zephyr™ Project](https://zephyrproject.com/) Real Time Operating System (RTOS).
The goal is to provider a powerful, featureful keyboard firmware that is free The goal is to provider a powerful, featureful keyboard firmware that is free
of licensing issues that prevent upstream BLE support as a first-class of licensing issues that prevent upstream BLE support as a first-class

24
docs/docs/user-setup.md

@ -184,27 +184,3 @@ Connecting your keyboard wirelessly is the same as adding other Bluetooth devide
### Connecting Split Keyboard Halves ### Connecting Split Keyboard Halves
For split keyboards, after flashing each half individually you can connect them together by resetting them at the same time. Within a few seconds of resetting, both halves should automatically connect to each other. For split keyboards, after flashing each half individually you can connect them together by resetting them at the same time. Within a few seconds of resetting, both halves should automatically connect to each other.
## Customization
### Configuration Changes
The setup script creates a `config/<shield>.conf` file that allows you to add additional configuration options to
control what features and options are built into your firmware. Opening that file with your text editor you should see
various config settings that can be commented/uncommented to modify how your firmware is built.
### Keymap
Once you have the basic user config completed, you can find the file in `config/<shield>.keymap` and customize from there.
Refer to the [Keymap](/docs/feature/keymaps) documentation to learn more.
### Publishing
After making any changes you want, you should commit the changes and then push them to GitHub. That will trigger a new
GitHub Actions job to build your firmware which you can download once it completes.
:::note
If you need to, a review of [Learn The Basics Of Git In Under 10 Minutes](https://www.freecodecamp.org/news/learn-the-basics-of-git-in-under-10-minutes-da548267cc91/) will help you get these steps right.
:::
For split keyboards, only the central (usually left) side will need to be reflashed after making updates to your keymap.

2
docs/sidebars.js

@ -1,6 +1,6 @@
module.exports = { module.exports = {
someSidebar: { someSidebar: {
"Getting Started": ["intro", "hardware", "faq", "user-setup", "bond-reset"], "Getting Started": ["intro", "hardware", "faq", "user-setup","customization", "bond-reset"],
Features: [ Features: [
"feature/keymaps", "feature/keymaps",
"feature/displays", "feature/displays",

Loading…
Cancel
Save