summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorIBNobody <ibnobody@gmail.com>2016-05-24 17:55:46 -0500
committerIBNobody <ibnobody@gmail.com>2016-05-24 17:55:46 -0500
commit76e36a787a58ad0e72fac579e4a02aa66ce26be1 (patch)
tree22eb10d93b95cfb52560a91450a29bd9aabdbc61
parent35d7081899df3a486b9b5785c7e8ec9481195848 (diff)
parentd66aa0abf96b5e887250cf0a7fa5e575f18c5a91 (diff)
Merge remote-tracking branch 'remotes/jackhumbert/master'
-rw-r--r--BUILD_GUIDE.md4
-rw-r--r--README.md67
-rw-r--r--keyboard/atomic/atomic.c265
-rw-r--r--keyboard/atomic/atomic.h24
-rw-r--r--keyboard/atomic/keymaps/pvc/config.h6
-rw-r--r--keyboard/atomic/keymaps/pvc/keymap.c386
-rw-r--r--keyboard/atomic/keymaps/pvc/makefile.mk2
-rw-r--r--keyboard/atreus/config.h2
-rw-r--r--keyboard/ergodox_ez/Makefile16
-rw-r--r--keyboard/ergodox_ez/keymaps/adnw/k_o_y/k_o_y.hex1152
-rw-r--r--keyboard/ergodox_ez/keymaps/adnw/k_o_y/keymap.c185
-rw-r--r--keyboard/ergodox_ez/keymaps/adnw/k_o_y/readme.md7
-rw-r--r--keyboard/ergodox_ez/keymaps/default_osx/keymap.c6
-rw-r--r--keyboard/ergodox_ez/keymaps/erez_experimental/config_user.h8
-rw-r--r--keyboard/ergodox_ez/keymaps/erez_experimental/erez_experimental.hex2243
-rw-r--r--keyboard/ergodox_ez/keymaps/erez_experimental/keymap.c109
-rw-r--r--keyboard/ergodox_ez/keymaps/erez_experimental/makefile.mk5
-rw-r--r--keyboard/ergodox_ez/keymaps/erez_experimental/readme.md8
-rw-r--r--keyboard/ergodox_ez/keymaps/ordinary/keymap.c706
-rw-r--r--keyboard/ergodox_ez/keymaps/ordinary/ordinary-base.pngbin99031 -> 99605 bytes
-rw-r--r--keyboard/ergodox_ez/keymaps/ordinary/ordinary-base.txt4
-rw-r--r--keyboard/ergodox_ez/keymaps/ordinary/ordinary-media.pngbin121014 -> 124144 bytes
-rw-r--r--keyboard/ergodox_ez/keymaps/ordinary/ordinary-media.txt20
-rw-r--r--keyboard/ergodox_ez/keymaps/ordinary/ordinary-special.pngbin0 -> 63065 bytes
-rw-r--r--keyboard/ergodox_ez/keymaps/ordinary/ordinary-special.txt27
-rw-r--r--keyboard/ergodox_ez/keymaps/ordinary/ordinary-symbol.pngbin103401 -> 103735 bytes
-rw-r--r--keyboard/ergodox_ez/keymaps/ordinary/ordinary-symbol.txt8
-rw-r--r--keyboard/ergodox_ez/keymaps/ordinary/ordinary.hex2380
-rw-r--r--keyboard/ergodox_ez/keymaps/ordinary/readme.md37
-rw-r--r--keyboard/ergodox_ez/keymaps/osx_de_experimental/keymap.c239
-rw-r--r--keyboard/ergodox_ez/keymaps/osx_de_experimental/osx_de_experimental.hex1247
-rw-r--r--keyboard/ergodox_ez/keymaps/osx_de_experimental/osx_de_experimental_highres.pngbin289029 -> 303904 bytes
-rw-r--r--keyboard/ergodox_ez/keymaps/osx_de_experimental/readme.md22
-rw-r--r--keyboard/ergodox_ez/keymaps/townk_osx/config.h92
-rw-r--r--keyboard/ergodox_ez/keymaps/townk_osx/keymap.c285
-rw-r--r--keyboard/ergodox_ez/keymaps/townk_osx/makefile.mk4
-rw-r--r--keyboard/ergodox_ez/keymaps/townk_osx/readme.md77
-rw-r--r--keyboard/ergodox_ez/keymaps/townk_osx/townk_osx.hex1166
-rw-r--r--keyboard/ergodox_ez/keymaps/townk_osx/townk_osx_base.pngbin0 -> 785859 bytes
-rw-r--r--keyboard/ergodox_ez/keymaps/townk_osx/townk_osx_fn.pngbin0 -> 390041 bytes
-rw-r--r--keyboard/ergodox_ez/keymaps/townk_osx/townk_osx_keypad.pngbin0 -> 424425 bytes
-rw-r--r--keyboard/ergodox_ez/keymaps/twey/keymap.c40
-rw-r--r--keyboard/ergodox_ez/keymaps/twey/readme.md12
-rw-r--r--keyboard/ergodox_ez/keymaps/zweihander-osx/keymap.c23
-rw-r--r--keyboard/gh60_rev_c/gh60.c7
-rw-r--r--keyboard/gh60_rev_c/gh60.h2
-rw-r--r--keyboard/planck/keymaps/alexey/alexey.c (renamed from keyboard/planck/keymaps/alexey.c)0
-rw-r--r--keyboard/planck/keymaps/angerthosenear/angerthosenear.c (renamed from keyboard/planck/keymaps/angerthosenear.c)0
-rw-r--r--keyboard/planck/keymaps/austin/austin.c (renamed from keyboard/planck/keymaps/austin.c)0
-rw-r--r--keyboard/planck/keymaps/bone2planck/bone2planck.c (renamed from keyboard/planck/keymaps/bone2planck.c)0
-rw-r--r--keyboard/planck/keymaps/brandon/brandon.c (renamed from keyboard/planck/keymaps/brandon.c)0
-rw-r--r--keyboard/planck/keymaps/charlie/charlie.c (renamed from keyboard/planck/keymaps/charlie.c)0
-rw-r--r--keyboard/planck/keymaps/daniel/daniel.c (renamed from keyboard/planck/keymaps/daniel.c)0
-rw-r--r--keyboard/planck/keymaps/david/david.c (renamed from keyboard/planck/keymaps/david.c)0
-rw-r--r--keyboard/planck/keymaps/default/keymap.c106
-rw-r--r--keyboard/planck/keymaps/dzobert/dzobert.c (renamed from keyboard/planck/keymaps/dzobert.c)0
-rw-r--r--keyboard/planck/keymaps/experimental/README.md2
-rw-r--r--keyboard/planck/keymaps/experimental/keymap.c333
-rw-r--r--keyboard/planck/keymaps/experimental/makefile.mk5
-rw-r--r--keyboard/planck/keymaps/gabriel/gabriel.c (renamed from keyboard/planck/keymaps/gabriel.c)0
-rw-r--r--keyboard/planck/keymaps/jacob/Keyboard Layout.PNGbin0 -> 17292 bytes
-rw-r--r--keyboard/planck/keymaps/jacob/keymap.c56
-rw-r--r--keyboard/planck/keymaps/jacob/readme.md1
-rw-r--r--keyboard/planck/keymaps/joe/joe.c (renamed from keyboard/planck/keymaps/joe.c)0
-rw-r--r--keyboard/planck/keymaps/kyle/kyle.c (renamed from keyboard/planck/keymaps/kyle.c)0
-rw-r--r--keyboard/planck/keymaps/leo/leo.c (renamed from keyboard/planck/keymaps/leo.c)0
-rw-r--r--keyboard/planck/keymaps/lucas/lucas.c (renamed from keyboard/planck/keymaps/lucas.c)0
-rw-r--r--keyboard/planck/keymaps/lukas/lukas.c (renamed from keyboard/planck/keymaps/lukas.c)0
-rw-r--r--keyboard/planck/keymaps/max/max.c (renamed from keyboard/planck/keymaps/max.c)0
-rw-r--r--keyboard/planck/keymaps/mollat/mollat.c (renamed from keyboard/planck/keymaps/mollat.c)0
-rw-r--r--keyboard/planck/keymaps/monkey/monkey.c (renamed from keyboard/planck/keymaps/monkey.c)0
-rw-r--r--keyboard/planck/keymaps/nico/nico.c (renamed from keyboard/planck/keymaps/nico.c)0
-rw-r--r--keyboard/planck/keymaps/numpad/numpad.c (renamed from keyboard/planck/keymaps/numpad.c)0
-rw-r--r--keyboard/planck/keymaps/pete/README.md14
-rw-r--r--keyboard/planck/keymaps/pete/keymap.c223
-rw-r--r--keyboard/planck/keymaps/pete/makefile.mk2
-rw-r--r--keyboard/planck/keymaps/pvc/config.h2
-rw-r--r--keyboard/planck/keymaps/pvc/keymap.c17
-rw-r--r--keyboard/planck/keymaps/pvc/makefile.mk7
-rw-r--r--keyboard/planck/keymaps/tak3over/tak3over.c (renamed from keyboard/planck/keymaps/tak3over.c)0
-rw-r--r--keyboard/planck/keymaps/unicode/keymap.c326
-rw-r--r--keyboard/planck/keymaps/unicode/makefile.mk1
-rw-r--r--keyboard/planck/planck.c229
-rw-r--r--keyboard/planck/planck.h34
-rw-r--r--keyboard/preonic/keymaps/default/keymap.c93
-rw-r--r--keyboard/preonic/preonic.c8
-rw-r--r--keyboard/preonic/preonic.h16
-rw-r--r--quantum/audio/audio.c783
-rw-r--r--quantum/audio/audio.h18
-rw-r--r--quantum/audio/audio_pwm.c643
-rw-r--r--quantum/audio/frequency_lut.h357
-rw-r--r--quantum/audio/luts.c382
-rw-r--r--quantum/audio/luts.h15
-rw-r--r--quantum/audio/vibrato_lut.h28
-rw-r--r--quantum/audio/voices.c8
-rw-r--r--quantum/audio/voices.h3
-rw-r--r--quantum/keymap_common.c43
-rw-r--r--quantum/keymap_common.h126
-rw-r--r--quantum/keymap_extras/keymap_german_ch.h102
-rw-r--r--quantum/keymap_midi.h10
-rw-r--r--quantum/keymap_unicode.c61
-rw-r--r--quantum/matrix.c25
-rw-r--r--quantum/quantum.c463
-rw-r--r--quantum/quantum.h72
-rw-r--r--quantum/quantum.mk17
-rw-r--r--quantum/template/template.c7
-rw-r--r--quantum/template/template.h2
-rw-r--r--quantum/tools/README.md4
-rw-r--r--quantum/unicode.h128
-rw-r--r--tmk_core/common.mk4
-rw-r--r--tmk_core/common/action.c135
-rw-r--r--tmk_core/common/action.h7
-rw-r--r--tmk_core/common/action_code.h5
-rw-r--r--tmk_core/common/action_tapping.c30
-rw-r--r--tmk_core/common/action_util.c70
-rw-r--r--tmk_core/common/action_util.h20
-rw-r--r--tmk_core/common/backlight.c5
-rw-r--r--tmk_core/common/backlight.h1
-rw-r--r--tmk_core/common/command.c4
-rw-r--r--tmk_core/common/matrix.h4
-rw-r--r--tmk_core/common/nodebug.h12
-rw-r--r--tmk_core/doc/keymap.md8
-rw-r--r--tmk_core/protocol/lufa/lufa.c2
-rw-r--r--tmk_core/rules.mk11
124 files changed, 11726 insertions, 4257 deletions
diff --git a/BUILD_GUIDE.md b/BUILD_GUIDE.md
index f7a57d2fc9..fd8b6202ff 100644
--- a/BUILD_GUIDE.md
+++ b/BUILD_GUIDE.md
@@ -47,8 +47,8 @@ If you have any problems building the firmware, you can try using a tool called
Note: Some keyboard folders have non-standard organizations, and may not even support specifying alternate keymaps. Until these get reorganized, you will need to edit their default keymaps directly.
-1. Running the `make` command from your keyboard's folder will generate a .hex file based on the default keymap. All keymaps for a particular keyboard live in the `keymaps` folder in that keyboard's folder. To create your own keymap, copy `keymaps/default/keymap.c` to the `keymaps` folder, and rename it with your name, for example jack.c. Or, if you don't care about the ability to share your keymap with the community via GitHub, you can just modify the default keymap itself. Details on how to program keymap files can be found in other guides.
-2. To build a keymap other than the default, type `KEYMAP=<name>` after `make`. So if I've named my keymap jack.c, the full command would be `make KEYMAP=jack`.
+1. Running the `make` command from your keyboard's folder will generate a .hex file based on the default keymap. All keymaps for a particular keyboard live in the `keymaps` folder in that keyboard's folder. To create your own keymap, duplicate the folder `keymaps/default`, and rename it with your name, for example `jack`. Or, if you don't care about the ability to share your keymap with the community via GitHub, you can just modify the default keymap itself. Details on how to program keymap files can be found in other guides.
+2. To build a keymap other than the default, type `KEYMAP=<name>` after `make`. So if I've named my keymap `jack`, the full command would be `make KEYMAP=jack`.
3. How you deploy the firmware will depend on whether you are using a PCB or a Teensy. In both cases, you'll need to put the keyboard in bootloader mode, either by pressing a button on the PCB/Teensy or pressing the key with the `RESET` keycode. Then, if you're using a PCB, just run `make KEYMAP=<name> dfu` to both build and deploy the firmware. If you're using a Teensy, you'll probably need to take the <keyboardname>.hex file that make produces in the keyboard's folder, and deploy it using the [Teensy Loader.](https://www.pjrc.com/teensy/loader.html)
## Helpful Tips
diff --git a/README.md b/README.md
index bb1cca1edf..4e53569a8e 100644
--- a/README.md
+++ b/README.md
@@ -2,7 +2,7 @@
This is a keyboard firmware based on the [tmk_keyboard firmware](http://github.com/tmk/tmk_keyboard) with some useful features for Atmel AVR controllers, and more specifically, the [OLKB product line](http://olkb.co), the [ErgoDox EZ](http://www.ergodox-ez.com) keyboard, and the [Clueboard product line](http://clueboard.co/).
-QMK is developed and maintained by Jack Humbert of OLKB with contributions from the community, and of course, TMK.
+QMK is developed and maintained by Jack Humbert of OLKB with contributions from the community, and of course, TMK. In fact, this repo used to be a fork of TMK, and we are incredibly grateful for his founding contributions to the firmware. We've had to break the fork due to purely technical reasons -- it simply became too different over time, and we've had to start refactoring some of the basic bits and pieces. We are huge fans of TMK, both the firmware and the person. :)
This documentation is edited and maintained by Erez Zukerman of ErgoDox EZ. If you spot any typos or inaccuracies, please [open an issue](https://github.com/jackhumbert/qmk_firmware/issues/new).
@@ -33,6 +33,10 @@ If your keymap directory has a file called `makefile.mk` (note the lowercase fil
So let's say your keyboard's makefile has `CONSOLE_ENABLE = yes` (or maybe doesn't even list the `CONSOLE_ENABLE` option, which would cause it to revert to the global Quantum default). You want your particular keymap to not have the debug console, so you make a file called `makefile.mk` and specify `CONSOLE_ENABLE = no`.
+### Customizing config.h on a per-keymap basis
+
+If you use the ErgoDox EZ, you can make a `config_user.h` file in your keymap directory and use it to override any `config.h` settings you don't like. Anything you set there will take precedence over the global `config.h` for the ErgoDox EZ. To see an example of this, check out `keymaps/erez_experimental`.
+
## Quick aliases to common actions
Your keymap can include shortcuts to common operations (called "function actions" in tmk).
@@ -41,10 +45,13 @@ Your keymap can include shortcuts to common operations (called "function actions
`MO(layer)` - momentary switch to *layer*. As soon as you let go of the key, the layer is deactivated and you pop back out to the p