aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorskullY <skullydazed@gmail.com>2020-02-20 11:06:27 -0800
committerskullydazed <skullydazed@users.noreply.github.com>2020-03-05 16:00:10 -0800
commitd1c18086d23c1f510ee434e1aa12b203f36e4794 (patch)
tree7d3560252ab9ed7ae8ed002b0b7a388813213493
parent4ef10a424ae1174bc108de9014dfd1f0ff6751e0 (diff)
downloadqmk_firmware-d1c18086d23c1f510ee434e1aa12b203f36e4794.tar.gz
qmk_firmware-d1c18086d23c1f510ee434e1aa12b203f36e4794.zip
wip
-rw-r--r--docs/_summary.md157
-rw-r--r--docs/features.md42
-rw-r--r--docs/getting_started_build_tools.md141
-rw-r--r--docs/hardware.md8
-rw-r--r--docs/index.html2
5 files changed, 78 insertions, 272 deletions
diff --git a/docs/_summary.md b/docs/_summary.md
index a429138b8..66465667a 100644
--- a/docs/_summary.md
+++ b/docs/_summary.md
@@ -1,21 +1,23 @@
1* [Complete Newbs Guide](newbs.md) 1* [Complete Newbs Guide](newbs.md)
2 * [Getting Started](newbs_getting_started.md) 2 * [Introduction](newbs_getting_started.md)
3 * [Building Your First Firmware](newbs_building_firmware.md) 3 * [Building Your First Firmware](newbs_building_firmware.md)
4 * [Flashing Firmware](newbs_flashing.md) 4 * [Flashing Firmware](newbs_flashing.md)
5 * [Testing and Debugging](newbs_testing_debugging.md) 5 * [Testing and Debugging](newbs_testing_debugging.md)
6 * [Getting Help](getting_started_getting_help.md)
7
8* Guides
9 * [ARM Debugging Guide](arm_debugging.md)
6 * [Best Git Practices](newbs_git_best_practices.md) 10 * [Best Git Practices](newbs_git_best_practices.md)
7 * [Using Your Fork's Master](newbs_git_using_your_master_branch.md) 11 * [Contributing to QMK](contributing.md)
8 * [Resolving Merge Conflicts](newbs_git_resolving_merge_conflicts.md) 12 * [Customizing Functionality](custom_quantum_functions.md)
9 * [Resynchronizing a Branch](newbs_git_resynchronize_a_branch.md) 13 * [Github Best Practices](getting_started_github.md)
14 * [Hand Wiring Guide](hand_wire.md)
15 * [ISP Flashing Guide](isp_flashing_guide.md)
16 * [Flashing Firmware](flashing.md)
17 * [Keymap Overview](keymap.md)
10 * [Learning Resources](newbs_learn_more_resources.md) 18 * [Learning Resources](newbs_learn_more_resources.md)
11
12* [QMK Basics](README.md)
13 * [QMK Introduction](getting_started_introduction.md)
14 * [QMK CLI](cli.md) 19 * [QMK CLI](cli.md)
15 * [QMK CLI Config](cli_configuration.md) 20 * [Vagrant Guide](getting_started_vagrant.md)
16 * [Contributing to QMK](contributing.md)
17 * [How to Use Github](getting_started_github.md)
18 * [Getting Help](getting_started_getting_help.md)
19 21
20* [Breaking Changes](breaking_changes.md) 22* [Breaking Changes](breaking_changes.md)
21 * [My Pull Request Was Flagged](breaking_changes_instructions.md) 23 * [My Pull Request Was Flagged](breaking_changes_instructions.md)
@@ -28,87 +30,80 @@
28 * [Keymap](faq_keymap.md) 30 * [Keymap](faq_keymap.md)
29 * [Driver Installation with Zadig](driver_installation_zadig.md) 31 * [Driver Installation with Zadig](driver_installation_zadig.md)
30 32
31* Detailed Guides 33* QMK Features
32 * [Install Build Tools](getting_started_build_tools.md) 34 * [Keycodes](keycodes.md)
33 * [Vagrant Guide](getting_started_vagrant.md) 35 * [Basic Keycodes](keycodes_basic.md)
34 * [Build/Compile Instructions](getting_started_make_guide.md) 36 * [US ANSI Shifted Keys](keycodes_us_ansi_shifted.md)
35 * [Flashing Firmware](flashing.md) 37 * [Quantum Keycodes](quantum_keycodes.md)
36 * [Customizing Functionality](custom_quantum_functions.md) 38 * [Advanced Keycodes](feature_advanced_keycodes.md)
37 * [Keymap Overview](keymap.md) 39 * [Auto Shift](feature_auto_shift.md)
38 40 * Software Features
39* [Hardware](hardware.md) 41 * [Combos](feature_combo.md)
40 * [Compatible Microcontrollers](compatible_microcontrollers.md) 42 * [Command](feature_command.md)
41 * [AVR Processors](hardware_avr.md) 43 * [Debounce API](feature_debounce_type.md)
42 * [Drivers](hardware_drivers.md) 44 * [Dynamic Macros](feature_dynamic_macros.md)
45 * [Grave Escape](feature_grave_esc.md)
46 * [Key Lock](feature_key_lock.md)
47 * [Leader Key](feature_leader_key.md)
48 * [Macros](feature_macros.md)
49 * [Mouse Keys](feature_mouse_keys.md)
50 * [One Shot Keys](feature_advanced_keycodes.md#one-shot-keys)
51 * [Pointing Device](feature_pointing_device.md)
52 * [Space Cadet](feature_space_cadet.md)
53 * [Swap Hands](feature_swap_hands.md)
54 * [Tap Dance](feature_tap_dance.md)
55 * [Terminal](feature_terminal.md)
56 * [Unicode](feature_unicode.md)
57 * [Userspace](feature_userspace.md)
58 * Hardware Features
59 * [Audio](feature_audio.md)
60 * [Backlight](feature_backlight.md)
61 * [Bluetooth](feature_bluetooth.md)
62 * [Bootmagic](feature_bootmagic.md)
63 * [Custom Matrix](custom_matrix.md)
64 * [DIP Switch](feature_dip_switch.md)
65 * [Encoders](feature_encoders.md)
66 * [Haptic Feedback](feature_haptic_feedback.md)
67 * [HD44780 LCD Controller](feature_hd44780.md)
68 * [LED Matrix](feature_led_matrix.md)
69 * [OLED Driver](feature_oled_driver.md)
70 * [Proton C Conversion](proton_c_conversion.md)
71 * [PS/2 Mouse](feature_ps2_mouse.md)
72 * [RGB Lighting](feature_rgblight.md)
73 * [RGB Matrix](feature_rgb_matrix.md)
74 * [Split Keyboard](feature_split_keyboard.md)
75 * [Stenography](feature_stenography.md)
76 * [Thermal Printer](feature_thermal_printer.md)
77 * [Velocikey](feature_velocikey.md)
43 78
44* Reference 79* QMK Reference
45 * [Keyboard Guidelines](hardware_keyboard_guidelines.md)
46 * [Config Options](config_options.md) 80 * [Config Options](config_options.md)
47 * [Keycodes](keycodes.md) 81 * [Make Documentation](getting_started_make_guide.md)
48 * [Coding Conventions - C](coding_conventions_c.md)
49 * [Coding Conventions - Python](coding_conventions_python.md)
50 * [Documentation Best Practices](documentation_best_practices.md) 82 * [Documentation Best Practices](documentation_best_practices.md)
51 * [Documentation Templates](documentation_templates.md) 83 * [Documentation Templates](documentation_templates.md)
52 * [Glossary](reference_glossary.md) 84 * [Glossary](reference_glossary.md)
85 * [Community Layouts](feature_layouts.md)
53 * [Unit Testing](unit_testing.md) 86 * [Unit Testing](unit_testing.md)
54 * [Useful Functions](ref_functions.md) 87 * [Useful Functions](ref_functions.md)
55 * [Configurator Support](reference_configurator_support.md) 88 * [Configurator Support](reference_configurator_support.md)
56 * [info.json Format](reference_info_json.md) 89 * [info.json Format](reference_info_json.md)
57 * [Python CLI Development](cli_development.md)
58 90
59* [Features](features.md) 91* C Development
60 * [Basic Keycodes](keycodes_basic.md) 92 * [AVR Processors](hardware_avr.md)
61 * [US ANSI Shifted Keys](keycodes_us_ansi_shifted.md) 93 * [Coding Conventions](coding_conventions_c.md)
62 * [Quantum Keycodes](quantum_keycodes.md) 94 * [Compatible Microcontrollers](compatible_microcontrollers.md)
63 * [Advanced Keycodes](feature_advanced_keycodes.md) 95 * [Drivers](hardware_drivers.md)
64 * [Audio](feature_audio.md) 96 * [ADC Driver](adc_driver.md)
65 * [Auto Shift](feature_auto_shift.md) 97 * [I2C Driver](i2c_driver.md)
66 * [Backlight](feature_backlight.md) 98 * [WS2812 Driver](ws2812_driver.md)
67 * [Bluetooth](feature_bluetooth.md) 99 * [EEPROM Driver](eeprom_driver.md)
68 * [Bootmagic](feature_bootmagic.md)
69 * [Combos](feature_combo.md)
70 * [Command](feature_command.md)
71 * [Debounce API](feature_debounce_type.md)
72 * [DIP Switch](feature_dip_switch.md)
73 * [Dynamic Macros](feature_dynamic_macros.md)
74 * [Encoders](feature_encoders.md)
75 * [Grave Escape](feature_grave_esc.md)
76 * [Haptic Feedback](feature_haptic_feedback.md)
77 * [HD44780 LCD Controller](feature_hd44780.md)
78 * [Key Lock](feature_key_lock.md)
79 * [Layouts](feature_layouts.md)
80 * [Leader Key](feature_leader_key.md)
81 * [LED Matrix](feature_led_matrix.md)
82 * [Macros](feature_macros.md)
83 * [Mouse Keys](feature_mouse_keys.md)
84 * [OLED Driver](feature_oled_driver.md)
85 * [One Shot Keys](feature_advanced_keycodes.md#one-shot-keys)
86 * [Pointing Device](feature_pointing_device.md)
87 * [PS/2 Mouse](feature_ps2_mouse.md)
88 * [RGB Lighting](feature_rgblight.md)
89 * [RGB Matrix](feature_rgb_matrix.md)
90 * [Space Cadet](feature_space_cadet.md)
91 * [Split Keyboard](feature_split_keyboard.md)
92 * [Stenography](feature_stenography.md)
93 * [Swap Hands](feature_swap_hands.md)
94 * [Tap Dance](feature_tap_dance.md)
95 * [Terminal](feature_terminal.md)
96 * [Thermal Printer](feature_thermal_printer.md)
97 * [Unicode](feature_unicode.md)
98 * [Userspace](feature_userspace.md)
99 * [Velocikey](feature_velocikey.md)
100
101* For Makers and Modders
102 * [Hand Wiring Guide](hand_wire.md)
103 * [ISP Flashing Guide](isp_flashing_guide.md)
104 * [ARM Debugging Guide](arm_debugging.md)
105 * [ADC Driver](adc_driver.md)
106 * [I2C Driver](i2c_driver.md)
107 * [WS2812 Driver](ws2812_driver.md)
108 * [EEPROM Driver](eeprom_driver.md)
109 * [GPIO Controls](internals_gpio_control.md) 100 * [GPIO Controls](internals_gpio_control.md)
110 * [Custom Matrix](custom_matrix.md) 101 * [Keyboard Guidelines](hardware_keyboard_guidelines.md)
111 * [Proton C Conversion](proton_c_conversion.md) 102
103* Python Development
104 * [Coding Conventions](coding_conventions_python.md)
105 * [QMK CLI Config](cli_configuration.md)
106 * [Python CLI Development](cli_development.md)
112 107
113* For a Deeper Understanding 108* For a Deeper Understanding
114 * [How Keyboards Work](how_keyboards_work.md) 109 * [How Keyboards Work](how_keyboards_work.md)
diff --git a/docs/features.md b/docs/features.md
deleted file mode 100644
index 44299bf10..000000000
--- a/docs/features.md
+++ /dev/null
@@ -1,42 +0,0 @@
1# QMK Features
2
3QMK has a staggering number of features for building your keyboard. It can take some time to understand all of them and determine which one will achieve your goal.
4
5
6* [Advanced Keycodes](feature_advanced_keycodes.md) - Change layers, dual-action keys, and more. Go beyond typing simple characters.
7* [Audio](feature_audio.md) - Connect a speaker to your keyboard for audio feedback, midi support, and music mode.
8* [Auto Shift](feature_auto_shift.md) - Tap for the normal key, hold slightly longer for its shifted state.
9* [Backlight](feature_backlight.md) - LED lighting support for your keyboard.
10* [Bluetooth](feature_bluetooth.md) - BlueTooth support for your keyboard.
11* [Bootmagic](feature_bootmagic.md) - Adjust the behavior of your keyboard using hotkeys.
12* [Combos](feature_combo.md) - Custom actions for multiple key holds.
13* [Command](feature_command.md) - Runtime version of bootmagic (Formerly known as "Magic").
14* [Debounce API](feature_debounce_type.md) - Customization of debouncing algorithms, and the ability to add more/custom debouncing.
15* [DIP Switch](feature_dip_switch.md) - Toggle switches for customizing board function.
16* [Dynamic Macros](feature_dynamic_macros.md) - Record and playback macros from the keyboard itself.
17* [Encoders](feature_encoders.md) - Rotary encoders!
18* [Grave Escape](feature_grave_esc.md) - Lets you use a single key for Esc and Grave.
19* [Haptic Feedback](feature_haptic_feedback.md) - Add haptic feedback drivers to your board.
20* [HD44780 LCD Display](feature_hd44780.md) - Support for LCD character displays using the HD44780 standard.
21* [Key Lock](feature_key_lock.md) - Lock a key in the "down" state.
22* [Layouts](feature_layouts.md) - Use one keymap with any keyboard that supports your layout.
23* [Leader Key](feature_leader_key.md) - Tap the leader key followed by a sequence to trigger custom behavior.
24* [LED Matrix](feature_led_matrix.md) - LED Matrix single color lights for per key lighting (Single Color, not RGB).
25* [Macros](feature_macros.md) - Send multiple key presses when pressing only one physical key.
26* [Mouse keys](feature_mouse_keys.md) - Control your mouse pointer from your keyboard.
27* [OLED Driver](feature_oled_driver.md) - Add OLED screens to your keyboard.
28* [One Shot Keys](feature_advanced_keycodes.md#one-shot-keys) - Sticky Keys, lets you hit a key rather than holding it.
29* [Pointing Device](feature_pointing_device.md) - Framework for connecting your custom pointing device to your keyboard.
30* [PS2 Mouse](feature_ps2_mouse.md) - Driver for connecting a PS/2 mouse directly to your keyboard.
31* [RGB Light](feature_rgblight.md) - RGB lighting for your keyboard.
32* [RGB Matrix](feature_rgb_matrix.md) - RGB Matrix lights for per key lighting.
33* [Space Cadet](feature_space_cadet.md) - Use your left/right shift keys to type parenthesis and brackets.
34* [Split Keyboard](feature_split_keyboard.md)
35* [Stenography](feature_stenography.md) - Put your keyboard into Plover mode for stenography use.
36* [Swap Hands](feature_swap_hands.md) - Mirror your keyboard for one handed usage.
37* [Tap Dance](feature_tap_dance.md) - Make a single key do as many things as you want.
38* [Terminal](feature_terminal.md) - CLI interface to the internals of your keyboard.
39* [Thermal Printer](feature_thermal_printer.md) - Connect a thermal printer to your keyboard to be able to toggle on a printed log of everything you type.
40* [Unicode](feature_unicode.md) - Unicode input support.
41* [Userspace](feature_userspace.md) - Share code between different keymaps and keyboards.
42* [Velocikey](feature_velocikey.md) - Allows changes in RGB animation speed based on WPM/Typing speed.
diff --git a/docs/getting_started_build_tools.md b/docs/getting_started_build_tools.md
deleted file mode 100644
index fea20e59b..000000000
--- a/docs/getting_started_build_tools.md
+++ /dev/null
@@ -1,141 +0,0 @@
1# Installing Build Tools
2
3This page describes setting up the build environment for QMK. These instructions cover AVR processors (such as the atmega32u4).
4
5<!-- FIXME: We should have ARM instructions somewhere. -->
6
7**Note:** If this is your first time here, check out the [Complete Newbs Guide](newbs.md) page.
8
9Before continuing, double check that your submodules (third-party libraries) are up to date by running `make git-submodule`.
10
11## Linux
12
13To ensure you are always up to date, you can just run `sudo util/qmk_install.sh`. That should always install all the dependencies needed. **This will run `apt-get upgrade`.**
14
15You can also install things manually, but this documentation might not be always up to date with all requirements.
16
17The current requirements are the following, but not all might be needed depending on what you do. Also note that some systems might not have all the dependencies available as packages, or they might be named differently.
18
19```
20build-essential
21gcc
22unzip
23wget
24zip
25gcc-avr
26binutils-avr
27avr-libc
28dfu-programmer
29dfu-util
30gcc-arm-none-eabi
31binutils-arm-none-eabi
32libnewlib-arm-none-eabi
33git
34```
35
36Install the dependencies with your favorite package manager.
37
38Debian / Ubuntu example:
39
40 sudo apt-get update
41 sudo apt-get install gcc unzip wget zip gcc-avr binutils-avr avr-libc dfu-programmer dfu-util gcc-arm-none-eabi binutils-arm-none-eabi libnewlib-arm-none-eabi
42
43Fedora / Red Hat example:
44
45 sudo dnf install gcc unzip wget zip dfu-util dfu-programmer avr-gcc avr-libc binutils-avr32-linux-gnu arm-none-eabi-gcc-cs arm-none-eabi-binutils-cs arm-none-eabi-newlib
46
47Arch / Manjaro example:
48
49 pacman -S base-devel gcc unzip wget zip avr-gcc avr-binutils avr-libc dfu-util arm-none-eabi-gcc arm-none-eabi-binutils arm-none-eabi-newlib git dfu-programmer dfu-util
50
51## Nix
52
53If you're on [NixOS](https://nixos.org/), or have Nix installed on Linux or macOS, run `nix-shell` from the repository root to get a build environment.
54
55By default, this will download compilers for both AVR and ARM. If you don't need both, disable the `avr` or `arm` arguments, e.g.:
56
57 nix-shell --arg arm false
58
59## macOS
60If you're using [Homebrew](http://brew.sh/), you can use the following commands:
61
62 brew tap osx-cross/avr
63 brew tap osx-cross/arm
64 brew update
65 brew install avr-gcc@8
66 brew link --force avr-gcc@8
67 brew install dfu-programmer
68 brew install dfu-util
69 brew install arm-gcc-bin@8
70 brew link --force arm-gcc-bin@8
71 brew install avrdude
72
73This is the recommended method. If you don't have homebrew, [install it!](http://brew.sh/) It's very much worth it for anyone who works in the command line. Note that the `make` and `make install` portion during the homebrew installation of `avr-gcc@8` can take over 20 minutes and exhibit high CPU usage.
74
75## Windows with msys2 (recommended)
76
77The best environment to use, for Windows Vista through any later version (tested on 7 and 10), is [msys2](http://www.msys2.org).
78
79* Install msys2 by downloading it and following the instructions here: http://www.msys2.org
80* Open the ``MSYS2 MingGW 64-bit`` shortcut
81* Navigate to your QMK repository. For example, if it's in the root of your c drive:
82 * `$ cd /c/qmk_firmware`
83* Run `util/qmk_install.sh` and follow the prompts
84
85## Windows 10 (deprecated)
86These are the old instructions for Windows 10. We recommend you use [MSYS2 as outlined above](#windows-with-msys2-recommended).
87
88### Creators Update
89If you have Windows 10 with Creators Update or later, you can build and flash the firmware directly. Before the Creators Update, only building was possible. If you don't have it yet or if are unsure, follow [these instructions](https://support.microsoft.com/en-us/instantanswers/d4efb316-79f0-1aa1-9ef3-dcada78f3fa0/get-the-windows-10-creators-update).
90
91### Windows Subsystem for Linux
92In addition to the Creators Update, you need Windows 10 Subystem for Linux, so install it following [these instructions](http://www.howtogeek.com/249966/how-to-install-and-use-the-linux-bash-shell-on-windows-10/). If you already have the Windows 10 Subsystem for Linux from the Anniversary update it's recommended that you [upgrade](https://betanews.com/2017/04/14/upgrade-windows-subsystem-for-linux/) it to 16.04LTS, because some keyboards don't compile with the toolchains included in 14.04LTS. Note that you need to know what your are doing if you chose the `sudo do-release-upgrade` method.
93
94### Git
95If you already have cloned the repository on your Windows file system you can ignore this section.
96
97You will need to clone the repository to your Windows file system using the normal Git for Windows and **not** the WSL Git. So if you haven't installed Git before, [download](https://git-scm.com/download/win) and install it. Then [set it up](https://git-scm.com/book/en/v2/Getting-Started-First-Time-Git-Setup), it's important that you setup the e-mail and user name, especially if you are planning to contribute.
98
99Once Git is installed, open the Git Bash command and change the directory to where you want to clone QMK; note that you have to use forward slashes, and that your c drive is accessed like this `/c/path/to/where/you/want/to/go`. Then run `git clone --recurse-submodules https://github.com/qmk/qmk_firmware`, this will create a new folder `qmk_firmware` as a subfolder of the current one.
100
101### Toolchain Setup
102The Toolchain setup is done through the Windows Subsystem for Linux, and the process is fully automated. If you want to do everything manually, there are no other instructions than the scripts themselves, but you can always open issues and ask for more information.
103
1041. Open "Bash On Ubuntu On Windows" from the start menu.
1052. Go to the directory where you cloned `qmk_firmware`. Note that the paths start with `/mnt/` in the WSL, so you have to write for example `cd /mnt/c/path/to/qmk_firmware`.
1063. Run `util/wsl_install.sh` and follow the on-screen instructions.
1074. Close the Bash command window, and re-open it.
1085. You are ready to compile and flash the firmware!
109
110### Some Important Things to Keep in Mind
111* You can run `util/wsl_install.sh` again to get all the newest updates.
112* Your QMK repository need to be on a Windows file system path, since WSL can't run executables outside it.
113* The WSL Git is **not** compatible with the Windows Git, so use the Windows Git Bash or a windows Git GUI for all Git operations
114* You can edit files either inside WSL or normally using Windows, but note that if you edit makefiles or shell scripts, make sure you are using an editor that saves the files with Unix line endings. Otherwise the compilation might not work.
115
116## Docker
117
118If this is a bit complex for you, Docker might be the turnkey solution you need. After installing [Docker CE](https://docs.docker.com/install/#supported-platforms), run the following command from the `qmk_firmware` directory to build a keyboard/keymap:
119```bash
120util/docker_build.sh keyboard:keymap
121# For example: util/docker_build.sh ergodox_ez:steno
122```
123This will compile the desired keyboard/keymap and leave the resulting `.hex` or `.bin` file in the QMK directory for you to flash. If `:keymap` is omitted, all keymaps are used. Note that the parameter format is the same as when building with `make`.
124
125You can also start the script without any parameters, in which case it will ask you to input the build parameters one by one, which you may find easier to use:
126```bash
127util/docker_build.sh
128# Reads parameters as input (leave blank for all keyboards/keymaps)
129```
130
131There is also support for building _and_ flashing the keyboard straight from Docker by specifying the `target` as well:
132```bash
133util/docker_build.sh keyboard:keymap:target
134# For example: util/docker_build.sh planck/rev6:default:flash
135```
136If you're on Linux, this should work out of the box. On Windows and macOS, it requires [Docker Machine](http://gw.tnode.com/docker/docker-machine-with-usb-support-on-windows-macos/) to be running. This is tedious to set up, so it's not recommended; use [QMK Toolbox](https://github.com/qmk/qmk_toolbox) instead.
137
138!> Docker for Windows requires [Hyper-V](https://docs.microsoft.com/en-us/virtualization/hyper-v-on-windows/quick-start/enable-hyper-v) to be enabled. This means that it cannot work on versions of Windows which don't have Hyper-V, such as Windows 7, Windows 8 and **Windows 10 Home**.
139
140## Vagrant
141If you have any problems building the firmware, you can try using a tool called Vagrant. It will set up a virtual computer with a known configuration that's ready-to-go for firmware building. OLKB does NOT host the files for this virtual computer. Details on how to set up Vagrant are in the [vagrant guide](getting_started_vagrant.md).
diff --git a/docs/hardware.md b/docs/hardware.md
deleted file mode 100644
index c3cc0e591..000000000
--- a/docs/hardware.md
+++ /dev/null
@@ -1,8 +0,0 @@
1# Hardware
2
3QMK runs on a variety of hardware. If your processor can be targeted by [LUFA](http://www.fourwalledcubicle.com/LUFA.php) or [ChibiOS](http://www.chibios.com) you can probably get QMK running on it. This section explores getting QMK running on, and communicating with, hardware of all kinds.
4
5* [Keyboard Guidelines](hardware_keyboard_guidelines.md)
6* [AVR Processors](hardware_avr.md)
7* ARM Processors (TBD)
8* [Drivers](hardware_drivers.md)
diff --git a/docs/index.html b/docs/index.html
index 9b33cd263..83b55e563 100644
--- a/docs/index.html
+++ b/docs/index.html
@@ -45,6 +45,8 @@
45 loadNavbar: '_langs.md', 45 loadNavbar: '_langs.md',
46 mergeNavbar: true, 46 mergeNavbar: true,
47 auto2top: true, 47 auto2top: true,
48 autoHeader: true,
49 subMaxLevel: 2,
48 fallbackLanguages: [ 50 fallbackLanguages: [
49 'de', 51 'de',
50 'es', 52 'es',