aboutsummaryrefslogtreecommitdiff
path: root/docs
diff options
context:
space:
mode:
Diffstat (limited to 'docs')
-rw-r--r--docs/_sidebar.md100
-rw-r--r--docs/_summary.md2
-rw-r--r--docs/index.html2
-rw-r--r--docs/proton_c_conversion.md21
-rw-r--r--docs/zh/_summary.md (renamed from docs/zh/_sidebar.md)0
5 files changed, 24 insertions, 101 deletions
diff --git a/docs/_sidebar.md b/docs/_sidebar.md
deleted file mode 100644
index b209c5e0b..000000000
--- a/docs/_sidebar.md
+++ /dev/null
@@ -1,100 +0,0 @@
1* [Complete Newbs Guide](newbs.md)
2 * [Getting Started](newbs_getting_started.md)
3 * [Building Your First Firmware](newbs_building_firmware.md)
4 * [Flashing Firmware](newbs_flashing.md)
5 * [Testing and Debugging](newbs_testing_debugging.md)
6 * [Best Practices](newbs_best_practices.md)
7 * [Learning Resources](newbs_learn_more_resources.md)
8
9* [QMK Basics](README.md)
10 * [QMK Introduction](getting_started_introduction.md)
11 * [Contributing to QMK](contributing.md)
12 * [How to Use Github](getting_started_github.md)
13 * [Getting Help](getting_started_getting_help.md)
14
15* [FAQ](faq.md)
16 * [General FAQ](faq_general.md)
17 * [Build/Compile QMK](faq_build.md)
18 * [Debugging/Troubleshooting QMK](faq_debug.md)
19 * [Keymap](faq_keymap.md)
20
21* Detailed Guides
22 * [Install Build Tools](getting_started_build_tools.md)
23 * [Vagrant Guide](getting_started_vagrant.md)
24 * [Build/Compile Instructions](getting_started_make_guide.md)
25 * [Flashing Firmware](flashing.md)
26 * [Customizing Functionality](custom_quantum_functions.md)
27 * [Keymap Overview](keymap.md)
28
29* [Hardware](hardware.md)
30 * [AVR Processors](hardware_avr.md)
31 * [Drivers](hardware_drivers.md)
32
33* Reference
34 * [Keyboard Guidelines](hardware_keyboard_guidelines.md)
35 * [Config Options](config_options.md)
36 * [Keycodes](keycodes.md)
37 * [Documentation Best Practices](documentation_best_practices.md)
38 * [Documentation Templates](documentation_templates.md)
39 * [Glossary](reference_glossary.md)
40 * [Unit Testing](unit_testing.md)
41 * [Useful Functions](ref_functions.md)
42 * [Configurator Support](reference_configurator_support.md)
43
44* [Features](features.md)
45 * [Basic Keycodes](keycodes_basic.md)
46 * [US ANSI Shifted Keys](keycodes_us_ansi_shifted.md)
47 * [Quantum Keycodes](quantum_keycodes.md)
48 * [Advanced Keycodes](feature_advanced_keycodes.md)
49 * [Audio](feature_audio.md)
50 * [Auto Shift](feature_auto_shift.md)
51 * [Backlight](feature_backlight.md)
52 * [Bluetooth](feature_bluetooth.md)
53 * [Bootmagic](feature_bootmagic.md)
54 * [Combos](feature_combo)
55 * [Command](feature_command.md)
56 * [Dynamic Macros](feature_dynamic_macros.md)
57 * [Encoders](feature_encoders.md)
58 * [Grave Escape](feature_grave_esc.md)
59 * [Key Lock](feature_key_lock.md)
60 * [Layouts](feature_layouts.md)
61 * [Leader Key](feature_leader_key.md)
62 * [Macros](feature_macros.md)
63 * [Mouse Keys](feature_mouse_keys.md)
64 * [One Shot Keys](feature_advanced_keycodes.md#one-shot-keys)
65 * [Pointing Device](feature_pointing_device.md)
66 * [PS/2 Mouse](feature_ps2_mouse.md)
67 * [RGB Lighting](feature_rgblight.md)
68 * [RGB Matrix](feature_rgb_matrix.md)
69 * [Space Cadet Shift](feature_space_cadet_shift.md)
70 * [Space Cadet Shift Enter](feature_space_cadet_shift_enter.md)
71 * [Stenography](feature_stenography.md)
72 * [Swap Hands](feature_swap_hands.md)
73 * [Tap Dance](feature_tap_dance.md)
74 * [Terminal](feature_terminal.md)
75 * [Thermal Printer](feature_thermal_printer.md)
76 * [Unicode](feature_unicode.md)
77 * [Userspace](feature_userspace.md)
78
79* For Makers and Modders
80 * [Hand Wiring Guide](hand_wire.md)
81 * [ISP Flashing Guide](isp_flashing_guide.md)
82 * [ARM Debugging Guide](arm_debugging.md)
83 * [I2C Driver](i2c_driver.md)
84
85* For a Deeper Understanding
86 * [How Keyboards Work](how_keyboards_work.md)
87 * [Understanding QMK](understanding_qmk.md)
88
89* Other Topics
90 * [Using Eclipse with QMK](eclipse.md)
91 * [Support](support.md)
92
93* QMK Internals (In Progress)
94 * [Defines](internals_defines.md)
95 * [Input Callback Reg](internals_input_callback_reg.md)
96 * [Midi Device](internals_midi_device.md)
97 * [Midi Device Setup Process](internals_midi_device_setup_process.md)
98 * [Midi Util](internals_midi_util.md)
99 * [Send Functions](internals_send_functions.md)
100 * [Sysex Tools](internals_sysex_tools.md)
diff --git a/docs/_summary.md b/docs/_summary.md
index b209c5e0b..c467a7231 100644
--- a/docs/_summary.md
+++ b/docs/_summary.md
@@ -81,6 +81,8 @@
81 * [ISP Flashing Guide](isp_flashing_guide.md) 81 * [ISP Flashing Guide](isp_flashing_guide.md)
82 * [ARM Debugging Guide](arm_debugging.md) 82 * [ARM Debugging Guide](arm_debugging.md)
83 * [I2C Driver](i2c_driver.md) 83 * [I2C Driver](i2c_driver.md)
84 * [GPIO Controls](internals_gpio_control.md)
85 * [Proton C Conversion](proton_c_conversion.md)
84 86
85* For a Deeper Understanding 87* For a Deeper Understanding
86 * [How Keyboards Work](how_keyboards_work.md) 88 * [How Keyboards Work](how_keyboards_work.md)
diff --git a/docs/index.html b/docs/index.html
index f5aa92b53..d6fdbdbcc 100644
--- a/docs/index.html
+++ b/docs/index.html
@@ -17,7 +17,7 @@
17 name: 'QMK Firmware', 17 name: 'QMK Firmware',
18 nameLink: 'https://qmk.fm/', 18 nameLink: 'https://qmk.fm/',
19 repo: 'qmk/qmk_firmware', 19 repo: 'qmk/qmk_firmware',
20 loadSidebar: true, 20 loadSidebar: '_summary.md',
21 auto2top: true, 21 auto2top: true,
22 formatUpdated: '{YYYY}/{MM}/{DD} {HH}:{mm}', 22 formatUpdated: '{YYYY}/{MM}/{DD} {HH}:{mm}',
23 search: { 23 search: {
diff --git a/docs/proton_c_conversion.md b/docs/proton_c_conversion.md
new file mode 100644
index 000000000..be7d50a9f
--- /dev/null
+++ b/docs/proton_c_conversion.md
@@ -0,0 +1,21 @@
1# Converting a board to use the Proton C
2
3If a board currently supported in QMK uses a Pro Micro (or compatible board) and you want to use the Proton C, you can generate the firmware by appending `CONVERT_TO_PROTON_C=yes` (or `CTPC=yes`) to your make argument, like this:
4
5 make 40percentclub/mf68:default CTPC=yes
6
7You can add the same argument to your keymap's `rules.mk`, which will accomplish the same thing.
8
9This exposes the `CONVERT_TO_PROTON_C` flag that you can use in your code with `#ifdef`s, like this:
10
11 #ifdef CONVERT_TO_PROTON_C
12 // Proton C code
13 #else
14 // Pro Micro code
15 #endif
16
17Before being able to compile, you may get some errors about `PORTB/DDRB`, etc not being defined, so you'll need to convert the keyboard's code to use the [GPIO Controls](internals_gpio_control.md) that will work for both ARM and AVR. This shouldn't affect the AVR builds at all.
18
19The Proton C only has one on-board LED (C13), and by default, the TXLED (D5) is mapped to it. If you want the RXLED (B0) mapped to it instead, add this like to your `config.h`:
20
21 #define CONVERT_TO_PROTON_C_RXLED
diff --git a/docs/zh/_sidebar.md b/docs/zh/_summary.md
index c16761292..c16761292 100644
--- a/docs/zh/_sidebar.md
+++ b/docs/zh/_summary.md