]> git.donarmstrong.com Git - qmk_firmware.git/blobdiff - QMK-Overview.md
Updated Home (markdown)
[qmk_firmware.git] / QMK-Overview.md
index 8ae0d136ee5c3e2447d13ede5fd8bbe7c53533f7..8803d7c554789914a986459bb920a9669255e05d 100644 (file)
@@ -48,10 +48,28 @@ In the above commands, replace:
 * `<programmer>` The programmer to use. Most keyboards use `dfu`, but some use `teensy`. Infinity keyboards use `dfu-util`. Check the readme file in the keyboard folder to find out which programmer to use.
   * If you  don't add `-<programmer` to the command line, the firmware will be still be compiled into a hex file, but the upload will be skipped.
 
-**NOTE:** Some operating systems will refuse to program unless you run the make command as root for example `sudo make dfu`
+**NOTE:** Some operating systems will refuse to program unless you run the make command as root for example `sudo make clueboard-default-dfu`
 
 ## Make Examples
 
 * Build all Clueboard keymaps: `make clueboard`
 * Build the default Planck keymap: `make planck-rev4-default`
-* Build and flash your ergodox-ez: `make ergodox-ez-default-teensy`
\ No newline at end of file
+* Build and flash your ergodox-ez: `make ergodox-ez-default-teensy`
+
+# The `config.h` file
+
+There are 2 `config.h` locations:
+
+* keyboard (`/keyboards/<keyboard>/`)
+* keymap (`/keyboards/<keyboard>/keymaps/<keymap>/`)
+
+The keyboard `config.h` is included only if the keymap one doesn't exist. The format to use for your custom one [is here](/doc/keymap_config_h_example.h). If you want to override a setting from the parent `config.h` file, you need to do this:
+
+```c
+#undef MY_SETTING
+#define MY_SETTING 4
+```
+
+For a value of `4` for this imaginary setting. So we `undef` it first, then `define` it.
+
+You can then override any settings, rather than having to copy and paste the whole thing.
\ No newline at end of file