Compare commits

...

1159 Commits

Author SHA1 Message Date
Jack Humbert
f2c32b3ea4 Splits up ps2avrGB boards into their own folders (#2014)
* move underglow led count from parent to child

* Added pearl support

* Added personal keymap for pearl

* start splitting up ps2avrGB boards

* clean up ps2avrgb boards

* Move keycodes to their own section

* Clarify `KC_PWR` vs `KC_POWER`. Fixes #1994.

*  Cleaned uppersonal userspace and keymaps (#1998)

* Cleanup of keymaps

* Remove Tap Dance from Orthodox keymap

* Cleaned up userspace and keymaps

* Added sample (template)userspace files to my folder

* Document the Teensy hardware reset problem

* add mfluid keymap to atreus62

* Update hand_wire.md

Change "Resin" to "Rosin"

* Add keyboard: mt40 (#2001)

* add keyboard: chinese planck clone

* rename chinese_planck to mt40

* add image for the mt40 board

* lets_split: Fix matrix_init for ROW2COL

Signed-off-by: Marian Rusu <rusumarian91@gmail.com>

* Add Keymap for Whitefox Truefox layout

* Add keyboard: ACR60 (#1999)

* base acr60 keyboard folder created

* mitch acr60 keymap updates, documentation

* latest keymap updates

* slight modifications to layer switching

* Changes to Atreus and Ergodox EZ Dvorak 42key layout (#1997)

* importing 42 key dvorak layout

* added comment for build instructions

* adding atreus dvorak 42 key layout

* added readme

* add readme

* build instructions

* additional MEH shortcuts

* added shifted symbols on symbols layer

* working extra symbols on COMBINED layer

* bring atreus layout inline with the ergodox one

* add necessary macros

* working ls macro

* added more shell macros

* added screen rename / screen number macros

* add ctrl-a key in shell-nav to use screen more easily

* added shell screen layer

* assign screen switching macros to screen layer

* define all screen switching macros

* more screen-related shortcuts added on shell screen layer

* change shell nav bottom right row to match base layer (backspace / delete)

* remove some mappings on SHELL_NAV layer as they are now in the screen layer

* added more screen macros

* changes to COMBINED layer (pipe on the right) and modified shell nav

* moved pipe/backslash to then right

* documented SHELL_SCREEN layer

* put backspace/delete on SHELL_NAV layer

* add an explicit lisence file for github to pickup

* Updated keymaps to allow base layer alternation for QWERTY, Colemak & Dvorak (#1962)

* First commit of the Terminus_Mini firmware and the DivergeJM version of the Nyquist firmware

* Fix terminus_mini & nyquist/DivergeJM readme files

Previously an outdated copy of the default readme. Updated to match the  Nyquist/DivergeJM format (DivergeJM is a split 5x12 implementation of the terminus_mini layout)

* Update makefiles to rules.mk

Renamed both Makefiles to rules.mk, removed references to makefiles

* Updated rules.mk

Inadvertantly removed important code from the rules.mk in previous commit. This has been restored.

Also disabled Tap_Dance in both rules.mk files

* Moved terminus_mini to handwired

Realised that existing directory was not appropriate for the terminus_mini project, moved to handwired.

* New Frosty Flake layout for QFR TKL

Added a TKL layout for the Frosty Flake with a navigation cluster on LOWER under the left hand and a similarly functioning MOUSE layer that includes mouse navigation functionality.

* README fix & keymap update for 3 keyboards

Fixed the markdown for the handwired/terminus_mini:default, Nyqyist:DivergeJM & frosty_flake:QFR_JM.

Added TAPPING_TERM =  150 to config.h for all keyboards

Switched LT(LOWER) and LAlt on the mod row for ortholinear boards.

* Update readme for QFR_JM to include make instructions

* Revert "Merge branch 'master' of https://github.com/mogranjm/qmk_firmware"

This reverts commit a45f264ada, reversing
changes made to 62349c3341.

* Revert "Revert "Merge branch 'master' of https://github.com/mogranjm/qmk_firmware""

This reverts commit eae54fb3be.

* Added QWERTY support to the QFR_JM

Implemented variable default base layer from the Planck default keymap.

* Update README to reflect QWERTY support

* Nyquist:DivergeJM - Update RESET location

Add a reset button to both hands, accessible when halves are disconnected.

* Typo fix

* Update DivergeJM

Switched master to Left hand,
Moved Reset key to a different location

* Added macros to send R pointer & dplyr pipe

Macros added as a string of keypresses, couldn't figure out how to get SEND_STRING to work.

* Added ADJUST -> QWERTY, DVORAK, COLEMAK

Re-implemented update_tri_layer fuctionality to reset base layer for Terminus_Mini & DivergeJM Nyquist keymaps to QWERTY, DVORAK or COLEMAK via the ADJUST layer.

Updated ReadMe files accordingly.

* Fix base layout diagram for Terminus_Mini

Remove split from diagram

* Changed the R operators to SEND_STRING, rather than keypress macros

* Added Dvorak to the QFR_JM keymap

* fixed duplicate row in Nyquist keymap

* Fix readme - LAlt location on mouse layer

* Set EE_HANDS to allow either Nyquist hand to work as master.

* Update R operator strings, clean up layering for terminus_mini, QFR_JM and DivergeJM

"<-" to " <- "
"%>%" to " %>% "

Also played around with the layering, removed unnecessary TAP_TOGGLE for LOWER and shuffled FUNCTION and MOUSE momentary actions to reflect layer order.

* Update bottom alpha row to output symbols on LOWER

This row now outputs the following (z -> /) when in the LOWER layer:
 <-
 %>%
{
[
`
|
]
}
.
/

* Updated readme files for QFR_JM, terminus_mini & DivergeJM

QFR_JM readme reflects correct LOWER bottom row symbol output,
terminus_mini & DivergeJM reflect correct command line make instructions.

* Add media keys to QFR_JM LOWER - Replicate QFR default functionality

* Fix issue with Mouse layering

Stuck on mouse layer because the wrong macro was assigned to the 'exit layer' key. Reassigned that key.

* Changed " <- " to "<- " for QFR_JM, terminus_mini & DivergeJM

* Add "KC_MAKE" to userspace example

* QMK DFU bootloader generation (#2009)

* adds :bootloader target

* update planck and preonic revisions

* remove references to .h files for planck

* update preonic keymap

* only add keyboard.h files that exist

* add production target

* hook things up with the new lufa variables

* update rules for planck/preonic

* back backlight key turn of status led when pressed

* add manufacturer/product strings to bootloader

* fix push script

* Added support for let's split kailh socket version (#2010)

* Added support for socket version of the let's split

* renamed files

* socket-version-works

* fix up lets_split keymaps

* fix up lets_split keymaps

* shrink preonic by a bit

* fix lets_split keyboards

* update travis script

* update travis script

* update version silencing
2017-11-17 11:40:34 -05:00
Jack Humbert
92d47a55d4 update chibios 2017-11-17 11:40:13 -05:00
Jack Humbert
41f3f01167 Update .gitmodules 2017-11-16 15:09:45 -05:00
Damien
a8c4af5a45 Updated dbroqua layout for HHKB keyboard (#1990)
* - Fixed DK60 version in config.h

* - Updated dk60 readme with new QMK rules

* - Fixed wording in readme

* Added dbroqua layout for DZ60

I've also updated dz60.h to add "true HHKD" keymap definition (6U
spacebar).

With the default HHKB definition r_alt was not mapped and when I pressed
r_menu it was r_alt.

Regards

* Updated dbroqua layout for HHKB keyboard

Added default configuration and alternate (swap gui/alt keys).

Save user choice in keyboard memory (like plank, thanks for this
feature!).
2017-11-16 14:49:19 -05:00
Balz Guenat
858c09f370 add example keymap 2017-11-16 09:39:00 -05:00
Balz Guenat
179d64d33c extend macro docs a bit 2017-11-16 09:39:00 -05:00
Jack Humbert
eac4bab342 update version silencing 2017-11-14 22:56:29 -05:00
Jack Humbert
a8466df62d update travis script 2017-11-14 22:31:34 -05:00
Jack Humbert
cb64a886e9 update travis script 2017-11-14 22:14:59 -05:00
Jack Humbert
dbabfb082c fix lets_split keyboards 2017-11-14 22:14:03 -05:00
Jack Humbert
607876187d shrink preonic by a bit 2017-11-14 21:23:26 -05:00
Jack Humbert
7f3539aa76 fix up lets_split keymaps 2017-11-14 17:55:18 -05:00
Jack Humbert
4ad0bbd672 fix up lets_split keymaps 2017-11-14 17:37:57 -05:00
Mikkel Jeppesen
85172f4f85 Added support for let's split kailh socket version (#2010)
* Added support for socket version of the let's split

* renamed files

* socket-version-works
2017-11-14 17:27:27 -05:00
Jack Humbert
b702c08825 fix push script 2017-11-14 16:47:34 -05:00
Jack Humbert
ec3e065f0d QMK DFU bootloader generation (#2009)
* adds :bootloader target

* update planck and preonic revisions

* remove references to .h files for planck

* update preonic keymap

* only add keyboard.h files that exist

* add production target

* hook things up with the new lufa variables

* update rules for planck/preonic

* back backlight key turn of status led when pressed

* add manufacturer/product strings to bootloader
2017-11-14 16:11:29 -05:00
drashna
3c15c48e6a Add "KC_MAKE" to userspace example 2017-11-14 11:02:00 -05:00
James Morgan
49d8f1c5ed Updated keymaps to allow base layer alternation for QWERTY, Colemak & Dvorak (#1962)
* First commit of the Terminus_Mini firmware and the DivergeJM version of the Nyquist firmware

* Fix terminus_mini & nyquist/DivergeJM readme files

Previously an outdated copy of the default readme. Updated to match the  Nyquist/DivergeJM format (DivergeJM is a split 5x12 implementation of the terminus_mini layout)

* Update makefiles to rules.mk

Renamed both Makefiles to rules.mk, removed references to makefiles

* Updated rules.mk

Inadvertantly removed important code from the rules.mk in previous commit. This has been restored.

Also disabled Tap_Dance in both rules.mk files

* Moved terminus_mini to handwired

Realised that existing directory was not appropriate for the terminus_mini project, moved to handwired.

* New Frosty Flake layout for QFR TKL

Added a TKL layout for the Frosty Flake with a navigation cluster on LOWER under the left hand and a similarly functioning MOUSE layer that includes mouse navigation functionality.

* README fix & keymap update for 3 keyboards

Fixed the markdown for the handwired/terminus_mini:default, Nyqyist:DivergeJM & frosty_flake:QFR_JM.

Added TAPPING_TERM =  150 to config.h for all keyboards

Switched LT(LOWER) and LAlt on the mod row for ortholinear boards.

* Update readme for QFR_JM to include make instructions

* Revert "Merge branch 'master' of https://github.com/mogranjm/qmk_firmware"

This reverts commit a45f264ada, reversing
changes made to 62349c3341.

* Revert "Revert "Merge branch 'master' of https://github.com/mogranjm/qmk_firmware""

This reverts commit eae54fb3be.

* Added QWERTY support to the QFR_JM

Implemented variable default base layer from the Planck default keymap.

* Update README to reflect QWERTY support

* Nyquist:DivergeJM - Update RESET location

Add a reset button to both hands, accessible when halves are disconnected.

* Typo fix

* Update DivergeJM

Switched master to Left hand,
Moved Reset key to a different location

* Added macros to send R pointer & dplyr pipe

Macros added as a string of keypresses, couldn't figure out how to get SEND_STRING to work.

* Added ADJUST -> QWERTY, DVORAK, COLEMAK

Re-implemented update_tri_layer fuctionality to reset base layer for Terminus_Mini & DivergeJM Nyquist keymaps to QWERTY, DVORAK or COLEMAK via the ADJUST layer.

Updated ReadMe files accordingly.

* Fix base layout diagram for Terminus_Mini

Remove split from diagram

* Changed the R operators to SEND_STRING, rather than keypress macros

* Added Dvorak to the QFR_JM keymap

* fixed duplicate row in Nyquist keymap

* Fix readme - LAlt location on mouse layer

* Set EE_HANDS to allow either Nyquist hand to work as master.

* Update R operator strings, clean up layering for terminus_mini, QFR_JM and DivergeJM

"<-" to " <- "
"%>%" to " %>% "

Also played around with the layering, removed unnecessary TAP_TOGGLE for LOWER and shuffled FUNCTION and MOUSE momentary actions to reflect layer order.

* Update bottom alpha row to output symbols on LOWER

This row now outputs the following (z -> /) when in the LOWER layer:
 <-
 %>%
{
[
`
|
]
}
.
/

* Updated readme files for QFR_JM, terminus_mini & DivergeJM

QFR_JM readme reflects correct LOWER bottom row symbol output,
terminus_mini & DivergeJM reflect correct command line make instructions.

* Add media keys to QFR_JM LOWER - Replicate QFR default functionality

* Fix issue with Mouse layering

Stuck on mouse layer because the wrong macro was assigned to the 'exit layer' key. Reassigned that key.

* Changed " <- " to "<- " for QFR_JM, terminus_mini & DivergeJM
2017-11-13 20:55:14 -05:00
Jack Humbert
5cdf47a79e add an explicit lisence file for github to pickup 2017-11-13 20:50:54 -05:00
Marian Rusu
3f1aab0c2e lets_split: Fix matrix_init for ROW2COL
Signed-off-by: Marian Rusu <rusumarian91@gmail.com>
2017-11-13 18:52:57 -05:00
Andy Holder
43edc83998 Add Keymap for Whitefox Truefox layout 2017-11-13 18:51:54 -05:00
lucwastiaux
dd60038eeb Changes to Atreus and Ergodox EZ Dvorak 42key layout (#1997)
* importing 42 key dvorak layout

* added comment for build instructions

* adding atreus dvorak 42 key layout

* added readme

* add readme

* build instructions

* additional MEH shortcuts

* added shifted symbols on symbols layer

* working extra symbols on COMBINED layer

* bring atreus layout inline with the ergodox one

* add necessary macros

* working ls macro

* added more shell macros

* added screen rename / screen number macros

* add ctrl-a key in shell-nav to use screen more easily

* added shell screen layer

* assign screen switching macros to screen layer

* define all screen switching macros

* more screen-related shortcuts added on shell screen layer

* change shell nav bottom right row to match base layer (backspace / delete)

* remove some mappings on SHELL_NAV layer as they are now in the screen layer

* added more screen macros

* changes to COMBINED layer (pipe on the right) and modified shell nav

* moved pipe/backslash to then right

* documented SHELL_SCREEN layer

* put backspace/delete on SHELL_NAV layer
2017-11-13 18:50:39 -05:00
Ryan Mitchell
716ff76f5b Add keyboard: ACR60 (#1999)
* base acr60 keyboard folder created

* mitch acr60 keymap updates, documentation

* latest keymap updates

* slight modifications to layer switching
2017-11-13 18:50:09 -05:00
Thomas Dehaeze
eef94b0b40 add mfluid keymap to atreus62 2017-11-13 18:49:23 -05:00
James
309a400b3e Update hand_wire.md
Change "Resin" to "Rosin"
2017-11-13 18:48:55 -05:00
Thomas Dehaeze
c2c3aa4f08 Add keyboard: mt40 (#2001)
* add keyboard: chinese planck clone

* rename chinese_planck to mt40

* add image for the mt40 board
2017-11-13 18:44:53 -05:00
Erin Call
392121b10e Document the Teensy hardware reset problem 2017-11-12 11:51:12 -05:00
drashna
0533362e82 Cleaned uppersonal userspace and keymaps (#1998)
* Cleanup of keymaps

* Remove Tap Dance from Orthodox keymap

* Cleaned up userspace and keymaps

* Added sample (template)userspace files to my folder
2017-11-10 22:58:53 -05:00
skullY
4df4fa7c26 Clarify KC_PWR vs KC_POWER. Fixes #1994. 2017-11-10 17:58:32 -05:00
skullY
66f13e4972 Move keycodes to their own section 2017-11-10 17:58:32 -05:00
Jack Humbert
bb11df6b7a update some docs 2017-11-09 16:19:13 -05:00
Zach Burchill
e236f1eba1 Fixed some grammar and typos on the docs (#1989)
* fixed grammar and references

* fixed typo
2017-11-09 16:18:31 -05:00
Erez Zukerman
847ade44fc Merge pull request #1988 from qmk/hf/disable_shine_leds_default
disables Shine LED layer indication for now
2017-11-09 08:31:12 -05:00
Erez Zukerman
7044dafe59 Merge pull request #1986 from ideasman42/code-friendly-qwerty
qwerty_code_friendly: Expose caps-lock & fix typo
2017-11-09 08:29:10 -05:00
Erez Zukerman
fd1a0d6753 disables Shine LED layer indication for now 2017-11-09 08:12:43 -05:00
Campbell Barton
c2c9d9b386 qwerty_code_friendly: Expose caps-lock & fix typo 2017-11-09 23:13:56 +11:00
Oscillope
05f15b789f More "oscillope" keymap fixes. (#1982)
* More keymap fixes. F-row on bottom layer wasn't fully setup, also switched raise/lower keys to use tap-toggle.

* Added PrScr, put Tab back on top layer.

* Fixed build breakage with default keymap (unneeded rgblight.h include)
2017-11-08 11:13:48 -05:00
Florian Beeres
7e2223f822 Improved README of yuuki and added RGB commands (#1983)
* Add yuuki keymap

Documentation is still a TODO and the keymap may not be final

* GRV on colon

* add KC_GRV to FN ESC

* more RGB modes

* Update README.md

Add image of layout and fix typo

* switch from jpg to png

For some reason the JPG had red outlines around the keys.

* remove whitespace

* add instruction to reset keyboard before flashing

* gh60 stytle layout

* moved the GH60 style layout to new folder

* add HOME and END

* Add heading

* moved ayanami to other branch
2017-11-08 11:13:06 -05:00
Balz Guenat
3b5381d689 restructure converters (#1825)
* restructure converters

each converter is its own keyboard and different hardware variants are different subprojects.

remove (seemingly) old method of loading layouts from main Makefile

* call led_set_kb() from overridden led_set()

* put converter back into one folder

* revert some structure changes to bring in line with #1784.

Also attempt to get the BLE thing more properly integrated.
Also also fix led_set() to call led_set_kb().
2017-11-08 11:11:44 -05:00
Campbell Barton
aee6785476 qwerty_code_friendly: configurable left thumb
Also add mouse-wheel keys.
2017-11-07 00:11:36 -05:00
drashna
363aa8aa2e Migrated most code from keymaps to userspace (#1980)
* Add woodpad

* Cleanup

* Remove misc layouts for woodpad

* Move woodpad to handwired

* Updated RGB Underglow info

* Cleanup macros

* Tweaked RGB lighting stuff

* Start to merge orthodox/ergodox keymaps (persistant layers)

* Add woodpad

* Add forced NKRO

* Added default layer (qwerty/colemak/dvorak) detection to RGB Underglow

* Updated macros and added workman keymaps

* Fixed RGB lighting for Workman layout

* Add leader keys

* Remove force NKRO

* Add Viterbi one handed layout and minor tweaks to others

* Finishing up Viterbi keyboard layout, and NKRO tweaks to other layouts

* Made "make" keystroke universal

* Clean up and updates of drashna keymaps

* Add workman layer to planck

* Update to keymaps

* Fix makefile toggle code in ez keymap
Finish adding RGB code to orthodox

* Updated RGB Underglow layer indication code due to discovery of the layer_state_set_kb function

* Remove unnecessary planck layout

* Fixed Workman song

* update make command and added lit reset

* Fixed formatting to fall in line with official standards

* Minor tweaks

* Removed Leader Keys from Ergodox EZ Keymap
Added KC_RESET that resets board and sets underglow to red

* Tweak reset code

* Cleanup

* Remove misc layouts for woodpad

* Move woodpad to handwired

* Updated RGB Underglow info

* Cleanup macros

* Tweaked RGB lighting stuff

* Start to merge orthodox/ergodox keymaps (persistant layers)

* Add forced NKRO

* Added default layer (qwerty/colemak/dvorak) detection to RGB Underglow

* Updated macros and added workman keymaps

* Fixed RGB lighting for Workman layout

* Add leader keys

* Remove force NKRO

* Add Viterbi one handed layout and minor tweaks to others

* Finishing up Viterbi keyboard layout, and NKRO tweaks to other layouts

* Made "make" keystroke universal

* Clean up and updates of drashna keymaps

* Add workman layer to planck

* Update to keymaps

* Fix makefile toggle code in ez keymap
Finish adding RGB code to orthodox

* Updated RGB Underglow layer indication code due to discovery of the layer_state_set_kb function

* Remove unnecessary planck layout

* Fixed Workman song

* update make command and added lit reset

* Fixed formatting to fall in line with official standards

* Minor tweaks

* Removed Leader Keys from Ergodox EZ Keymap
Added KC_RESET that resets board and sets underglow to red

* Tweak reset code

* Fix rebasing issues

* remove head files

* Fix "macro" issue

* Rename ez keymaps for userspace

* Revert "Rename ez keymaps for userspace"

This reverts commit c25425911852e41711a5f0273b5741adb16e5bd4.

* Renamed Ergodox EZ layouts so that all of my personal layouts are on the same name, in prep for using userspaces

* Fix ergodox code

* Remove "drashna-ez" keymap as it's no longer needed

* Migrate majority of code to Userspace
2017-11-07 00:11:08 -05:00
Fredric Silberberg
ef2961798c Small ergodox config fix and update. 2017-11-06 15:53:27 -05:00
drashna
3e861c2fd5 Update and move around drashna keymaps (#1976)
* Add woodpad

* Cleanup

* Remove misc layouts for woodpad

* Move woodpad to handwired

* Updated RGB Underglow info

* Cleanup macros

* Tweaked RGB lighting stuff

* Start to merge orthodox/ergodox keymaps (persistant layers)

* Add woodpad

* Add forced NKRO

* Added default layer (qwerty/colemak/dvorak) detection to RGB Underglow

* Updated macros and added workman keymaps

* Fixed RGB lighting for Workman layout

* Add leader keys

* Remove force NKRO

* Add Viterbi one handed layout and minor tweaks to others

* Finishing up Viterbi keyboard layout, and NKRO tweaks to other layouts

* Made "make" keystroke universal

* Clean up and updates of drashna keymaps

* Add workman layer to planck

* Update to keymaps

* Fix makefile toggle code in ez keymap
Finish adding RGB code to orthodox

* Updated RGB Underglow layer indication code due to discovery of the layer_state_set_kb function

* Remove unnecessary planck layout

* Fixed Workman song

* update make command and added lit reset

* Fixed formatting to fall in line with official standards

* Minor tweaks

* Removed Leader Keys from Ergodox EZ Keymap
Added KC_RESET that resets board and sets underglow to red

* Tweak reset code

* Cleanup

* Remove misc layouts for woodpad

* Move woodpad to handwired

* Updated RGB Underglow info

* Cleanup macros

* Tweaked RGB lighting stuff

* Start to merge orthodox/ergodox keymaps (persistant layers)

* Add forced NKRO

* Added default layer (qwerty/colemak/dvorak) detection to RGB Underglow

* Updated macros and added workman keymaps

* Fixed RGB lighting for Workman layout

* Add leader keys

* Remove force NKRO

* Add Viterbi one handed layout and minor tweaks to others

* Finishing up Viterbi keyboard layout, and NKRO tweaks to other layouts

* Made "make" keystroke universal

* Clean up and updates of drashna keymaps

* Add workman layer to planck

* Update to keymaps

* Fix makefile toggle code in ez keymap
Finish adding RGB code to orthodox

* Updated RGB Underglow layer indication code due to discovery of the layer_state_set_kb function

* Remove unnecessary planck layout

* Fixed Workman song

* update make command and added lit reset

* Fixed formatting to fall in line with official standards

* Minor tweaks

* Removed Leader Keys from Ergodox EZ Keymap
Added KC_RESET that resets board and sets underglow to red

* Tweak reset code

* Fix rebasing issues

* remove head files

* Fix "macro" issue

* Rename ez keymaps for userspace

* Revert "Rename ez keymaps for userspace"

This reverts commit c25425911852e41711a5f0273b5741adb16e5bd4.

* Renamed Ergodox EZ layouts so that all of my personal layouts are on the same name, in prep for using userspaces

* Fix ergodox code

* Remove "drashna-ez" keymap as it's no longer needed
2017-11-06 13:32:48 -05:00
Takayuki Matsubara
f113f1927f make it easy to customize logo image 2017-11-06 12:10:17 -05:00
Takayuki Matsubara
27ee425892 add pgm_read_dword for Infinity ErgoDox
avoid the following error when `UNICODEMAP_ENABLE = yes`:

```
quantum/process_keycode/process_unicodemap.c:52:21: error: implicit declaration of function 'pgm_read_dword'
```
2017-11-06 12:09:54 -05:00
Fred Silberberg
89357b96d4 333fred layout update (#1971)
* Set up tap dance for layers on the lower button.

* Refactored code to share in the users directory between my two keyboard layouts.

* Small keyboard layout change.

* Updated documentation on oneshot usage in macros/tap dance.
2017-11-06 12:09:01 -05:00
J. Eric Mason
16843bc8c9 Pete's 40th XD64 Layout
Mac layout based on yuuki with some other changes, for Pete's 40th birthday keyboard
2017-11-06 12:08:01 -05:00
lucwastiaux
7854746704 Ergodox EZ and Atreus 42 key dvorak layout updates (#1964)
* importing 42 key dvorak layout

* added comment for build instructions

* adding atreus dvorak 42 key layout

* added readme

* add readme

* build instructions

* additional MEH shortcuts

* added shifted symbols on symbols layer

* working extra symbols on COMBINED layer

* bring atreus layout inline with the ergodox one

* add necessary macros

* working ls macro

* added more shell macros

* added screen rename / screen number macros

* add ctrl-a key in shell-nav to use screen more easily

* added shell screen layer

* assign screen switching macros to screen layer

* define all screen switching macros

* more screen-related shortcuts added on shell screen layer

* change shell nav bottom right row to match base layer (backspace / delete)

* remove some mappings on SHELL_NAV layer as they are now in the screen layer

* added more screen macros
2017-11-06 12:07:21 -05:00
Jeremy Cowgar
245b3376d6 Correct the rules.mk documentation for auto shift.
fixes #1965
2017-11-06 12:03:36 -05:00
drashna
2c703b1528 Fix RGBLIGHT startup color (#1975)
* Fix RGBLIGHT startup color

While it's awesome to see the layer indicating code in here (no really!), and the general rule is to not alter the default keymap/code....

The problem with the layer_state_set_kb call handling this, is that the code doesn't seem to be called at startup.  So the default layer color won't ever get set on startup.  It needs to be called in the init function to be properly set. 

I've played with this extensively, and if you check my keymaps, that is precisely why I have the setrgb/sethsv in the init function.

* Removed typo (pipe)
2017-11-06 11:43:38 -05:00
Erez Zukerman
90a6fea4e8 Merge pull request #1974 from qmk/f/ez_shine_layer_leds
Shine layer indication
2017-11-06 09:44:54 -05:00
Erez Zukerman
e45290a62e adds indication up to layer 7 2017-11-06 09:19:51 -05:00
Jack Humbert
1d3a19757c restore default mode/color if no 0 color 2017-11-06 09:15:30 -05:00
Jack Humbert
cf9f6bbd91 adds per-layer rgb color option to ez 2017-11-06 08:38:36 -05:00
Jack Humbert
41df0dc9a7 update gh60 info 2017-11-05 12:06:45 -05:00
Jack Humbert
30dc34d529 add gh60 info.json 2017-11-05 12:04:52 -05:00
Michael F. Lamb
e899cb8940 several improvements for mitosis:datagrok (#1960)
* mitosis/datagrok: reduce features from rules.mk

* mitosis/datagrok: make both layer keys neighbor shift

* mitosis/datagrok: (no-op) tweak some comments

* mitosis/datagrok: set baudrate to 250k

This requires a corresponding change to the mitosis wireless firmware:
https://github.com/reversebias/mitosis/pull/10

* mitosis/datagrok: move design description from code comment to a readme

* mitosis/datagrok: new layout, new shifted keys, efficient LED code

This is experimental, but compiles and seems to work correctly.

* mitosis/datagrok: whoops, move readme.md

* mitosis/datagrok: a minor layout improvement simplifies custom-shifted code

instead of [, .] [? !], using [, ?] [. !] greatly simplifies the code
needed to perform the shifted-key switching. (And keeps , and . on the
same keys that they are under qwerty.)

also: layout improvements for symbols

* mitosis/datagrok: make my code conform to QMK style guidelines

* mitosis/datagrok: TODO note for layout table in README

* mitosis/datagrok: remove led_set_user until i figure out other changes

need to see if the corresponding changes needed in the keyboard-level code
is okay.

* mitosis/datagrok: simpler layer indicator

* mitosis/datagrok: undo change to keyboard baud; make it in my layout dir.

* mitosis/datagrok: apply same punctuation hack to qwerty layer

* mitosis/datagrok: enable qwerty layer toggle

* mitosis/datagrok: update readme
2017-11-03 11:56:06 -04:00
M Rawash
80e489e122 Added hand-swap matrix to the mitosis 2017-11-03 11:55:37 -04:00
Jennifer
29d1abff07 have led default to off on start up 2017-11-03 11:55:07 -04:00
Jennifer
b546da0a19 make more generic, and properly handle inits 2017-11-03 11:55:07 -04:00
skullY
f357bd0ccc fix a typo 2017-11-02 17:36:15 -07:00
skullY
685d4c2f97 Do some cleanup for the API 2017-11-02 16:47:39 -07:00
skullY
535c2f60a9 use real greater than and less than chars 2017-11-02 16:27:17 -07:00
skullY
65eaab8a1a fix labels 2017-11-02 12:49:23 -07:00
skullY
18f3cd1123 add labels to the clueboard layout 2017-11-02 12:47:34 -07:00
skullY
e45ce2dcb3 Merge branch 'master' of github.com:qmk/qmk_firmware 2017-11-02 12:39:25 -07:00
skullY
137456e5b1 fix the clueboard layout json 2017-11-02 11:51:06 -07:00
Jack Humbert
ec59147507 fix 2u alignment in info.jsons 2017-11-02 12:28:15 -04:00
Jack Humbert
074b78700a update preonic, add info.json 2017-11-02 12:18:18 -04:00
skullY
432674781a Document info.json files 2017-11-02 01:31:02 -07:00
skullY
4e41beeaa6 Fix a typo 2017-11-02 01:30:51 -07:00
Jack Humbert
00733f4b87 update contributing guidelines 2017-11-01 21:42:05 -04:00
dkrieger
19753788c1 Add satan keymap: HHKB-alike based on dbroqua's, with mouse functionality (#1948)
* Add satan keymap: HHKB-alike based on dbroqua's, with mouse functionality and without LED functionality

* move mouse layer to DOUBLE_HOLD, add UTIL layer for TRIPLE_HOLD

- UTIL layer
    - currently has "RESET" key and nothing else.
    - functionality otherwise covered by bootmagic should go here

- small bugfix: dispatch of [QTY]_HOLD should be based on range tap count
  falls in, not exact count.
2017-11-01 21:29:23 -04:00
Pawnerd
54a8abd785 Added support for Knops Mini (3x2 macropad) keyboard. (#1953)
* Added support for Knops Mini (3x2 macropad) keyboard.

* Added better documentation, according to the QMK standards.

* Fixed typo.

* Changed names of files to comply with QMK standards.

* Ignored makefile in keymap.

* Removed makefiles and added my credentials in the copyrights.
2017-11-01 21:24:59 -04:00
Jack Humbert
d6ad9787a0 update template readme 2017-11-01 21:14:24 -04:00
Jack Humbert
e2e387f8f8 update qmk template 2017-11-01 21:10:05 -04:00
Jack Humbert
039cc8c932 ignore more makefiles 2017-11-01 20:59:44 -04:00
QMK Bot
004826e1b8 convert to unix line-endings [skip ci] 2017-11-02 00:51:41 +00:00
Jack Humbert
f445a7f971 adds .hex for teensy 2.0 using B0 as reset 2017-11-01 20:42:03 -04:00
Danny Nguyen
13e1388f2d Add nano switch pad 2017-11-01 20:02:52 -04:00
Jack Humbert
fe56fffe7d Adds .qmk file type as a target for QMK Toolbox (#1084)
* adds .qmk file type as a target

* adds info.json with vendor and product

* add files for qmk info script

* add layout file for planck

* ignore .qmk files

* more settings

* update rules for avr and chibios

* update .qmk generation for info.json and inheritence
2017-11-01 20:01:45 -04:00
Jack Humbert
d069a42c07 Update getting_started_github.md 2017-11-01 14:10:28 -04:00
Jack Humbert
029234f1f1 adds other layouts to rules.mk 2017-11-01 13:21:17 -04:00
Jack Humbert
ddf49e8b21 Merge branch 'master' of https://github.com/qmk/qmk_firmware 2017-11-01 12:22:31 -04:00
Jack Humbert
371922ad61 update layout macros for planck 2017-11-01 12:20:46 -04:00
skullY
f868a3bb86 Fix the json for clueboard 2017-11-01 09:19:40 -07:00
skullY
5329a80f6c fixup json 2017-11-01 09:04:45 -07:00
Arialdo Martini
32bb8f6b8a Improvements to documentation (#1919)
* Typo: Github => GitHub

* Typo: windows => Windows, docker => Docker, and some punctuations

* "QMK Introduction" links to the right file

* "Unix" rather than "UNIX", which is a trademark

* Directory name is "keyboards", not "keyboard"

* "handwired" is a subdirectory of "keyboards"

* Punctuation and minor fixes

* macOS rather than Mac

* Punctuation and other minor fixes

* Vagrant Guide links to an existing file

* Jun Wako referenced with his name rather than his nickname

* Saxon genitive 's outside the link
2017-11-01 11:21:54 -04:00
Jack Humbert
1683d3a559 adds info.json files to planck 2017-11-01 10:08:40 -04:00
drashna
b79a4cfeba Updated personal keymaps (#1945)
* Add woodpad

* Cleanup

* Remove misc layouts for woodpad

* Move woodpad to handwired

* Updated RGB Underglow info

* Cleanup macros

* Fix odd merge issue

* Tweaked RGB lighting stuff

* Start to merge orthodox/ergodox keymaps (persistant layers)

* Add forced NKRO

* Added Colemak and Dvorak layers to default orthodox keymap

* Added default layer (qwerty/colemak/dvorak) detection to RGB Underglow

* Updated macros and added workman keymaps

* Fixed RGB lighting for Workman layout

* Add leader keys

* Remove force NKRO

* Add Viterbi one handed layout and minor tweaks to others

* Finishing up Viterbi keyboard layout, and NKRO tweaks to other layouts

* Made "make" keystroke universal

* Clean up and updates of drashna keymaps

* Add workman layer to planck

* Update to keymaps

* Fix accidental commit because I don't know how to git

* Fix makefile toggle code in ez keymap
Finish adding RGB code to orthodox

* missing underscore in init function declaration

* Updated RGB Underglow layer indication code due to discovery of the layer_state_set_kb function

* Remove unnecessary planck layout
2017-11-01 00:13:20 -07:00
skullY
44d9ad95b7 Add info.json files for clueboard 66 2017-11-01 00:03:35 -07:00
Danny Nguyen
fad967af4c Remove extra underscore from MASTER_RIGHT define 2017-11-01 01:19:06 -04:00
DangerousParts
20e18d15e3 Created Kona Classic config (#1791)
* Created Kona Classic config

* Fixed KonaClassic config

* Updated README

* Updated Readme to conform to format standards

* Added ANSI and ISO layout options

* Fixed images in Readme

* Added labels to images

* Added absolute links to images in Readme

* Image link updates again

* Fixed bottom row keys in some layouts

* Fixed Grave and Tilde

* Fixed Underglow in Kona Classic configs

* Renamed KonaClassic to kona_classic
2017-10-31 23:59:23 -04:00
Danny
83af62322c Add Levinson rev2 (#1939)
* Add levinson rev2 files

* Add hexwire keymap

* Remove redefinition of backlight defines
2017-10-31 23:58:38 -04:00
Rob Rogers
2d77f9cbb9 Fix pointing device feature 2017-10-31 20:59:55 -04:00
Danny Nguyen
c9a0436422 Add 6-ball macropad 2017-10-31 20:59:26 -04:00
GlenPickle
fca03e15b9 Chimera Ortho Readme (#1943)
* Added Chimera Ortho keymap

* added readme

* fixed hardware link
2017-10-31 20:58:46 -04:00
Erez Zukerman
bc98b0d9eb Merge pull request #1915 from dondelelcaro/ergodox_ez_left_leds
Ergodox ez left leds support
2017-10-31 11:33:09 -07:00
Jack Humbert
38261920a9 update hand wiring link 2017-10-31 13:38:57 -04:00
Danny Nguyen
f9881793e3 Add hexwire keymap for Eco 2017-10-31 12:27:49 -04:00
tsankuanglee
04b9b62bdc RETRO_TAPPING (#1922)
* add RETRO_TAP: tap anyway, even after TAP_TERM, if no interruption

* consistent variable name

* add option doc

* change name for consistency

* make RETRO_TAPPING default to off
2017-10-31 11:15:22 -04:00
Louis Orleans
b2bbbc2dfc layout(infinity ergodox): dudeofawesome's layout (#1932)
* 🎉 Building simple flasher

* 🎉 Flashing works

* 🎨 Cleaning up

* 🐛 Being more specific with board identity

* 🐛 Flashing correct keymap

* 🎉 Adding keymap

*  Updating keymap

* 🚨 RGB

*  Revert "🚨 RGB"

This reverts commit 9ceabfb267.

*  Improvements to flasher

*  Layout tweaks

* 💄 Messing around with LCD

* 💄 Enabling LCD backlight matching

* 🔧 Updating layout

* 🐛 Fixing console logging

* 🎨 Cleaning up indentation

* 🔧 Adding editorconfig

*  Adding game layer

* 💄 Changing numpad layout

* 🔥 redoing entire layout

It's now more similar to the Planck default layout

*  add workman and dvorak layouts

* 🐛 fix numpad

* 🐛 fix layer orders

* 🐛 fix layer toggling

* 🐛 fix tri-layer switching

* 🐛 fix LCD colors for adjustment layers

* 🔥 remove old flasher project

* 🔥 remove simple_visualizer

* 💄 update LCD colors

* 📝 fix layout comments

* 💄  swapping 2u buttons

* 🔥🔧 removing editorconfig

* 🚨 using 2 spaces

* 📝 add README

*  Revert "💄 Enabling LCD backlight matching"

This reverts commit 51577903df.

*  Revert "💄 Messing around with LCD"

This reverts commit fdd9acdae5.
2017-10-31 11:14:43 -04:00
Louis Orleans
6169cd52ba Add EditorConfig file (#1930)
* 🔧 add editorconfig

This makes supported editors automatically change their settings to match desired code styles

* 🔧 add extension recommendation for VSCode

This will cause VS Code to prompt the user to install the EditorConfig extension when they open the project.

If this is felt to be too opinionated, I can revert it.
2017-10-31 11:13:40 -04:00
drashna
101b998ac2 Fix Pointing Device code (#1934)
* Fix pointer device options

when the feature was added, the appropriate option definition wasn't created.  This needs to be added to function properly.

* Update common_features.mk

* missing underscore in init function declaration
2017-10-31 11:13:00 -04:00
Takayuki Matsubara
7b65b7e948 fix Logical Maximum to be recognized as 255 instead of -1
SEE ALSO: https://github.com/qmk/qmk_firmware/issues/312
2017-10-31 11:12:06 -04:00
Zach Burchill
4c1164c469 fixed two typos
I'm almost 100% sure "else if (state->count = 2) {" was a typo (it should have two ='s for a logical operator), and I'm *pretty* sure "if (state->interrupted || state->!pressed) return SINGLE_TAP;" has a typo. At least, it returns an error on my machine saying something about an unexpected '!'.  
I changed it to a slightly longer form (i.e., "state->pressed==0"), and that worked fine.
2017-10-31 00:40:27 -04:00
Gun Pinyo
e555e42aae add Thai layers for the GunP planck (#1910)
* Add a layout of planck named GunP, ready for pull request review.

* add Thai layers for the GunP planck
2017-10-31 00:39:33 -04:00
William Wilson
38da7795f4 Added Chimera Ortho keymap 2017-10-31 00:30:24 -04:00
Pentti Laitinen
8c10b60c5f Initial commit for nordic layout for ergodox infinity.
- Added nordic infinity ergodox layout
- Fixed typo in ergodox infinity readme.md
2017-10-31 00:29:51 -04:00
Nathan Sharfi
c8fca10f0d zweihander-osx: Remove app keys, etc.
- add right command keys
- add F16 on ;' for Siri
- remove command-Q (too easy to hit)
2017-10-31 00:28:56 -04:00
Louis Orleans
1f6002db3f layout(planck): dudeofawesome's layout with simultaneous RGB and audio support (#1929)
* layout(planck): new layout initial commit

* feat(planck): add workman layout

* fix(planck): switching to workman

* layout(planck): swapping mnext and mplay

* feat(planck): prep for RGB

* perf(planck): remove plover

saves 256 bytes of memory

* perf(planck): remove colemak

saves 128 bytes

* layout(planck): swapping enter and quote

* perf(planck): disable console

frees 1664 bytes

* feat(planck): RGB under-lighting

* refactor(planck): change RGB pin

Uses pin labeled PB2

* feat(planck): add RGB keycodes

* feat(planck): re-enable audio

* style(planck): fixing indentation

Because who indents like that?

* style(planck): clean up keycodes

* layout(planck): remove del

* feat(planck): add tap-space to layer keys

* docs(planck): specify pin on PCB for RGB

* bug(planck): reducing tap time

* Revert "bug(planck): reducing tap time"

This reverts commit 62606b2dc6.

* Revert "feat(planck): add tap-space to layer keys"

This reverts commit c74de5a4aa.

* perf(planck): remove backlit case

* feat(planck): swap enter and quote

* bug(planck): moving right shift

* doc(planck): update README

* chore(planck): remove makefile
2017-10-31 00:27:07 -04:00
James Morgan
07017871e5 README, keymap & config update to 3 keyboards (#1911)
* First commit of the Terminus_Mini firmware and the DivergeJM version of the Nyquist firmware

* Fix terminus_mini & nyquist/DivergeJM readme files

Previously an outdated copy of the default readme. Updated to match the  Nyquist/DivergeJM format (DivergeJM is a split 5x12 implementation of the terminus_mini layout)

* Update makefiles to rules.mk

Renamed both Makefiles to rules.mk, removed references to makefiles

* Updated rules.mk

Inadvertantly removed important code from the rules.mk in previous commit. This has been restored.

Also disabled Tap_Dance in both rules.mk files

* Moved terminus_mini to handwired

Realised that existing directory was not appropriate for the terminus_mini project, moved to handwired.

* New Frosty Flake layout for QFR TKL

Added a TKL layout for the Frosty Flake with a navigation cluster on LOWER under the left hand and a similarly functioning MOUSE layer that includes mouse navigation functionality.

* README fix & keymap update for 3 keyboards

Fixed the markdown for the handwired/terminus_mini:default, Nyqyist:DivergeJM & frosty_flake:QFR_JM.

Added TAPPING_TERM =  150 to config.h for all keyboards

Switched LT(LOWER) and LAlt on the mod row for ortholinear boards.

* Update readme for QFR_JM to include make instructions

* Revert "Merge branch 'master' of https://github.com/mogranjm/qmk_firmware"

This reverts commit a45f264ada, reversing
changes made to 62349c3341.

* Revert "Revert "Merge branch 'master' of https://github.com/mogranjm/qmk_firmware""

This reverts commit eae54fb3be.

* Added QWERTY support to the QFR_JM

Implemented variable default base layer from the Planck default keymap.

* Update README to reflect QWERTY support
2017-10-29 20:07:36 -04:00
Jody Foo
f4949fdd32 Fix for issue https://github.com/qmk/qmk_firmware/issues/1751 2017-10-29 20:05:54 -04:00
Shihpin Tseng
750f8ec94e Fix process_combo.c compile warning 2017-10-29 20:05:26 -04:00
Jeremy Cowgar
49c32021db Added missing RGB and Auto Shift in main feature list. Also standardized on period at the end of each feature list item. 2017-10-29 20:04:10 -04:00
Jeremy Cowgar
76d807fe7d Fix code example in auto shift docs 2017-10-29 20:04:10 -04:00
Jeremy Cowgar
bf1fedc05e Fixed various feature links 2017-10-29 20:04:10 -04:00
Maxr1998
5960d0349c Add grave key 2017-10-29 20:02:52 -04:00
Sebastian Kaim
0afaed8535 Extended the hint of the programmer to link to the relevant README part instead of giving a generic hint. 2017-10-29 19:59:16 -04:00
Sebastian Kaim
688343f218 Added a better description for the bootloader key 2017-10-29 19:59:16 -04:00
Jack Humbert
4d421ee31c adds flashing docs 2017-10-29 18:44:29 -04:00
Campbell Barton
91683d56fa ergodox qwerty_code_friendly: add macro keys (#1918)
Also add more configurable keys.
2017-10-29 15:34:02 -07:00
Pentti Laitinen
9ee207acac Added Iso(ish) layout for tada68. (#1924)
- Basic layout with one function layer.
- Added correct mapping for ISO layout into tada68.h.
- Readme for the keymap.
2017-10-29 15:22:07 -07:00
Don Armstrong
0bb457e573 document how to define LEFT_LEDS and how that hack is done 2017-10-27 13:46:51 -07:00
Don Armstrong
364aeeec53 implement ergodox_left_leds_update in ergodox_ez
Previously, this code was implemented in keymap.c, but I'm unaware of
someone with a different implementation of this particular hack. [If
someone has it, we can add another #ifdef in the future.]
2017-10-27 13:34:03 -07:00
Don Armstrong
2e3b99f7f1 update left led support 2017-10-27 13:24:30 -07:00
Don Armstrong
bcfba27101 add initial support for left leds on an ergodox ez 2017-10-27 13:24:30 -07:00
Ethan Madden
b45b223389 Small documentation and keymap tweaks for my minivan layout (#1891)
* Added personal minivan keymap

more consistent layer setup

documentation!

slide some things around

more doc jiggling

* Small layout and documentation tweaks

Small documentation updates

dropped Makefile that for some reason was still in my branch

* found and removed extra makefile
2017-10-25 13:01:47 -10:00
Sebastian Kaim
7b754e1a5a added bfake support as a subproject (#1903)
* added bfake support as a subproject

also moved existing bmini stuff to a subproject

fixed columns

minor keymap update

making this a subproject

remove old stuff

got subproject stuff figured out

* travis was upset because a board didn't have a default keymap
2017-10-25 13:01:02 -10:00
Manassarn Manoonchai
a3f53aeaa1 Add narze keymaps for Ergodox & Planck with SuperDuper mode implementation (#1883)
* Fork default planck keymap

* Esc -> CapsLock

* Swap Tilde & Grave in Lower & Raise

* Replace Blacklight key with Raise

* Add Hyper/Esc & Shift/Enter key

* Add super duper mode using S+D combo

* Change superduper mode sound

* Add more functionality to superduper mode

* Fork default

* Replace all left shift to shift/parensopen (space cadet)

* Super / Underscore

* Try superduper on z/slash held

* Use function/macro instead, LGUI_UNDS alone not working

*  Add mouse layer 🐭

* 🐛 Fix superduper

*  Fix GUI_UNDS

* 🐛 Fix registering underscore when releasing too fast

* 🐛 Fix Shift/( with LT z

*  Add superduper for colemak

*  Add Qwerty on software Colemak layout & make Superduper available on multile layouts

*  Enable/disable superduper mode & fix layer switching

* 🐛 Fix superduper not unregister mods

*  Update planck-like ergodox (wip)

* 🐛 Fix return before changing tap count & modify comments

*  Replace with planck code

* 📝 Update readme

*  Fix SuperDuper by using intermediate layers

* Remove LT from inner lower & raise for ease of use

* Change TG to LG

* Add options & disable audio

* 🔧 Enable ignore mod tap interrupt & shorting tapping term

* 📝 Update readme

* Remove including quantum makefile

* 📝 Update readme

* Rename Makefiles
2017-10-25 06:11:07 -10:00
Doug Krieger
6c4639bfac Add RESET to satan:dbroqua mapping 2017-10-25 02:40:15 -10:00
skullydazed
67cc5cebc0 Restructure the hardware and feature docs to make things easier to find (#1888)
* fix #1313 by documenting more config.h options

* Clean up and organize documentation
2017-10-24 20:34:28 -07:00
heartrobotninja
8892c50336 Moving LOCK and adding RUN. Fixing equal key to actually use equal keycode. 2017-10-24 17:07:09 -10:00
Dylan Khor
9128ed50c2 Add macro to sleep Windows 10 2017-10-24 17:04:12 -10:00
Sebastian Kaim
1f43495922 Added a new keycode for cycling through RBG modes which reverses directions when shift is hold.
This commit adds a new keycode `RGB_SMOD` which is the same as `RGB_MOD` (cycle through all modes),
but when it is used in combination with shift it will reverse the direction.
2017-10-24 17:02:20 -10:00
Gun Pinyo
21dfa29c28 Add a layout of planck named GunP, ready for pull request review. 2017-10-24 17:01:20 -10:00
Bernardo Farah
4c960ad7c4 Added berfarah's custom keyboard layout 2017-10-24 16:59:35 -10:00
ajp10304
a08287b0a0 Added ajp10304 Planck layout (#1887)
* Added ajp10304 Planck layout

* Removed Makefile from planck ajp10304 keymap
2017-10-23 08:28:52 -10:00
alex-paget
af83c6a4cb My layout to suit my needs 2017-10-23 08:28:13 -10:00
Damien
e54c8df453 DZ60 changes (#1890)
* - Fixed DK60 version in config.h

* - Updated dk60 readme with new QMK rules

* - Fixed wording in readme

* Added dbroqua layout for DZ60

I've also updated dz60.h to add "true HHKD" keymap definition (6U
spacebar).

With the default HHKB definition r_alt was not mapped and when I pressed
r_menu it was r_alt.

Regards
2017-10-23 08:27:37 -10:00
James
c2b8a47604 Some finishing touches on space_oddity (#1892)
* Add verbose comments, ASCII layout pictures, and re-word readme.md

* Fix omission of F(2) on the third layer.
2017-10-23 08:26:52 -10:00
Dylan Khor
07ec609fad Missing line break in NIU Mini readme (#1886)
* Missing line break

* More specific URL to the product
2017-10-22 14:53:00 -10:00
mogranjm
a66e75609e Added new TKL layout for the Frosty flake - Quickfire Rapid (#1854)
* First commit of the Terminus_Mini firmware and the DivergeJM version of the Nyquist firmware

* Fix terminus_mini & nyquist/DivergeJM readme files

Previously an outdated copy of the default readme. Updated to match the  Nyquist/DivergeJM format (DivergeJM is a split 5x12 implementation of the terminus_mini layout)

* Update makefiles to rules.mk

Renamed both Makefiles to rules.mk, removed references to makefiles

* Updated rules.mk

Inadvertantly removed important code from the rules.mk in previous commit. This has been restored.

Also disabled Tap_Dance in both rules.mk files

* Moved terminus_mini to handwired

Realised that existing directory was not appropriate for the terminus_mini project, moved to handwired.

* New Frosty Flake layout for QFR TKL

Added a TKL layout for the Frosty Flake with a navigation cluster on LOWER under the left hand and a similarly functioning MOUSE layer that includes mouse navigation functionality.
2017-10-21 18:32:35 -10:00
drashna
f3534f999f Updated keymaps (#1853)
* Add woodpad

* Cleanup

* Remove misc layouts for woodpad

* Move woodpad to handwired

* Updated RGB Underglow info

* Cleanup macros

* Fix odd merge issue

* Tweaked RGB lighting stuff

* Start to merge orthodox/ergodox keymaps (persistant layers)

* Add forced NKRO

* Added Colemak and Dvorak layers to default orthodox keymap

* Added default layer (qwerty/colemak/dvorak) detection to RGB Underglow

* Updated macros and added workman keymaps

* Fixed RGB lighting for Workman layout

* Add leader keys

* Remove force NKRO

* Add Viterbi one handed layout and minor tweaks to others
2017-10-21 18:27:54 -10:00
mondaufgrau
22564d8ee7 Added xd60 ISO keymap (#1865)
* Added xd60 ISO keymap

* renamed ISO to iso

* some cleaning

* added iso keymap

* some cleaning
2017-10-21 18:26:05 -10:00
Carlos Filoteo
736140439d Add links to EEPROM files 2017-10-21 18:24:42 -10:00
Daniel Gordon
725aa5b820 Update to Tap-Dance Docs for Fast Typists
* Quad function tap dance works as intended when typing fast
    * Example 4 in doc has been updated

Change-Id: If33406299e2eed49152c495da92f4977dfdc1e2f
2017-10-21 18:24:06 -10:00
Jack Humbert
06f196c589 Creates a userspace for keymaps (#1559)
* create a user space

* adds example

* document, add readme.md

* jackhumbert userspace, ergodox keymap
2017-10-21 11:44:11 -10:00
skullY
9bb259b660 Fix the naming for clueboard files 2017-10-21 13:51:18 -07:00
James
ab3dbd8daa Additional custom handwired layout - Space Oddity (#1868)
* Add existing file

* Add new keyboard layout - initial commit

* Revised readme.md

* Clarified readme.md, reorganized keymap.c, and added license text.

* Fixing last incomplete commit

* Just a little code cleanup to make things more readable.
2017-10-21 10:04:35 -10:00
Pittyolo
1954ad1fd8 Added my Let's Split layout (#1867)
* Add files via upload

* Add files via upload

* Add files via upload

* Add files via upload

* Update keymap.c

* Update keymap.c

* Update keymap.c

* Update keymap.c

* Add files via upload

* Add files via upload

* Update README.md

* Update README.md

* Update README.md

* Update README.md

* Update README.md

* Update README.md

* Update README.md

* Add files via upload

* Adding my Let's Split layout

As in my Nyquist layout, ISO Hungrian friendly
2017-10-21 10:02:51 -10:00
James
3276c4c56a Minor punctuation and grammar edits. 2017-10-21 10:02:14 -10:00
Jason Rosenman
3a1ce56aed Added caps lock + key lock 2017-10-21 10:01:48 -10:00
Jason Rosenman
2f24ed1046 Turned off some unnecessary makefile rules 2017-10-21 10:01:48 -10:00
CarVac
50a4b3510b Revise carvac_dv keymap for easier alt-tab (#1871)
* Add carvac_dv keymap for mitosis

* Add mouse keys

* move backspace, etc, and fix tab

* remove commented-out functions in keymap

* Fix scroll buttons and add left/right scrolling

* Make num momentary, add comments, and clean up

* fix mouse scroll acceleration

* Add tab, remove bksp, move print screen

Having tab next to control and alt makes for much easier
alt-tabbing and ctrl-tabbing.

That displaced print screen, but I had never used the non-layer
backspace on the right hand, so I moved printscreen over there.
2017-10-21 10:01:09 -10:00
marcostrauss
57bf00f28f ErgoDone: VID/PID/NKRO (#1872)
* - Fancy default PID and option for corresponding VID.
- Information about official VID/PID.
- Correct manufacturer name.
- NKRO enabled by default.

* Resolved build error with `#ifndef FORCE_NKRO`.
2017-10-21 10:00:41 -10:00
heartrobotninja
b25338a809 heartrobotninja ergodox_ez and lets_split layouts (#1874) 2017-10-21 09:59:31 -10:00
Jason Milkins
78923cb884 Fix code backticks on Frequently Asked Build Questions docs 2017-10-21 09:58:48 -10:00
Jason Milkins
a860d9d628 Fix missing code backticks 2017-10-21 09:58:17 -10:00
Danny
b5464cf20a Add Iris keyboard (#1863)
* Clone Nyquist code to Iris and rename

* Set keymap and pins

* Work in progress Iris default keymap

* Add Iris rev2

* Update Iris files to new build system

* Add lewisridden keymap
2017-10-19 04:02:00 -10:00
Daniel Gordon
383e508bc5 Quad Function Tap Dance added to TD Doc
* Added section to example, detailing how to accomplish the
        'quad-function' tap dance.
    * Refactored TD documentation to clearly separate different complex
        examples

Change-Id: Ifc1495d1142849c771418fdabc458c04c48311e6
2017-10-18 17:14:12 -10:00
skullydazed
3f3fa07918 Reorganize clueboard into a single directory (#1855) 2017-10-17 18:05:21 -07:00
skullydazed
ad49db8cd2 Address #1689 by using a formula to define the breathing curve (#1692)
* Address #1689 by using a formula to define the breathing curve and exposing defines to control the shape of the curve.

* Tweak the behavior of breathing for clueboard
2017-10-17 16:47:49 -07:00
mogranjm
d3fe6a0588 Add terminus_mini keyboard and nyquist/DivergeJM layout (#1851)
* First commit of the Terminus_Mini firmware and the DivergeJM version of the Nyquist firmware

* Fix terminus_mini & nyquist/DivergeJM readme files

Previously an outdated copy of the default readme. Updated to match the  Nyquist/DivergeJM format (DivergeJM is a split 5x12 implementation of the terminus_mini layout)

* Update makefiles to rules.mk

Renamed both Makefiles to rules.mk, removed references to makefiles

* Updated rules.mk

Inadvertantly removed important code from the rules.mk in previous commit. This has been restored.

Also disabled Tap_Dance in both rules.mk files

* Moved terminus_mini to handwired

Realised that existing directory was not appropriate for the terminus_mini project, moved to handwired.
2017-10-17 06:42:27 -10:00
Max Rumpf
af4697cba5 Add Maxr1998's GH60 layout (#1849)
* Maxr1998's GH60 layout

* delete unused makefile

* Remove unneeded include
2017-10-16 16:43:40 -10:00
Kenneth Aloysius
b7bb923962 Add NIU Mini from KBDFans (#1847)
* Add NIU Mini keymap from Planck keymap

* Remove old keymap files

* Fix README, removed Planck references

* Add default layout, move Planck layout to separate folder

* Update README
2017-10-16 13:31:39 -10:00
Phil Hagelberg
0f5928fdf4 Fix avrdude message to not mention any specific device model. 2017-10-16 09:54:17 -10:00
Benjamin Dengler
ba4b3d9d72 Added BLE support for USB-USB converter. (#1824)
* Added BLE support to USB-USB converter

* Added readme

* Removed images and Makefile
2017-10-15 15:04:03 -10:00
Dylan Khor
aa660c1eb7 Broken link found in issue #1845 2017-10-15 15:03:23 -10:00
Jack Humbert
12b2e0ac73 hack to force new tag 2017-10-15 20:04:23 -04:00
Jack Humbert
bd642d08ab add note to makefile for future use 2017-10-15 16:54:06 -04:00
Jack Humbert
7f2882832e adds default keymap for handwired boards 2017-10-15 16:52:51 -04:00
Jack Humbert
32f18cf616 fix up default keymaps and remove keyboard folder filter 2017-10-15 16:44:31 -04:00
Jack Humbert
1745f202cc update keymaps to not be the canonical file 2017-10-15 16:18:45 -04:00
Jack Humbert
115e49b2af only build default keymaps 2017-10-15 16:18:28 -04:00
Jack Humbert
e64313cdb3 adds default keymap for amj60 2017-10-15 16:17:47 -04:00
Jack Humbert
066525ab9e add qmk.fm as a backup host 2017-10-15 13:37:46 -04:00
Salt-Peanuts
e1bcb40e90 Cleaned up my Kinesis layout and created readme. (#1843)
* Cleaned up keymap and readme

* Cleaned up keymap and readme

* Cleaned up keymap and readme

* Cleaned up keymap and readme
2017-10-15 06:12:39 -10:00
zs
0b023ef67c Add tomb0y's minidox layout 2017-10-14 19:12:59 -10:00
Jack Humbert
800ec55dfc Make arguments redo, subproject elimination (#1784)
* redo make args to use colons, better folder structuring system [skip ci]

* don't put spaces after statements - hard lessons in makefile development

* fix-up some other rules.mk

* give travis a chance

* reset KEYMAPS variable

* start converting keyboards to new system

* try making all with travis

* redo make args to use colons, better folder structuring system [skip ci]

* don't put spaces after statements - hard lessons in makefile development

* fix-up some other rules.mk

* give travis a chance

* reset KEYMAPS variable

* start converting keyboards to new system

* try making all with travis

* start to update readmes and keyboards

* look in keyboard directories for board.mk

* update visualizer rules

* fix up some other keyboards/keymaps

* fix arm board ld includes

* fix board rules

* fix up remaining keyboards

* reset layout variable

* reset keyboard_layouts

* fix remainging keymaps/boards

* update readmes, docs

* add note to makefile error

* update readmes

* remove planck keymap warnings

* update references and docs

* test out tarvis build stages

* don't use stages for now

* don't use stages for now
2017-10-14 11:32:19 -10:00
Stefano Rodighiero
e5dc2253e2 keymap configuration rewritten using the KEYMAP macro defined in atreus.h 2017-10-14 07:01:50 -10:00
Andrew
6531d64ac7 Add YMD96 Keyboard (#1838)
* add ymd96 base

currently not working correctly.

* Update

honestly not really sure what I've been doing but I'm just more or less brute forcing this until I can get the pcb schematic or something

* honestly just trying stuff out

* Update keymaps

Getting closer hopefully

* ymd96 works!

at least for me

* Update readme

* Update readme

* Update readme
2017-10-14 07:01:02 -10:00
Pittyolo
f9f3afd767 Created cleaner readme and updated the keymap of my layout (#1840)
* Add files via upload

* Add files via upload

* Add files via upload

* Add files via upload

* Update keymap.c

* Update keymap.c

* Update keymap.c

* Update keymap.c

* Add files via upload

* Add files via upload

* Update README.md

* Update README.md

* Update README.md

* Update README.md

* Update README.md

* Update README.md

* Update README.md

* Add files via upload
2017-10-14 07:00:00 -10:00
Oscillope
c70b419ec0 Add multiple layout support and Linux flash utility to JJ40 (#1837)
* Adds support for multiple layouts. Adds custom keymap for "offset"
layout.

* Adds a tool to help detach the keyboard from the Linux HID driver before programming.

* Adds a tool to help detach the keyboard from the Linux HID driver before programming.
2017-10-13 19:04:36 -10:00
unknown
bccf263cd0 Add support for Unikeyboard Felix 2017-10-13 11:24:31 -10:00
Vadim Brodsky
e094cd42b5 Add support for the JJ40 Keyboard (#1834)
* Add support for JJ40

* Update readme

* Update maintaner
2017-10-13 10:20:56 -10:00
Sebastian Kaim
598cb82655 Extended the programming script for the ps2avrGB keyboard series:
- a keyboard already in bootloader mode will now be detected
- if setting the keyboard to bootloader mode doesn't work, a hint will be printed on how to do so
- instead of failing instantly when no keyboard is found, the script will now wait up to 60 seconds (it retries every 5 seconds, up to 12 times)
2017-10-13 05:37:19 -10:00
Donald
74f51009a8 Updated DZ60 HHKB layout and add my own layout (#1828)
* Updated DZ60 to properly handle HHKB layout, and added my own HHKB layout

* Added dedicated underglow keys

* Fixed compile issue
2017-10-13 05:35:49 -10:00
Otto Rask
122525ee61 Add rask's UK78 and iErgoDox layouts (#1830)
* Add rask's Satan layout

* Add rask's Satan layout

* Add rask's BananaSplit60 layout

* Add rask's BS60 readme

* Fix rask's BS60 readme image

* Fix rask's BS60 readme image again

* Add rask's UK78 layout

* Change RGui to be LGui to fix locale switching

On Ubuntu the keyboard seemingly lost RGui when toggling
between typing languages. With LGui toggling works normally.

* Add rask's ErgoDox Infinity layout

* Modify ErgoDox layout and add readme for it

* Add rask's UK78 layout readme
2017-10-13 05:35:17 -10:00
Jon Allen
c037d4bb30 Add the Tomato keyboard 2017-10-13 05:23:23 -10:00
keisuke333
66f45c9e2e Fix teensy path 2017-10-13 05:22:13 -10:00
Gareth Pye
2cf697d0c8 Tada68 instructions, updated and clarified to avoid bricking keyboards 2017-10-13 05:21:26 -10:00
Jonathan Arnett
4c0ff7b7ea Remove reference to Ergodox subprojects from docs
At one time, "ez" and "infinity" may have been subprojects of a
unified "ergodox" project, but this is not currently the case. Running
`make ergodox-ez-default-teensy` (or similar), as the documentation
currently implies, does not work.
2017-10-12 06:25:47 -10:00
skullY
db5afb05cf Fix the presentation of the contribution guide 2017-10-11 12:18:53 -07:00
skullydazed
2db4ad2133 Write a contributing guide. (#1827) 2017-10-11 12:07:15 -07:00
Jacob Chapman
b3ad561b4f newkb-atreus-xk 2017-10-10 09:25:39 -10:00
Wunder
ee8860a733 add stock layout for xd75 (#1731)
* add stock layout for xd75

* fix layout bug

* layout naming

* don't need it

* Cleaning up
2017-10-10 08:13:42 -10:00
Jesper Brix Rosenkilde
966e2660cf Add option to reverse PS2 mouse axes and scrolling 2017-10-10 07:20:17 -10:00
keisuke333
109b2ae0bd Fix missing teensy path 2017-10-10 07:16:22 -10:00
Joe Martin
b91ffba4be #1792 added in waits from tmk for locking switches
fixes #1792
2017-10-10 07:15:41 -10:00
marcostrauss
01ac8a6051 ErgoDone keyboard: Improved structure of readme and augmented it with important information. Updated links to moved content. 2017-10-10 07:12:37 -10:00
unknown
f88f042c04 Updated my Gherkin Keymap 2017-10-10 07:11:26 -10:00
drashna
e0e80c0dc1 Cleanup of my keymaps (#1802)
* Add woodpad

* Cleanup

* Remove misc layouts for woodpad

* Move woodpad to handwired

* Updated RGB Underglow info

* Cleanup macros

* Fix odd merge issue

* Tweaked RGB lighting stuff

* Start to merge orthodox/ergodox keymaps (persistant layers)

* Add forced NKRO

* Added Colemak and Dvorak layers to default orthodox keymap

* Added default layer (qwerty/colemak/dvorak) detection to RGB Underglow
2017-10-10 07:11:05 -10:00
DerMeerkamp
34084b4ee6 geändert: readme.md 2017-10-10 07:10:17 -10:00
DerMeerkamp
f3e61afdc7 geändert: readme.md 2017-10-10 07:10:17 -10:00
DerMeerkamp
2cda124bc1 geändert: keymap.c 2017-10-10 07:10:17 -10:00
DerMeerkamp
951285de67 neue Datei: readme.md 2017-10-10 07:10:17 -10:00
DerMeerkamp
56c2487223 geändert: keyboards/lets_split/keymaps/DE_simple/keymap.c 2017-10-10 07:10:17 -10:00
DerMeerkamp
c5f847a900 neue Datei: keyboards/lets_split/keymaps/DE_simple/Makefile
neue Datei:     keyboards/lets_split/keymaps/DE_simple/config.h
	neue Datei:     keyboards/lets_split/keymaps/DE_simple/keymap.c
	neue Datei:     keyboards/lets_split/keymaps/DE_simple/rules.mk
2017-10-10 07:10:17 -10:00
Campbell Barton
d6a446bf95 Qwerty Code Friendly: relocate insert key
This was too easy to press by accident (next to Alt).
Make this user configurable.
2017-10-10 07:09:44 -10:00
Pittyolo
31808df294 Added ISO Hungarian friendly keymap (#1808)
* Add files via upload

* Add files via upload

* Add files via upload

* Add files via upload

* Update keymap.c

* Update keymap.c

* Update keymap.c

* Update keymap.c
2017-10-10 07:08:37 -10:00
Snipeye
cfd118d158 Added Dichotemy Keyboard, updated docs for Pointing Device (#1817)
* Added Dichotemy Keyboard, updated docs for Pointing Device

* Updated readme

* Updated mouse report pointer in pointing_device.c
2017-10-10 07:07:59 -10:00
Antonio García-Domínguez
20031ab982 Contribute GH60 layout (#1820)
* Add first version of my layout

* Tweaked layout

* gh60/bluezio: SpaceFn CapsLock interferes with Ctrl+Arrows
2017-10-10 07:07:09 -10:00
Kyle Montag
6d2cb1d9ac Add my layouts (#1822)
* all of my updates

* return to base config for xd60.c

* remove janky keymap header definition

* update readme for xd60

* update Planck readme
2017-10-10 07:06:41 -10:00
lyuts
d8c62e4238 Fixed typo in docs. (#1818) 2017-10-06 20:15:55 -07:00
Rob Rogers
357d930f5a correct extraneous t 2017-10-06 11:09:03 -10:00
Rob Rogers
8d7cc11d72 correct layer numbers in keymaps 2017-10-06 11:09:03 -10:00
Johannes Huber
18f78b6735 Fix Clueboard readme links (#1816) 2017-10-06 13:36:35 -07:00
Fabian Topfstedt
120089d917 Consistent fabian layouts for amj40, let's split, planck and xd75 (#1812)
* slight modifier changes; added plover and reusing jack's default planck keymap as the basis

* space is not shift when held anymore

* added fabian layout (based on jack's default)

* changed fabian layout (based on jack's default)

* changed fabian layout (based on jack's default)
2017-10-06 08:08:35 -10:00
Daniel Shields
d2bbfb9058 Increase one-shot timeout for planck/keymaps/dshields and remove unused includes. 2017-10-06 08:08:06 -10:00
Snipeye
ee13228486 Generic Pointing Device (#1767) 2017-10-06 07:13:08 -10:00
BenKesselring
ea819268f3 Add new 4x12 ortho layout & add credit to XD75 port (#1782)
* add xd75, preliminary RGB'

* fix RGB

* add backlight support (probably)

* updated readme and tweaked keymap

* added xd75 to list in /keyboards

* copyright ALL the things, create blank slate for Colemak Mod-DH Split/Wide keymap

* Add preliminary split Colemak Mod-DH layout

* changing stuff to compile properly

* attribution

* moar attribution

* removed incomplete keymap

* Create Colemak Mod-DH Wide layout for 4x12 ortho.

* Move Adjust key

* Add layou timage to readme

* fix naming

* Fix stupid issue with not understanding how the keymap works

* forgot to switch COLEMAK to COLEMAKDH...

* Remove and link image

* Remove and link image
2017-10-06 04:20:28 -10:00
Dylan Khor
e0834cfda9 Update Let's Split readme
Updated Let's Split readme to reflect `make` changes in #1659, removed incorrectly used apostrophe and other spelling / grammar errors
2017-10-05 13:42:17 -10:00
Campbell Barton
c206650ed0 [cleanup] consistent 2 space indentation
Was mixed between 2&4
2017-10-05 07:28:42 -10:00
Dylan Khor
e446eddca9 Adding my Roadkit keymap (#1798)
* Initial khord roadkit keymap

* Remove bad readme

* Transfer dot through to layer 2 and add clarifications to layout comments
2017-10-05 07:22:58 -10:00
Dylan Khor
0cc62459a7 Minor typo 2017-10-05 07:22:25 -10:00
Sebastian Kaim
29bcffb3f3 Edited a minor typo in feature_bootmagic.md. 2017-10-05 06:17:34 -10:00
Cory Shaw
01bf8e1643 Mbsurfer Let's Split keymap updates (#1787)
* Fix mbsurfer let's split layout RGB indicators when both lower and raise are pressed

* Update mbsurfer let's split keymap with new RGB key codes for modes

* Clean up mbsurfer keymap matrix layout
2017-10-03 09:05:10 -10:00
Daniel Gordon
03de0c8575 Reference to rules.mk in tap dance docs added
Change-Id: I64aa6f95a30ab05f0ed3f499e54b9e125d379fad
2017-10-03 09:04:31 -10:00
Gergely Nagy
1cd336dde4 ergodox: Update algernon's layout to v1.11
Overall changes
===============

* Updated to work with QMK master.
* The `$` and `^` symbols on the number row were swapped on both the base and
  the ADORE layers.
* The bracket tap-dance keys can now be used to input Japanese brackets, `「`
  and `」` with a third tap.
* The second column of the top row on the right side will act as a "Social"
  application selector on the `AppSel` layer.
* The third key on the same column will select a password manager.
* The `GUI` key will now launch `rofi` when triple-tapped.

Miscellaneous
=============

* The `👶` symbol can be entered with UCIS.
* The `👪` symbol can be entered with UCIS.

Tools
=====

* `tools/hid-commands` can now find the `Mstdn`, not just `Slack`, as the
  "Slack"/chat app.
* `tools/hid-commands` can now find the Plex web app as a music/media player.
* `tools/hid-commands` now understands the "Social" application selector. It
  raises the `Mstdn` and `Tweetdeck` windows, but keeps focus on the previous
  window.
* `tools/hid-commands` now understands the "Social2" application selector, which
  raises `Signal` and `Viber`, but keeps focus on the previous window.
* `tools/hid-commands` is now able to select a password manager (KeePass*).
* `tools/hid-commands` can now run `rofi` when receiving an `appsel_helper`
  command (triggered by a triple-tapped `GUI` key).

Signed-off-by: Gergely Nagy <algernon@madhouse-project.org>
2017-10-03 07:54:56 -10:00
Campbell Barton
cc52ac5b16 code_friendly_qwerty keymap 2017-10-03 07:46:18 -10:00
Philippe Voinov
efbc4d2295 Add new planck layout (#1778)
* Custom layout: tehwalris

* Prevent stuck modifiers.
2017-10-03 07:45:22 -10:00
Fred Sundvik
67eeb889ba Fix dynamic macros on ChibiOS keyboards 2017-09-30 06:22:24 -10:00
Fred Sundvik
25285a1c5a Don't process keycodes on the slave 2017-09-30 06:22:02 -10:00
Max Riveiro
f1451b4b04 Fix HSV Color Wheel image on RGB Light page (#1773)
Signed-off-by: Max Riveiro <kavu13@gmail.com>
2017-09-29 16:19:15 -07:00
skullydazed
5fd68266f5 Clueboard 60% support (#1746)
* initial clueboard_60 support

* LED lighting support

* fix the clueboard->clueboard_66 rename

* Add layout support to clueboard_60

* Fix the 60_iso layout so it's actually iso

* add a default keymap for AEK layout

* fix clueboard_17

* Fixup the ISO layouts

* Fix the `wait_ms()/wait_us()` definitions for chibios

* Fix up the wait_ms/wait_us hack. Reduce stack size.

* Add a missing #include "wait.h"

* commit files that should have already been comitted
2017-09-29 16:17:30 -07:00
Matt
b736f25e85 added matrixman layout 2017-09-29 11:53:27 -10:00
drashna
d28fb63fac updated drashna's keymaps (#1769)
* Add woodpad

* Cleanup

* Remove misc layouts for woodpad

* Move woodpad to handwired

* Updated RGB Underglow info
2017-09-29 11:52:37 -10:00
mechmerlin
6ec7ccec63 Support for KBP V60 Type R 60% keyboard (#1770)
* Support for KBP V60 Type R 60% keyboard

Support does not include in switch or underglow lighting for Polestar Edition.

* rename v60type_r to v60_type_r

* Remove old v60type_r

* Modify readme.md to adhere with QMK readme formatting.
2017-09-29 11:51:12 -10:00
Jack Humbert
791b9cc652 remove all makefiles from keyboard directories 2017-09-27 08:21:09 -10:00
Ethan Madden
e2480a299e ?= -> = 2017-09-25 19:36:44 -04:00
Ethan Madden
692c4e7508 Added Obelus
tearing it down so that it can be rebuilt

fiddling with audio

big default config overhaul

apparently startup sounds work without the override now

readme!

readme fixes

readme tweaking
2017-09-25 19:36:44 -04:00
Florian Beeres
f1c7b813aa New layout for XD60/64 (#1748)
* Add yuuki keymap

Documentation is still a TODO and the keymap may not be final

* GRV on colon

* add KC_GRV to FN ESC

* hhkb ish

* hhkbish 2

* HHKBish and documentation

* Fix Markdown warnings

* typo
2017-09-25 13:31:42 -04:00
Fred Eisele
a00532759b Move work from pinky fingers to thumbs and index fingers (#1749)
* phreed keymap added
This keymap moves many pinky keys to the center

* set to do what I want but LT() does not return to previous layer

* get overlays working

* get overlays working

* fix the readme

* fix the readme

* swapped the shift

* swapped the shift

* propagate mods

* clear special char on readme
2017-09-25 13:30:58 -04:00
Danny
5dab2ef12a Update Viterbi default layout (#1753)
* Implement sticky modifiers

* Change underglow based on sticky mod status

* Set RGB lights based on which mods are stickied

* Add controls for dimming RGB LEDs

* Only update RGB lights if modifiers have changed

* Use all LEDs to show modifier state

* Create default keymap for Viterbi
2017-09-25 13:21:27 -04:00
Kenny Hung
a67c930e9e XD75RE Custom layout, and clarification in readme.md (#1754)
* Duplicate default layout as basis of my own

* Basic Colemak layer, just to practice flashing

* Add reset button so that we don't have to short out the reset button on the board to flash it.

* Symbols layer

* Navigation layer, and remove unused keys. Now usable, nice.

* Correct backspace for UK QWERTY mapping

* Small clarification in XD75RE readme instructions

* Use UK pipe so that I can type a pipe on a UK keyboard
2017-09-25 13:20:41 -04:00
unknown
56d750659a Removed unneeded code from keymap 2017-09-25 13:15:04 -04:00
unknown
169d46ce83 Add my gherkin keymap, and update readme and config 2017-09-25 13:15:04 -04:00
Lukas Werling
1ad941e984 Add shell.nix for NixOS users 2017-09-25 13:14:20 -04:00
Zach Burchill
809c9258c1 Fixed typo of "multually" to "mutually" 2017-09-25 13:08:06 -04:00
surlyjake
c8d365f5da platform descriptions to match master keycodes.md documentation 2017-09-25 13:07:46 -04:00
surlyjake
957e44231a updated keycodes media descriptions
Platform compatibility descriptions added for mute, volume up/down
2017-09-25 13:07:46 -04:00
Jack Humbert
aef36ada02 add conditional for planck-mitch keymap 2017-09-24 23:50:18 -04:00
Yan-Fa Li
878774b24e Contribute a DZ60 keymap for 67 key configuration 2017-09-21 09:43:27 -04:00
Danny Nguyen
8c02748c81 Update Viterbi keymaps 2017-09-21 09:40:13 -04:00
Danny Nguyen
37b9715cbc Update default Viterbi layout 2017-09-21 09:40:13 -04:00
Danny Nguyen
94823176c5 Adjust Viterbi pinout 2017-09-21 09:40:13 -04:00
Danny Nguyen
92b74e2d36 Rename cloned Nyquist files to Viterbi, create temporary keymaps
Add WIP keymap for dwallace
2017-09-21 09:40:13 -04:00
Danny Nguyen
72e9939143 Clone Nyquist keyboard for Viterbi 2017-09-21 09:40:13 -04:00
Jack Humbert
4c75285816 add filess 2017-09-21 00:32:01 -04:00
Jack Humbert
d77e55d31e move keymap to rules.mk 2017-09-21 00:27:14 -04:00
Batuhan Baserdem
31e78d22b4 Turkish planck keymap (#1675)
* Adding keymap

* Adding keymap

* Compiles now, but doesn't flash

* Fixes issues with compilation

* Trying to fix issues with tap-dance layer

* Trying to fix issues with tap-dance layer

* Trying to fix issues with tap-dance layer

* Fixed bbaserdem layout

* Added keyboard layout image

* Edited README.md

* Changed layout and removed image from README.md

* Changed tapping terms

* Changed layout a bit
2017-09-21 00:19:57 -04:00
U-SALTY-WINTENDO\Haj Okuda
ea7792b6c6 Adding my keymap with Colemak Mod-DH 2017-09-21 00:16:43 -04:00
Michael F. Lamb
b1d6005c52 add layout mitosis-datagrok (workman variant) 2017-09-21 00:16:22 -04:00
Jeremy Cowgar
064f682103 Instruct VSCode to indent using spaces, also ignore two temp files created by VSCode. 2017-09-21 00:15:53 -04:00
Jack Humbert
32d6a8b7ec adds DZ60 support (#1734)
* adds support for dz60

* fix dz60 readme
2017-09-19 10:27:46 -04:00
QMK Bot
0c335270bd convert to unix line-endings [skip ci] 2017-09-19 04:47:16 +00:00
Rozakiin
62a02af915 Fixed uk78 and turned Bootmagic off (#1725)
* Add files via upload

* Update readme.md

* Update readme.md

* Add files via upload

* Add files via upload

* Update config.h
2017-09-19 00:44:43 -04:00
Nicolas Guelpa
3173924421 Adding a new layout for the planck that helps when coming from the pok3r (#1701)
* adding new layout for the planck that helps when coming from the pok3r

* Fixing the function layer

* Update readme.md

* Update keymap.c

Making some small adjustments

* Update keymap.c

switching GUI and Esc

* Update keymap.c
2017-09-18 17:13:01 -04:00
Jeremy Cowgar
a89183591c Fixed a few typos and spelling errors in auto shift feature document 2017-09-18 17:08:18 -04:00
Jeremy Cowgar
d0ca713eb4 KC_TILD should not have been listed as an auto shift key 2017-09-18 17:08:18 -04:00
Jeremy Cowgar
abba393f57 Added Auto Shift, tap key = normal, hold key = shifted state. 2017-09-18 17:08:18 -04:00
Daniel Shields
87021371e6 Remove redundant Makefile. 2017-09-18 17:07:41 -04:00
Dylan Khor
da887ea412 Address issue #1713 (#1728) 2017-09-17 11:53:45 -07:00
Phil Hagelberg
2a02df84b6 Improve readme and PID codes for Atreus. 2017-09-17 00:04:08 -04:00
krusli
25aa474246 Updated RGB code to use event.pressed 2017-09-16 09:34:29 -04:00
krusli
c7ebb0f950 Add RGB code (from ps2avrgb and luizribeiro/qmk_firmware) 2017-09-16 09:34:29 -04:00
krusli
a8a02455f5 Keymap updates 2017-09-16 09:34:29 -04:00
krusli
6cfb85f32f Fixes for RGB, more colours 2017-09-16 09:34:29 -04:00
krusli
0b7df9f2ef Update on/off toggle behaviour for RGB LEDs 2017-09-16 09:34:29 -04:00
krusli
d281cd5c40 Change max brightness level for iOS 2017-09-16 09:34:29 -04:00
krusli
69ab37fca1 Got luizribeiro's ps2avrgb implementation working for Mechmini 2017-09-16 09:34:29 -04:00
Jack Humbert
024f0455de [core] fix rgb source include 2017-09-15 22:12:25 -04:00
Andrew Plaza (insidious)
6198fed566 Updated README in ergodox_infinity keyboard (#1702)
* changed 'infinity' to 'ergodox_infinity' and specified to be in the top-level directory as per recent changes to directory structure of QMK_firmware git repo

* accidently removed '-' in last line of readme
2017-09-15 22:01:51 -04:00
lucwastiaux
3e1f388bda Adding Ergodox EZ and Atreus Dvorak 42-key layouts (#1705)
* importing 42 key dvorak layout

* added comment for build instructions

* adding atreus dvorak 42 key layout

* added readme

* add readme

* build instructions

* additional MEH shortcuts
2017-09-15 22:00:26 -04:00
Rob Rogers
7bcf3e2781 Wording changes for the WSL install script 2017-09-15 21:59:56 -04:00
Jack Humbert
5ad5c230d6 Merge branch 'luizribeiro-ps2avrGB' 2017-09-15 21:44:39 -04:00
Jack Humbert
dc7d0c7b74 update to driver separation 2017-09-15 21:43:58 -04:00
krusli
afcf3a2878 Update Mechmini keymap, reduce reported power consumption for iOS Camera Adapter compatibility 2017-09-15 20:11:40 -04:00
Dylan Khor
ee9a20ff37 Cleaned, revised, and updated my keymaps to reflect new changes/defaults (#1712)
* add new RGB keycodes and clean up lets split keymap

* extraneous cases

* More cleanup and added macro

* one more macro

* cleaned up my planck keymap and added macros

* Transitioned planck keymap to new formatting / audio modes based on new default

* Remove extraneous newline in song list, add keycodes missed in previous commit

* error in graphical representation of keycodes
2017-09-15 19:21:46 -04:00
Danny
5eb5b6074c Add Levinson keyboard (#1723)
* Fork lets_split to levinson

Update subproject default

* Update Readme

* Pass LED backlight info from master to slave over serial
2017-09-15 19:20:50 -04:00
Hugh
19f48fa922 "New" Atreus Keymap (#1717)
* Merge with upstream

* Finish merge

* Add new keymap

* Change use of KEYMAP macro

* Add Readme.md

* Fix link

* Clean up comments

* Raise on leading edge of keypress
2017-09-15 15:51:47 -04:00
Danny Nguyen
c02de0932a Remove accidentally pasted line in MF68 readme 2017-09-15 15:49:57 -04:00
Florent C
17c84f24cd Adapt build instructions to new keyboard name 2017-09-15 15:49:36 -04:00
Christopher Browne
a07d1f22aa Some revisions to cbbrowne Planck keymap, and a preliminary xd75 keymap (#1715)
* Add HOME/END keys as upper/lower on arrow-up/down

* Reduce .hex file size by turning off unneeded options

* Put digit keypad onto left hand upon RAISE; this will sometimes be preferable to double-hits of right hand

* Latest super latest version merge

* cbbrowne keymap for XD75re

* starting notes on XD75re keymap plans

* First draft of bottom row of QWERTY

* Switch my special bottom line over to QCENT

* Dunno

* Filling in wanted keys, bit by bit...

* Add copyright, extra macro

* Clean up comments, remove some experimental code I didn't like

* TODO plans for xd75re

* clean up keyboard layout

* QCENT2 is my new experiment for the main keyboard...

* Add a few more main layer keys, and modify LOWER to shift things outwards to conform with main layer

* Clean up RAISE layer to conform with main layer, remove QCENT layer as QCENT2 is the new thing

* More xd75 changes, now that I actually have it in hand

* shift keymap around, as original attempt was a bit too aggressive in keeping to the edges

* more revs to XD75

* Dropping parts of the centre keypad in favor of Keys I Really Need

* Improve documentation to conform with how builds are done now

* Improve documentation to conform with how builds are done now

* Add cbbrowne rules file as alternative to having the rules in Makefile

* Makefile not needed anymore for individual keymap
2017-09-14 14:02:49 -04:00
Harshit Goel
23ce0b43b6 Further updated ergodone readme.md (#1714)
* updated read.md file

* added image to flash hex on ergodone

* corrected image link

* updated direct image link

* image with larger text
2017-09-14 13:05:29 -04:00
Danny
4549dcd21f Add support for MF68 replacement PCB for Magicforce 68 (#1698)
* Port TMK code for MF68

* Change KEYMAP to KC_KEYMAP and add macro
2017-09-13 17:53:10 -04:00
Goel
7da585917b updated read.md file 2017-09-13 17:51:30 -04:00
Sean Hunter
cf001300b3 [planck] Adds Sean Hunter keymap(#1706)
* Sean Hunter initial keymap

* Update old map to sync it up with new one

* Add TODO
fix a few minor things

* small doc fixes

* Minor fixups
2017-09-13 17:47:48 -04:00
Danny Nguyen
63028dde82 Add jojiichan keymap 2017-09-13 17:46:25 -04:00
Jack Humbert
7ad924bae5 Updates send_string functionality, adds terminal feature (#1657)
* implement basic terminal stuff

* modify send_string to read normal strings too

* add files bc yeah. working pgm detected

* pgm detection apparently not working

* adds send string keycodes, additional keycode support in send string

* implement arguments

* [terminal] add help command

* [terminal] adds keycode and keymap functions

* [terminal] adds nop.h, documentation

* update macro docs
2017-09-12 00:43:10 -04:00
Kaleb Elwert
a4ff8b91f7 Update tv44-belak keymap 2017-09-10 22:59:30 -04:00
Marco
63cde006c5 Changed USB manufacturer to "JMWS"
Don`t know, if this is 100% correct, but the original software refers
to "JMWS JM60 Driver".
2017-09-10 22:58:55 -04:00
Marco
d331e274b3 Use KC_GESC keycode instead of custom function 2017-09-10 22:58:55 -04:00
Marco
349e0012ba Basic support for JM60 keyboard
This adds basic support for JM60 RGB PCB that was sold
by KBDfans https://kbdfans.myshopify.com/
https://www.aliexpress.com/store/product/JM60-RGB60-Custom-mechanical-keyboard-PCB-ANSI/2230037_32810956675.html

No support for RGB Backlight yet.
2017-09-10 22:58:55 -04:00
Ptomerty
68b6de60e0 fix for toggle tap dance 2017-09-10 22:57:26 -04:00
Jack Humbert
f10e9586df adds a default ergodox_infinity keymap 2017-09-10 00:10:35 -04:00
skullydazed
4cdcbdb861 Remove all Makefiles from the keyboards directory. (#1660)
* Remove all Makefiles from the keyboards directory.

* update keymaps added in the last 8 days

* Ignore keyboard/keymap makefiles

* update hand_wire to reflect our new Makefile-less reality

* Update the make guide to reflect the new reality

* move planck keymap options to rules.mk

* update planck keymaps 4real

* trigger travis

* add back build_keyboard.mk

* restore changes to build_keyboard
2017-09-08 13:47:50 -04:00
Jack Humbert
cf8e10533b update some keymaps that broke w/defaults 2017-09-08 01:42:32 -04:00
skullY
927ef81363 Revert "Remove the "lib/%" rule."
This reverts commit 6fc43ddaf6.

I didn't think this through before pushing it.
2017-09-06 21:09:08 -07:00
skullY
6fc43ddaf6 Remove the "lib/%" rule. 2017-09-06 21:04:29 -07:00
Hugh
0759adeaf1 Split atreus (#1680)
* Merge with upstream

* Add split_atreus keymap for lets_split.

* Move bspace

* Tidy up keymap

* Update layer enum

* Temporary fix

* Finish merge

* Added keys for testing

* Revert temporary fix

* Remake keymap using default let's split map as base. ASCII art not
updated

* Remove non-functioning layers

* Rename folder

* Update ASCII art

* Remove vestiges of ADJUST layer

* Remove nonexistent layer #defines

* Rename folder to avoid confusion

* Add Readme.md

* Formatting

* Description of underscores in layer maps
2017-09-06 18:33:52 -07:00
Jason Milkins
43a1ea3035 Add TKL keymap for Frosty_Flake (#1666)
* Add TKL keymap for Frosty_Flake

* Update readme.md

* Add spaces for ghfm newlines

* add note for dfu target
2017-09-06 17:42:19 -07:00
skullydazed
af14e672c9 Add a clueboard rev3 (#1688)
* Allow the knight animation to be restricted to a portion of the LED strip

* Add keys for jumping directly to particular animation modes

* Remove orphaned break statements

* Tweak the `RGB_MODE` buttons so they cycle through the same mode.

* small indentation fix

* Add a new revision of the clueboard with 18 underlight LEDs
2017-09-06 15:27:29 -07:00
skullydazed
2b3803eb5e Clone chibios and ugfx if it's not already checked out. (#1651)
* Clone chibios and ugfx if it's not already checked out.

* update the submodule out of date message
2017-09-06 15:21:31 -07:00
skullydazed
4580d3a730 RGB improvements (#1684)
* Allow the knight animation to be restricted to a portion of the LED strip

* Add keys for jumping directly to particular animation modes

* Remove orphaned break statements

* Tweak the `RGB_MODE` buttons so they cycle through the same mode.

* small indentation fix
2017-09-06 14:49:19 -07:00
Will Jiang
0ce45eb0b7 Update mac guide (#1665)
`avr-libc` is no longer, and it's called `avr-gcc` now. https://github.com/osx-cross/homebrew-avr

Also you need `gcc-arc-none-eabi` to be able to compile in my experience.
2017-09-06 10:36:47 -07:00
Wilba6582
85c3c5926c Force Raw HID interface number to 1 always (#1669) 2017-09-06 10:33:00 -07:00
CarVac
323fa19e2d Dvorak-optimized Mitosis keymap with mouse keys (#1676)
* Add carvac_dv keymap for mitosis

* Add mouse keys

* move backspace, etc, and fix tab

* remove commented-out functions in keymap

* Fix scroll buttons and add left/right scrolling

* Make num momentary, add comments, and clean up

* fix mouse scroll acceleration
2017-09-06 10:19:35 -07:00
Ethan Madden
de0e025472 Added personal minivan keymap (#1681)
more consistent layer setup

documentation!

slide some things around

more doc jiggling
2017-09-06 09:48:21 -07:00
Jay Liu
b032867236 Update Infinity Ergodox Makefile (#1682)
I believe this change is needed in response to the recent change in folder structure.
2017-09-06 09:47:41 -07:00
Jack Humbert
c8e232907f Merge branch 'master' of https://github.com/qmk/qmk_firmware 2017-09-06 12:38:08 -04:00
Jack Humbert
994592f985 add audio on/off audios 2017-09-06 12:37:57 -04:00
Rob Rogers
4d5b7dea14 Let's split hand mirroring support
commit b7a1c6fe3f0709d176a7833387051b2323b16f17
Author: Rob Rogers <r2d2rogers@gmail.com>
Date:   Wed Sep 6 08:28:00 2017 -0500

    add hand swap config matrix for Let's Split

commit 1d53113d96b711db549f735316c2ea3f7469021b
Merge: 98f40e3 4edfa97
Author: Rob Rogers <r2d2rogers@gmail.com>
Date:   Tue Sep 5 21:43:34 2017 -0500

    Merge branch 'master' of github.com:qmk/qmk_firmware

commit 98f40e31c4a1728d826037b375cf336d550bf69a
Merge: a825225 94f8b75
Author: Rob Rogers <r2d2rogers@gmail.com>
Date:   Mon Sep 4 20:20:46 2017 -0500

    Merge branch 'master' of github.com:qmk/qmk_firmware

commit a825225810a6282f7229cdf6b1c05fd9c27e1808
Merge: 56846cb f0db2c0
Author: Rob Rogers <r2d2rogers@gmail.com>
Date:   Thu Aug 31 19:47:25 2017 -0500

    Merge branch 'master' of github.com:qmk/qmk_firmware

commit 56846cb0326f1c78cba47b8161f4d389e19202c3
Merge: 4deb6ca ba2ad57
Author: Rob Rogers <r2d2rogers@gmail.com>
Date:   Sun Aug 27 15:05:16 2017 -0500

    Merge branch 'master' of github.com:qmk/qmk_firmware

commit 4deb6ca77633c603f8a134946bb4edc7ed619b50
Merge: 6f85d1f 7960302
Author: Rob Rogers <r2d2rogers@gmail.com>
Date:   Sat Aug 26 23:23:48 2017 -0500

    Merge branch 'master' of github.com:qmk/qmk_firmware

commit 6f85d1ff7cfac0a4a70b133984cd681852b49df6
Merge: e6aff71 4b0c6dc
Author: Rob Rogers <r2d2rogers@gmail.com>
Date:   Thu Aug 24 14:33:31 2017 -0500

    Merge branch 'master' of github.com:qmk/qmk_firmware

commit e6aff71807bf2dc41edbec91408a827c32ef73ef
Merge: 9d38f6f d54360b
Author: Rob Rogers <r2d2rogers@gmail.com>
Date:   Wed Aug 23 13:43:20 2017 -0500

    Merge branch 'master' of github.com:qmk/qmk_firmware

commit 9d38f6fe83e08962b14fd5d8a70ff100302af598
Merge: d1c0a9f 3aa7fbc
Author: Rob Rogers <r2d2rogers@gmail.com>
Date:   Tue Aug 22 22:13:05 2017 -0500

    Merge branch 'master' of github.com:qmk/qmk_firmware

commit d1c0a9f3b0d9ac466595b197cd8fbce3f1e42f8a
Merge: bd8dbb9 5cab5e4
Author: Rob Rogers <r2d2rogers@gmail.com>
Date:   Sun Aug 20 10:00:01 2017 -0500

    Merge branch 'master' of github.com:qmk/qmk_firmware

commit bd8dbb9d19344623f1b3cefc0a2b205864e9ba3c
Author: Rob Rogers <r2d2rogers@gmail.com>
Date:   Sun Aug 20 09:59:45 2017 -0500

    fix line endings another time
    '
    '

commit 2602515eb22451feed3178966ffeed33c0f4548b
Merge: 41e549e 71d1c02
Author: Rob Rogers <r2d2rogers@gmail.com>
Date:   Wed Aug 16 21:31:28 2017 -0500

    Merge branch 'master' of github.com:qmk/qmk_firmware

commit 41e549e3d527b58f92df28caf8daecae06e5ecf8
Merge: e624ea5 88198a9
Author: Rob Rogers <r2d2rogers@gmail.com>
Date:   Fri Aug 11 12:48:45 2017 -0500

    Merge branch 'master' of github.com:qmk/qmk_firmware

commit e624ea55a1f715d008661ae2e180ae55a09ef0c8
Merge: 5966f09 933701c
Author: Rob Rogers <r2d2rogers@gmail.com>
Date:   Mon Aug 7 14:43:30 2017 -0500

    Merge branch 'master' of github.com:qmk/qmk_firmware

commit 5966f096016ffce9c4802ade57d250d9f756bd73
Merge: 71c173d dd3803f
Author: Rob Rogers <r2d2rogers@gmail.com>
Date:   Tue Aug 1 21:58:14 2017 -0500

    Merge branch 'master' of github.com:qmk/qmk_firmware

commit 71c173dee1aa16dd762897531c42d23f6da0159c
Author: Rob Rogers <r2d2rogers@gmail.com>
Date:   Mon Jul 31 00:19:08 2017 -0500

    line endings???
2017-09-06 09:20:49 -07:00
Jack Humbert
4d5eeb3d7d update planck stuff 2017-09-06 12:19:40 -04:00
David Stosik
4edfa97e03 Improve and simplify RGB Knight mode (#1677)
* Simplify RGB Knight mode code, and make it look closer to KITT

* Remove RGBLIGHT_EFFECT_DUALKNIGHT_LENGTH
2017-09-05 14:19:08 -07:00
Jack Humbert
5f154f0a00 Update feature_common_shortcuts.md 2017-09-05 13:11:43 -04:00
David Stosik
94f8b758b3 Fix Kitt and its default behavior (#1674) 2017-09-03 11:02:06 -07:00
Lukmanul Hakim
f0db2c0512 Set proper backlight level 2017-08-31 09:58:04 -04:00
QMK Bot
8ea690a1b3 convert to unix line-endings [skip ci] 2017-08-30 15:55:39 +00:00
Jonathan Arnett
b07b4bb97b Alterations and documentation updates for j3rn Ergodox EZ keymap (#1656)
* Add second set of AltSft and Alt

* Insert the play key between previous and next

* Update documentation
2017-08-30 11:52:43 -04:00
David Stosik
5b897ce223 Port #1576 to Let's Split: EECONFIG_HANDEDNESS gets overridden when RGB is enabled 2017-08-30 11:51:58 -04:00
Otto Rask
da33dfec55 rask's Satan and BananaSplit60 (#1654)
* Add rask's Satan layout

* Add rask's Satan layout

* Add rask's BananaSplit60 layout

* Add rask's BS60 readme

* Fix rask's BS60 readme image

* Fix rask's BS60 readme image again
2017-08-30 11:51:18 -04:00
Michael Terhar
a4316ba486 Fixed mitosis-mjt audio (#1653)
* copied mjt keymaps from archive

* All mjt boards now compile

* fixed jd45-mjt breathing

* Updates to fix SpaceFN but not tested yet.

* Still missing either spacebar or an adjacent keypress.

* Debugging rigged up for use with hid_listen.

* Reverted the default keymap to use tap_layer_key rather than custom.  Moved custom approach to keymap_debug.c

* Fixed the lower-left side of the keymap, which needed more spacers due to the matrix being directly put into the array rather than using the keymap function.

* Cleaned up JD45 keymap that uses tapkey.

* Redid minivan keymap with numsym rather than raise/lower.
Untested.

* Created my MJT keymap for HHKB
Enabled dynamic macros and moved
somoe of the shortcuts around.

* Minor keymap fixes to make them compile without errors.

* Added home/end to right arrow cluster on DYN layer.

* Added more keys to fn and dyn layers.

* It wasn't using my custom layer last time somehow...?  Now it will.

* Compiled and installed at end of day on 8/23

* Moved macros to FKEY layer because Adjust was too hard to get into and out of without some sort of feedback.

* Fixed volume controls... were reversed and disabled.

* Added F13-F15 back to fkeys layer in Minivan

* Created new Planck Keymap that uses the NumSym and FKeys layer approach like the Minivan.

* Removed DYN layer.

* Fixed diagram in planck numsym.

* Cleanup for pull request.

* Roadkit flip phone warning.

* Replaced PLAY_NOTES_ARRAY to PLAY_SONG

* reset the submodules

* checked out specific commits for submodules

* Removed debugging from JD45 shared config.h

* Moved custom rules.mk to apropriate keymap

Reset the shared rules.mk file.

* Trailing return issue in rules.mk

Gotta make for a smooth pull request :-)

* Mitosis music troubleshooting

Also updated the song playing function.
Does not work currently.

* Fixed mitosis audio

* Put mitosis/rules.mk back to QMK master
2017-08-30 11:50:31 -04:00
Marco Fontani
da83f04a30 add UC_OSX_RALT to make unicode use the Right Alt key on OSX 2017-08-30 11:38:03 -04:00
drashna
9987f9dcff Update drashna's keymap (#1649)
* initial commit for my custom layout

* fix switching into and out of numfun layer

* enable tap dance to lock layers

* enable layer indicator LEDs

* remove Colemak2 layer because it was dumb

* remove handler for nonexistent keycode

* add new movement keys to lower layer

* standardize indentation because I'm not a monster

* add Woodpad keyboard with Michael's Tryggve layout

* Add dvorak/colemak layers

* add hash

* Update keymap.c

* Fixed OSL Symbol layer layout issue

* Minor later tweak

* Clean up actions

* Diablo 3 macro keys remove

* Fixed numbad issues

* Remove Underglow toggle

* Fix layer consistency

* cleanup of code

* line feed

* small fixes

* Major merge

* Merge cleanup on my keymap

* Cleanup

* Update compile command

* Swapped arrows

* Additional cleanup

* Revert "Woodpad"

* update

* minor update

* staging for pull request

* Finish removing layer underglow toggles
2017-08-30 11:36:14 -04:00
Fredric Silberberg
ad73553aa9 Update README. 2017-08-30 11:28:56 -04:00
Fredric Silberberg
00d8f0c082 Small gaming layer and formatting updates to my nyquist config. 2017-08-30 11:28:56 -04:00
Jack Humbert
a729d852fe Merge pull request #1574 from danamlund/master
New clueboard keymap that is a tetris game
2017-08-30 11:27:52 -04:00
Arthur SCHMITT
da7aece043 Add the new QMK submodule way in /lib and not tmk_core/tool wich is outdated 2017-08-30 11:26:24 -04:00
skullY
ed56a6859f add a git-submodule make target. 2017-08-28 11:26:35 -04:00
Jack Humbert
ba2ad57ca8 add rule shortcut via @samwho's suggesion 2017-08-27 12:53:35 -04:00
Jack Humbert
677b89768b add bin targets - closes #1648, fixes #1647 2017-08-27 12:11:59 -04:00
Michael Terhar
7960302242 Keymaps for several of my boards (#1641)
* copied mjt keymaps from archive

* All mjt boards now compile

* fixed jd45-mjt breathing

* Updates to fix SpaceFN but not tested yet.

* Still missing either spacebar or an adjacent keypress.

* Debugging rigged up for use with hid_listen.

* Reverted the default keymap to use tap_layer_key rather than custom.  Moved custom approach to keymap_debug.c

* Fixed the lower-left side of the keymap, which needed more spacers due to the matrix being directly put into the array rather than using the keymap function.

* Cleaned up JD45 keymap that uses tapkey.

* Redid minivan keymap with numsym rather than raise/lower.
Untested.

* Created my MJT keymap for HHKB
Enabled dynamic macros and moved
somoe of the shortcuts around.

* Minor keymap fixes to make them compile without errors.

* Added home/end to right arrow cluster on DYN layer.

* Added more keys to fn and dyn layers.

* It wasn't using my custom layer last time somehow...?  Now it will.

* Compiled and installed at end of day on 8/23

* Moved macros to FKEY layer because Adjust was too hard to get into and out of without some sort of feedback.

* Fixed volume controls... were reversed and disabled.

* Added F13-F15 back to fkeys layer in Minivan

* Created new Planck Keymap that uses the NumSym and FKeys layer approach like the Minivan.

* Removed DYN layer.

* Fixed diagram in planck numsym.

* Cleanup for pull request.

* Roadkit flip phone warning.

* Replaced PLAY_NOTES_ARRAY to PLAY_SONG

* reset the submodules

* checked out specific commits for submodules

* Removed debugging from JD45 shared config.h

* Moved custom rules.mk to apropriate keymap

Reset the shared rules.mk file.

* Trailing return issue in rules.mk

Gotta make for a smooth pull request :-)
2017-08-26 23:33:33 -04:00
Toshiki Yagi
de315c54eb make ergodone's led work well 2017-08-26 23:32:25 -04:00
unknown
a6fe0320f5 Updated readme to new standard. 2017-08-26 23:31:47 -04:00
unknown
78ab926cc8 Updated my files and added debouncing 2017-08-26 23:31:47 -04:00
Cory Shaw
b28982e329 Add mbsurfer Let's Split keymap with RGB layer indicators (#1638) 2017-08-26 10:34:53 -04:00
Joe Wasson
0965e5203e Merge in gaming layout. 2017-08-26 10:34:07 -04:00
Joe Wasson
8e1c3f410d Add split layout to more keyboards. 2017-08-26 10:34:07 -04:00
Cory Shaw
2aedbf872b Improve default layout of 9key and give example macro 2017-08-24 21:29:10 -04:00
Cory Shaw
afd7bf5f09 Increase time for tap dancing on 9key default 2017-08-24 21:29:10 -04:00
Cory Shaw
402235eeb4 Update Bishop Keyboards url to relaunched site 2017-08-24 21:29:10 -04:00
Cory Shaw
b2d033ffe8 Add 9key to keyboards readme 2017-08-24 21:29:10 -04:00
Joe Wasson
ae91af95e2 Add split ansi layout and talljoe's keymap. 2017-08-24 15:52:08 -04:00
Jack Humbert
4b0c6dc50d update travis script 2017-08-24 08:07:37 -04:00
Jack Humbert
9a23fad36b update ergodox links 2017-08-24 08:00:50 -04:00
Markus Kohler
718fddf44c Fix broken link 2017-08-24 07:59:22 -04:00
Jack Humbert
d2ff66a985 Creates a layouts/ folder for keymaps shared between keyboards (#1609)
* include variables and .h files as pp directives

* start layout compilation

* split ergodoxes up

* don't compile all layouts for everything

* might seg fault

* reset layouts variable

* actually reset layouts

* include rules.mk instead

* remove includes from rules.mk

* update variable setting

* load visualizer from path

* adds some more examples

* adds more layouts

* more boards added

* more boards added

* adds documentation for layouts

* use lowercase names for LAYOUT_

* add layout.json files for each layout

* add community folder, default keymaps for layouts

* touch-up default layouts

* touch-up layouts, some keyboard rules.mk

* update documentation for layouts

* fix up serial/i2c switches
2017-08-23 22:29:07 -04:00
Jack Humbert
7260fc3eef update 9key readme 2017-08-23 15:46:02 -04:00
Jack Humbert
437c86c9c1 update build script 2017-08-23 15:44:25 -04:00
Steve Holt
d54360b1d8 Update keymap.c 2017-08-22 23:53:41 -04:00
Steve Holt
fe4549839e Update config.h 2017-08-22 23:53:41 -04:00
Steve Holt
1d930ebe45 Update Makefile 2017-08-22 23:53:41 -04:00
Jonathan Boyett
fcb60b1601 fix link brackets 2017-08-22 23:33:38 -04:00
Cory Shaw
3aa7fbcd79 fix(9key): Fix layout of 9key readme 2017-08-22 23:09:12 -04:00
Cory Shaw
82f434a4d4 update(9key): Add readme with updated format 2017-08-22 23:09:12 -04:00
Cory Shaw
d8fd33dd5e Add support for 9key by Bishop Keyboards 2017-08-22 23:09:12 -04:00
Jonathan Boyett
bd484f18bd JD40 MiniVan port 2017-08-22 23:07:52 -04:00
Ryan MacLean
9f6362e4df Adding Makefile
Required for JIS layouts
2017-08-22 17:59:38 -04:00
Ryan MacLean
57c93c13cc Creating Mac Version of JIS Keymap
Swapping command and alt, restoring fn+left for delete, subbing in grave for hhkb key.
2017-08-22 17:59:38 -04:00
Jack Humbert
e719f5b0b5 Merge branch 'master' of https://github.com/qmk/qmk_firmware 2017-08-22 10:08:44 -04:00
Jack Humbert
9da308a0cd move to compiled [skip ci] 2017-08-22 10:07:32 -04:00
keisuke333
47cd5b5622 Fix avoid certificate errors that occur during '2-setup-environment-win.bat' 2017-08-22 09:09:51 -04:00
Jack Humbert
0e39f1faf4 Merge branch 'master' of https://github.com/qmk/qmk_firmware 2017-08-22 08:57:13 -04:00
Jack Humbert
dd8cedc361 update travis script 2017-08-22 08:56:39 -04:00
Jack Humbert
51a2ce6145 convert to unix line-endings [skip ci] 2017-08-22 08:56:22 -04:00
Jack Humbert
11d27cec1e attempt to fix line-ending travis stuff 2017-08-21 23:39:06 -04:00
jpetermans
7a445d9167 Add back original copyrights 2017-08-21 23:22:36 -04:00
jpetermans
ff32643641 Readme correction #2 2017-08-21 23:22:36 -04:00
jpetermans
dbd4ce19e9 Correct jpetermans keymap readme and update copyright info 2017-08-21 23:22:36 -04:00
Jack Humbert
9ff064ae50 triggering travis 2017-08-21 23:11:08 -04:00
Jack Humbert
c3c07eff51 update building for .hex, secrets moving 2017-08-21 21:57:46 -04:00
Daniel Shields
69c4cfb238 Fix gherkin README to use correct build command. 2017-08-21 17:04:31 -04:00
Mark Spanbroek
36709d6a30 Use cmd-left and cmd-right instead of ctrl-a and ctrl-e for home and end
The ctrl commands only seem to work well in terminal, not in other apps.
2017-08-21 17:01:27 -04:00
Mark Spanbroek
1ab9e5d1c9 Remove COMPACT_KEYMAP, use full KC_ keycodes instead. 2017-08-21 17:01:27 -04:00
Mark Spanbroek
f4b3b576a0 Revert "Add COMPACT_KEYMAP macro to Satan GH60"
9a1826598a
2017-08-21 17:01:27 -04:00
Mark Spanbroek
dc1d24a4fe Add screen lock key 2017-08-21 17:01:27 -04:00
Mark Spanbroek
0be483c762 Fix power; use keyboard shortcut for Mac 2017-08-21 17:01:27 -04:00
Mark Spanbroek
cb719757c2 Reverse the split shift/fn
Turns out that 3c and 3d are not reversed when splitting the right
shift in the way that the Mark I layout does. Reversing it here, rather
than in the generic satan.h to avoid breaking the other layouts.
2017-08-21 17:01:27 -04:00
Mark Spanbroek
d172d6bec6 Add Mark I layout 2017-08-21 17:01:27 -04:00
Mark Spanbroek
90b07a5be4 Add COMPACT_KEYMAP macro to Satan GH60 2017-08-21 17:01:27 -04:00
Mark Spanbroek
af21fa63e5 Fix: add missing keys to Satan GH60 KEYMAP macro 2017-08-21 17:01:27 -04:00
Stephen Tudor
dde035b963 Add smt keymap for Sentraq S65-X 2017-08-21 16:59:52 -04:00
Jack Humbert
e7b3991b97 fix readmes 2017-08-21 16:51:16 -04:00
Jack Humbert
1ce3971c90 adds sweet16 and four banger keyboards 2017-08-21 16:51:16 -04:00
Ben James
48e79cbe29 Create readme.md 2017-08-20 20:57:22 -04:00
Ben James
68dafc8382 Create Makefile 2017-08-20 20:57:22 -04:00
Ben James
e0d9cc945f Create config.h 2017-08-20 20:57:22 -04:00
Ben James
7aa839915e Create keymap.c 2017-08-20 20:57:22 -04:00
Jack Humbert
78dc7bacfa travis files in gitignore for good measure 2017-08-20 15:20:32 -04:00
Jack Humbert
fa6bcfd10c make travis convert line-endings and push a skippable commit 2017-08-20 14:22:18 -04:00
Jack Humbert
1254e76e29 stop compiling ez after build, rework ssh ids 2017-08-20 14:04:35 -04:00
Jack Humbert
166706a32c adds subatomic files (non-working) 2017-08-20 13:52:28 -04:00
Joe Wasson
948d6efcfb Fix stray keystroke in readme file. 2017-08-20 13:28:39 -04:00
Joe Wasson
fe60cbd928 Remove PLAY_NOTE_ARRAY usages to get rid of warning. 2017-08-20 12:32:20 -04:00
Jack Humbert
f94963e6b7 Merge pull request #1608 from hot-leaf-juice/master
keymap update
2017-08-20 11:52:57 -04:00
Joe Wasson
4b74c9056b Fix Planck Steno layout with new error message (remove MIDI). 2017-08-20 11:51:57 -04:00
Joe Wasson
e74a95bf26 Keymap tweaks. 2017-08-20 11:51:57 -04:00
Joe Wasson
bae1144a9f Fix compilation error when NO_ACTION_LAYER is defined. 2017-08-20 11:51:57 -04:00
Joe Wasson
eb5748e8bf Gherkin keymaps for Steno and Talljoe 2017-08-20 11:51:57 -04:00
Joe Wasson
bdc0880ca5 Add compile error if too many endpoints are defined for the ATmega32U4. 2017-08-20 11:51:57 -04:00
Joe Wasson
fc70c9ac9e Allow steno to build when NKRO is not defined.
Was missing eeprom.h, MAX(), and memset.
2017-08-20 11:51:57 -04:00
That-Canadian
937b86d030 Added default ECO keymap 2017-08-20 11:47:46 -04:00
That-Canadian
cc9b0eb109 Line ending stuff again 2017-08-20 11:47:46 -04:00
Daniel Khodabakhsh
046595f521 Update s60_x/default/rule.mk for original Sentraq S60-X
Fix and issue with the original Sentraq S60-X not being compatible with 'default'. If 'default' shouldn't be changed, perhaps I can create an 'original' revision.
2017-08-20 11:45:18 -04:00
ThreeFx
8341068299 Correct if-statement 2017-08-20 11:17:19 -04:00
ThreeFx
a553dcba5a Added gentoo support for dependency script 2017-08-20 11:17:19 -04:00
Jack Humbert
5cab5e4a4e validates json 2017-08-19 08:35:14 -04:00
Jack Humbert
d8145c8464 adds redirects for docs 2017-08-19 08:31:54 -04:00
Jack Humbert
81d7e7d4c8 Merge pull request #1601 from dlaroe/master
My keymaps only
2017-08-19 08:19:50 -04:00
Balz Guenat
30ac7d403e remove dead links, add troubleshooting section 2017-08-19 08:19:16 -04:00
Balz Guenat
6ea408da10 Update USB-USB converter README according to #1588 2017-08-19 08:19:16 -04:00
Ryan MacLean
1132646b2f Update readme.md 2017-08-19 08:18:27 -04:00
Ryan MacLean
9eb71e9719 Update readme.md 2017-08-19 08:18:27 -04:00
Ryan MacLean
9ea56f03a1 Fixing readme clobber 2017-08-19 08:18:27 -04:00
Ryan MacLean
07be7b8d69 Reverting CMD Changes
Adding the CMD from @edasque in once more as it allows specifying more than one board via host ENV vars. 
Currently, the Dockerfile is hard-coded.
2017-08-19 08:17:58 -04:00
Wilba6582
baae936b47 Required overridden function for keymaps in EEPROM 2017-08-19 08:16:58 -04:00
Callum Oakley
a6845036e2 Merge branch 'master' of https://github.com/qmk/qmk_firmware 2017-08-19 10:34:45 +01:00
4c4a174dbe Added Preonic Makefile and readme.md 2017-08-18 17:45:32 -04:00
8b62a0af74 Updated keymaps with second LOWER for the right hand 2017-08-18 17:29:19 -04:00
Danny Nguyen
7277f09bba Update Nyquist readme file to new format 2017-08-18 15:44:02 -04:00
Joe Wasson
94ca84d271 Fix incorrect name for GeminiPR in docs. 2017-08-18 14:43:24 -04:00
Jack Humbert
52f2f6d8ea adds audio docs to summary 2017-08-18 13:57:57 -04:00
Benny Powers
9fed4f7948 Add link to keycodes doc in how_keyboards_work 2017-08-18 12:49:55 -04:00
Roy Wellington Ⅳ
c0a6935fb3 Fix these links, as they appear to be broken (#1595)
It looks like build_environment_setup.md got renamed to
getting_started_build_tools.md in this commit:

	commit e6c638bed1
	Author: skullY <skullydazed@gmail.com>
	Date:   Sat Aug 5 20:54:34 2017 -0700

		Overhaul the Getting Started section and add a FAQ section

	 docs/{build_environment_setup.md => getting_started_build_tools.md} | 132 ++++++++++++++++++++++++++++++++++++-------------------------------------

This commit adjusts the links to match the new name.
2017-08-18 00:18:04 -07:00
Jack Humbert
b483a90a90 update favicons 2017-08-17 17:13:44 -04:00
Drashna Jael're
cb76e71109 Add dvorak/colemak layers 2017-08-17 12:38:09 -04:00
0010
8392667ac4 bananasplit LED support and keymap add
* added LED pin mapping
* adding my keymap
2017-08-17 12:37:38 -04:00
Dan Amlund Thomsen
4a9e16b394 Add a tetris keymap to clueboard that includes a tetris game 2017-08-17 18:13:21 +02:00
Danny Nguyen
71d1c02a9b Add message to avrdude script that it can't used within WSL currently 2017-08-16 20:47:43 -04:00
skullY
4e73b0b8d7 Make the bulk of our keyboards match the readme.md standard 2017-08-16 20:36:59 -04:00
Erez Zukerman
2ee0dc7793 Revert "Moves files from ez/keymaps to ergodox/keymaps"
This reverts commit 5e36f8463adf9231a60bc8d1c657d51c3181d079.
2017-08-16 20:36:59 -04:00
Erez Zukerman
9298f9d586 Moves files from ez/keymaps to ergodox/keymaps
That directory shouldn't even exist
2017-08-16 20:36:59 -04:00
Erez Zukerman
356b489d98 Update ErgoDox readme
Per standard recommended in #1362.
2017-08-16 20:36:59 -04:00
Yu He
4c2dafc652 Add separate readme.md for ErgoDone 2017-08-16 17:31:12 -04:00
Yu He
285099de0d Add ErgoDone support to two keymaps that have special config.h 2017-08-16 17:31:12 -04:00
Yu He
cb74c8dc46 Add dummy backlight/LED functions for keymaps that require them 2017-08-16 17:31:12 -04:00
Yu He
52f4a38cb3 Add support for the ErgoDone 2017-08-16 17:31:12 -04:00
skullY
f02430b131 Update links in the glossary 2017-08-16 15:47:20 -04:00
skullY
9d1a08e38a Doc updates from going through every file 2017-08-16 15:47:20 -04:00
skullY
9b879b1267 break up keymaps and quantum keycodes into files by feature 2017-08-16 15:47:20 -04:00
skullY
2709744cdd take a stab at documenting layers 2017-08-16 15:47:20 -04:00
skullY
207bcd788a rework key_functions into feature_common_shortcuts 2017-08-16 15:47:20 -04:00
skullY
e6c638bed1 Overhaul the Getting Started section and add a FAQ section 2017-08-16 15:47:20 -04:00
skullY
89bcdde927 line endings 2017-08-16 12:23:59 -07:00
skullY
d3e1aaf5e2 trigger new travis build 2017-08-16 01:11:39 -07:00
skullY
0cc15e117d Cleanup the clueboard keymaps 2017-08-16 01:07:48 -07:00
Balz Guenat
5bff9d6181 cleanup usb-usb converter code 2017-08-15 23:14:41 -04:00
Balz Guenat
7e5ccd50dc add RESET to keymap 2017-08-15 23:14:41 -04:00
Balz Guenat
80d082055b convert keymap into qmk-style 2017-08-15 23:14:41 -04:00
Balz Guenat
c8222043fc wow, it builds! added empty matrix.c and moved custom matrix code to custom_matrix.cpp
still untested because of hardware availability :(
2017-08-15 23:14:41 -04:00
Balz Guenat
fa86b10138 add extern "C" to matrix.cpp 2017-08-15 23:14:41 -04:00
Balz Guenat
2aa5e44640 some major steps toward making the usb-usb converter work 2017-08-15 23:14:41 -04:00
Balz Guenat
42f895a4bc remove unused variables from makefile 2017-08-15 23:14:41 -04:00
Balz Guenat
f4cdc9117c small changes following Jack's advice. 2017-08-15 23:14:41 -04:00
Balz Guenat
d7d20e2511 start working on usb-usb converter port 2017-08-15 23:14:41 -04:00
Martin Sandiford
4757140107 Wrapped process_leader.c in #ifndef DISABLE_LEADER to allow compilation with DISABLE_LEADER defined. 2017-08-15 19:51:06 -04:00
Martin Sandiford
c622423668 Remove floating point calculation in mouse move. Saves approx 650 bytes if no other floating point used. 2017-08-15 19:51:06 -04:00
discursivemoth
b7d43ee253 correct tilde to grave 2017-08-15 19:48:58 -04:00
Jack Humbert
565c670ca4 Merge pull request #1571 from BalzGuenat/grave-esc-fix
Fix for issue #1568
2017-08-15 19:48:14 -04:00
Jack Humbert
aee4e4650b Merge pull request #1576 from That-Canadian/minidox
Minidox
2017-08-14 16:21:39 -04:00
drashna
be0d49ba63 Add files via upload 2017-08-14 16:20:24 -04:00
drashna
0f2a7b6210 Fixed so will compile both with and without underglow 2017-08-14 16:20:24 -04:00
drashna
cb7255755b Add files via upload 2017-08-14 16:20:24 -04:00
drashna
1a0b5aee63 Create Keymap.c
RGB Underglow mod for layer indication
2017-08-14 16:20:24 -04:00
That-Canadian
26650731d1 Added "EECONFIG_HANDEDNESS" to the eeconfig.h , because when RGB was enabled it was overwritting the old EECONFIG_HANDEDNESS address (10), so it is now on a non-conflicting addres (14).
Updated MiniDox split_util.h and eeprom files to reflect this change.

I recommend adding this to any split board that used these files, my changes will not effect them currently.
2017-08-13 14:24:04 -04:00
That-Canadian
1631f7cd79 Merge branch 'master' into minidox 2017-08-13 14:11:40 -04:00
That-Canadian
09e5885e45 Merge remote-tracking branch 'upstream/master' 2017-08-13 14:11:25 -04:00
Balz Guenat
b4be711af1 fix for issue #1568 2017-08-12 12:15:36 +02:00
Balz Guenat
430151dd51 Merge remote-tracking branch 'upstream/master'
# Conflicts:
#	docs/faq_keymap.md
2017-08-12 12:14:33 +02:00
Balz Guenat
175db1a549 fix code block formatting 2017-08-11 23:13:50 +02:00
Balz Guenat
5ad103fa51 add description of new option to docs and add option (commented out) into template. 2017-08-11 16:54:10 -04:00
Balz Guenat
188ed682e3 add short comment to grave_esc_ctrl_override 2017-08-11 16:54:10 -04:00
Balz Guenat
897ceac26c add option to let ctrl override shift/gui for the GRAVE_ESC.
This enables the ctrl+shift+esc shortcut to task manager on windows.
2017-08-11 16:54:10 -04:00
Balz Guenat
3e67cc9c80 add description of new option to docs and add option (commented out) into template. 2017-08-11 22:20:36 +02:00
Balz Guenat
bd38273f6f add short comment to grave_esc_ctrl_override 2017-08-11 21:43:49 +02:00
Balz Guenat
7b8eed9f29 add option to let ctrl override shift/gui for the GRAVE_ESC.
This enables the ctrl+shift+esc shortcut to task manager on windows.
2017-08-11 18:53:08 +02:00
Jack Humbert
88198a9606 move qmk version to very top, exclude when git isn't available 2017-08-10 18:54:14 -04:00
Jack Humbert
6895c4510e fix default layer songs 2017-08-10 16:52:35 -04:00
dwrz
70407a1b67 Add config.h to piemod keymap. 2017-08-10 14:58:15 -04:00
dwrz
3fa32867ad Remove makefile from Let's Split piemod. 2017-08-10 14:58:15 -04:00
dwrz
72b7067489 Add piemod keymaps for Let's Split and Planck. 2017-08-10 14:58:15 -04:00
That-Canadian
48a89ad864 Merge remote-tracking branch 'upstream/master' 2017-08-09 23:17:48 -04:00
Ryan Sullivan
a5ab2412ab Update readme
Fixed link and small cleanup
2017-08-09 21:03:05 -04:00
Ryan Sullivan
78ae28f24c Add 'boardy' keymap
Initial version of my personal layout for my keyboard Boardy
2017-08-09 21:03:05 -04:00
Ryan Sullivan
b6ed990d58 Rename 'base' to 'default'
Moves Eagleheardt's base layout to the default one for the Org60.  Also changed to use the right header file.
2017-08-09 21:03:05 -04:00
Ryan Sullivan
aa660d61ea Add Org60 keyboard
This makes some small changes to the XD60 configuration.  Also moves Eagleheardt's base keymap.
2017-08-09 21:03:05 -04:00
Jasonm23
d2e24354e1 Add TKL keymap for GON NerdTKL 2017-08-09 10:19:39 -04:00
Ethan Madden
6b70b6a990 Readmes! 2017-08-08 23:31:56 -04:00
Ethan Madden
daa5cee065 Added my personal layout
added RGB controls to my keymap
2017-08-08 23:31:56 -04:00
Ethan Madden
33a87c132c Base JC65 config
jc65 builds properly, haven't test flashed yet

Enabled RGB backlighting

disabled some other features to save some space
2017-08-08 23:31:56 -04:00
skullY
087d00f769 commit line ending differences 2017-08-08 16:45:44 -07:00
Jack Humbert
26d348b6d1 move version info to the top of the output 2017-08-08 16:06:45 -04:00
Jack Humbert
5210f94a56 add version to make output 2017-08-08 16:06:45 -04:00
Danny Nguyen
f1536a3f54 Change installation of avr-libc to avr-gcc, now that avr-libc is integrated into the avr-gcc build 2017-08-08 10:03:19 -04:00
Fredric Silberberg
3815067377 Fixed gaming layer 2017-08-08 10:02:53 -04:00
Fredric Silberberg
114565fe81 Rename SHIFT macro to BV_64 2017-08-08 10:02:53 -04:00
Fredric Silberberg
e9d755b6f4 Small gaming layer update 2017-08-08 10:02:53 -04:00
Fredric Silberberg
a3e1d9a8cc Added support for locking One Shot modifiers. 2017-08-08 10:02:53 -04:00
Fredric Silberberg
02f405708b Remove hex print code. 2017-08-08 10:02:53 -04:00
Fredric Silberberg
916c4d799d Added NKRO to nyquist layout. 2017-08-08 10:02:53 -04:00
Fredric Silberberg
bc59e093ec Updated ergodox profile 2017-08-08 10:02:53 -04:00
Fredric Silberberg
7935f563e9 Updated nyquist gaming layout. 2017-08-08 10:02:53 -04:00
Fredric Silberberg
5fc4a664dc Added initial key lock documentation. 2017-08-08 10:02:53 -04:00
Fredric Silberberg
8e1be7c792 Initial implementation of the key_lock feature. 2017-08-08 10:02:53 -04:00
Fredric Silberberg
7a9fb7c96b Added readme, fixed eql vs plus 2017-08-08 10:02:53 -04:00
Fredric Silberberg
8cb413b6b7 Updated licensing 2017-08-08 10:02:53 -04:00
Fredric Silberberg
b66a9af352 Finished initial Nyquist keymap. 2017-08-08 10:02:53 -04:00
Fredric Silberberg
fb91d9008b Additional keymap updates. 2017-08-08 10:02:53 -04:00
Fredric Silberberg
1219da753b Initial nyquist keymap 2017-08-08 10:02:53 -04:00
Jack Humbert
107d8031e5 update priyadi's keymap config 2017-08-07 22:36:05 -04:00
Jack Humbert
1a070d6f6f let planck keymaps use KEYMAP 2017-08-07 22:04:37 -04:00
Jack Humbert
e966854a65 Merge pull request #1558 from BalzGuenat/bananasplit
Merged my Bananasplit port with Nic's.
2017-08-07 17:09:36 -04:00
Balz Guenat
3961e14209 remove duplicate readme 2017-08-07 22:26:32 +02:00
Balz Guenat
d18df8ef7a Merge remote-tracking branch 'upstream/master' into bananasplit
# Conflicts:
#	keyboards/bananasplit/Makefile
#	keyboards/bananasplit/bananasplit.c
#	keyboards/bananasplit/bananasplit.h
#	keyboards/bananasplit/config.h
#	keyboards/bananasplit/keymaps/default/keymap.c
#	keyboards/bananasplit/rules.mk
2017-08-07 21:54:06 +02:00
That-Canadian
933701c212 Updated .gitignore to properly have the master changes 2017-08-07 09:06:53 -04:00
That-Canadian
5f58a8f842 Line endings issue for uk78? 2017-08-07 09:06:53 -04:00
That-Canadian
4fd5ee410c Modified gitignore file to allow the left and right hand eeprom files for the MiniDox to be added. They need to be there for proper flashing of the board. They do not change between builds, so no need to re-build them. 2017-08-07 09:06:53 -04:00
That-Canadian
93b850048a Changed my personal keymap and config. 2017-08-07 09:06:53 -04:00
That-Canadian
f64d4242ad Updated .gitignore to properly have the master changes 2017-08-07 08:05:35 -04:00
That-Canadian
1bbb49585e Merge branch 'master' into minidox 2017-08-07 08:00:02 -04:00
That-Canadian
597ff7aee9 Line endings issue for uk78? 2017-08-07 07:59:29 -04:00
That-Canadian
15822a8e44 Modified gitignore file to allow the left and right hand eeprom files for the MiniDox to be added. They need to be there for proper flashing of the board. They do not change between builds, so no need to re-build them. 2017-08-07 07:55:33 -04:00
That-Canadian
aa67e3cedb Changed my personal keymap and config. 2017-08-07 07:49:43 -04:00
Nic Aitch
7f3921bcb3 Update nic keymap 2017-08-06 22:46:44 -04:00
Nic Aitch
b529d5923f Update readme 2017-08-06 22:46:44 -04:00
Nic Aitch
fb0d4e96e8 Add nic keymap 2017-08-06 22:46:44 -04:00
Nic Aitch
c93975ac94 Add "hhkb with arrows" macro 2017-08-06 22:46:44 -04:00
Nic Aitch
ba59b2d97e Port hhkbanana 2017-08-06 22:46:44 -04:00
Nic Aitch
4a5c948561 Port true_banana as default 2017-08-06 22:46:44 -04:00
Nic Aitch
087fbe0628 Port main keyboard parts 2017-08-06 22:46:44 -04:00
Jack Humbert
9e79bb1491 Merge pull request #1554 from qmk/docs
Updates some remaining doc stuff
2017-08-06 22:29:59 -04:00
Gareth Pye
1fc9eabd08 Fixed a layout comment to match layout array 2017-08-06 20:08:37 -04:00
Danny Nguyen
7b5f02aa6a Port updated debouncing algorithm from Let's Split to Nyquist 2017-08-06 20:08:00 -04:00
Danny Nguyen
b20a87e3cc Add .eep files for setting hands 2017-08-06 20:08:00 -04:00
Danny Nguyen
396f97068b Add RGB commands to default Nyquist keymap 2017-08-06 20:08:00 -04:00
Rozakiin
5fbd25db62 Update readme.md 2017-08-06 20:06:24 -04:00
Rozakiin
05351ce8b3 Add files via upload 2017-08-06 20:06:24 -04:00
Balz Guenat
525b3deadf add short name for locking mods to docs. 2017-08-03 23:10:31 -04:00
Balz Guenat
308bec28bb Add language-switch for locking switch 2017-08-04 04:16:39 +02:00
Jack Humbert
76ea366abd Merge pull request #1538 from That-Canadian/eco-keyboard
Eco keyboard
2017-08-03 20:58:23 -04:00
Jack Humbert
5c44d40a0c Merge pull request #1540 from fabiant7t/master
amj40 added; my layouts for Let's Split, amj40 and XD75
2017-08-03 20:57:44 -04:00
Danny Nguyen
479139f9d4 Fix location of where the make command should be run 2017-08-03 20:56:21 -04:00
Danny Nguyen
e0caf94323 Move avrdude flashing script from individual keyboard rules.mk to common location and improve script.
Port detection script is now more informative and better handles first time flashing of a Pro Micro
2017-08-03 20:56:21 -04:00
Balz Guenat
d8c503f3ac add personal keymap 2017-08-03 23:33:31 +02:00
Fabian Topfstedt
088dfb7db5 added a clone of my lets split grid layout on a re75 2017-08-03 21:05:09 +02:00
Fabian Topfstedt
3c2343664c Merge https://github.com/qmk/qmk_firmware 2017-08-03 19:44:58 +02:00
Jack Humbert
83b35bf6f6 Update readme.md 2017-08-03 11:57:18 -04:00
That-Canadian
8765751f70 Added V2 files for the ECO board, also changed default from rev1 to rev2. 2017-08-03 11:02:52 -04:00
That-Canadian
c33434c0d6 Merge branch 'master' into eco-keyboard 2017-08-03 10:52:30 -04:00
Balz Guenat
07ba06d0b6 fix section in porting guide that refered to Makefile instead of rules.mk 2017-08-02 22:00:49 -04:00
Eagleheardt
b6280f979c Picture and details update
I fixed the picture of the layout and added a bit of an explanation. It now matches the readme file from the uppercase BASE folder
2017-08-02 21:52:31 -04:00
Balz Guenat
15fbe6e233 add the bananasplit keyboard incl. default keymap. 2017-08-03 03:51:34 +02:00
Eagleheardt
7371209ffb Adds Eagleheardt's XD60 keymap (#1528)
* Add files via upload

* Update readme.md

* Update readme.md

* Add files via upload
2017-08-02 21:23:36 -04:00
Gergely Nagy
d28b2c395b tap-dance: key + layer helper
This adds the `ACTION_TAP_DANCE_DUAL_ROLE` helper, which makes it easy to have
keys that act as a key on the first tap, and as a layer toggle on the second.

Fixes #1532, reported by @Ptomerty.

Signed-off-by: Gergely Nagy <algernon@madhouse-project.org>
2017-08-02 16:06:16 -04:00
Mark John Garcia Merin
bb30ff5f71 Fix HHKBish layout arrows 2017-08-02 16:05:46 -04:00
MechMerlin
bc5c67b3b2 Change TG to TO 2017-08-02 16:05:46 -04:00
MechMerlin
ea02a3ea23 Update keymap to have HHKB-ish support and readme along with it 2017-08-02 16:05:46 -04:00
MechMerlin
29fcb64bb4 add KC_Grave and fix typo on readme 2017-08-02 16:05:46 -04:00
MechMerlin
70cc193d14 Add a readme.md file for the keymap 2017-08-02 16:05:46 -04:00
MechMerlin
aab5f349a2 New keymap for mechmerlin 2017-08-02 16:05:46 -04:00
Balz Guenat
a7b6292010 added missing media controls and mod-tap rshift/enter 2017-08-02 16:05:22 -04:00
Balz Guenat
8e66f65c77 add my keymap 2017-08-02 16:05:22 -04:00
xk
23549791eb Add keymap xk 2017-08-02 16:04:49 -04:00
Zeal Jagannatha
dd3803f334 Normalize all line endings 2017-08-01 16:44:29 -04:00
Fabian Topfstedt
015bf30d9b changed adjust layer to emulate mouse on rignt hand 2017-07-31 22:01:35 +02:00
Fabian Topfstedt
9609a47c3e Merge https://github.com/qmk/qmk_firmware 2017-07-31 21:17:16 +02:00
Fabian Topfstedt
661106bac4 layout updates and cleanups 2017-07-31 21:16:55 +02:00
Jack Humbert
bd0a888133 line-endings 2017-07-30 12:59:18 -04:00
Benjamin Kesselring
d272111d46 added xd75 to list in /keyboards 2017-07-30 00:46:08 -04:00
Benjamin Kesselring
0b528d2e36 updated readme and tweaked keymap 2017-07-30 00:46:08 -04:00
Benjamin Kesselring
cc6043ca29 add backlight support (probably) 2017-07-30 00:46:08 -04:00
Benjamin Kesselring
fffc5237a7 fix RGB 2017-07-30 00:46:08 -04:00
Benjamin Kesselring
992a63c0f2 add xd75, preliminary RGB' 2017-07-30 00:46:08 -04:00
Kototama
25659acb1c Add an Ergodox Colemak Mod-DH keymap for french layouts
[Colemak Mod-DH](https://colemakmods.github.io/mod-dh/) layout for
users keeping an `azerty` layout configuration on their OS.

The symbols layers was done after analysing various programming
languages sources codes and should be close to optimal for typing
confort.
2017-07-29 11:38:36 -04:00
ahtn
07cb997b6d Changes lets_split to use timer based debouncing
The let's split code used delays in its debouncing algorithm which
increases input latency. This commit copies and adapts the code from
`quantum/matrix.c` to lets_split's `matrix.c`.
2017-07-29 11:38:00 -04:00
unknown
ac634aa455 Fixed error in readme 2017-07-28 23:41:53 -04:00
unknown
6b2a3492b7 Removed un-needed protosplit directory and updated readme 2017-07-28 10:45:34 -04:00
unknown
dcd64062d2 Reverted changes 2017-07-28 10:45:34 -04:00
unknown
4148aeee19 Figured out that I didn't need to include both keymaps in both files 2017-07-28 10:45:34 -04:00
unknown
1f78b62cd6 Hopefully compile issues are gone, and updated files 2017-07-28 10:45:34 -04:00
unknown
9f82d14eb9 Fixed all things jack suggested. 2017-07-28 10:45:34 -04:00
unknown
b710e21efb Added to blank spaces at end of protosplit to make it compile under make v2 2017-07-28 10:45:34 -04:00
unknown
9334986bd9 Updated readme to show compile rules that won't throw an error 2017-07-28 10:45:34 -04:00
unknown
f2824bca02 Fixed typo in my layout and updated 2017-07-28 10:45:34 -04:00
unknown
5023f55856 Fixed some capitalization issues 2017-07-28 10:45:34 -04:00
unknown
6d15f5a5b7 Another typo fix 2017-07-28 10:45:34 -04:00
unknown
ea1fd96c84 Fixed typo in my layout 2017-07-28 10:45:34 -04:00
unknown
1eea91f5f8 Updated my makefile..again 2017-07-28 10:45:34 -04:00
unknown
9546b180b9 Updated my makefile 2017-07-28 10:45:34 -04:00
unknown
2265e4ce41 Removed old keymaps 2017-07-28 10:45:34 -04:00
unknown
cbc5a08c40 Removed old protosplit folder 2017-07-28 10:45:34 -04:00
unknown
78f79ca6cc Removed old folder 2017-07-28 10:45:34 -04:00
Donald
f1dbf72e09 Changed case of protosplit
Also updated readme to have correct capitalization.
2017-07-28 10:45:34 -04:00
Donald
c71b60c82a Changed case of deltasplit75 to be lowercase.
To follow convention.
2017-07-28 10:45:34 -04:00
unknown
47c6d201aa Add my layout 2017-07-28 10:45:34 -04:00
xyxjj
f6438e42af Add files via upload 2017-07-28 10:45:34 -04:00
xyxjj
242c1da2c2 Delete deltasplit build guide.pdf 2017-07-28 10:45:34 -04:00
xyxjj
be1876aa76 Add files via upload 2017-07-28 10:45:34 -04:00
xyxjj
1ef6777723 Add files via upload 2017-07-28 10:45:34 -04:00
xyxjj
d3b6552fb7 Delete MX RIGHT B.dxf 2017-07-28 10:45:34 -04:00
xyxjj
ce3ea49743 Delete ALPS+MX RIGHT B.dxf 2017-07-28 10:45:34 -04:00
xyxjj
811c583636 Delete ALPS RIGHT B.dxf 2017-07-28 10:45:34 -04:00
xyxjj
173d1b7571 Delete middle layers - RIGHT B.dxf 2017-07-28 10:45:34 -04:00
xyxjj
98f977e95c Delete bottom layers - RIGHT B.dxf 2017-07-28 10:45:34 -04:00
xyxjj
1832b59266 Delete MX LEFT B.dxf 2017-07-28 10:45:34 -04:00
xyxjj
1bfe5b5723 Delete ALPS+MX LEFT B.dxf 2017-07-28 10:45:34 -04:00
xyxjj
038c12d59a Delete ALPS LEFT B.dxf 2017-07-28 10:45:34 -04:00
xyxjj
3d23a80c83 Delete Middle layers - LEFT B.dxf 2017-07-28 10:45:34 -04:00
xyxjj
f56884b253 Delete Bottom Layer - LEFT B.dxf 2017-07-28 10:45:34 -04:00
xyxjj
d4e695a136 Delete top bezel - blocked corner.dxf 2017-07-28 10:45:34 -04:00
xyxjj
2013f4fb83 Delete top bezel - Winkeyless.dxf 2017-07-28 10:45:34 -04:00
xyxjj
508cc7e56b Delete top bezel - Standard.dxf 2017-07-28 10:45:34 -04:00
xyxjj
8958a4f78b Delete PCB Dimesnsion.dxf 2017-07-28 10:45:34 -04:00
xyxjj
429971997c Delete MX RIGHT B.dwg 2017-07-28 10:45:34 -04:00
xyxjj
e898a8ecc8 Delete ALPS+MX RIGHT B.dwg 2017-07-28 10:45:34 -04:00
xyxjj
b6e8516d6d Delete ALPS RIGHT B.dwg 2017-07-28 10:45:34 -04:00
xyxjj
2077226fc2 Delete middle layers - RIGHT B.dwg 2017-07-28 10:45:34 -04:00
xyxjj
cfafa97227 Delete bottom layers - RIGHT B.dwg 2017-07-28 10:45:34 -04:00
xyxjj
3d73110795 Delete readme.md 2017-07-28 10:45:34 -04:00
xyxjj
727707ef0b Delete PCB Dimesnsion.dwg 2017-07-28 10:45:34 -04:00
xyxjj
2a3af90d9f Delete MX LEFT B.dwg 2017-07-28 10:45:34 -04:00
xyxjj
73e5a7fafe Delete ALPS+MX LEFT B.dwg 2017-07-28 10:45:34 -04:00
xyxjj
eceb2a4810 Delete ALPS LEFT B.dwg 2017-07-28 10:45:34 -04:00
xyxjj
b34dfeecdf Delete Middle layers - LEFT B.dwg 2017-07-28 10:45:34 -04:00
xyxjj
01458037de Delete Bottom Layer - LEFT B.dwg 2017-07-28 10:45:34 -04:00
xyxjj
461f95ce0b Update readme.md 2017-07-28 10:45:34 -04:00
xyxjj
f4bc404aa2 Delete top bezel - blocked corner.dwg 2017-07-28 10:45:34 -04:00
xyxjj
b70e68ac5b Delete top bezel - Winkeyless.dwg 2017-07-28 10:45:34 -04:00
xyxjj
e4d849ed95 Delete top bezel - Standard.dwg 2017-07-28 10:45:34 -04:00
xyxjj
4f193d6dc2 Add files via upload 2017-07-28 10:45:34 -04:00
xyxjj
934d35ea3f Add files via upload 2017-07-28 10:45:34 -04:00
xyxjj
a76a607a2b Add files via upload 2017-07-28 10:45:34 -04:00
xyxjj
9aec284f42 Update 2017-07-28 10:45:34 -04:00
xyxjj
3a0f7865da Update readme.md 2017-07-28 10:45:34 -04:00
xyxjj
b11d770bea Update Makefile 2017-07-28 10:45:34 -04:00
xyxjj
5a63aa29a9 Update readme.md 2017-07-28 10:45:34 -04:00
xyxjj
ab63ff8d2e Update readme.md 2017-07-28 10:45:34 -04:00
xyxjj
00e4079d5a Delete top bezel - blocked corner.bak 2017-07-28 10:45:34 -04:00
xyxjj
4d88634f07 Delete top bezel - Standard.bak 2017-07-28 10:45:34 -04:00
xyxjj
5ea3b1ea4d Delete PCB Dimesnsion.dwl2 2017-07-28 10:45:34 -04:00
xyxjj
c497a19e7b Delete PCB Dimesnsion.dwl 2017-07-28 10:45:34 -04:00
xyxjj
7e07bdbde3 Add files via upload 2017-07-28 10:45:34 -04:00
xyxjj
60e5277a8f Delete PCB Dimesnsion.dwg 2017-07-28 10:45:34 -04:00
xyxjj
96ec98b1ad Create readme.md 2017-07-28 10:45:34 -04:00
xyxjj
7a31ef8284 Add files via upload 2017-07-28 10:45:34 -04:00
xyxjj
0c2b0c7cc1 Update readme.md 2017-07-28 10:45:34 -04:00
xyxjj
42ea9460fe Update readme.md 2017-07-28 10:45:34 -04:00
xyxjj
e9daf0606f Update readme.md 2017-07-28 10:45:34 -04:00
xyxjj
be2c7aac31 Add files via upload 2017-07-28 10:45:34 -04:00
Joe Wasson
c5780647d8 Fix typo in docs. 2017-07-27 16:10:36 -04:00
Joe Wasson
26fb063be3 Link to steno docs from summary page. 2017-07-27 16:10:36 -04:00
Joe Wasson
e81e75c147 Move steno keycodes due to conflict with another PR. 2017-07-27 16:10:36 -04:00
Joe Wasson
3e96e8a6a1 Add copyright to steno files. 2017-07-27 16:10:36 -04:00
Joe Wasson
c0f63ca9dc Add documentation for Steno. 2017-07-27 16:10:36 -04:00
Joe Wasson
f30f12ec81 Add support for GeminiPR steno protocol.
This protocol breaks out "duplicate" keys into their own entry in the packet so that more complicated logic can be done on the software side, including support for additional languages and alternative theories.
2017-07-27 16:10:36 -04:00
Joe Wasson
5987f67989 Add TX Bolt protocol support for Stenography
Requires virtser; Allows QMK to speak the TX BOlt protocol used by stenography machines and software (such as Plover). The upside is that Plover can be configured to listen only to TX Bolt allow the keyboard to switch layers without need to enable/disable the Plover software, or to have a second non-Steno keyboard work concurrently.
2017-07-27 16:10:36 -04:00
Fabian Topfstedt
20b3ac49b7 deleted file 2017-07-26 12:48:13 +02:00
Fabian Topfstedt
619081559b added my amj40 custom layout 2017-07-26 12:47:40 +02:00
Fabian Topfstedt
4a1f701d9f included amj40 implementation of nhou7 from https://github.com/nhou7/qmk_firmware_amj40 2017-07-26 12:46:04 +02:00
Fabian Topfstedt
de9331c50c custom makefile 2017-07-26 12:19:13 +02:00
Fabian Topfstedt
3b05183deb symmetric modifiers in bottom row 2017-07-26 12:18:40 +02:00
Fabian Topfstedt
75677655ad left shift is backspace on tap 2017-07-26 11:11:13 +02:00
Fabian Topfstedt
c7ea65c6d3 default based customizations 2017-07-26 11:09:29 +02:00
Fabian Topfstedt
4ee571b257 Merge https://github.com/qmk/qmk_firmware 2017-07-25 09:48:58 +02:00
07dcbd23fd First Update 2017-07-24 15:19:31 -04:00
Jack Humbert
cefc09ae7d adds option for alt pitch standards 2017-07-24 12:45:34 -04:00
Joe Wasson
a543ad4c1d Fix minor formatting issue. 2017-07-23 15:10:27 -04:00
Jack Humbert
6bdf7482b1 update audio/music documentation 2017-07-23 14:59:29 -04:00
Jack Humbert
415d38ba9e adds music mode, music mode songs, music mask 2017-07-23 14:59:29 -04:00
Jack Humbert
9abbbe7089 update audio documentation 2017-07-23 14:59:29 -04:00
Jack Humbert
f407f3e8de remove unneccesary headers 2017-07-23 14:59:29 -04:00
Jack Humbert
92ccc9a7b8 use automatic rests with songs (no more rest styles) 2017-07-23 14:59:29 -04:00
Jack Humbert
f40ded7894 relocate keymap's useful tools 2017-07-23 14:59:29 -04:00
Jack Humbert
fd664fe85b escape song playing in music 2017-07-23 14:59:29 -04:00
Jack Humbert
fe113ebad5 start updating audio docs 2017-07-23 14:59:29 -04:00
Jack Humbert
6a3c66776c clean-up planck and preonic keymaps, move audio stuff around 2017-07-23 14:59:29 -04:00
Jack Humbert
8edb67b082 fix line-endings 2017-07-21 19:05:13 -04:00
rootuseralpha
e26283e9e5 Update keymap.c 2017-07-20 21:52:13 -04:00
rootuseralpha
8deb405292 Add files via upload 2017-07-20 21:52:13 -04:00
rootuseralpha
4d665a99ae Add files via upload 2017-07-20 21:52:13 -04:00
rootuseralpha
4627cab49d Delete test 2017-07-20 21:52:13 -04:00
rootuseralpha
e5f606558e Add files via upload 2017-07-20 21:52:13 -04:00
rootuseralpha
f379f05c1e Create test 2017-07-20 21:52:13 -04:00
Maarten Dekkers
1524d29cfb Added some user customization 2017-07-20 10:18:00 -04:00
Maarten Dekkers
30efce5584 Changes to own keymap 2017-07-20 10:18:00 -04:00
Fred Sundvik
a5b0f4de35 Add SRC and OPT_DEFS when building tests 2017-07-20 10:17:31 -04:00
Fred Sundvik
20696a9efe Fix building of multiple test directories 2017-07-20 10:17:31 -04:00
Fabian Topfstedt
ee43856ff7 Merge https://github.com/qmk/qmk_firmware 2017-07-20 08:22:44 +02:00
Jack Humbert
14c5160b1a Update _summary.md 2017-07-17 15:01:33 -04:00
Jack Humbert
000e749853 Rename docs/features/README.md to docs/features.md 2017-07-17 15:01:11 -04:00
Jack Humbert
7c0610b411 Merge pull request #1498 from That-Canadian/minidox
Minidox
2017-07-14 22:04:18 -04:00
That-Canadian
b6d74b9bb9 Fixed typo in readme 2017-07-14 21:58:59 -04:00
That-Canadian
5e8594db82 Updated MiniDox readme 2017-07-14 21:57:41 -04:00
That-Canadian
6c9b69a4b6 Merge branch 'master' into minidox 2017-07-14 21:35:50 -04:00
That-Canadian
5412229603 Merge remote-tracking branch 'upstream/master' 2017-07-14 21:34:37 -04:00
That-Canadian
e2e0f5d6d1 Merge branch 'minidox' of https://github.com/That-Canadian/qmk_firmware into minidox 2017-07-14 21:33:19 -04:00
That-Canadian
21b63d9243 Updated i2c and serial files to most recent from the lets split firmware. Also updated that_canadian keymap 2017-07-14 21:24:58 -04:00
Jack Humbert
6ed8ce4f59 Merge pull request #1491 from fredizzimo/msys2
Add support for msys2 build environment
2017-07-13 14:24:26 -04:00
ishtob
087af43dee fix implementation issues from SSD1306 clean up, added rotation (#1494)
* moved OLED update task to keymap

* fix splitting render display to keymap

* Added rotation option for OLED, fixed splitting display render update to keymap

* issues with attribute
2017-07-12 12:10:28 -04:00
Fred Sundvik
b7d8dec7dc Fix printf error in make output on msys2 2017-07-12 13:04:50 +03:00
Fred Sundvik
7f67abd7d7 Fix bitfield problem when compiling in native mingw 2017-07-11 22:05:01 +03:00
Jack Humbert
cc468523df clean up ssd1306 implementation 2017-07-11 14:23:26 -04:00
Jack Humbert
387b07404a update drivers to exclude lets_split include 2017-07-11 13:57:58 -04:00
ishtob
cc6db9c540 Adds Hadron Keyboard (#1492)
* adding hadron keymaps

* fix embedded comment

* fixed TWI driver path

* Delete glcdfont.c

* Delete ssd1306.c

* Delete ssd1306.h

* Update readme.md
2017-07-11 13:53:50 -04:00
Maarten Dekkers
886af32507 Updates maartenwut's keymap (#1489)
* Updated keymap

* Added backlight breathing to fix compile error
2017-07-11 12:53:41 -04:00
Fred Sundvik
78545b9509 Fix unreferenced errors with mingw compiler and unit tests 2017-07-11 19:41:04 +03:00
Fred Sundvik
5a25d50168 Add more dependencies, everything can be compiled now 2017-07-11 18:51:52 +03:00
Fred Sundvik
5c3fd67198 Add tools to the path 2017-07-11 17:55:03 +03:00
Fred Sundvik
0d9e7f635e Extract flip 2017-07-11 17:32:58 +03:00
Fred Sundvik
76bd0d3e18 Install arm toolchain 2017-07-11 17:18:24 +03:00
Fred Sundvik
b8c363099b Download and extract avr tools 2017-07-11 16:44:46 +03:00
Fred Sundvik
b85ce4ce22 Fix overlong lines, and a few spelling errors 2017-07-11 16:26:29 +03:00
Fred Sundvik
d47db637ed Use home directory for download on msys2 2017-07-11 16:11:37 +03:00
That-Canadian
d73d30aa84 Merge remote-tracking branch 'upstream/master' 2017-07-10 21:24:20 -04:00
Erez Zukerman
585f140052 Invites contributions 2017-07-10 20:51:46 -04:00
That-Canadian
55fcac4639 Adds Minidox Keyboard (#1487)
* merge

* line ending stuff

* Added MiniDox keyboard folder / configs / and some keymaps

* Updated minidox rev1 config, and readme. Also updated that_canadian keymap to include RGB

* cleaned up that_canadian keymap comments

* Fixed RGB being enabled by default, now it must be turned on at the keymap level
2017-07-10 20:15:08 -04:00
That-Canadian
a4958a532d Fixed RGB being enabled by default, now it must be turned on at the keymap level 2017-07-10 17:12:18 -04:00
That-Canadian
df50260300 cleaned up that_canadian keymap comments 2017-07-10 16:59:20 -04:00
That-Canadian
55ed97af1e Merge branch 'master' into minidox 2017-07-10 16:53:49 -04:00
That-Canadian
07bf8522ca Merge remote-tracking branch 'upstream/master' 2017-07-10 16:52:56 -04:00
That-Canadian
1fdf3c84fe Updated minidox rev1 config, and readme. Also updated that_canadian keymap to include RGB 2017-07-10 16:51:37 -04:00
Jack Humbert
65c10790d4 Update README.md 2017-07-10 11:53:18 -04:00
Jack Humbert
42d5a324eb Start mvoing hardware drivers to /drivers/ (#1433)
* start driver isolation

* update nyquist and orthodox boards

* update atreus62

* move drivers to avr

* update avr conditional
2017-07-10 11:18:47 -04:00
Fred Sundvik
32fc4da4a7 Install unzip 2017-07-10 18:16:35 +03:00
Fred Sundvik
861087096b Add symlinks only on WSL 2017-07-10 18:05:32 +03:00
Fred Sundvik
7bedf8f4f2 Fix launch of qmk_driver_installer on msys2 2017-07-10 17:51:59 +03:00
Jack Humbert
8d190d5e25 Merge branch 'master' of https://github.com/qmk/qmk_firmware 2017-07-10 10:35:45 -04:00
Fred Sundvik
a2d3fc98b8 Initial structure for shared msys2 and wsl installation 2017-07-10 17:31:58 +03:00
Fred Sundvik
10546665f4 Fix uninitialized backlight_level in the Visualizer 2017-07-10 09:02:36 -04:00
Fred Sundvik
551924f8a0 Add template board files 2017-07-10 09:01:59 -04:00
Fred Sundvik
190b90892b Rename board files to lowercase 2017-07-10 09:01:59 -04:00
Fred Sundvik
9d8279960d Make it easier to use drivers 2017-07-10 09:01:59 -04:00
Fred Sundvik
4da3b19603 Shared default animations 2017-07-10 09:01:59 -04:00
Fred Sundvik
2251560256 Clarify naming between LCD_BACKLIGHT and LED_BACKLIGHT 2017-07-10 09:01:59 -04:00
Fred Sundvik
f3c113fb5a Shared gfxconf 2017-07-10 09:01:59 -04:00
Fred Sundvik
8a962f7b27 Define visualizer thread priority by default 2017-07-10 09:01:59 -04:00
Fred Sundvik
011ee29441 Fixup mixed tabs/spaces 2017-07-10 09:01:59 -04:00
Fred Sundvik
630f065376 Remove ergodox from gdisp driver names 2017-07-10 09:01:59 -04:00
Fred Sundvik
aca0f4dcae Move GDISP drivers to /drivers/ugfx 2017-07-10 09:01:59 -04:00
Fred Sundvik
1ff5fb000f Fix Makefile error_occured output for unit tests 2017-07-10 09:00:58 -04:00
Fred Sundvik
ba405cfbb4 Don't search for TEENSY_LOADER_CLI if it's already defined 2017-07-10 09:00:18 -04:00
Fred Sundvik
7ea8753b72 Don't run dfu-programmer unless specified as a target
This introduces a grep dependency, which I believe we didn't have
before, but it should be available and installed by default on all the
supported systems.
2017-07-10 09:00:18 -04:00
That-Canadian
9312b9db6c Added MiniDox keyboard folder / configs / and some keymaps 2017-07-10 00:46:19 -04:00
That-Canadian
707f4efd99 line ending stuff 2017-07-10 00:30:40 -04:00
That-Canadian
e7a5fee1f3 merge 2017-07-10 00:21:38 -04:00
Jack Humbert
6221498601 Merge commit '8858438a770c1c982f33b296447ca77176c751f7' 2017-07-09 21:26:54 -04:00
Jack Humbert
8858438a77 Squashed 'lib/lufa/' changes from f2bd51f4e..bbdc9ac40
bbdc9ac40 Merge pull request #1 from fredizzimo/fix_line_endings
75ba27b8d Fix xml file line endings
7a8237259 Merge commit '5a3397d17ec917c7be5d5109e01a3a84a355cb1b'
713c65b5b Merge commit 'cedfbfcb1a9ad9cf93816f1952fc4bf7c55fbb61'
00e20c453 delete old lufa

git-subtree-dir: lib/lufa
git-subtree-split: bbdc9ac40c2ff543bbaf3870d407d0a96c945c1a
2017-07-09 21:26:51 -04:00
skullY
ddc3d3b64b remove numbered headings 2017-07-08 22:53:43 -07:00
skullY
d90dc05ddb try swapping toc and numbered headings 2017-07-08 22:51:16 -07:00
skullY
7583136d73 try removing the anchor plugin 2017-07-08 22:44:18 -07:00
skullY
2dea401a8e play around with plugin settings 2017-07-08 22:39:32 -07:00
skullY
4c7c7747a3 Add terminal examples to doc best practices 2017-07-08 22:39:17 -07:00
skullY
fcd08b8c7d more crlf issues 2017-07-08 20:03:33 -07:00
skullY
5810bb67e4 Rearrange the faq a bit 2017-07-08 20:01:35 -07:00
skullY
cb9e59152e Flesh out the glossary 2017-07-08 20:01:30 -07:00
Fred Sundvik
9158673166 Reference issue #1478 from the unit tests 2017-07-08 21:59:51 -04:00
Fred Sundvik
b3af79eaff Reference issue #1477 from the unit tests 2017-07-08 21:59:51 -04:00
Fred Sundvik
41efcd6d73 Reference issue #524 from the unit tests 2017-07-08 21:59:51 -04:00
Fred Sundvik
60b1880a62 Reference issue #1476 from the unit tests 2017-07-08 21:59:51 -04:00
Fred Sundvik
67f722c9c8 Configure vscode file associations, use hpp instead of h 2017-07-08 21:59:51 -04:00
Fred Sundvik
631c09e976 Fix keymap formatting 2017-07-08 21:59:51 -04:00
Fred Sundvik
e5780a6dc6 Add tests for macros 2017-07-08 21:59:51 -04:00
Fred Sundvik
4087d6da0d Add wait support for tests 2017-07-08 21:59:51 -04:00
Fred Sundvik
fc4bfbe580 Rename tests to start with test_ 2017-07-08 21:59:51 -04:00
Fred Sundvik
4e69a8bda6 Add basic timing support, and SFT_T tests
Also expose some bugs...
2017-07-08 21:59:51 -04:00
Fred Sundvik
a62f449659 Add test for a combo key 2017-07-08 21:59:51 -04:00
Fred Sundvik
cae7a9c3ec Add simple modifier test 2017-07-08 21:59:51 -04:00
Fred Sundvik
1985f43bad Improve the tests a bit 2017-07-08 21:59:51 -04:00
Fred Sundvik
72c8df1f19 A bigger test matrix, and test for unmapped keys 2017-07-08 21:59:51 -04:00
Fred Sundvik
1e4cc36e14 Rename test.cpp to keypress.cpp 2017-07-08 21:59:51 -04:00
Fred Sundvik
0256cd8cca Build all cpp files in test directories 2017-07-08 21:59:51 -04:00
Fred Sundvik
7d79962785 Move test keymap to keymap.c 2017-07-08 21:59:51 -04:00
Fred Sundvik
448b91689f Exclude .build and .hex from Visual Studio code 2017-07-08 21:59:51 -04:00
skullY
6e2cae4cda commit files with wrong line endings 2017-07-08 12:34:36 -07:00
Jack Humbert
03706de946 Merge commit '5a3397d17ec917c7be5d5109e01a3a84a355cb1b' 2017-07-07 21:46:08 -04:00
Jack Humbert
5a3397d17e Squashed 'lib/lufa/' changes from a44056fb9..f2bd51f4e
f2bd51f4e fixing line endings

git-subtree-dir: lib/lufa
git-subtree-split: f2bd51f4edba87a259808c92c0424dc36475282b
2017-07-07 21:46:04 -04:00
Jack Humbert
ea3df7466a Merge commit 'cedfbfcb1a9ad9cf93816f1952fc4bf7c55fbb61' 2017-07-07 16:40:03 -04:00
Jack Humbert
cedfbfcb1a Squashed 'lib/lufa/' changes from 385d40300..a44056fb9
a44056fb9 add .gitattributes

git-subtree-dir: lib/lufa
git-subtree-split: a44056fb9d4784e3a248f460688b35977592cb05
2017-07-07 16:40:01 -04:00
skullY
03eb6a3e86 comment out unformatted audio/midi sections 2017-07-07 13:28:31 -07:00
Jack Humbert
0787d70e55 Updates Documentation from #1444 2017-07-07 15:57:18 -04:00
Jack Humbert
9de443cbf1 Merge pull request #1471 from qmk/lufa_lib
Update LUFA and move it to /lib/lufa
2017-07-07 15:33:29 -04:00
Maarten Dekkers
88b3d051b2 Corrected it again. 2017-07-07 15:33:09 -04:00
Maarten Dekkers
53acc7b074 Cleaned and corrected keymap code 2017-07-07 15:33:09 -04:00
Maarten Dekkers
68cf0d454c Own keymap layout 2017-07-07 15:33:09 -04:00
Ethan Spitz
53174036e9 Add new keymap to try to get pretty close to the default layout for an ergodox keyboard. Coming from that I really like being able to use the backspace from my left thumb. 2017-07-07 15:13:18 -04:00
Jack Humbert
1c26468ad5 update include 2017-07-07 14:53:47 -04:00
Jack Humbert
7bddacf25f update lets_split lufa include 2017-07-07 13:32:29 -04:00
Jack Humbert
4b37030ad0 update lufa implementation 2017-07-07 12:06:59 -04:00
Jack Humbert
39ece81979 delete old lufa 2017-07-07 11:56:51 -04:00
Jack Humbert
60b30c0363 Squashed 'lib/lufa/' content from commit 385d40300
git-subtree-dir: lib/lufa
git-subtree-split: 385d403003
2017-07-07 11:55:23 -04:00
Jack Humbert
8655d4f494 Merge commit '60b30c036397cb5627fa374bb930794b225daa29' as 'lib/lufa' 2017-07-07 11:55:23 -04:00
skullydazed
ecd3dbf085 Merge branch 'master' into docs 2017-07-06 18:43:22 -07:00
cato976
1896c76a29 Update mouse_keys.md
fix typo
2017-07-06 10:01:12 -04:00
Maarten Dekkers
58139f87e4 Fixed arrow up and rgb config 2017-07-05 11:48:19 -04:00
Maarten Dekkers
684c381aee Moved RGB features to new layout 2017-07-05 11:48:19 -04:00
Maarten Dekkers
c6d544bbb0 Fixed image description 2017-07-05 11:48:19 -04:00
Maarten Dekkers
7f82275a4d Added support for RGB on the Tada68 2017-07-05 11:48:19 -04:00
Andreas Lindhé
b228cf7ba4 Update readme 2017-07-05 10:56:53 -04:00
Andreas Lindhé
41b23af60e Create custom layout based on swedish
This is a setup that is very useful for me. It may or may not be for
you. I will use it in conjunction with the A5 overlayed sv_SE layout.

The layout is subject to change (in particular I'm thinking about adding
a macro recording feature), but it have not changed much the past year
or two so you can expect it to be stable enough to learn it.

A5: http://aoeu.info/s/dvorak/svorak
My xkb map: https://github.com/lindhe/dotfiles/blob/master/usr/share/X11/xkb/symbols/se-A5

The most major points:
======================

L0:
---

* Easily accessible F11 key for fullscreening
* Print screen
* Middle mouse button for X-paste
* Improved reachability of meta buttons (LCtrl, LALt, AltGr, LGui etc.)
* Cluster Page Up/Down + Home/End by the right thumb
* Vim-like arrow layout in right bottom row

* Set media layer toggle to right thumb (Enter)
* Set apostrophe on LCtl (putting it next to some other small
  characters)

L1:
---

* Full function key layout
* Teensy button

L2:
---

* Improved media buttons layout (close by the jkl; Vim binding)
* Improved layout of emulated mouse buttons

LED behaviour to binary+CAPS
============================

The ErgoDox LEDs on this layout is using the two rightmost LEDs as the
two LSB in a two digit binary number, representing layer 0, 1, 2 and 3.
The leftmost byte/LED indicates CAPS status.
2017-07-05 10:56:53 -04:00
Shayne Holmes
48ff93582b Pull out sendstring variations to their own files.
Instead of having all sendstring keycode mappings in the main quantum.c
file, give each one its own file in keymap_extras that can be #included
in a user's keymap. If one is included, it will define the appropriate
lookup tables and overwrite the weak definitions in quantum.c.
(Including more than one sendstring definition will fail at compile
time.)

Update @rai-suta's test keymap to match, as well as the documentation.
2017-07-05 10:55:47 -04:00
Shayne Holmes
fdc2e8058b Allow broader send_string layout customizability via compile flag
Refactor new-ish JIS_KEYCODE send_string implementation with existing
send_string

Reshuffle JIS in line with other alternative keycodes for sendstring,
and make them all accessible via compile-time options

Add a separate function to allow sending a string with a delay.
2017-07-05 10:55:47 -04:00
dbroqua
c41d40c422 - Fixed wording in readme 2017-07-05 09:59:37 -04:00
dbroqua
d638547cd0 - Updated dk60 readme with new QMK rules 2017-07-05 09:59:37 -04:00
dbroqua
4587bb8786 - Fixed DK60 version in config.h 2017-07-05 09:59:37 -04:00
skullydazed
60eb2e140d Update the clueboard readmes (#1459) 2017-07-05 00:15:09 -07:00
That-Canadian
b3d2f05032 Changed - to _ for keymap that-canadian for compatability reasons. 2017-07-04 16:43:19 -04:00
That-Canadian
2cf97c6d90 Updated ECO files to follow proper formatting. Also updated that-canadian keymap to take out extraneous characters. 2017-07-04 16:43:19 -04:00
That-Canadian
f7b8148c12 Updated ECO readme file, includes picture of ECO now. 2017-07-04 16:43:19 -04:00
That-Canadian
dbcf0ba6ca Added ECO keyboard folder and configuration files. Also added my (That-Canadian) keymap folder and files. 2017-07-04 16:43:19 -04:00
That-Canadian
db5bb7dbbf Changed - to _ for keymap that-canadian for compatability reasons. 2017-07-04 15:41:14 -04:00
That-Canadian
c534c3e734 Updated ECO files to follow proper formatting. Also updated that-canadian keymap to take out extraneous characters. 2017-07-04 15:26:25 -04:00
That-Canadian
f9e8d25e2e Updated ECO readme file, includes picture of ECO now. 2017-07-04 14:19:49 -04:00
That-Canadian
e256468e48 Added ECO keyboard folder and configuration files. Also added my (That-Canadian) keymap folder and files. 2017-07-04 14:14:26 -04:00
Callum Oakley
84a8aabe5b MORE layer 2017-07-04 18:16:45 +01:00
Luiz Ribeiro
d5486265b8 Merge branch 'master' into ps2avrGB 2017-07-04 11:17:28 -04:00
Luiz Ribeiro
738b072bb0 Fixed indentation and now using quantum keycodes for rgblight 2017-07-04 11:12:42 -04:00
skullY
9cadba7b89 Add missing files to _summary.md 2017-07-03 12:39:15 -07:00
skullY
f1c581fdd4 Remove obsolete documentation 2017-07-03 12:31:37 -07:00
skullY
c12f19107f update the summary 2017-07-03 12:30:26 -07:00
skullY
2abff258b1 Adjust headings on unicode 2017-07-03 12:29:04 -07:00
skullY
0ded95b888 Update the vagrant guide 2017-07-03 12:28:48 -07:00
skullY
ff47ca7a46 update hand_wire 2017-07-03 12:11:13 -07:00
skullY
dff5708b07 update basic_how_keyboards_work 2017-07-03 11:59:19 -07:00
Martin Gondermann
34c8bf47a7 Move Space Caded Parentheses to own layer (#1452)
* Move Space Caded Parentheses to own layer

The space cadet parentheses where too much distracting. Therefore they are now on the function layer. I also added two more layers for also having angle brackets and curly braces on the shift keys forr better access.

Also updated the README

* Fixed SHIFT+Function key conflict

* Removed Angle Bracket and Curly Bracket layers, as they don't work corrrectly
2017-07-03 11:48:48 -07:00
Kyle Terry
062b3547ed Keyboards/handwired magicforce61 (#1454)
* adding the magicforce61 under handwired

* I meant 14 cols
2017-07-03 11:47:48 -07:00
Martin Gondermann
827dc6c715 Add octave lights for midi layer (#1457) 2017-07-03 11:43:32 -07:00
skullY
435f99916c Work around quoting hell 2017-07-03 11:35:29 -07:00
skullY
b22220532f Rewrite mouse_keys to resolve #937 2017-07-03 10:58:57 -07:00
skullY
6b0503b20d update the faq 2017-07-03 01:37:05 -07:00
skullY
80cc23e912 fix the info boxes 2017-07-03 01:33:13 -07:00
skullY
d8e29b53fe Update a bunch of docs 2017-07-03 01:30:36 -07:00
Jack Humbert
fe47b36065 fix tag increment 2017-07-03 00:23:37 -04:00
Jack Humbert
ea134be36a fix up travis script 2017-07-02 23:38:20 -04:00
Jack Humbert
b7afa59c97 remove warning 2017-06-30 16:33:49 -04:00
Jack Humbert
753809eed7 adds debouncing to sixkeyboard 2017-06-30 16:33:49 -04:00
Jack Humbert
b476d65b9c Update keyboards' rules.mk/Makefiles (#1442)
this may change some of the keyboards' default settings - if you experience anything odd, please check back to this commit
2017-06-30 16:09:52 -04:00
skullY
ea8df568f2 reduce the TOC scope 2017-06-30 10:13:25 -07:00
skullY
486abde026 tweak page-toc settings 2017-06-30 10:06:40 -07:00
skullY
d6d14b6794 try page-toc in place of navigator 2017-06-30 09:50:12 -07:00
skullY
10b389f79c Adjust headings to make navigator happier 2017-06-30 09:42:38 -07:00
skullY
77ab0f16a0 use navigator instead of neo-navigator 2017-06-30 09:38:54 -07:00
skullY
dcd715ed4d Try neo-navigator in place of etoc 2017-06-30 09:33:03 -07:00
Jack Humbert
3e3c3e2b24 start glossary 2017-06-29 22:12:24 -04:00
Jack Humbert
9f643ba8bf clean-up github page 2017-06-29 21:23:20 -04:00
Jack Humbert
4c7e66c31c add file to summary 2017-06-29 19:37:49 -04:00
Jack Humbert
b139633f89 adds how to github 2017-06-29 19:35:33 -04:00
skullY
7da94ac51b Fixup the gitbook config 2017-06-29 17:14:01 -04:00
skullY
2e9e1eb03c remove extraneous config 2017-06-29 17:13:59 -04:00
skullY
a5bb83cbf3 remove the rest of the new plugins 2017-06-29 17:13:56 -04:00
skullY
780786596d remove most of the new plugins 2017-06-29 17:13:54 -04:00
Jack Humbert
ad91386497 remove dangling commas 2017-06-29 17:13:42 -04:00
skullY
ada64b8ec9 add missing comma 2017-06-29 11:49:47 -07:00
skullY
bf3007ec58 Add some gitboot plugins 2017-06-29 11:46:58 -07:00
skullY
409cb1af52 Polish up custom_quantum_functions 2017-06-29 10:46:23 -07:00
Jack Humbert
b75ad215c8 use default base names 2017-06-29 12:25:29 -04:00
Jack Humbert
391eae97e4 testing out new home 2017-06-29 12:13:44 -04:00
Jack Humbert
d59734d3b7 restructure summary 2017-06-29 10:35:09 -04:00
skullY
910d32c07e Flesh out the quantum_keycodes documentation 2017-06-28 23:52:08 -07:00
Jack Humbert
d5244c6cf4 restructure keycode docs 2017-06-29 00:15:07 -04:00
Jack Humbert
40d82906cb adds config options md 2017-06-28 21:20:23 -04:00
skullY
617923cd56 Rough draft for a document on understanding QMK 2017-06-28 20:22:37 -04:00
Jack Humbert
61ef949576 update some copyright headers 2017-06-28 12:58:58 -04:00
Jack Humbert
56634ca065 cleanup nyquist 2017-06-28 10:42:23 -04:00
Jack Humbert
663d3906ec cleanup orthodox 2017-06-28 10:42:23 -04:00
Jack Humbert
f5f7dfa064 cleanup lets_split 2017-06-28 10:42:23 -04:00
Jack Humbert
4ea247e673 create initial code of conduct 2017-06-27 21:36:44 -04:00
Jack Humbert
a52836e669 Merge pull request #1445 from qmk/dual_audio
Allow for duophony (C6 and B5) and B5 audio
2017-06-27 16:57:19 -04:00
Jack Humbert
7d28a417c0 don't let timer1 exist without b5 being enabled 2017-06-27 15:28:13 -04:00
Jack Humbert
ea7590c894 add new arguements, docs 2017-06-27 14:35:08 -04:00
Jack Humbert
9f5b4e1d7a Merge branch 'master' of https://github.com/qmk/qmk_firmware into dual_audio 2017-06-27 14:21:42 -04:00
Jack Humbert
b82604dada no glide 2017-06-27 14:20:53 -04:00
Jack Humbert
bfc73e90cf working duopholy 2017-06-27 14:20:44 -04:00
Jack Humbert
eabf530a0e b5 audio 2017-06-27 14:20:14 -04:00
Jack Humbert
4ba9438c3f Add eclipse to the _summary 2017-06-27 13:07:50 -04:00
Jack Humbert
b2979eba23 Adds parenthesis where they might be needed
Addresses #764
2017-06-27 12:55:18 -04:00
Erez Zukerman
98391605ca Merge pull request #1441 from lindhe/swedish
Create sv_SE Qwerty layout for ErgoDox EZ
2017-06-27 11:33:29 -04:00
Fabian Topfstedt
99b6e918ea fixed brackets 2017-06-27 16:20:17 +02:00
Andreas Lindhé
a25dbaad32 Create sv_SE Qwerty layout for ErgoDox
*NOTE:* it might still be desirable to set the software layout to sv_SE in your
OS.

Swedish (sv_SE) Qwerty layout for ErgoDox, based on the Default configuration

I have tried making this as close of a match I could between the [default
ErgoDox EZ configuration](https://ergodox-ez.com/pages/our-firmware) and a
standard Swedish Qwerty layout.

Notable differences from default:
=================================

* There are three special character buttons (acute accent, circumflex/tilde and
  apostrophe/asterisk) that don't have any buttons to map to naturally. I've put
  these at other places:

    * Acute accent (´) can be found in the lower left corner, conveniently
      placed to reach for making an é.

    * Apostrophe (') was put in the lower left corner, close to acute accent.

    * Circumflex (^) and asterisk (*) was placed in the lower right corner.

    * Tilde (~) and diaeresis (¨) I couldn't find a good place for, so I left
      those out. I could only get the buttons to produce a single one of the
      characters. How can I get it to work properly?

* The Alt button on right thumb was exchanged for AltGr (RAlt).

* I changed the backslash in the numpad (layer 1) for a minus. Thought it was
  more sensible.

* I didn't find a good place for the "<>|" button, so that one was left out.
  That is a problem that really needs to be resolved. Pipe can be found on layer
  one, however.
2017-06-27 15:17:21 +02:00
Fabian Topfstedt
9aa748df2a my layout 2017-06-27 10:36:00 +02:00
Fabian Topfstedt
fe3d75922b Merge https://github.com/qmk/qmk_firmware 2017-06-27 09:22:05 +02:00
Fabian Topfstedt
7d0a471051 removed wrong readme 2017-06-27 09:18:05 +02:00
Fabian Topfstedt
786eb4e73d my layout 2017-06-27 09:14:04 +02:00
Jack Humbert
61cdc9aaa4 Allow mod swapping for mod tap (MT) (#1202)
* allow mod swapping for mod tap

* quick include

* fix the mod swapping

* make changes consistent with action code

* fix bug

* re-enable no gui, etc

* fix binary comps

* solid logic
2017-06-26 18:54:01 -04:00
Fabian Topfstedt
4c71b329a2 clone smt layout 2017-06-26 22:33:14 +02:00
Jack Humbert
d1fb8d2296 Merge pull request #1431 from rai-suta/master
Bugg fix and add keymap for testing JIS_KEYCODE switch.
2017-06-25 21:31:10 -04:00
Ethan Madden
42e6ecc36b Whitefox LED control (#1432)
* use new grave_esc functionality

* Port LED control from Ergodox Infinity to Whitefox
2017-06-25 21:30:40 -04:00
Art Ortenburger
43579a80a7 add support for Orthodox keyboard (#1436)
* Added orthodox

* Modified readme

* Modified readme

* Modified readme

* Updated makefile

* Fixed keymap issues

* Modified serial communications to allow for over 8 columns

* Fixed sizeof command

* Fixed some typing issues

* Testing issue #1191 (n-column split i2c slave)

Based on initial OrthoDox (serial) config by @reddragond and others,
this attempts to add TWI (I2C) support.
Relevant: <https://github.com/qmk/qmk_firmware/issues/1191>

- per @ahtn recommendation, using memcpy for moving slave matrix
  into slave sending buffer
- slave buffer has been enlarged using sizeof(matrix_row_t)
- note: i2c.h now includes matrix.h
- note: matrix.c includes <string.h>

* Added i2c keymap - right col still not working

* orthodox: re-added i2c keymap, based on serial

* orthodox / issue #1191: trying 9-bit serial

- orthodox serial protocol now sends 9 bits per row, instead of 16.
  Technically it's using MATRIX_COLS, so it might work generically.
- ROW_MASK is #defined in serial.c to truncate the checksums to prevent
  overflows causing false errors. This macro should be renamed if it's
  kept.

* Revert "Fixed sizeof command"

This reverts commit f62a5b9939.

Changes had been made to the lets_split serial driver for testing which
mirrored the multi-byte-row changes made to support the orthodox. As the
lets_split does not require these changes, and new improvements had
been added to the orthodox port only, this commit reverts them.

Because the new code could potentially reduce latency over the serial
transport, it may be desirable to re-add in the future, by backporting
the current working orthodox code.

* orthodox: default serial keymap improvements

- formatting has been improved
- a few keys have been shifted, mainly in Raise and Lower layers,
  to be more like the default Planck layout
- Now available: F12, Home, End, PgUp, PgDn, Media-Next, Media-Play

Still To Do:
- duplicate for TWI
- Alt modifier
- GUI modifier

* orthodox: failed attempt at 16b/row TWI

- duplicated updated serial keymap for "i2c"
- removed string.h/memcpy, instead
- hardcoded copying of six bytes per update
- still doesn't work; master reports interconnect errors on txled

* orthodox: adjusted default keymap

- this is applied to both 'serial' and 'i2c' keymaps
- Alt and GUI have been added, as they were missing
- comma and period persist across more layers; Home/PgUp and End/PgDn
  have been moved slightly to accommodate

* orthodox: revert TWI support to minimum to debug

- disabled ssd1306 and hardware locking in build configuration
- increased TWI buffer from 0x10 to 0x20 bytes
- decreased TWI clock from 400000 to 100000
- removed hardcoded TWI multi-byte sending/receiving

An 'i2c' build of this was found to work on a rev1 Orthodox, although
slave-side col9 was understandably not working. When testing-time
permits, features will be gradually re-enabled towards getting the full
matrix supported over TWI.

* orthodox: TWI (i2c) is working, kludge for col9

The TWI interconnect ("i2c" in directories and build config) is now
working for the Orthodox, including the slave half's column #9.
This is intended as an interim solution, as it's a kludge, not a fix.

Rather than a working multi-byte implementation, the two col9 keys'
bits are packed-into and unpacked-from the two unused bits in row1.
Furthermore, the TWI clock constant has been reduced to 100000 from
400000, as testing revealed the higher value just didn't work.
Testing also found that (with this kludge) increasing the TWI buffer
was not necessary.

This commit leaves many commented-out lines in matrix.c from previous
testing, which will be removed in a future commit once the
interconnects' multi-byte problems have been debugged more thoroughly.

* orthodox: updated readme.md

The readme for the Orthodox now includes a description of the keyboard,
allusions to its author and availability, a linked photo, and links to
the evolving build guide and the current keymap on KLE.
This update has been prepared with /u/Deductivemonkee's assistance.
2017-06-25 21:30:07 -04:00
Jack Humbert
1a4a66fd01 updates olkb readmes #1362 2017-06-25 12:40:25 -04:00
rai-suta
3a2ae6a213 Add a keymap for testing JIS_KEYCODE. 2017-06-26 00:37:46 +09:00
rai-suta
e740520b3f Fix bug. 2017-06-26 00:24:32 +09:00
Jack Humbert
169ede0715 Merge pull request #1427 from blakedietz/master
Add keymaps for ergodox ez, hhkb and jd45 under user blakedietz
2017-06-25 10:29:24 -04:00
Jack Humbert
de833659ae Merge pull request #1429 from fredizzimo/fixes_for_emulator
Minor fixes to support the emulator
2017-06-25 10:29:00 -04:00
Fred Sundvik
1e6a3f9e17 Change M_2_PI to 2 * PI as it should be 2017-06-25 12:55:18 +03:00
Blake Dietz
daf16535f1 Add keymaps for ergodox ez, hhkb and jd45 under user blakedietz 2017-06-24 22:46:07 -06:00
skullY
62c77e7dbf Remove the DIODE_DIRECTION defines from lets_split so we can close #1067 2017-06-24 17:08:43 -07:00
skullY
582a6ac75c Fix #1135 by changing the default to at90usb1286 2017-06-24 15:28:13 -07:00
Jack Humbert
901a92a2fd Update _summary.md 2017-06-24 13:11:25 -04:00
Jack Humbert
f175f5df95 Merge pull request #1425 from kynikos/patch-1
Fix typo
2017-06-24 11:39:15 -04:00
Jack Humbert
6c81656e8e Merge pull request #1426 from rai-suta/master
Add JIS_KEYCODE layout for send_string()
2017-06-24 11:38:38 -04:00
rai-suta
5dae013ff8 Add JIS_KEYCODE layout for send_string() 2017-06-24 18:29:37 +09:00
Dario Giovannetti
30ab4dd14f Fix typo 2017-06-24 16:32:10 +08:00
Jack Humbert
c208a6d4e5 update docs for isp 2017-06-23 23:09:14 -04:00
Jack Humbert
b9987d65f9 Merge branch 'master' of https://github.com/qmk/qmk_firmware 2017-06-23 23:07:01 -04:00
Jack Humbert
2c65a17752 add other mcu bootloaders 2017-06-23 23:05:42 -04:00
Jack Humbert
dfa6417ae3 Merge pull request #1422 from nstickney/master
update ErgoDox "Familiar" layout
2017-06-23 21:48:17 -04:00
Jack Humbert
918aea5b47 Update _summary.md 2017-06-23 21:29:35 -04:00
Jack Humbert
b4f2f44a6f Create isp_flashing_guide.md 2017-06-23 21:29:04 -04:00
Jack Humbert
1524c2cb16 Merge pull request #1418 from npoirey/master
Frenchdev v1
2017-06-23 18:05:33 -04:00
npoirey
8ad12b1eb7 Updated frenchdev readme 2017-06-23 23:59:30 +02:00
Fred Sundvik
dcf9fa1aaa Update the ugfx submodule 2017-06-24 00:37:27 +03:00
Fred Sundvik
f912c74fe7 Change inline to static inline 2017-06-24 00:34:16 +03:00
Fred Sundvik
574ca7f59c Delete emulator drivers 2017-06-24 00:34:16 +03:00
Fred Sundvik
da19852964 Add function for getting the LCD backlight brightness 2017-06-24 00:34:16 +03:00
Fred Sundvik
ff49259a1a Include config.h from visualizer.h 2017-06-24 00:34:16 +03:00
Fred Sundvik
b0094e631e Change remote url of uGFX to relative path 2017-06-24 00:34:16 +03:00
Fred Sundvik
6c9b4743f7 Include config.h before visualizer.h 2017-06-24 00:33:23 +03:00
Stick
e43e58aad1 updated README.md 2017-06-23 16:28:06 -05:00
Stick
f4e4d6f8d0 Merge remote-tracking branch 'upstream/master' 2017-06-23 16:02:44 -05:00
Stick
37987837b1 added media keys; many bug fixes 2017-06-23 16:02:01 -05:00
npoirey
a3f151b8e9 Refactoring frenchdev 2017-06-23 21:35:33 +02:00
npoirey
de80e2c756 Moved frenchdev to handwired 2017-06-23 21:25:46 +02:00
Jack Humbert
a1ce43781a Merge pull request #1421 from 333fred/update-layout
Update my layout
2017-06-23 14:43:51 -04:00
Jack Humbert
91f3a73a28 Merge pull request #1419 from Wraul/phantom-improvements
Phantom improvements
2017-06-23 14:43:32 -04:00
Fredric Silberberg
6794495336 Doc updates 2017-06-23 11:36:14 -07:00
Fredric Silberberg
2b26abf9a9 Copy/paste additions. 2017-06-23 11:24:55 -07:00
Fredric Silberberg
946f4854c5 Added backlight control keys 2017-06-23 11:07:28 -07:00
Fredric Silberberg
a2fbd671ad Added a few more VS macros and another ctrl 2017-06-23 11:07:28 -07:00
Fredric Silberberg
7389beb18c Small keymap layout updates 2017-06-23 11:07:28 -07:00
Mathias Andersson
dd9b00543b Update Phantom readme
Added basic description of the keyboard and some build and configuration
instructions.

Also moved the RGB underlight modification instructions to the readme.
2017-06-23 12:07:18 +02:00
Mathias Andersson
7ca335cf5b Adjust Phantom for standard PCB
The previous default configuration and keymap was made for a Phantom
modified with RGB underlight.

This commit makes the default more in line with the "official"
configurations provided by the PCB.

The previous default have been moved to a separate keymap named
`rgbmod`. It has also been updated to better match the template keymap.
2017-06-23 12:07:18 +02:00
Mathias Andersson
3522496f24 Update Phantom config to better match template 2017-06-23 12:07:18 +02:00
Mathias Andersson
67b8bf8f70 Move Phantom LED handling to phantom.c
This is more in line with the structure provided by the keyboard
template.
2017-06-23 12:07:18 +02:00
Stick
98373f2fc1 added tapdance locking 2017-06-22 22:22:43 -05:00
npoirey
a012c24225 Removed image from git and added references to imgur album for Frenchdev keyboard. 2017-06-22 22:19:50 +02:00
Stick
fa96d64f37 Merge remote-tracking branch 'upstream/master' 2017-06-22 13:06:30 -05:00
Jack Humbert
2b98ec67f3 Update _summary.md 2017-06-22 13:23:08 -04:00
Jack Humbert
7b3c9cc8de Create adding_a_keyboard_to_qmk.md 2017-06-22 13:22:21 -04:00
Jack Humbert
f32c68ee65 Update porting_your_keyboard_to_qmk.md 2017-06-22 13:21:43 -04:00
Jack Humbert
c21c2cc92b Merge pull request #1416 from geofflane/feature/s65_x_std_grv_esc
Use the new Quantum KC_GESC instead of custom code
2017-06-22 12:38:45 -04:00
Erez Zukerman
fe9556104b Merge pull request #1331 from ariasuni/master
Fix undefined reference errors with avr-gcc 7.1
2017-06-22 08:40:59 -04:00
npoirey
0fb835c54c Fix warning in frenchdev 2017-06-22 10:47:44 +02:00
npoirey
23b0fc20e3 Frenchdev v1 2017-06-22 10:34:23 +02:00
Jack Humbert
9d22a1a6d8 add group edge via travis updates 2017-06-21 11:23:33 -04:00
Geoff Lane
8705ac408d Use the new Quantum KC_GESC instead of custom code 2017-06-21 09:37:20 -04:00
Jack Humbert
23df3016e8 Merge pull request #1405 from cquiroz/oneshot-mods-timeout
Oneshot mods timeout
2017-06-20 11:40:10 -04:00
Jack Humbert
9019d65b3c Merge pull request #1414 from dvdizon/kbd75
KBD75 - Initial KBD75 port from qmkeyboard.cn source files
2017-06-20 09:19:48 -04:00
Jack Humbert
2c171b3e5f Merge pull request #1413 from lasko/master
This is a complete redo of my keymap. It includes several
2017-06-20 09:18:02 -04:00
Jack Humbert
33a271b8e3 Merge pull request #1412 from nall/master
Fixed offset for knight rgb mode
2017-06-20 09:17:36 -04:00
David Dizon
e71b3c6572 KBD75 - Initial KBD75 port from qmkeyboard.cn source files 2017-06-19 22:59:17 -07:00
Jon Nall
f169c715eb Added custom keymap and enabled Space Cadet 2017-06-19 22:44:42 -07:00
Brandon Height
2ffcf47793 This is a complete redo of my keymap. It includes several
layers including qwerty, colemak, navigation, and gui layers.

I also was playing around with dancing tap keys.
2017-06-19 20:12:30 -07:00
Jon Nall
7ce056cad7 Fixed offset for knight rgb mode 2017-06-19 19:51:37 -07:00
Jack Humbert
3e7bb19612 Merge pull request #1410 from belak/tv44-core
tv44: Add core layout based on the Core 47
2017-06-19 14:05:02 -04:00
Jack Humbert
e951317acb Merge pull request #1409 from fredizzimo/full_unit_test
Take first baby steps towards testing the whole QMK
2017-06-19 14:04:19 -04:00
Kaleb Elwert
f71c990215 tv44: Add core layout based on the Core 47 2017-06-18 22:44:52 -07:00
Fred Sundvik
1aa0be4cf1 Fix serial_link vpath problem 2017-06-19 00:46:53 +03:00
Fred Sundvik
0f163c0028 Add todo to timer.c 2017-06-19 00:24:32 +03:00
Fred Sundvik
fb9b8dadb9 Add a couple of todos to keyboard_report_util.cpp
Also print the modifier state
2017-06-19 00:22:12 +03:00
Fred Sundvik
43d8fa5bf1 More natural interface for setting keyboard leds 2017-06-19 00:19:09 +03:00
Fred Sundvik
36f820be7e Add a test fixture
It only initializes QMK once, and clears the matrix after each test.
2017-06-18 23:49:38 +03:00
Fred Sundvik
e85b185796 Test two keys pressed at once 2017-06-18 21:22:22 +03:00
Fred Sundvik
6a76192fa4 Fix problems with undefined inlines in debug mode 2017-06-18 21:22:22 +03:00
Fred Sundvik
bd1729d5be Actually test for correct key presses 2017-06-18 21:22:22 +03:00
Fred Sundvik
fb95d86b39 Move functions for adding keys from to reports to report.h 2017-06-18 21:22:22 +03:00
Fred Sundvik
017458a07b Move functionality from action_util to report
The functions also takes report_kebyoard_t parameters, so that they can
be used elsewhere.
2017-06-18 21:22:22 +03:00
Fred Sundvik
c38589d861 Fix the order of init and driver creation 2017-06-18 21:22:22 +03:00
Fred Sundvik
3bb0586acc Add a couple of basic tests and implement driver mock 2017-06-18 21:22:22 +03:00
Fred Sundvik
617578399c Add keymap 2017-06-18 21:22:22 +03:00
Fred Sundvik
c588fca06c Empty bootloader_jump 2017-06-18 21:22:22 +03:00
Fred Sundvik
a72e8f0865 Dummy test matrix implementation 2017-06-18 21:22:22 +03:00
Fred Sundvik
1c0fe956ac Split common.mk into common.mk and common_features.mk
To support including keyboard/keymap specific rules before it
2017-06-18 21:22:22 +03:00
Fred Sundvik
d29906cb64 Emulate eeprom 2017-06-18 21:10:42 +03:00
Fred Sundvik
f646f00b93 Rename native to test 2017-06-18 21:10:42 +03:00
Fred Sundvik
83509adc3a Add empty timer functions 2017-06-18 21:10:42 +03:00
Fred Sundvik
26eb97a4a8 Empty implementation of bootloader, suspend and timer 2017-06-18 21:10:42 +03:00
Fred Sundvik
fdfd48e8c8 Fix program mem functionality 2017-06-18 21:10:42 +03:00
Fred Sundvik
efaf0e830b Empty implementation of wait 2017-06-18 21:10:42 +03:00
Fred Sundvik
585d646128 Define MATRIX_COLS and MATRIX_ROWS 2017-06-18 21:10:42 +03:00
Fred Sundvik
8674f9c466 Make sure config.h is included 2017-06-18 21:10:42 +03:00
Fred Sundvik
7424261dae Try to build tmk_common 2017-06-18 21:10:42 +03:00
Fred Sundvik
30f22d450d Add basic infrastrucure for building full tests 2017-06-18 21:08:23 +03:00
Jack Humbert
621ae42a6c revert edit 2017-06-18 13:28:34 -04:00
Jack Humbert
4217cb5bbc Update key_functions.md 2017-06-18 13:26:20 -04:00
Jack Humbert
517f75d893 Merge pull request #1349 from jpetermans/infinity60
Infinity60 backlight support
2017-06-18 12:38:38 -04:00
Jack Humbert
dd73e14c9b Merge pull request #1407 from take-a-CHANCE/master
Adding a planck keymap
2017-06-18 12:35:08 -04:00
Jack Humbert
66e2d6a063 Merge pull request #1406 from jprMesh/atreus52
Atreus52
2017-06-18 12:34:33 -04:00
Jack Humbert
f2e1609801 remove hardware files, move arrow pad 2017-06-18 12:33:14 -04:00
Carlos Quiroz
74d752b531 Remove noisy debug line 2017-06-18 12:17:51 -04:00
Carlos Quiroz
3ab0f4d9e5 Deactivate oneshot mods once timedout 2017-06-18 12:17:51 -04:00
Jack Humbert
5682254f71 Merge pull request #1408 from fredizzimo/fix_build_improve_travis
Fix the two failing keymaps and improve the travis build script
2017-06-18 12:13:56 -04:00
Fred Sundvik
45d437ca04 Make only modified keymaps 2017-06-18 18:30:59 +03:00
Jack Humbert
51a86b85f3 Merge pull request #1361 from fredizzimo/ergodox_infinity_backlight
Add Ergodox Infinity backlight support
2017-06-18 10:15:02 -04:00
Fred Sundvik
2fd670bec0 Add missing include to Ergodox Belak keymap 2017-06-18 17:07:20 +03:00
Fred Sundvik
6ba22b5f5e Don't define RGBLED_NUM in let-split khord keymap
It's already defined correctly by the parent keyboard project, and was
causing problems for rev1, where the pin is different.
2017-06-18 17:03:07 +03:00
Fred Sundvik
a15510b57b Always build everything on master 2017-06-18 17:03:05 +03:00
Fred Sundvik
5acc0e54aa Make all subprojects when a keymap is modified 2017-06-18 16:44:51 +03:00
root
1a8042ae91 Added personal keymap with underglow, right shift, numpad, and bright hidden behind raise/lower 2017-06-17 23:11:37 -04:00
Jonas Rogers
a284245f77 Atreus52- moved parens and braces to left hand. 2017-06-17 22:51:50 -04:00
Jonas Rogers
85d688e92c Atreus52- made dvorak layer default. 2017-06-17 21:21:46 -04:00
Jonas Rogers
4c2f04986a Atreus52- added software reset key. 2017-06-17 21:21:38 -04:00
Jonas
3007d01718 Atreus52- Modified BDO map. 2017-06-17 21:21:30 -04:00
Jonas
3b9fabb9aa Atreus52- BDO keymap. 2017-06-17 21:21:21 -04:00
jprmesh
a8992a2cfe Atreus52- Added Nav layer keymap. 2017-06-17 21:20:16 -04:00
Jonas
7837d96b6e Atreus52- Reworked keymap to be more 40% like. 2017-06-17 21:20:09 -04:00
jprmesh
56026dd4df Atreus52- Swapped thumb keys. 2017-06-17 21:19:59 -04:00
jprmesh
1552fd6ae1 Atreus52- Last changes to config to get it workin. 2017-06-17 21:19:48 -04:00
jprmesh
133908da74 Atreus52- Some keymap changes. 2017-06-17 21:19:45 -04:00
jprMesh
3c2c489768 Atreus52- Fixed spacing and changed to KC_KEYMAP macro. 2017-06-17 21:19:36 -04:00
jprmesh
b236e51b69 Atreus52- finished initial keymap layout. 2017-06-17 21:19:29 -04:00
jprmesh
17e81baab3 Atreus52- Fixed config. 2017-06-17 21:19:18 -04:00
jprmesh
f9eb11a674 Atreus52- Fixed Qwerty Dvorak switch 2017-06-17 21:18:58 -04:00
jprmesh
bb99d7117c Atreus52- Changed to KEYMAP macro format. 2017-06-17 21:18:40 -04:00
jprMesh
a5ba30338f Atreus52- Initial Atreus52 file creation. 2017-06-17 21:18:04 -04:00
Jack Humbert
7feadbd66d Merge pull request #1401 from geofflane/s65_x_fixes3
S65-X Fixes Part 3
2017-06-17 20:14:49 -04:00
Jack Humbert
206233d98c Merge pull request #1402 from belak/tv44-belak-tap-magic
tv44: Rearrange belak keymap and add some tap dance magic
2017-06-17 20:14:23 -04:00
Jack Humbert
82372d36af Merge pull request #1403 from Wraul/kmac-fixes
KMAC fixes
2017-06-17 20:14:05 -04:00
Mathias Andersson
df26ede131 Unify KMAC code indentation
It's a little unclear what the style guidelines are for the QMK project.
But I figured that I should at least keep the indentation consistent
within the KMAC part.
2017-06-17 20:06:28 +02:00
Mathias Andersson
67e150a08a Enable backlight support by default for KMAC 2017-06-17 20:06:28 +02:00
Mathias Andersson
ba945c5e77 Correct layer switching in KMAC keymap readmes 2017-06-17 20:06:28 +02:00
Mathias Andersson
be002137f9 Fix some KMAC code formating 2017-06-17 20:06:28 +02:00
Mathias Andersson
a621c7f88b Don't include the console by default on the KMAC 2017-06-17 20:06:28 +02:00
Kaleb Elwert
722adce095 tv44: Rearrange belak keymap and add some tap dance magic 2017-06-16 17:08:00 -07:00
jamesofarrell
98316ef017 Added Grave Escape (#1391)
* added QK_GRAVE_ESC and KC_GESC

* fixed name

* Fixed keycode emnu

* Removed layer check, added left and right GUI mod detection for OSX GUI+~
2017-06-16 14:56:50 -07:00
Jack Humbert
ff2b01da49 Merge pull request #1400 from belak/belak-ergodox-theme
ergodox: initial addition of belak theme
2017-06-16 17:01:54 -04:00
Jack Humbert
6549e169f8 Merge pull request #1398 from belak/tv44-keymap-changes
TV44 keymap changes
2017-06-16 17:00:36 -04:00
Kaleb Elwert
e9a4a5e961 tv44: add belak keymap 2017-06-16 13:11:40 -07:00
Kaleb Elwert
ef4abfeb31 ergodox: initial addition of belak theme
Imported from external repo https://github.com/belak/ergodox-layout at commit
233008ad8c46a85cb118fca0be093c3e751075b0
2017-06-16 10:57:58 -07:00
Geoff Lane
b4802d7567 Fix home and end to be on <> 2017-06-16 11:57:43 -04:00
Geoff Lane
d2a11b523b LED control on the BL layer 2017-06-15 21:57:50 -04:00
Fred Sundvik
086aad0d7e Make sure backlight is in the range 0-100 2017-06-16 02:06:30 +03:00
Fred Sundvik
ec88a0b3cc Make sure that the backlight level is within the right range 2017-06-16 02:05:38 +03:00
Fred Sundvik
7d5606085f Correctly calculate backlight level 2017-06-16 02:05:15 +03:00
Fred Sundvik
19f0285a76 Fix typo in BACKLIGHT_ENABLE 2017-06-15 23:21:01 +03:00
Kaleb Elwert
29108d1477 tv44: update tong92 keymap to use KEYMAP macro 2017-06-15 12:48:59 -07:00
Kaleb Elwert
4cefb45a2d tv44: update xyverz keymap to use KEYMAP macro 2017-06-15 12:48:44 -07:00
Kaleb Elwert
f894103997 tv44: update default keymap to use KEYMAP macro 2017-06-15 12:47:57 -07:00
Kaleb Elwert
b56a9a9899 tv44: update jeebak keymap to use new macros and remove custom ones 2017-06-15 12:46:25 -07:00
Kaleb Elwert
e32e7dc0f5 tv44: update smt keymap to use new macros and remove custom ones 2017-06-15 12:45:53 -07:00
Kaleb Elwert
44ce179192 tv44: Fix up the KEYMAP macro
Previously KEYMAP referred to the KEYMAP_ARROW layout and had 45 keys. It makes
more sense for the default keymap to be the 44 key layout, as is implied by the
name.

Additionally keymaps for all other known layouts have been added:

KEYMAP - base layout
KEYMAP_ARROW - additional key in bottom right
KEYMAP_COMMAND - additional key in bottom left
KEYMAP_ARROW_COMMAND - combination of KEYMAP_ARROW and KEYMAP_COMMAND
2017-06-15 12:42:23 -07:00
Jack Humbert
d9ffd77ee7 Merge pull request #1397 from geofflane/s65x_fixes
S65x fixes
2017-06-15 15:16:52 -04:00
Geoff Lane
e553bb3af4 LED init works with just pin declared 2017-06-15 13:42:14 -04:00
Geoff Lane
b107d64d69 Use standard QMK key codes for RGB control 2017-06-15 13:12:36 -04:00
Geoff Lane
c81be932d2 Fix left shift in ansi layout 2017-06-15 13:12:36 -04:00
Geoff Lane
899584187f Fix esc key 2017-06-15 13:12:36 -04:00
Jack Humbert
6a75a7d672 Merge pull request #1394 from Khord/master
Adding custom keymap for Let's Split and updates to custom Planck keymap
2017-06-15 12:34:18 -04:00
Jack Humbert
be9fd4b4fa Merge pull request #1396 from shieldsd/master
Minor updates to planck/keymaps/dshields
2017-06-15 12:33:44 -04:00
Daniel Shields
cc158d90ae Minor updates to planck/keymaps/dshields
* tweaks to tap dance keys
* tidy up code
* save a few bytes
2017-06-15 09:41:59 +01:00
Dylan Khor
5c11ba74d8 tap dance and hold changes to make planck match lets split 2017-06-15 03:34:08 -04:00
Dylan Khor
a44ba492ea minor fixes 2017-06-15 03:26:04 -04:00
Dylan Khor
22f985eba7 Add custom let's split keymap 2017-06-15 07:15:27 +00:00
Martin Gondermann
49cfdb544d Added HyperTab and Ctrl/Fn as well as Space cadet parens (#1390)
* Added HyperTab and Ctrl/Escape as well as Space cadet parens to magicmonty keymap

* Replaced CTL_ESC With FN_ESC
2017-06-14 07:20:43 -07:00
fredizzimo
3aa620c1ac Update uGFX and Chibios submodules + fixes (#1363)
* Make submodules point to qmk

* Update uGFX to 2.7

* Use ugfx with custom fixes

* Fix the ChibiOs submodule commit hash

To match the hashes in the mabl/ChibiOS and therefore QMK repository.
2017-06-13 21:13:39 -07:00
Jack Humbert
c2c9cb2505 Merge pull request #1392 from jetpacktuxedo/whitefox
Added whitefox keymap
2017-06-13 22:21:52 -04:00
Ethan Madden
a7942c4f48 Added whitefox keymap 2017-06-13 16:01:28 -07:00
Jack Humbert
3d5d3e1b0c Merge pull request #1387 from antelaurijssen/master
Submitting my own custom layout for S60X keyboard
2017-06-12 20:47:35 -04:00
Ante Laurijssen
f37daa5343 Properly formatted unordered lists in readme.md 2017-06-12 20:24:56 -04:00
Ante Laurijssen
3ee346c07b Mods to readme.md 2017-06-12 20:20:28 -04:00
Ante Laurijssen
78a4cfd453 Modifications to readme.md and deletion of keyboard layout images 2017-06-12 20:13:17 -04:00
Jack Humbert
6b5d67fcc6 Merge pull request #1389 from geofflane/keyboard_s65_x_2
Keyboard S65-X Support #2
2017-06-12 17:08:27 -04:00
Jack Humbert
d1854e0e04 Merge pull request #1388 from bigbigtor/fix_spanish
Fix spanish keymap
2017-06-12 17:06:11 -04:00
Geoff Lane
0440c0f072 Add ISO layout for S65-X 2017-06-12 16:57:01 -04:00
Geoff Lane
568c662c14 Fix media controls in default layout 2017-06-12 16:19:57 -04:00
Geoff Lane
96b0382fb4 Fix backslash and some of the docs 2017-06-12 16:16:42 -04:00
Víctor
21fa16651c Rename ES_RCRB to ES_RCBR for consistency reasons (left curly bracket is defined as ES_LCBR) 2017-06-12 21:44:40 +02:00
Víctor
2c404cca12 Fix keymap definitions referencing inexistent macros 2017-06-12 21:43:34 +02:00
Martin Gondermann
a5b5279da9 Add MIDI layer to magicmonty keymap (#1386)
* Add MIDI layer

* Respect brightness level on layer signalling

* Add hotkey in control layer for signalling state

* Update layout.png

* Remove image and replace it with imgur link
2017-06-12 08:48:01 -07:00
Ante Laurijssen
54d48140cd -MIDI Chords now using process_record_user instead of F(n) keys
-Morse Code shift keys implemented
2017-06-11 16:00:40 -04:00
Luiz Ribeiro
60153e7bbc Always send 3 * RGBLED_NUM bytes through I2C on ps2avrGB
This wasn't going to work on boards with a different number of LEDs,
since I was always sending 48 bytes.
2017-06-11 12:30:48 -04:00
Luiz Ribeiro
945f2f5916 Fixed rgblight_types.h 2017-06-11 12:30:48 -04:00
Luiz Ribeiro
d4cd5dda5c Added a build flag for using a custom rgblight driver 2017-06-11 12:30:48 -04:00
Luiz Ribeiro
964d7060e1 Simplified ps2avrGB rgblight_set logic a bit 2017-06-11 12:30:48 -04:00
Luiz Ribeiro
6037cede2c rgblight support for ps2avrGB 2017-06-11 12:30:48 -04:00
Stick
4b50ab029d Revert "ugly workaround for ErgoDoxEZ LED bugs: turn 'em all off"
This reverts commit f397402e10.
2017-06-08 08:59:33 -05:00
Stick
5a70cb30ee trying to fix LEDs 2017-06-08 08:59:30 -05:00
Stick
3af2bca1fc Merge remote-tracking branch 'upstream/master' 2017-06-08 08:52:32 -05:00
Ante Laurijssen
7146dfea6e Created special shift keys for Morse layer that change variable value, enabling to send “shifted” special morse code characters. 2017-06-07 23:57:14 -04:00
Ante Laurijssen
8f80f35186 Working on Morse Code Macros 2017-06-07 22:01:28 -04:00
Stick
035f7bb1bf Merge remote-tracking branch 'upstream/master' 2017-06-07 15:55:52 -05:00
Ante Laurijssen
1b8ed53f21 Added a couple of custom keys and updated layer image 2017-06-05 22:17:35 -04:00
Fred Sundvik
b51a0db6ed Add backlight support to the default Ergodox Infinity animations 2017-06-03 22:04:10 +03:00
Fred Sundvik
2a7f9a7e46 Add backlight control to the IS31FL3731 driver 2017-06-03 21:30:52 +03:00
Fred Sundvik
effffa33a5 Backlight level handling for the visualizer 2017-06-03 21:14:26 +03:00
Fred Sundvik
0f9bfafb9e Turn off LED matrix by default 2017-06-03 15:31:02 +03:00
Fred Sundvik
a916f4e8b8 Let BACKLIGHT_ENABLE control the Infinity LEDs 2017-06-03 14:34:50 +03:00
Ante Laurijssen
9cfa37bb3d Improvements and corrections to morse code macros layer 2017-06-02 22:57:57 -04:00
Stick
f397402e10 ugly workaround for ErgoDoxEZ LED bugs: turn 'em all off 2017-06-02 20:02:02 -05:00
Stick
4cf17210b6 moved alt out from under space 2017-06-02 19:51:29 -05:00
Stick
4ba9917f82 Merge remote-tracking branch 'upstream/master' 2017-06-02 19:50:54 -05:00
jpetermans
9af272e4bb Update lock led processing and remove debug msgs 2017-05-30 21:52:44 -07:00
Ante Laurijssen
fbaf964a85 Improvements to Midi and keymap 2017-05-30 21:27:00 -04:00
Ante Laurijssen
06684555d2 Another typo... 2017-05-29 22:16:17 -04:00
Ante Laurijssen
cd4ccee703 Corrected typo in readme.md 2017-05-29 22:13:52 -04:00
Ante Laurijssen
1ef911d150 Added a few images 2017-05-29 22:11:48 -04:00
Ante Laurijssen
4c48c29c0e Added MIDI_CHORD layer and other little fixes.
Updated readme.md
2017-05-29 22:09:06 -04:00
Ante Laurijssen
a584675735 Midi Chord Function is now working! But some chords lag... 2017-05-28 08:14:17 -04:00
ariasuni
e87691fa5d Fix undefined reference errors with avr-gcc 7.1 2017-05-27 00:25:35 +02:00
Ante Laurijssen
6b1f707ce9 Still working on these MIDI CHORDS! 2017-05-26 09:54:40 -04:00
Ante Laurijssen
b4b06f81b5 More changes to keymap.c to try and get midi chords to work 2017-05-25 23:03:33 -04:00
jpetermans
ac97870801 reduce recurring writes to lock leds 2017-05-25 13:00:21 -07:00
Ante Laurijssen
1a0dfbbc96 More updates to keymap.c - still errors with midi when trying to compile 2017-05-24 21:15:41 -04:00
jpetermans
083267680d Restore deleted MEMO.txt from master 2017-05-24 12:26:56 -07:00
jpetermans
e6c9b07e1c Merge branch 'user_led_configuration' into infinity60
Conflicts:
	keyboards/infinity60/keymaps/jpetermans/keymap.c
2017-05-24 12:07:18 -07:00
jpetermans
2dcd6c38fa Merge remote-tracking branch 'upstream/master' into infinity60 2017-05-24 11:51:20 -07:00
jpetermans
f54b4771eb keymap example update and tweak to set_led_bit function 2017-05-24 11:20:50 -07:00
Ante Laurijssen
4d783d0e69 More work on my keymap.c and added .png images of my different layers. 2017-05-22 23:30:25 -04:00
Ante Laurijssen
06433eb1a0 More work on keymap.c and config.h 2017-05-21 22:37:20 -04:00
Ante Laurijssen
34a1bf9e20 Merge https://github.com/qmk/qmk_firmware
Update my qmk_firmware fork
2017-05-21 08:44:52 -04:00
Ante Laurijssen
b766407cbe Continuing work on keymap.c 2017-05-21 08:40:42 -04:00
Ante Laurijssen
c686793b59 Merge https://github.com/qmk/qmk_firmware
Update from QMK main
2017-05-17 23:06:57 -04:00
Ante Laurijssen
26c6f6a85c Added Space Cadet Rollover Disable to config.h 2017-05-16 22:08:45 -04:00
Ante Laurijssen
814b570ba1 Working on keymap.c file... 2017-05-15 22:56:33 -04:00
Ante Laurijssen
ee0b34feaf Started working on custom midi chord function 2017-05-14 20:07:35 -04:00
Ante Laurijssen
f006ebebbd Initial push of my keymap 2017-05-14 16:07:44 -04:00
jpetermans
164a6c994b reorder mailbox msg data; formatting 2017-05-10 15:53:59 -07:00
jpetermans
a144968807 remove breath functions from keymap 2017-05-08 16:38:44 -07:00
jpetermans
16774333ad last readme fix 2017-05-08 16:28:04 -07:00
jpetermans
5fc5661147 third readme fix attempt 2017-05-08 16:19:11 -07:00
jpetermans
d1ff2bb9db readme fix 2017-05-08 16:17:40 -07:00
jpetermans
821f72eae9 documentation cleanup 2017-05-08 16:15:20 -07:00
jpetermans
b5675e2025 Merge branch 'user_led_configuration' of https://github.com/jpetermans/qmk_firmware into user_led_configuration
Conflicts:
	keyboards/infinity60/led_controller.c
	keyboards/infinity60/led_controller.h
2017-05-08 15:42:27 -07:00
jpetermans
967cf0f6d4 Merge remote-tracking branch 'upstream/master' into user_led_configuration 2017-05-08 15:24:50 -07:00
jpetermans
5df74f3ba7 updated keymap for new led functions 2017-05-08 15:13:02 -07:00
jpetermans
f1d81d2cc6 minor change on lock leds 2017-05-08 14:55:57 -07:00
jpetermans
2c5b551970 CLeaned out debug code 2017-05-08 14:35:08 -07:00
jpetermans
52f671c23e small code cleanup 2017-05-08 11:57:40 -07:00
jpetermans
b27fb216ef Testing initial blink support 2017-04-30 16:27:46 -07:00
jpetermans
ff6beeb7a3 simplified lock led function 2017-04-29 09:22:40 -07:00
jpetermans
b3945c103c Simplified processing in led_controller; more control at user level. 2017-04-26 23:12:25 -07:00
Stick
8665ed3efc small changes 2017-04-18 09:46:07 -05:00
jpetermans
046f1baf30 more stable lock led process, added debugging code 2017-04-15 14:37:55 -07:00
jpetermans
c0ec1756af Added backlight step functionality 2017-04-14 18:20:12 -07:00
jpetermans
ec1e936dfb fixed bit shift in led_set_bit 2017-04-13 17:51:37 -07:00
jpetermans
1b1adf35bb more flexible led processing functions, all and on/off/toggle
functioning
2017-04-13 17:15:24 -07:00
jpetermans
15635817b5 Updated lock led init 2017-04-12 23:32:38 -07:00
jpetermans
0881f2dbfa fixed write_led_page col shift, added option for lock led display 2017-04-11 23:33:48 -07:00
jpetermans
d8e9c183be led init code missing pwm writes for Frame 1 2017-04-10 22:23:45 -07:00
jpetermans
dda858c437 revised led controller code to allow for more options
unable to switch picture displays
2017-04-10 17:36:47 -07:00
jpetermans
a2ac883779 add ability to toggle individual led by address 2017-04-07 15:58:17 -07:00
jpetermans
af13e9a12d Moved led page arrays to keymap.c and added keymap header to define
individual led addresses
2017-04-06 16:27:51 -07:00
jpetermans
d89114400c Small keymap tweak and clean up. 2017-04-06 15:22:13 -07:00
jpetermans
56be300757 Add Kinetis_i2c settings consistent with whitefox mcuconf 2017-04-06 14:23:14 -07:00
jpetermans
91f2e9fb5e match hal settings to whitefox, fix make rules 2017-04-06 13:53:18 -07:00
jpetermans
02ef122cbb Add led_controller.h to user keymap.c 2017-04-06 13:51:33 -07:00
jpetermans
f66361d678 add led init function to header for use in keymap.c 2017-04-06 13:48:31 -07:00
jpetermans
da4c2d2e3e Adjust led_controller.c matrix sttings and init function 2017-04-06 13:46:54 -07:00
jpetermans
b73c935d36 Added tmk whitefox led files 2017-04-06 13:45:15 -07:00
jpetermans
dfb0a512a0 Added personal configs and keymap to infinity60/keymaps 2017-04-06 13:43:22 -07:00
4280 changed files with 471743 additions and 114468 deletions

18
.editorconfig Normal file
View File

@@ -0,0 +1,18 @@
# EditorConfig helps developers define and maintain consistent coding styles between different editors and IDEs
# editorconfig.org
root = true
[*]
indent_style = space
indent_size = 2
# We recommend you to keep these unchanged
end_of_line = lf
charset = utf-8
trim_trailing_whitespace = true
insert_final_newline = true
[*.md]
trim_trailing_whitespace = false
indent_size = 4

30
.gitignore vendored
View File

@@ -4,6 +4,7 @@
*.eep
*.elf
*.hex
*.qmk
!util/bootloader.hex
!quantum/tools/eeprom_reset.hex
*.log
@@ -21,8 +22,20 @@ build/
quantum/version.h
.idea/
CMakeLists.txt
cmake-build-debug
.DS_STORE
/util/wsl_downloaded
/util/win_downloaded
/keyboards/*/Makefile
/keyboards/*/*/Makefile
/keyboards/*/*/*/Makefile
/keyboards/*/*/*/*/Makefile
/keyboards/*/*/*/*/*/Makefile
/keyboards/*/keymaps/Makefile
/keyboards/*/*/keymaps/Makefile
/keyboards/*/*/*/keymaps/Makefile
/keyboards/*/*/*/*/keymaps/Makefile
/keyboards/*/*/*/*/*/keymaps/Makefile
# Eclipse/PyCharm/Other IDE Settings
.cproject
@@ -32,10 +45,23 @@ CMakeLists.txt
.browse.VC.db*
*.stackdump
util/Win_Check_Output.txt
.vscode
# Let these ones be user specific, since we have so many different configurations
.vscode/c_cpp_properties.json
.vscode/launch.json
.vscode/tasks.json
.vscode/last.sql
.vscode/temp.sql
.stfolder
# ignore image files
*.png
*.jpg
*.gif
*.gif
# Do not ignore MiniDox left/right hand eeprom files
!keyboards/minidox/*.eep
# things travis sees
secrets.tar
id_rsa_*
/.vs

7
.gitmodules vendored
View File

@@ -1,12 +1,13 @@
[submodule "lib/chibios"]
path = lib/chibios
url = https://github.com/ChibiOS/ChibiOS.git
url = https://github.com/qmk/ChibiOS
[submodule "lib/chibios-contrib"]
path = lib/chibios-contrib
url = https://github.com/ChibiOS/ChibiOS-Contrib.git
url = https://github.com/qmk/ChibiOS-Contrib
branch = k-type-fix
[submodule "lib/ugfx"]
path = lib/ugfx
url = https://bitbucket.org/Tectu/ugfx
url = https://github.com/qmk/uGFX
[submodule "lib/googletest"]
path = lib/googletest
url = https://github.com/google/googletest

View File

@@ -1,6 +1,7 @@
os: linux
dist: trusty
sudo: required
group: edge
language: c
branches:
except:
@@ -10,14 +11,14 @@ env:
global:
- secure: vBTSL34BDPxDilKUuTXqU4CJ26Pv5hogD2nghatkxSQkI1/jbdnLj/DQdPUrMJFDIY6TK3AltsBx72MaMsLQ1JO/Ou24IeHINHXzUC1FlS9yQa48cpxnhX5kzXNyGs3oa0qaFbvnr7RgYRWtmD52n4bIZuSuW+xpBv05x2OCizdT2ZonH33nATaHGFasxROm4qYZ241VfzcUv766V6RVHgL4x9V08warugs+RENVkfzxxwhk3NmkrISabze0gSVJLHBPHxroZC6EUcf/ocobcuDrCwFqtEt90i7pNIAFUE7gZsN2uE75LmpzAWin21G7lLPcPL2k4FJVd8an1HiP2WmscJU6U89fOfMb2viObnKcCzebozBCmKGtHEuXZo9FcReOx49AnQSpmESJGs+q2dL/FApkTjQiyT4J6O5dJpoww0/r57Wx0cmmqjETKBb5rSgXM51Etk3wO09mvcPHsEwrT7qH8r9XWdyCDoEn7FCLX3/LYnf/D4SmZ633YPl5gv3v9XEwxR5+04akjgnvWDSNIaDbWBdxHNb7l4pMc+WR1bwCyMyA7KXj0RrftEGOrm9ZRLe6BkbT4cycA+j77nbPOMcyZChliV9pPQos+4TOJoTzcK2L8yWVoY409aDNVuAjdP6Yum0R2maBGl/etLmIMpJC35C5/lZ+dUNjJAM=
before_install:
- wget http://www.atmel.com/images/avr8-gnu-toolchain-3.5.4.1709-linux.any.x86_64.tar.gz
- wget http://www.atmel.com/images/avr8-gnu-toolchain-3.5.4.1709-linux.any.x86_64.tar.gz || wget http://qmk.fm/avr8-gnu-toolchain-3.5.4.1709-linux.any.x86_64.tar.gz
install:
- tar -zxf avr8-gnu-toolchain-3.5.4.1709-linux.any.x86_64.tar.gz
- export PATH="$PATH:$TRAVIS_BUILD_DIR/avr8-gnu-toolchain-linux_x86_64/bin"
before_script:
- avr-gcc --version
script:
- make test AUTOGEN=false
- make test:all AUTOGEN=false
- bash util/travis_build.sh
addons:
apt:
@@ -28,12 +29,13 @@ addons:
- binutils-arm-none-eabi
- libnewlib-arm-none-eabi
- diffutils
- dos2unix
after_success:
bash util/travis_compiled_push.sh
notifications:
webhooks:
urls:
- https://webhooks.gitter.im/e/cca31de3d44b9adb617b
on_success: change # options: [always|never|change] default: always
- https://webhooks.gitter.im/e/afce403d65f143dfac09
on_success: always # options: [always|never|change] default: always
on_failure: always # options: [always|never|change] default: always
on_start: never # options: [always|never|change] default: always

6
.vscode/extensions.json vendored Normal file
View File

@@ -0,0 +1,6 @@
// Suggested extensions
{
"recommendations": [
"EditorConfig.EditorConfig"
]
}

16
.vscode/settings.json vendored Normal file
View File

@@ -0,0 +1,16 @@
// Place your settings in this file to overwrite default and user settings.
{
// Unofficially, QMK uses spaces for indentation
"editor.insertSpaces": true,
// Configure glob patterns for excluding files and folders.
"files.exclude": {
"**/.build": true,
"**/*.hex": true
},
"files.associations": {
"*.h": "c",
"*.c": "c",
"*.cpp": "cpp",
"*.hpp": "cpp"
}
}

15
CODE_OF_CONDUCT.md Normal file
View File

@@ -0,0 +1,15 @@
# Code Of Conduct
QMK strives to be an inclusive and tolerant community. We welcome participation from anyone regardless of age, disability, ethnicity, gender identity and expression, level of experience, nationality, personal appearance, political belief, race, religion, or sexual identity and orientation.
> “A gentle word turns away wrath, but a harsh word stirs up anger.”
Our users, contributors, and collaborators are expected to treat each other with respect, to assume good intentions, and to gently correct, where possible, rather than react with escalation. Some examples of behavior we will not tolerate include, but is not limited to:
* The use of sexualized language or imagery
* Unwelcome advances, sexual or otherwise
* Insults or derogatory comments, or personal or political attacks
* Publishing others private information without explicit permission
* Other conduct which could reasonably be considered inappropriate in a professional setting
If someone is violating this Code of Conduct you may email hello@qmk.fm to bring your concern to the Members. All complaints will be reviewed and investigated and will result in a response that is deemed necessary and appropriate to the circumstances. The project team is obligated to maintain confidentiality with regard to the reporter of an incident.

View File

@@ -25,4 +25,4 @@ ENV keymap=default
VOLUME /qmk
WORKDIR /qmk
CMD make clean; make;
CMD make clean ; make keyboard=${keyboard} subproject=${subproject} keymap=${keymap}

339
LICENSE Normal file

File diff suppressed because it is too large Load Diff

379
Makefile

File diff suppressed because it is too large Load Diff

1
autocomplete.sh Normal file

File diff suppressed because one or more lines are too long

View File

@@ -1,24 +1,46 @@
{
"structure": {
"readme": "home.md",
"summary": "_summary.md"
},
"plugins" : ["toolbar", "edit-link", "anchors"],
"plugins" : [
"edit-link",
"forkmegithub",
"hints",
"page-toc",
"terminal",
"toolbar",
"bulk-redirect"
],
"pluginsConfig": {
"edit-link": {
"base": "https://github.com/qmk/qmk_firmware/edit/master/docs",
"label": "Suggest an edit"
},
"toolbar": {
"buttons":
[
{
"label": "QMK Firmware",
"icon": "fa fa-github",
"url": "https://github.com/qmk/qmk_firmware"
}
]
}
"edit-link": {
"base": "https://github.com/qmk/qmk_firmware/edit/master/docs",
"label": "Suggest an edit"
},
"forkmegithub": {
"color": "red",
"url": "https://github.com/qmk/qmk_firmware"
},
"page-toc": {
"selector": ".markdown-section h1, .markdown-section h2"
},
"terminal": {
"copyButtons": true,
"fade": false,
"style": "flat"
},
"toolbar": {
"buttons": [
{
"label": "QMK Firmware",
"icon": "fa fa-github",
"url": "https://github.com/qmk/qmk_firmware"
}
]
},
"bulk-redirect": {
"basepath": "/",
"redirectsFile": "docs/redirects.json"
}
},
"root": "./docs/"
}

33
build_full_test.mk Normal file
View File

@@ -0,0 +1,33 @@
# Copyright 2017 Fred Sundvik
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 2 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#include $(TMK_PATH)/protocol.mk
TEST_PATH=tests/$(TEST)
$(TEST)_SRC= \
$(TEST_PATH)/keymap.c \
$(TMK_COMMON_SRC) \
$(QUANTUM_SRC) \
$(SRC) \
tests/test_common/matrix.c \
tests/test_common/test_driver.cpp \
tests/test_common/keyboard_report_util.cpp \
tests/test_common/test_fixture.cpp
$(TEST)_SRC += $(patsubst $(ROOTDIR)/%,%,$(wildcard $(TEST_PATH)/*.cpp))
$(TEST)_DEFS=$(TMK_COMMON_DEFS) $(OPT_DEFS)
$(TEST)_CONFIG=$(TEST_PATH)/config.h
VPATH+=$(TOP_DIR)/tests/test_common

File diff suppressed because it is too large Load Diff

18
build_layout.mk Normal file
View File

@@ -0,0 +1,18 @@
LAYOUTS_PATH := layouts
LAYOUTS_REPOS := $(patsubst %/,%,$(sort $(dir $(wildcard $(LAYOUTS_PATH)/*/))))
define SEARCH_LAYOUTS_REPO
LAYOUT_KEYMAP_PATH := $$(LAYOUTS_REPO)/$$(LAYOUT)/$$(KEYMAP)
LAYOUT_KEYMAP_C := $$(LAYOUT_KEYMAP_PATH)/keymap.c
ifneq ("$$(wildcard $$(LAYOUT_KEYMAP_C))","")
-include $$(LAYOUT_KEYMAP_PATH)/rules.mk
KEYMAP_C := $$(LAYOUT_KEYMAP_C)
KEYMAP_PATH := $$(LAYOUT_KEYMAP_PATH)
endif
endef
define SEARCH_LAYOUTS
$$(foreach LAYOUTS_REPO,$$(LAYOUTS_REPOS),$$(eval $$(call SEARCH_LAYOUTS_REPO)))
endef
$(foreach LAYOUT,$(LAYOUTS),$(eval $(call SEARCH_LAYOUTS)))

View File

@@ -40,13 +40,23 @@ VPATH +=\
all: elf
VPATH += $(COMMON_VPATH)
PLATFORM:=TEST
ifneq ($(filter $(FULL_TESTS),$(TEST)),)
include tests/$(TEST)/rules.mk
endif
include common_features.mk
include $(TMK_PATH)/common.mk
include $(QUANTUM_PATH)/serial_link/tests/rules.mk
ifneq ($(filter $(FULL_TESTS),$(TEST)),)
include build_full_test.mk
endif
$(TEST_OBJ)/$(TEST)_SRC := $($(TEST)_SRC)
$(TEST_OBJ)/$(TEST)_INC := $($(TEST)_INC) $(VPATH) $(GTEST_INC)
$(TEST_OBJ)/$(TEST)_DEFS := $($(TEST)_DEFS)
$(TEST_OBJ)/$(TEST)_CONFIG := $($(TEST)_CONFIG)
include $(TMK_PATH)/native.mk
include $(TMK_PATH)/rules.mk

View File

@@ -9,13 +9,10 @@ LIB_PATH = $(TOP_DIR)/lib
QUANTUM_DIR = quantum
QUANTUM_PATH = $(TOP_DIR)/$(QUANTUM_DIR)
BUILD_DIR := $(TOP_DIR)/.build
DRIVER_DIR = drivers
DRIVER_PATH = $(TOP_DIR)/$(DRIVER_DIR)
SERIAL_DIR := $(QUANTUM_DIR)/serial_link
SERIAL_PATH := $(QUANTUM_PATH)/serial_link
SERIAL_SRC := $(wildcard $(SERIAL_PATH)/protocol/*.c)
SERIAL_SRC += $(wildcard $(SERIAL_PATH)/system/*.c)
SERIAL_DEFS += -DSERIAL_LINK_ENABLE
BUILD_DIR := $(TOP_DIR)/.build
COMMON_VPATH := $(TOP_DIR)
COMMON_VPATH += $(TMK_PATH)
@@ -24,4 +21,4 @@ COMMON_VPATH += $(QUANTUM_PATH)/keymap_extras
COMMON_VPATH += $(QUANTUM_PATH)/audio
COMMON_VPATH += $(QUANTUM_PATH)/process_keycode
COMMON_VPATH += $(QUANTUM_PATH)/api
COMMON_VPATH += $(SERIAL_PATH)
COMMON_VPATH += $(DRIVER_PATH)

188
common_features.mk Normal file
View File

@@ -0,0 +1,188 @@
# Copyright 2017 Fred Sundvik
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 2 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
SERIAL_DIR := $(QUANTUM_DIR)/serial_link
SERIAL_PATH := $(QUANTUM_PATH)/serial_link
SERIAL_SRC := $(wildcard $(SERIAL_PATH)/protocol/*.c)
SERIAL_SRC += $(wildcard $(SERIAL_PATH)/system/*.c)
SERIAL_DEFS += -DSERIAL_LINK_ENABLE
COMMON_VPATH += $(SERIAL_PATH)
ifeq ($(strip $(API_SYSEX_ENABLE)), yes)
OPT_DEFS += -DAPI_SYSEX_ENABLE
SRC += $(QUANTUM_DIR)/api/api_sysex.c
OPT_DEFS += -DAPI_ENABLE
SRC += $(QUANTUM_DIR)/api.c
MIDI_ENABLE=yes
endif
MUSIC_ENABLE := 0
ifeq ($(strip $(AUDIO_ENABLE)), yes)
OPT_DEFS += -DAUDIO_ENABLE
MUSIC_ENABLE := 1
SRC += $(QUANTUM_DIR)/process_keycode/process_audio.c
SRC += $(QUANTUM_DIR)/audio/audio.c
SRC += $(QUANTUM_DIR)/audio/voices.c
SRC += $(QUANTUM_DIR)/audio/luts.c
endif
ifeq ($(strip $(MIDI_ENABLE)), yes)
OPT_DEFS += -DMIDI_ENABLE
MUSIC_ENABLE := 1
SRC += $(QUANTUM_DIR)/process_keycode/process_midi.c
endif
ifeq ($(MUSIC_ENABLE), 1)
SRC += $(QUANTUM_DIR)/process_keycode/process_music.c
endif
ifeq ($(strip $(COMBO_ENABLE)), yes)
OPT_DEFS += -DCOMBO_ENABLE
SRC += $(QUANTUM_DIR)/process_keycode/process_combo.c
endif
ifeq ($(strip $(STENO_ENABLE)), yes)
OPT_DEFS += -DSTENO_ENABLE
VIRTSER_ENABLE := yes
SRC += $(QUANTUM_DIR)/process_keycode/process_steno.c
endif
ifeq ($(strip $(VIRTSER_ENABLE)), yes)
OPT_DEFS += -DVIRTSER_ENABLE
endif
ifeq ($(strip $(FAUXCLICKY_ENABLE)), yes)
OPT_DEFS += -DFAUXCLICKY_ENABLE
SRC += $(QUANTUM_DIR)/fauxclicky.c
endif
ifeq ($(strip $(POINTING_DEVICE_ENABLE)), yes)
OPT_DEFS += -DPOINTING_DEVICE_ENABLE
OPT_DEFS += -DMOUSE_ENABLE
SRC += $(QUANTUM_DIR)/pointing_device.c
endif
ifeq ($(strip $(UCIS_ENABLE)), yes)
OPT_DEFS += -DUCIS_ENABLE
UNICODE_COMMON = yes
SRC += $(QUANTUM_DIR)/process_keycode/process_ucis.c
endif
ifeq ($(strip $(UNICODEMAP_ENABLE)), yes)
OPT_DEFS += -DUNICODEMAP_ENABLE
UNICODE_COMMON = yes
SRC += $(QUANTUM_DIR)/process_keycode/process_unicodemap.c
endif
ifeq ($(strip $(UNICODE_ENABLE)), yes)
OPT_DEFS += -DUNICODE_ENABLE
UNICODE_COMMON = yes
SRC += $(QUANTUM_DIR)/process_keycode/process_unicode.c
endif
ifeq ($(strip $(UNICODE_COMMON)), yes)
SRC += $(QUANTUM_DIR)/process_keycode/process_unicode_common.c
endif
ifeq ($(strip $(RGBLIGHT_ENABLE)), yes)
OPT_DEFS += -DRGBLIGHT_ENABLE
SRC += $(QUANTUM_DIR)/rgblight.c
CIE1931_CURVE = yes
LED_BREATHING_TABLE = yes
ifeq ($(strip $(RGBLIGHT_CUSTOM_DRIVER)), yes)
OPT_DEFS += -DRGBLIGHT_CUSTOM_DRIVER
else
SRC += ws2812.c
endif
endif
ifeq ($(strip $(TAP_DANCE_ENABLE)), yes)
OPT_DEFS += -DTAP_DANCE_ENABLE
SRC += $(QUANTUM_DIR)/process_keycode/process_tap_dance.c
endif
ifeq ($(strip $(KEY_LOCK_ENABLE)), yes)
OPT_DEFS += -DKEY_LOCK_ENABLE
SRC += $(QUANTUM_DIR)/process_keycode/process_key_lock.c
endif
ifeq ($(strip $(PRINTING_ENABLE)), yes)
OPT_DEFS += -DPRINTING_ENABLE
SRC += $(QUANTUM_DIR)/process_keycode/process_printer.c
SRC += $(TMK_DIR)/protocol/serial_uart.c
endif
ifeq ($(strip $(AUTO_SHIFT_ENABLE)), yes)
OPT_DEFS += -DAUTO_SHIFT_ENABLE
SRC += $(QUANTUM_DIR)/process_keycode/process_auto_shift.c
endif
ifeq ($(strip $(SERIAL_LINK_ENABLE)), yes)
SRC += $(patsubst $(QUANTUM_PATH)/%,%,$(SERIAL_SRC))
OPT_DEFS += $(SERIAL_DEFS)
VAPTH += $(SERIAL_PATH)
endif
ifneq ($(strip $(VARIABLE_TRACE)),)
SRC += $(QUANTUM_DIR)/variable_trace.c
OPT_DEFS += -DNUM_TRACED_VARIABLES=$(strip $(VARIABLE_TRACE))
ifneq ($(strip $(MAX_VARIABLE_TRACE_SIZE)),)
OPT_DEFS += -DMAX_VARIABLE_TRACE_SIZE=$(strip $(MAX_VARIABLE_TRACE_SIZE))
endif
endif
ifeq ($(strip $(LCD_ENABLE)), yes)
CIE1931_CURVE = yes
endif
ifeq ($(strip $(BACKLIGHT_ENABLE)), yes)
ifeq ($(strip $(VISUALIZER_ENABLE)), yes)
CIE1931_CURVE = yes
endif
endif
ifeq ($(strip $(CIE1931_CURVE)), yes)
OPT_DEFS += -DUSE_CIE1931_CURVE
LED_TABLES = yes
endif
ifeq ($(strip $(LED_BREATHING_TABLE)), yes)
OPT_DEFS += -DUSE_LED_BREATHING_TABLE
LED_TABLES = yes
endif
ifeq ($(strip $(LED_TABLES)), yes)
SRC += $(QUANTUM_DIR)/led_tables.c
endif
ifeq ($(strip $(TERMINAL_ENABLE)), yes)
SRC += $(QUANTUM_DIR)/process_keycode/process_terminal.c
OPT_DEFS += -DTERMINAL_ENABLE
endif
ifeq ($(strip $(USB_HID_ENABLE)), yes)
include $(TMK_DIR)/protocol/usb_hid.mk
endif
QUANTUM_SRC:= \
$(QUANTUM_DIR)/quantum.c \
$(QUANTUM_DIR)/keymap_common.c \
$(QUANTUM_DIR)/keycode_config.c \
$(QUANTUM_DIR)/process_keycode/process_leader.c
ifndef CUSTOM_MATRIX
QUANTUM_SRC += $(QUANTUM_DIR)/matrix.c
endif

25
docs/README.md Normal file
View File

@@ -0,0 +1,25 @@
# Quantum Mechanical Keyboard Firmware
## What is QMK Firmware? {#what-is-qmk-firmware}
QMK (*Quantum Mechanical Keyboard*) is an open source community that maintains QMK Firmware, QMK Flasher, qmk.fm, and these docs. QMK Firmware is a keyboard firmware based on the [tmk\_keyboard](http://github.com/tmk/tmk_keyboard) with some useful features for Atmel AVR controllers, and more specifically, the [OLKB product line](http://olkb.com), the [ErgoDox EZ](http://www.ergodox-ez.com) keyboard, and the [Clueboard product line](http://clueboard.co/). It has also been ported to ARM chips using ChibiOS. You can use it to power your own hand-wired or custom keyboard PCB.
## How to get it {#how-to-get-it}
If you plan on contributing a keymap, keyboard, or features to QMK, the easiest thing to do is [fork the repo through Github](https://github.com/qmk/qmk_firmware#fork-destination-box), and clone your repo locally to make your changes, push them, then open a [Pull Request](https://github.com/qmk/qmk_firmware/pulls) from your fork.
Otherwise, you can either download it directly ([zip](https://github.com/qmk/qmk_firmware/zipball/master), [tar](https://github.com/qmk/qmk_firmware/tarball/master)), or clone it via git (`git@github.com:qmk/qmk_firmware.git`), or https (`https://github.com/qmk/qmk_firmware.git`).
## How to compile {#how-to-compile}
Before you are able to compile, you'll need to [install an environment](getting_started_build_tools.md) for AVR or/and ARM development. Once that is complete, you'll use the `make` command to build a keyboard and keymap with the following notation:
make planck/rev4:default
This would build the `rev4` revision of the `planck` with the `default` keymap. Not all keyboards have revisions (also called subprojects or folders), in which case, it can be omitted:
make preonic:default
## How to customize {#how-to-customize}
QMK has lots of [features](features.md) to explore, and a good deal of [reference documentation](http://docs.qmk.fm) to dig through. Most features are taken advantage of by modifying your [keymap](keymap.md), and changing the [keycodes](keycodes.md).

View File

@@ -1,28 +1,80 @@
* [Getting started](README.md)
* [QMK Introduction](getting_started_introduction.md)
* [Install Build Tools](getting_started_build_tools.md)
* Alternative: [Vagrant Guide](getting_started_vagrant_guide.md)
* [Build/Compile instructions](getting_started_make_guide.md)
* [Flashing instructions](flashing.md)
* [Contributing to QMK](contributing.md)
* [How to Use Github](getting_started_github.md)
### Getting started
* [Introduction](home.md)
* [QMK Overview](qmk_overview.md)
* [Build Environment Setup](build_environment_setup.md)
* [FAQ](faq.md)
* [General FAQ](faq_general.md)
* [Build/Compile QMK](faq_build.md)
* [Debugging/Troubleshooting QMK](faq_debug.md)
* [Keymap](faq_keymap.md)
* [Hardware](hardware.md)
* [Keyboard Guidelines](hardware_keyboard_guidelines.md)
* [AVR Processors](hardware_avr.md)
* ARM Processors (TBD)
* [Drivers](hardware_drivers.md)
* [Features](features.md)
* [Advanced Keycodes](feature_advanced_keycodes.md)
* [Audio](feature_audio.md)
* [Auto Shift](feature_auto_shift.md)
* [Backlight](feature_backlight.md)
* [Bootmagic](feature_bootmagic.md)
* [Dynamic Macros](feature_dynamic_macros.md)
* [Key Lock](feature_key_lock.md)
* [Layouts](feature_layouts.md)
* [Leader Key](feature_leader_key.md)
* [Macros](feature_macros.md)
* [Mouse keys](feature_mouse_keys.md)
* [Pointing Device](feature_pointing_device.md)
* [PS2 Mouse](feature_ps2_mouse.md)
* [RGB Lighting](feature_rgblight.md)
* [Space Cadet](feature_space_cadet.md)
* [Stenography](feature_stenography.md)
* [Tap Dance](feature_tap_dance.md)
* [Terminal](feature_terminal.md)
* [Thermal Printer](feature_thermal_printer.md)
* [Unicode](feature_unicode.md)
* [Userspace](feature_userspace.md)
### Making a keymap
* [Keymap overview](keymap.md)
* [Custom Quantum Functions](custom_quantum_functions.md)
* [Keycodes](keycodes.md)
* [Layer switching](key_functions.md)
* [Leader Key](leader_key.md)
* [Macros](macros.md)
* [Dynamic Macros](dynamic_macros.md)
* [Space Cadet](space_cadet_shift.md)
* [Tap Dance](tap_dance.md)
* [Mouse keys](mouse_keys.md)
* [FAQ: Creating a Keymap](faq_keymap.md)
* [FAQ: Compiling QMK](faq_build.md)
### For hardware makers and modders
* [Modding your keyboard](modding_your_keyboard.md)
* [Porting your keyboard to QMK](porting_your_keyboard_to_qmk.md)
* [Adding features to QMK](adding_features_to_qmk.md)
### Other topics
* [General FAQ](faq.md)
* [Differences from TMK](differences_from_tmk.md)
* [Backlight](feature_backlight.md#backlight-keycodes)
* [Basic](keycodes_basic.md)
* [Bluetooth](feature_bluetooth.md#bluetooth-keycodes)
* [Bootmagic](feature_bootmagic.md#bootmagic-keycodes)
* [Layer Switching](feature_advanced_keycodes.md#switching-and-toggling-layers)
* [Mod+Key](feature_advanced_keycodes.md#modifier-keys)
* [Mod Tap](feature_advanced_keycodes.md#mod-tap)
* [One Shot Keys](feature_advanced_keycodes.md#one-shot-keys)
* [Quantum](quantum_keycodes.md)
* [RGB Light](feature_rgblight.md#rgblight-keycodes)
* [Shifted Keys](feature_advanced_keycodes.md#shifted-keycodes)
* [Stenography](feature_stenography.md#keycode-reference)
* [Thermal Printer](feature_thermal_printer.md#thermal-printer-keycodes)
* [US ANSI Shifted Keys](keycodes_us_ansi_shifted.md)
* Reference
* [Config Options](config_options.md)
* [Customizing Functionality](custom_quantum_functions.md)
* [Documentation Best Practices](documentation_best_practices.md)
* [Documentation Templates](documentation_templates.md)
* [Glossary](glossary.md)
* [Keymap overview](keymap.md)
* [Unit Testing](unit_testing.md)
* For Makers and Modders
* [Hand Wiring Guide](hand_wire.md)
* [ISP flashing guide](isp_flashing_guide.md)
* [Modding your keyboard](modding_your_keyboard.md)
* For a Deeper Understanding
* [How Keyboards Work](how_keyboards_work.md)
* [Understanding QMK](understanding_qmk.md)
* Other Topics
* [Using Eclipse with QMK](eclipse.md)

View File

@@ -1,7 +0,0 @@
If you have an idea for a custom feature or extra hardware connection, we'd love to accept it into QMK! These are generally done via [pull request](https://github.com/qmk/qmk_firmware/pulls) after forking, and here are some things to keep in mind when creating one:
* **Disable by default** - memory is a pretty limited on most chips QMK supports, and it's important that current keymaps aren't broken, so please allow your feature to be turned **on**, rather than being turned off. If you think it should be on by default, or reduces the size of the code, [open an issue](https://github.com/qmk/qmk_firmware/issues) for everyone to discuss it!
* **Compile locally before submitting** - hopefully this one is obvious, but things need to compile! Our Travis system will catch any issues, but it's generally faster for you to compile a few keyboards locally instead of waiting for the results to come back.
* **Consider subprojects and different chip-bases** - there are several keyboards that have subprojects that have allow for slightly different configurations, and even different chip-bases. Try to make a feature supported in ARM and AVR, or automatically disabled in one that doesn't work.
* **Explain your feature** - submitting a markdown write-up of what your feature does with your PR may be needed, and it will allow a collaborator to easily copy it into the wiki for documentation (after proofing and editing).
* **Don't refactor code** - to maintain a clear vision of how things are laid out in QMK, we try to plan out refactors in-depth, and have a collaborator make the changes. If you have an idea for refactoring, or suggestions, [open an issue](https://github.com/qmk/qmk_firmware/issues).

View File

@@ -1,96 +0,0 @@
# How keys are registered, and interpreted by computers
In this file, you can will learn the concepts of how keyboards work over USB,
and you'll be able to better understand what you can expect from changing your
firmware directly.
## Schematic view
Whenever you type on 1 particular key, here is the chain of actions taking
place:
``` text
+------+ +-----+ +----------+ +----------+ +----+
| User |-------->| Key |------>| Firmware |----->| USB wire |---->| OS |
+------+ +-----+ +----------+ +----------+ |----+
```
This scheme is a very simple view of what's going on, and more details follow
in the next sections.
## 1. You Press a Key
Whenever you press a key, the firmware of your keyboard can register this event.
It can register when the key is pressed, held and released.
This usually happens with a [periodic scan of key presses with a frequency around 100 hz](https://github.com/benblazak/ergodox-firmware/blob/master/references.md#typical-keyboard-information).
This speed often is limited by the mechanical key response time, the protocol
to transfer those key presses (here USB HID), and by the software it is used in.
## 2. What the Firmware Sends
The [HID specification](http://www.usb.org/developers/hidpage/Hut1_12v2.pdf)
tells what a keyboard can actually send through USB to have a chance to be
properly recognised. This includes a pre-defined list of keycodes which are
simple numbers from `0x00` to `0xE7`. The firmware assigns a keycode to each
key of the keyboard.
The firmware does not send actually letters or characters, but only keycodes.
Thus, by modifying the firmware, you only can modify what keycode is sent over
USB for a given key.
## 3. What the Operating System Does
Once the keycode reaches the operating system, a piece of software has to have
it match an actual character thanks to a keyboard layout. For example, if your
layout is set to QWERTY, a sample of the matching table is as follow:
``` text
| keycode | character |
|---------+-----------|
| 0x04 | a/A |
| 0x05 | b/B |
| 0x06 | c/C |
| ... | ... |
| 0x1C | y/Y |
| 0x1D | z/Z |
| ... | ... |
|---------+-----------|
```
## Back to the firmware
As the layout is generally fixed (unless you create your own), the firmware can
actually call a keycode by its layout name directly to ease things for you.
This is exactly what is done here with `KC_A` actually representing `0x04` in
QWERTY. The full list can be found in `keycode.txt`.
## List of Characters You Can Send
Putting aside shortcuts, having a limited set of keycodes mapped to a limited
layout means that **the list of characters you can assign to a given key only
is the ones present in the layout**.
For example, this means that if you have a QWERTY US layout, and you want to
assign 1 key to produce `€` (euro currency symbol), you are unable to do so,
because the QWERTY US layout does not have such mapping. You could fix that by
using a QWERTY UK layout, or a QWERTY US International.
You may wonder why a keyboard layout containing all of Unicode is not devised
then? The limited number of keycode available through USB simply disallow such
a thing.
## How to (Maybe) Enter Unicode Characters
You can have the firmware send *sequences of keys* to use the [software Unicode
Input
Method](https://en.wikipedia.org/wiki/Unicode_input#Hexadecimal_code_input) of
the target operating system, thus effectively entering characters independently
of the layout defined in the OS.
Yet, it does come with multiple disadvantages:
- Tied to a specific OS a a time (need recompilation when changing OS);
- Within a given OS, does not work in all software;
- Limited to a subset of Unicode on some systems.

View File

@@ -1,119 +0,0 @@
### Windows 10
#### Creators Update
If 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).
#### Windows Subsystem for Linux
In 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.
#### Git
If you already have cloned the repository on your Windows file system you can ignore this section.
You 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.
Once 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.
#### Toolchain setup
The 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.
1. Open "Bash On Ubuntu On Windows" from the start menu.
2. 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`.
3. Run `util/wsl_install.sh` and follow the on-screen instructions.
4. Close the Bash command window, and re-open it.
5. You are ready to compile and flash the firmware!
#### Some important things to keep in mind
* You can run `util/wsl_install.sh` again to get all the newest updates.
* Your QMK repository need to be on a Windows file system path, since WSL can't run executables outside it.
* 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
* 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.
### Windows (Vista and later)
1. If you have ever installed WinAVR, uninstall it.
2. Install [MHV AVR Tools](https://infernoembedded.com/sites/default/files/project/MHV_AVR_Tools_20131101.exe). Disable smatch, but **be sure to leave the option to add the tools to the PATH checked**.
3. If you are going to flash Infinity based keyboards you will need to install dfu-util, refer to the instructions by [Input Club](https://github.com/kiibohd/controller/wiki/Loading-DFU-Firmware).
4. Install [MinGW](https://sourceforge.net/projects/mingw/files/Installer/mingw-get-setup.exe/download). During installation, uncheck the option to install a graphical user interface. **DO NOT change the default installation folder.** The scripts depend on the default location.
5. Clone this repository. [This link will download it as a zip file, which you'll need to extract.](https://github.com/qmk/qmk_firmware/archive/master.zip) Open the extracted folder in Windows Explorer.
6. Open the `\util` folder.
7. Double-click on the `1-setup-path-win` batch script to run it. You'll need to accept a User Account Control prompt. Press the spacebar to dismiss the success message in the command prompt that pops up.
8. Right-click on the `2-setup-environment-win` batch script, select "Run as administrator", and accept the User Account Control prompt. This part may take a couple of minutes, and you'll need to approve a driver installation, but once it finishes, your environment is complete!
If you have trouble and want to ask for help, it is useful to generate a *Win_Check_Output.txt* file by running `Win_Check.bat` in the `\util` folder.
### Mac
If you're using [homebrew,](http://brew.sh/) you can use the following commands:
brew tap osx-cross/avr
brew install avr-libc
brew install dfu-programmer
This 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-libc can take over 20 minutes and exhibit high CPU usage.
You can also try these instructions:
1. Install Xcode from the App Store.
2. Install the Command Line Tools from `Xcode->Preferences->Downloads`.
3. Install [DFU-Programmer](https://dfu-programmer.github.io/).
If you are going to flash Infinity based keyboards you will also need dfu-util
brew install dfu-util
### Linux
To ensure you are always up to date, you can just run `sudo util/install_dependencies.sh`. That should always install all the dependencies needed. **This will run `apt-get upgrade`.**
You can also install things manually, but this documentation might not be always up to date with all requirements.
The 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.
```
build-essential
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
git
```
Install the dependencies with your favorite package manager.
Debian/Ubuntu example:
sudo apt-get update
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
### Docker
If this is a bit complex for you, Docker might be the turn-key solution you need. After installing [Docker](https://www.docker.com/products/docker), run the following command at the root of the QMK folder to build a keyboard/keymap:
```bash
# You'll run this every time you want to build a keymap
# modify the keymap and keyboard assigment to compile what you want
# defaults are ergodox/default
docker run -e keymap=gwen -e subproject=ez -e keyboard=ergodox --rm -v $('pwd'):/qmk:rw edasque/qmk_firmware
# On windows docker seems to have issue with VOLUME tag in Dockerfile, and $('pwd') won't print a windows compliant path, use full path instead like this
docker run -e keymap=default -e subproject=ez -e keyboard=ergobox --rm -v D:/Users/Sacapuces/Documents/Repositories/qmk:/qmk:rw edasque/qmk_firmware
```
This will compile the targeted keyboard/keymap and leave it in your QMK directory for you to flash.
### Vagrant
If 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](vagrant_guide.md).
## Verify Your Installation
1. If you haven't already, obtain this repository ([https://github.com/qmk/qmk_firmware](https://github.com/qmk/qmk_firmware)). You can either download it as a zip file and extract it, or clone it using the command line tool git or the Github Desktop application.
2. Open up a terminal or command prompt and navigate to the `qmk_firmware` folder using the `cd` command. The command prompt will typically open to your home directory. If, for example, you cloned the repository to your Documents folder, then you would type `cd Documents/qmk_firmware`. If you extracted the file from a zip, then it may be named `qmk_firmware-master` instead.
3. To confirm that you're in the correct location, you can display the contents of your current folder using the `dir` command on Windows, or the `ls` command on Linux or Mac. You should see several files, including `readme.md` and a `quantum` folder. From here, you need to navigate to the appropriate folder under `keyboards/`. For example, if you're building for a Planck, run `cd keyboards/planck`.
4. Once you're in the correct keyboard-specific folder, run the `make` command. This should output a lot of information about the build process. More information about the `make` command can be found below.

View File

@@ -1,103 +0,0 @@
# This guide has now been included in the main readme - please reference that one instead.
## Build Environment Setup
### Windows (Vista and later)
1. If you have ever installed WinAVR, uninstall it.
2. Install [MHV AVR Tools](https://infernoembedded.com/sites/default/files/project/MHV_AVR_Tools_20131101.exe). Disable smatch, but **be sure to leave the option to add the tools to the PATH checked**.
3. Install [MinGW](https://sourceforge.net/projects/mingw/files/Installer/mingw-get-setup.exe/download). During installation, uncheck the option to install a graphical user interface. **DO NOT change the default installation folder.** The scripts depend on the default location.
4. Clone this repository. [This link will download it as a zip file, which you'll need to extract.](https://github.com/qmk/qmk_firmware/archive/master.zip) Open the extracted folder in Windows Explorer.
5. Double-click on the 1-setup-path-win batch script to run it. You'll need to accept a User Account Control prompt. Press the spacebar to dismiss the success message in the command prompt that pops up.
6. Right-click on the 2-setup-environment-win batch script, select "Run as administrator", and accept the User Account Control prompt. This part may take a couple of minutes, and you'll need to approve a driver installation, but once it finishes, your environment is complete!
7. Future build commands should be run from the standard Windows command prompt, which you can find by searching for "command prompt" from the start menu or start screen. Ignore the "MHV AVR Shell".
### Mac
If you're using [homebrew,](http://brew.sh/) you can use the following commands:
brew tap osx-cross/avr
brew install avr-libc
brew install dfu-programmer
This 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.
You can also try these instructions:
1. Install Xcode from the App Store.
2. Install the Command Line Tools from `Xcode->Preferences->Downloads`.
3. Install [DFU-Programmer][dfu-prog].
### Linux
Install AVR GCC, AVR libc, and dfu-progammer with your favorite package manager.
Debian/Ubuntu example:
sudo apt-get update
sudo apt-get install gcc-avr avr-libc dfu-programmer
### Vagrant
If 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](vagrant_guide.md).
## Verify Your Installation
1. If you haven't already, obtain this repository ([https://github.com/qmk/qmk_firmware](https://github.com/qmk/qmk_firmware)). You can either download it as a zip file and extract it, or clone it using the command line tool git or the Github Desktop application.
2. Open up a terminal or command prompt and navigate to the `qmk_firmware` folder using the `cd` command. The command prompt will typically open to your home directory. If, for example, you cloned the repository to your Documents folder, then you would type `cd Documents/qmk_firmware`. If you extracted the file from a zip, then it may be named `qmk_firmware-master` instead.
3. To confirm that you're in the correct location, you can display the contents of your current folder using the `dir` command on Windows, or the `ls` command on Linux or Mac. You should see several files, including `readme.md` and a `quantum` folder. From here, you need to navigate to the appropriate folder under `keyboards/`. For example, if you're building for a Planck, run `cd keyboards/planck`.
4. Once you're in the correct keyboard-specific folder, run the `make` command. This should output a lot of information about the build process. More information about the `make` command can be found below.
## Customizing, Building, and Deploying Your Firmware
### The Make command
The `make` command is how you compile the firmware into a .hex file, which can be loaded by a dfu programmer (like dfu-progammer via `make dfu`) or the [Teensy loader](https://www.pjrc.com/teensy/loader.html) (only used with Teensys). You can run `make` from the root (`/`), your keyboard folder (`/keyboards/<keyboard>/`), or your keymap folder (`/keyboards/<keyboard>/keymaps/<keymap>/`) if you have a `Makefile` there (see the example [here](/doc/keymap_makefile_example.mk)).
By default, this will generate a `<keyboard>_<keymap>.hex` file in whichever folder you run `make` from. These files are ignored by git, so don't worry about deleting them when committing/creating pull requests.
* The "root" (`/`) folder is the qmk_firmware folder, in which are `doc`, `keyboard`, `quantum`, etc.
* The "keyboard" folder is any keyboard project's folder, like `/keyboards/planck`.
* The "keymap" folder is any keymap's folder, like `/keyboards/planck/keymaps/default`.
Below is a list of the useful `make` commands in QMK:
* `make` - cleans automatically and builds your keyboard and keymap depending on which folder you're in. This defaults to the "default" layout (unless in a keymap folder), and Planck keyboard in the root folder
* `make keyboard=<keyboard>` - specifies the keyboard (only to be used in root)
* `make keymap=<keymap>` - specifies the keymap (only to be used in root and keyboard folder - not needed when in keymap folder)
* `make quick` - skips the clean step (cannot be used immediately after modifying config.h or Makefiles)
* `make dfu` - (requires dfu-programmer) builds and flashes the keymap to your keyboard once placed in reset/dfu mode (button or press `KC_RESET`). This does not work for Teensy-based keyboards like the ErgoDox EZ.
* `keyboard=` and `keymap=` are compatible with this
* `make all-keyboards` - builds all keymaps for all keyboards and outputs status of each (use in root)
* `make all-keyboards-default` - builds all default keymaps for all keyboards and outputs status of each (use in root)
* `make all-keymaps [keyboard=<keyboard>]` - builds all of the keymaps for whatever keyboard folder you're in, or specified by `<keyboard>`
* `make all-keyboards-quick`, `make all-keyboards-default-quick` and `make all-keymaps-quick [keyboard=<keyboard>]` - like the normal "make-all-*" commands, but they skip the clean steps
Other, less useful functionality:
* `make COLOR=false` - turns off color output
* `make SILENT=true` - turns off output besides errors/warnings
* `make VERBOSE=true` - outputs all of the avr-gcc stuff (not interesting)
### The Makefile
There are 3 different `make` and `Makefile` locations:
* root (`/`)
* keyboard (`/keyboards/<keyboard>/`)
* keymap (`/keyboards/<keyboard>/keymaps/<keymap>/`)
The root contains the code used to automatically figure out which keymap or keymaps to compile based on your current directory and commandline arguments. It's considered stable, and shouldn't be modified. The keyboard one will contain the MCU set-up and default settings for your keyboard, and shouldn't be modified unless you are the producer of that keyboard. The keymap Makefile can be modified by users, and is optional. It is included automatically if it exists. You can see an example [here](/doc/keymap_makefile_example.mk) - the last few lines are the most important. The settings you set here will override any defaults set in the keyboard Makefile. **It is required if you want to run `make` in the keymap folder.**
### 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:
```
#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.

View File

@@ -1,187 +0,0 @@
Build Firmware and Program Controller
=====================================
## This guide may be out-dated - use [build_guide.md](build_guide.md) instead
Download and Install
--------------------
### 1. Install Tools
1. **Toolchain** On Windows install [MHV AVR Tools][mhv] for AVR GCC compiler and [Cygwin][cygwin](or [MinGW][mingw]) for shell terminal. On Mac you can use [CrossPack][crosspack]. On Linux you can install AVR GCC (and avr-libc) with your favorite package manager or run the avr_setup.sh script in the root of this repository.
2. **Programmer** On Windows install [Atmel FLIP][flip]. On Mac and Linux install [dfu-programmer][dfu-prog].
3. **Driver** On Windows you start DFU bootloader on the chip first time you will see 'Found New Hardware Wizard' to install driver. If you install device driver properly you can find chip name like 'ATmega32U4' under 'LibUSB-Win32 Devices' tree on 'Device Manager'. If not you shall need to update its driver on 'Device Manager'. You will find the driver in `FLIP` install directory like: C:\Program Files (x86)\Atmel\Flip 3.4.5\usb\. In case of `dfu-programmer` use its driver.
If you use PJRC Teensy you don't need step 2 and 3 above, just get [Teensy loader][teensy-loader].
### 2. Download source
You can find firmware source at github:
- <https://github.com/tmk/tmk_keyboard>
If you are familiar with `Git` tools you are recommended to use it but you can also download zip archive from:
- <https://github.com/tmk/tmk_keyboard/archive/master.zip>
Build firmware
--------------
### 1. Open terminal
Open terminal window to get access to commands. Use Cygwin(or MingGW) `shell terminal` in Windows or `Terminal.app` on Mac OSX. In Windows press `Windows` key and `R` then enter `cmd` in 'Run command' dialog showing up.
### 2. Change directory
Move to project directory in the firmware source.
cd tmk_keyboard/{'keyboard' or 'converter'}/<project>
### 3. Make
Build firmware using GNU `make` command. You'll see `<project>_<variant>.hex` file in that directory unless something unexpected occurs in build process.
make -f Makefile.<variant> clean
make -f Makefile.<variant>
Program Controller
------------------
Now you have **hex** file to program on current directory. This **hex** is only needed to program your controller, other files are used for development and you may leave and forget them.
### 1. Start bootloader
How to program controller depends on controller chip and its board design. To program AVR USB chips you'll need to start it up in bootloader mode. Most of boards with the chip have a push button to let bootloader come up. Consult with your controller board manual.
### 2. Program with DFU bootloader
Stock AVR USB chip including ATmega32U4 has DFU bootloader by factory default. `FLIP` is a DFU programmer on Windows offered by Atmel. Open source command line tool `dfu-programmer` also supports AVR chips, it runs on Linux, Mac OSX and even Windows.
To program AVR chip with DFU bootloader use `FLIP` or `dfu-programmer`.
If you have a proper program command in `Makefile` just type this.
`FLIP` has two version of tool, GUI app and command line program. If you want GUI see tutorial below.
To use command line tool run this command. Note that you need to set PATH variable properly.
$ make -f Makefile.<variant> flip
Or to program with `dfu-programmer` run:
$ make -f Makefile.<variant> dfu
#### FLIP GUI tutorial
1. On menu bar click Device -> Select, then. `ATmega32u4`.
2. On menu bar click Settings -> Communication -> USB, then click 'Open' button on 'USB Port Connection' dialog.
At this point you'll see grey-outed widgets on the app get colored and ready.
3. On menu bar click File -> Load HEX File, then select your firmware hex file on File Selector dialog.
4. On 'Operations Flow' panel click 'Run' button to load the firmware binary to the chip. Note that you should keep 'Erase', 'Blank Check', 'Program' and 'Verify' check boxes selected.
5. Re-plug USB cord or click 'Start Application' button to restart your controller.
Done.
See also these instructions if you need.
- <http://code.google.com/p/micropendous/wiki/LoadingFirmwareWithFLIP>
- <http://www.atmel.com/Images/doc7769.pdf>
### 3. Program with Teensy Loader
If you have PJRC Teensy see instruction of `Teensy Loader`.
- <http://www.pjrc.com/teensy/loader.html>
Or use this command if you have command line version of Teensy Loader installed.
$ make -f Makefile.<variant> teensy
### 4. Program with Other programmer
You may want to use other programmer like `avrdude` with AVRISPmkII, Arduino or USBasp. In that case you can still use make target `program` for build with configuring `PROGRAM_CMD` in Makefile.
$ make -f Makefile.<variant> program
[cygwin]: https://www.cygwin.com/
[mingw]: http://www.mingw.org/
[mhv]: https://infernoembedded.com/products/avr-tools
[winavr]: http://winavr.sourceforge.net/
[crosspack]: http://www.obdev.at/products/crosspack/index.html
[flip]: http://www.atmel.com/tools/FLIP.aspx
[dfu-prog]: http://dfu-programmer.sourceforge.net/
[teensy-loader]:http://www.pjrc.com/teensy/loader.html
Makefile Options
----------------
### 1. MCU and Frequency.
MCU = atmega32u4 # Teensy 2.0
#MCU = at90usb1286 # Teensy++ 2.0
F_CPU = 16000000
Set your MCU and its clock in Hz.
# Boot Section Size in *bytes*
# Teensy halfKay 512
# Atmel DFU loader 4096
# LUFA bootloader 4096
OPT_DEFS += -DBOOTLOADER_SIZE=4096
If you are using PJRC Teensy use `512` for `BOOTLOADER_SIZE`, otherwise use `4096` unless you are sure.
### 2. Features
Optional. Note that ***comment out*** with `#` to disable them.
BOOTMAGIC_ENABLE = yes # Virtual DIP switch configuration(+1000)
MOUSEKEY_ENABLE = yes # Mouse keys(+4700)
EXTRAKEY_ENABLE = yes # Audio control and System control(+450)
CONSOLE_ENABLE = yes # Console for debug(+400)
COMMAND_ENABLE = yes # Commands for debug and configuration
SLEEP_LED_ENABLE = yes # Breathing sleep LED during USB suspend
#NKRO_ENABLE = yes # USB Nkey Rollover - not yet supported in LUFA
#BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality
### 3. Programmer
Optional. Set proper command for your controller, bootloader and programmer. This command can be used with `make program`. Not needed if you use `FLIP`, `dfu-programmer` or `Teensy Loader`.
# avrdude with AVRISPmkII
PROGRAM_CMD = avrdude -p $(MCU) -c avrispmkII -P USB -U flash:w:$(TARGET).hex
# avrdude with USBaspLoader
PROGRAM_CMD = avrdude -p $(MCU) -c usbasp -U flash:w:$(TARGET).hex
# avrdude with arduino
PROGRAM_CMD = avrdude -p $(MCU) -c arduino -P COM1 -b 57600 -U flash:w:$(TARGET).hex
Config.h Options
----------------
### 1. Magic command key combination
#define IS_COMMAND() (keyboard_report->mods == (MOD_BIT(KB_LSHIFT) | MOD_BIT(KB_RSHIFT)))
### 2. Mechanical Locking Support for CapsLock
/* Mechanical locking CapsLock support. Use KC_LCAP instead of KC_CAPS in keymap */
#define CAPSLOCK_LOCKING_ENABLE
/* Locking CapsLock re-synchronize hack */
#define CAPSLOCK_LOCKING_RESYNC_ENABLE
### 3. Disable Debug and Print
/* disable debug print */
#define NO_DEBUG
/* disable print */
#define NO_PRINT
### 4. Disable Action Features
#define NO_ACTION_LAYER
#define NO_ACTION_TAPPING
#define NO_ACTION_ONESHOT
#define NO_ACTION_MACRO
#define NO_ACTION_FUNCTION
***TBD***

200
docs/config_options.md Normal file
View File

@@ -0,0 +1,200 @@
# Configuring QMK
QMK is nearly infinitely configurable. Wherever possible we err on the side of allowing users to customize their keyboard, even at the expense of code size. That level of flexibility makes for a daunting configuration experience, however.
There are two main types of configuration files in QMK- `config.h` and `rules.mk`. These files exist at various levels in QMK and all files of the same type are combined to build the final configuration. The levels, from lowest priority to highest priority, are:
* QMK Default
* Keyboard
* Folders (Up to 5 levels deep)
* Keymap
## QMK Default
Every available setting in QMK has a default. If that setting is not set at the Keyboard, Folder, or Keymap level this is the setting that will be used.
## Keyboard
This level contains config options that should apply to the whole keyboard. Some settings won't change in revisions, or most keymaps. Other settings are merely defaults for this keyboard and can be overridden by folders and/or keymaps.
## Folders
Some keyboards have folders and sub-folders to allow for different hardware configurations. Most keyboards only go 1 folder deep, but QMK supports structures up to 5 folders deep. Each folder can have its own `config.h` and `rules.mk` files that are incorporated into the final configuration.
## Keymap
This level contains all of the options for that particular keymap. If you wish to override a previous declaration, you can use `#undef <variable>` to undefine it, where you can then redefine it without an error.
# The `config.h` file
This is a C header file that is one of the first things included, and will persist over the whole project (if included). Lots of variables can be set here and accessed elsewhere.
## `config.h` Options
### Hardware Options
* `#define VENDOR_ID 0x1234`
* defines your VID, and for most DIY projects, can be whatever you want
* `#define PRODUCT_ID 0x5678`
* defines your PID, and for most DIY projects, can be whatever you want
* `#define DEVICE_VER 0`
* defines the device version (often used for revisions)
* `#define MANUFACTURER Me`
* generally who/whatever brand produced the board
* `#define PRODUCT Board`
* the name of the keyboard
* `#define DESCRIPTION a keyboard`
* a short description of what the keyboard is
* `#define MATRIX_ROWS 5`
* the number of rows in your keyboard's matrix
* `#define MATRIX_COLS 15`
* the number of columns in your keyboard's matrix
* `#define MATRIX_ROW_PINS { D0, D5, B5, B6 }`
* pins of the rows, from top to bottom
* `#define MATRIX_COL_PINS { F1, F0, B0, C7, F4, F5, F6, F7, D4, D6, B4, D7 }`
* pins of the columns, from left to right
* `#define UNUSED_PINS { D1, D2, D3, B1, B2, B3 }`
* pins unused by the keyboard for reference
* `#define MATRIX_HAS_GHOST`
* define is matrix has ghost (unlikely)
* `#define DIODE_DIRECTION COL2ROW`
* COL2ROW or ROW2COL - how your matrix is configured. COL2ROW means the black mark on your diode is facing to the rows, and between the switch and the rows.
* `#define AUDIO_VOICES`
* turns on the alternate audio voices (to cycle through)
* `#define C6_AUDIO`
* enables audio on pin C6
* `#define B5_AUDIO`
* enables audio on pin B5 (duophony is enable if both are enabled)
* `#define BACKLIGHT_PIN B7`
* pin of the backlight - B5, B6, B7 use PWM, others use softPWM
* `#define BACKLIGHT_LEVELS 3`
* number of levels your backlight will have (not including off)
* `#define DEBOUNCING_DELAY 5`
* the delay when reading the value of the pin (5 is default)
* `#define LOCKING_SUPPORT_ENABLE`
* mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap
* `#define LOCKING_RESYNC_ENABLE`
* tries to keep switch state consistent with keyboard LED state
* `#define IS_COMMAND() ( keyboard_report->mods == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_RSHIFT)) )`
* key combination that allows the use of magic commands (useful for debugging)
### Features That Can Be Disabled
If you define these options you will disable the associated feature, which can save on code size.
* `#define NO_DEBUG`
* disable debuging
* `#define NO_PRINT`
* disable printing/debugging using hid_listen
* `#define NO_ACTION_LAYER`
* disable layers
* `#define NO_ACTION_TAPPING`
* disable tap dance and other tapping features
* `#define NO_ACTION_ONESHOT`
* disable one-shot modifiers
* `#define NO_ACTION_MACRO`
* disable all macro handling
* `#define NO_ACTION_FUNCTION`
* disable the action function (deprecated)
### Features That Can Be Enabled
If you define these options you will enable the associated feature, which may increase your code size.
* `#define FORCE_NKRO`
* NKRO by default requires to be turned on, this forces it on during keyboard startup regardless of eeprom setting. NKRO can still be turned off but will be turned on again if the keyboard reboots.
* `#define PREVENT_STUCK_MODIFIERS`
* when switching layers, this will release all mods
### Behaviors That Can Be Configured
* `#define TAPPING_TERM 200`
* how long before a tap becomes a hold
* `#define RETRO_TAPPING`
* tap anyway, even after TAPPING_TERM, if there was no other key interruption between press and release
* `#define TAPPING_TOGGLE 2`
* how many taps before triggering the toggle
* `#define PERMISSIVE_HOLD`
* makes tap and hold keys work better for fast typers who don't want tapping term set above 500
* `#define LEADER_TIMEOUT 300`
* how long before the leader key times out
* `#define ONESHOT_TIMEOUT 300`
* how long before oneshot times out
* `#define ONESHOT_TAP_TOGGLE 2`
* how many taps before oneshot toggle is triggered
* `#define IGNORE_MOD_TAP_INTERRUPT`
* makes it possible to do rolling combos (zx) with keys that convert to other keys on hold
### RGB Light Configuration
* `#define RGB_DI_PIN D7`
* pin the DI on the ws2812 is hooked-up to
* `#define RGBLIGHT_ANIMATIONS`
* run RGB animations
* `#define RGBLED_NUM 15`
* number of LEDs
* `#define RGBLIGHT_HUE_STEP 12`
* units to step when in/decreasing hue
* `#define RGBLIGHT_SAT_STEP 25`
* units to step when in/decresing saturation
* `#define RGBLIGHT_VAL_STEP 12`
* units to step when in/decreasing value (brightness)
* `#define RGBW_BB_TWI`
* bit-bangs twi to EZ RGBW LEDs (only required for Ergodox EZ)
### Mouse Key Options
* `#define MOUSEKEY_INTERVAL 20`
* `#define MOUSEKEY_DELAY 0`
* `#define MOUSEKEY_TIME_TO_MAX 60`
* `#define MOUSEKEY_MAX_SPEED 7`
* `#define MOUSEKEY_WHEEL_DELAY 0`
# The `rules.mk` File
This is a [make](https://www.gnu.org/software/make/manual/make.html) file that is included by the top-level `Makefile`. It is used to set some information about the MCU that we will be compiling for as well as enabling and disabling certain features.
## `rules.mk` options
### Build Options
* `DEFAULT_FOLDER`
* Used to specify a default folder when a keyboard has more than one sub-folder.
* `SRC`
* Used to add files to the compilation/linking list.
* `LAYOUTS`
* A list of [layouts](feature_layouts.md) this keyboard supports.
### AVR MCU Options
* `MCU = atmega32u4`
* `F_CPU = 16000000`
* `ARCH = AVR8`
* `F_USB = $(F_CPU)`
* `OPT_DEFS += -DINTERRUPT_CONTROL_ENDPOINT`
* `OPT_DEFS += -DBOOTLOADER_SIZE=4096`
### Feature Options
Use these to enable or disable building certain features. The more you have enabled the bigger your firmware will be, and you run the risk of building a firmware too large for your MCU.
* `BOOTMAGIC_ENABLE`
* Virtual DIP switch configuration(+1000)
* `MOUSEKEY_ENABLE`
* Mouse keys(+4700)
* `EXTRAKEY_ENABLE`
* Audio control and System control(+450)
* `CONSOLE_ENABLE`
* Console for debug(+400)
* `COMMAND_ENABLE`
* Commands for debug and configuration
* `NKRO_ENABLE`
* USB Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
* `AUDIO_ENABLE`
* Enable the audio subsystem.
* `RGBLIGHT_ENABLE`
* Enable keyboard underlight functionality
* `MIDI_ENABLE`
* MIDI controls
* `UNICODE_ENABLE`
* Unicode
* `BLUETOOTH_ENABLE`
* Enable Bluetooth with the Adafruit EZ-Key HID

152
docs/contributing.md Normal file
View File

@@ -0,0 +1,152 @@
# How To Contribute
👍🎉 First off, thanks for taking the time to read this and contribute! 🎉👍
Third-party contributions help us grow and improve QMK. We want to make the pull request and contribution process useful and easy for both contributors and maintainers. To this end we've put together some guidelines for contributors to help your pull request be accepted without major changes.
* [Project Overview](#project-overview)
* [Coding Conventions](#coding-conventions)
* [General Guidelines](#general-guidelines)
* [What does the Code of Conduct mean for me?](#what-does-the-code-of-conduct-mean-for-me)
## I Don't Want To Read This Whole Thing I Just Have a Question!
If you'd like to ask questions about QMK you can do so on the [OLKB Subreddit](https://reddit.com/r/olkb) or on [Gitter](https://gitter.im/qmk/qmk_firmware).
Please keep these things in mind:
* It may take several hours for someone to respond to your question. Please be patient!
* Everyone involved with QMK is donating their time and energy. We don't get paid to work on or answer questions about QMK.
* Try to ask your question so it's as easy to answer as possible. If you're not sure how to do that these are some good guides:
* https://opensource.com/life/16/10/how-ask-technical-questions
* http://www.catb.org/esr/faqs/smart-questions.html
# Project Overview
QMK is largely written in C, with specific features and parts written in C++. It targets embedded processors found in keyboards, particularly AVR ([LUFA](http://www.fourwalledcubicle.com/LUFA.php)) and ARM ([ChibiOS](http://www.chibios.com)). If you are already well versed in Arduino programming you'll find a lot of the concepts and limitations familiar. Prior experience with Arduino is not required to successfully contribute to QMK.
<!-- FIXME: We should include a list of resources for learning C here. -->
# Where can I go for help?
If you need help you can [open an issue](https://github.com/qmk/qmk_firmware/issues) or [chat on gitter](http://gitter.im/QMK/qmk_firmware).
# How Do I Make a Contribution?
Never made an open source contribution before? Wondering how contributions work in QMK? Here's a quick rundown!
0. Sign up for a [GitHub](https://github.com) account.
1. Put together a keymap to contribute, [find an issue](https://github.com/qmk/qmk_firmware/issues) you are interested in addressing, or [a feature](https://github.com/qmk/qmk_firmware/issues?q=is%3Aopen+is%3Aissue+label%3Afeature) you would like to add.
2. Fork the repository associated with the issue to your GitHub account. This means that you will have a copy of the repository under `your-GitHub-username/qmk_firmware`.
3. Clone the repository to your local machine using `git clone https://github.com/github-username/repository-name.git`.
4. If you're working on a new feature consider opening an issue to talk with us about the work you're about to undertake.
5. Create a new branch for your fix using `git checkout -b branch-name-here`.
6. Make the appropriate changes for the issue you are trying to address or the feature that you want to add.
7. Use `git add insert-paths-of-changed-files-here` to add the file contents of the changed files to the "snapshot" git uses to manage the state of the project, also known as the index.
8. Use `git commit -m "Insert a short message of the changes made here"` to store the contents of the index with a descriptive message.
9. Push the changes to your repository on GitHub using `git push origin branch-name-here`.
10. Submit a pull request to [QMK Firmware](https://github.com/qmk/qmk_firmware/pull/new/master).
11. Title the pull request with a short description of the changes made and the issue or bug number associated with your change. For example, you can title an issue like so "Added more log outputting to resolve #4352".
12. In the description of the pull request explain the changes that you made, any issues you think exist with the pull request you made, and any questions you have for the maintainer. It's OK if your pull request is not perfect (no pull request is), the reviewer will be able to help you fix any problems and improve it!
13. Wait for the pull request to be reviewed by a maintainer.
14. Make changes to the pull request if the reviewing maintainer recommends them.
15. Celebrate your success after your pull request is merged!
# Coding conventions
Most of our style is pretty easy to pick up on, but right now it's not entirely consistent. You should match the style of the code surrounding your change, but if that code is inconsistent or unclear use the following guidelines:
* We indent using two spaces (soft tabs)
* We use One True Brace Style
* Opening Brace: At the end of the same line as the statement that opens the block
* Closing Brace: Lined up with the first character of the statement that opens the block
* Else If: Place the closing brace at the beginning of the line and the next opening brace at the end of the same line.
* Optional Braces: Always include optional braces.
* Good: if (condition) { return false; }
* Bad: if (condition) return false;
* We use C style comments: /* */
* Think of them as a story describing the feature
* Use them liberally to explain why particular decisions were made.
* Do not write obvious comments
* If you not sure if a comment is obvious, go ahead and include it.
* In general we don't wrap lines, they can be as long as needed. If you do choose to wrap lines please do not wrap any wider than 76 columns.
# General Guidelines
We have a few different types of changes in QMK, each requiring a different level of rigor. We'd like you to keep the following guidelines in mind no matter what type of change you're making.
* Separate PR's into logical units. For example, do not submit one PR covering two separate features, instead submit a separate PR for each feature.
* Check for unnecessary whitespace with `git diff --check` before committing.
* Make sure your code change actually compiles.
* Keymaps: Make sure that `make keyboard:your_new_keymap` does not return an error
* Keyboards: Make sure that `make keyboard:all` does not return any errors
* Core: Make sure that `make all` does not return any errors.
* Make sure commit messages are understandable on their own. You should put a short description (no more than 70 characters) on the first line, the second line should be empty, and on the 3rd and later lines you should describe your commit in detail, if required. Example:
```
Adjust the fronzlebop for the kerpleplork
The kerpleplork was intermittently failing with error code 23. The root cause was the fronzlebop setting, which causes the kerpleplork to activate every N iterations.
Limited experimentation on the devices I have available shows that 7 is high enough to avoid confusing the kerpleplork, but I'd like to get some feedback from people with ARM devices to be sure.
```
## Documentation
Documentation is one of the easiest ways to get started contributing to QMK. Finding places where the documentation is wrong or incomplete and fixing those is easy! We also very badly need someone to edit our documentation, so if you have editing skills but aren't sure where or how to jump in please [reach out for help](#where-can-i-go-for-help)!
You'll find all our documentation in the `qmk_firmware/docs` directory, or if you'd rather use a web based workflow you can click "Suggest An Edit" at the top of each page on http://docs.qmk.fm/.
## Keymaps
Most first-time QMK contributors start with their personal keymaps. We try to keep keymap standards pretty casual (keymaps, after all, reflect the personality of their creators) but we do ask that you follow these guidelines to make it easier for others to discover and learn from your keymap.
* Write a `readme.md` using [the template](https://docs.qmk.fm/documentation_templates.html#).
* All Keymap PR's are squashed, so if you care about how your commits are squashed you should do it yourself
* Do not lump features in with keymap PR's. Submit the feature first and then a second PR for the keymap.
* Do not include `Makefile`s in your keymap folder (they're no longer used)
* Update copyrights in file headers (look for `REPLACE_WITH_YOUR_NAME `)
## Keyboards
Keyboards are the raison d'être for QMK. Some keyboards are community maintained, while others are maintained by the people responsible for making a particular keyboard. The `readme.md` should tell you who maintains a particular keyboard. If you have questions relating to a particular keyboard you can [Open An Issue](https://github.com/qmk/qmk_firmware/issues) and tag the maintainer in your question.
We also ask that you follow these guidelines:
* Write a `readme.md` using [the template](https://docs.qmk.fm/documentation_templates.html#).
* Keep the number of commits reasonable or we will squash your PR
* Do not lump core features in with new keyboards. Submit the feature first and then submit a separate PR for the keyboard.
* Name `.c`/`.h` file after the immediate parent folder, eg `/keyboards/<kb1>/<kb2>/<kb2>.[ch]`
* Do not include `Makefile`s in your keyboard folder (they're no longer used)
* Update copyrights in file headers (look for `REPLACE_WITH_YOUR_NAME `)
## Quantum/TMK Core
Before you put a lot of work into building your new feature you should make sure you are implementing it in the best way. You can get a basic understanding of QMK by reading [Understaning QMK](understanding_qmk.html), which will take you on a tour of the QMK program flow. From here you should talk to us to get a sense of the best way to implement your idea. There are two main ways to do this:
* [Chat on Gitter](https://gitter.im/qmk/qmk_firmware)
* [Open an Issue](https://github.com/qmk/qmk_firmware/issues/new)
Feature and Bug Fix PR's affect all keyboards. We are also in the process of restructuring QMK. For this reason it is especially important for significant changes to be discussed before implementation has happened. If you open a PR without talking to us first please be prepared to do some significant rework if your choices do not mesh well with our planned direction.
Here are some things to keep in mind when working on your feature or bug fix.
* **Disabled by default** - memory is a pretty limited on most chips QMK supports, and it's important that current keymaps aren't broken, so please allow your feature to be turned **on**, rather than being turned off. If you think it should be on by default, or reduces the size of the code, please talk with us about it.
* **Compile locally before submitting** - hopefully this one is obvious, but things need to compile! Our Travis system will catch any issues, but it's generally faster for you to compile a few keyboards locally instead of waiting for the results to come back.
* **Consider revisions and different chip-bases** - there are several keyboards that have revisions that allow for slightly different configurations, and even different chip-bases. Try to make a feature supported in ARM and AVR, or automatically disabled on platforms it doesn't work on.
* **Explain your feature** - Document it in `docs/`, either as a new file or as part of an existing file. If you don't document it other people won't be able to benefit from your hard work.
We also ask that you follow these guidelines:
* Keep the number of commits reasonable or we will squash your PR
* Do not lump keyboards or keymaps in with core changes. Submit your core changes first.
* Write [Unit Tests](http://docs.qmk.fm/unit_testing.html) for your feature
* Follow the style of the file you are editing. If the style is unclear or there are mixed styles you should conform to the [coding conventions](#coding-conventions) above.
## Refactoring
To maintain a clear vision of how things are laid out in QMK we try to plan out refactors in-depth and have a collaborator make the changes. If you have an idea for refactoring, or suggestions, [open an issue](https://github.com/qmk/qmk_firmware/issues), we'd love to talk about how QMK can be improved.
# What does the Code of Conduct mean for me?
Our [Code of Conduct](https://github.com/qmk/qmk_firmware/blob/master/CODE_OF_CONDUCT.md) means that you are responsible for treating everyone on the project with respect and courtesy regardless of their identity. If you are the victim of any inappropriate behavior or comments as described in our Code of Conduct, we are here for you and will do the best to ensure that the abuser is reprimanded appropriately, per our code.

View File

@@ -1,6 +1,10 @@
A custom keyboard is about more than sending button presses to your computer. QMK has designed hooks to allow you to inject code, override functionality, and otherwise customize how your keyboard responds in different situations.
# How To Customize Your Keyboard's Behavior
## A Word on Keyboards vs Keymap
For a lot of people a custom keyboard is about more than sending button presses to your computer. You want to be able to do things that are more complex than simple button presses and macros. QMK has hooks that allow you to inject code, override functionality, and otherwise customize how your keyboard behaves in different situations.
This page does not assume any special knowledge about QMK, but reading [Understanding QMK](understanding_qmk.html) will help you understand what is going on at a more fundamental level.
## A Word on Core vs Keyboards vs Keymap
We have structured QMK as a hierarchy:
@@ -8,59 +12,66 @@ We have structured QMK as a hierarchy:
* Keyboard/Revision (`_kb`)
* Keymap (`_user`)
Each of the functions described below can be defined with a `_kb()` suffix or an `_user()` suffix. We intend for you to use the `_kb()` suffix at the Keyboard/Revision level, while the `_user()` suffix should be used at the Keymap level.
Each of the functions described below can be defined with a `_kb()` suffix or a `_user()` suffix. We intend for you to use the `_kb()` suffix at the Keyboard/Revision level, while the `_user()` suffix should be used at the Keymap level.
When defining functions at the Keyboard/Revision level it is important that your `_kb()` implementation call `_user()` before executing anything else- otherwise the keymap level function will never be called.
## Matrix Initialization Code
# Custom Keycodes
* Keyboard/Revision: `void matrix_init_kb(void)`
* Keymap: `void matrix_init_user(void)`
By far the most common task is to change the behavior of an existing keycode or to create a new keycode. From a code standpoint the mechanism for each is very similar.
This function gets called when the matrix is initiated. You should use this function to initialize any custom hardware you may have, such as speakers, LED drivers, or other features which need to be setup after the keyboard powers on.
## Defining a New Keycode
### Example
The first step to creating your own custom keycode(s) is to enumerate them. This means both naming them and assigning a unique number to that keycode. Rather than limit custom keycodes to a fixed range of numbers QMK provides the `SAFE_RANGE` macro. You can use `SAFE_RANGE` when enumerating your custom keycodes to guarantee that you get a unique number.
Here is an example of enumerating 2 keycodes. After adding this block to your `keymap.c` you will be able to use `FOO` and `BAR` inside your keymap.
```
void matrix_init_kb(void) {
// put your keyboard start-up code here
// runs once when the firmware starts up
matrix_init_user();
enum my_keycodes {
FOO = SAFE_RANGE,
BAR
};
```
// JTAG disable for PORT F. write JTD bit twice within four cycles.
MCUCR |= (1<<JTD);
MCUCR |= (1<<JTD);
## Programming The Behavior Of Any Keycode
// * Set our LED pins as output
DDRB |= (1<<0);
DDRB |= (1<<1);
DDRB |= (1<<2);
DDRB |= (1<<3);
DDRB |= (1<<4);
When you want to override the behavior of an existing key, or define the behavior for a new key, you should use the `process_record_kb()` and `process_record_user()` functions. These are called by QMK during key processing before the actual key event is handled. If these functions return `true` QMK will process the keycodes as usual. That can be handy for extending the functionality of a key rather than replacing it. If these functions return `false` QMK will skip the normal key handling, and it will be up you to send any key up or down events that are required.
These function are called every time a key is pressed or released.
### Example `process_record_user()` implementation
This example does two things. It defines the behavior for a custom keycode called `FOO`, and it supplements our Enter key by playing a tone whenever it is pressed.
```
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case FOO:
if (record->event.pressed) {
// Do something when pressed
} else {
// Do something else when release
}
return false; // Skip all further processing of this key
case KC_ENTER:
// Play a tone when enter is pressed
if (record->event.pressed) {
PLAY_NOTE_ARRAY(tone_qwerty);
}
return true; // Let QMK send the enter press/release events
}
}
```
## Matrix Scanning Code
* Keyboard/Revision: `void matrix_scan_kb(void)`
* Keymap: `void matrix_scan_user(void)`
This function gets called at every matrix scan, which is basically as often as the MCU can handle. Be careful what you put here, as it will get run a lot.
You should use this function if you need custom matrix scanning code. It can also be used for custom status output (such as LED's or a display) or other functionality that you want to trigger regularly even when the user isn't typing.
## Hook Into Key Presses
### `process_record_*` Function documentation
* Keyboard/Revision: `bool process_record_kb(uint16_t keycode, keyrecord_t *record)`
* Keymap: `bool process_record_user(uint16_t keycode, keyrecord_t *record)`
This function gets called every time a key is pressed or released. This is particularly useful when defining custom keys or overriding the behavior of existing keys.
The `keycode` argument is whatever is defined in your keymap, eg `MO(1)`, `KC_L`, etc. You should use a `switch...case` block to handle these events.
The return value is whether or not QMK should continue processing the keycode - returning `false` stops the execution.
The `keycode` variable is whatever is defined in your keymap, eg `MO(1)`, `KC_L`, etc. and can be switch-cased to execute code whenever a particular code is pressed.
The `record` variable contains infomation about the actual press:
The `record` argument contains infomation about the actual press:
```
keyrecord_t record {
@@ -75,12 +86,7 @@ keyrecord_t record {
}
```
The conditional `if (record->event.pressed)` can tell if the key is being pressed or released, and you can execute code based on that.
## LED Control
* Keyboard/Revision: `void led_set_kb(uint8_t usb_led)`
* Keymap: `void led_set_user(uint8_t usb_led)`
# LED Control
This allows you to control the 5 LED's defined as part of the USB Keyboard spec. It will be called when the state of one of those 5 LEDs changes.
@@ -90,7 +96,7 @@ This allows you to control the 5 LED's defined as part of the USB Keyboard spec.
* `USB_LED_COMPOSE`
* `USB_LED_KANA`
### Example:
### Example `led_set_kb()` implementation
```
void led_set_kb(uint8_t usb_led) {
@@ -121,3 +127,50 @@ void led_set_kb(uint8_t usb_led) {
}
}
```
### `led_set_*` Function documentation
* Keyboard/Revision: `void led_set_kb(uint8_t usb_led)`
* Keymap: `void led_set_user(uint8_t usb_led)`
# Matrix Initialization Code
Before a keyboard can be used the hardware must be initialized. QMK handles initialization of the keyboard matrix itself, but if you have other hardware like LED's or i&#xb2;c controllers you will need to set up that hardware before it can be used.
### Example `matrix_init_kb()` implementation
This example, at the keyboard level, sets up B1, B2, and B3 as LED pins.
```
void matrix_init_kb(void) {
// Call the keymap level matrix init.
matrix_init_user();
// Set our LED pins as output
DDRB |= (1<<1);
DDRB |= (1<<2);
DDRB |= (1<<3);
}
```
### `matrix_init_*` Function documentation
* Keyboard/Revision: `void matrix_init_kb(void)`
* Keymap: `void matrix_init_user(void)`
# Matrix Scanning Code
Whenever possible you should customize your keyboard by using `process_record_*()` and hooking into events that way, to ensure that your code does not have a negative performance impact on your keyboard. However, in rare cases it is necessary to hook into the matrix scanning. Be extremely careful with the performance of code in these functions, as it will be called at least 10 times per second.
### Example `matrix_scan_*` implementation
This example has been deliberately omitted. You should understand enough about QMK internals to write this without an example before hooking into such a performance sensitive area. If you need help please [open an issue](https://github.com/qmk/qmk_firmware/issues/new) or [chat with us on gitter](https://gitter.im/qmk/qmk_firmware).
### `matrix_scan_*` Function documentation
* Keyboard/Revision: `void matrix_scan_kb(void)`
* Keymap: `void matrix_scan_user(void)`
This function gets called at every matrix scan, which is basically as often as the MCU can handle. Be careful what you put here, as it will get run a lot.
You should use this function if you need custom matrix scanning code. It can also be used for custom status output (such as LED's or a display) or other functionality that you want to trigger regularly even when the user isn't typing.

File diff suppressed because it is too large Load Diff

View File

@@ -1,7 +0,0 @@
Understanding the essential changes made on the [tmk_keyboard firmware](http://github.com/tmk/tmk_keyboard) should help you understand the QMK Firmware.
| Firmware |TMK |QMK |
|------------------------------|-----------------------|-------------------------|
| Maintainer |hasu (@tmk) |Jack Humbert et al. |
| Build path customization | `TMK_DIR = ...` | `include .../Makefile` |
| `keymaps` array data | 3D array of `uint8_t` holding **keycode** | 3D array of `uint16_t` holding **keycode** |

Some files were not shown because too many files have changed in this diff Show More