aboutsummaryrefslogtreecommitdiff
path: root/keyboards/orthodox
diff options
context:
space:
mode:
authorDrashna Jaelre <drashna@live.com>2019-11-20 12:37:24 -0800
committerGitHub <noreply@github.com>2019-11-20 12:37:24 -0800
commiteb91c962886b1bb52c2d457a574cba09e2a8b0f0 (patch)
tree20f3d49671b6d42ca1edf285431e3e4120551228 /keyboards/orthodox
parent8e8986b2506ca4cdd2339a441314a0838e3a4329 (diff)
downloadqmk_firmware-eb91c962886b1bb52c2d457a574cba09e2a8b0f0.tar.gz
qmk_firmware-eb91c962886b1bb52c2d457a574cba09e2a8b0f0.zip
[Keymap] All about (ARM) RGB and OLEDs (drashna keymaps) (#7354)
* Add Kyria Keymap * Enable all RGBLIGHT Animations for ARM and high capacity AVR * Reduce GNUC version for __has_include * Cleanup Ortho 4x12 Community layout * Update Collide 39 keymap * Cleanup Keymaps * Enable full 30 LEDs for Ergodox * Change EEPROM Load timing * Use RGB Matrix on Planck Rev6 * Use correct keymap swap * Enable everything for ARM * Only enable rgb sleep on avr until crash is fixed * Add additional Kyria keymap config * Overhaul Kyria OLED display * Improve kyria keymap based on usage * Minor tweaks to rules * Update OLED code to truncate properly * Fix RGB Light layer indication * Switch all of biton32 to get_highest_layer function * Fix OLED Keylogger display * Run qmk cformat over all of my user files * Slight tweak to kyria based on usage * Move around LALT_T config * Add comments about base wrappers to keymaps * Another cformat pass * Temp fix for VUSB boards and NKRO * Convert tabs to spaces in rules.mk files * Only enable RGBLight if it's enabled * Add Encoder Flip setting * Update OLED font file
Diffstat (limited to 'keyboards/orthodox')
-rw-r--r--keyboards/orthodox/keymaps/drashna/config.h45
-rw-r--r--keyboards/orthodox/keymaps/drashna/keymap.c39
2 files changed, 30 insertions, 54 deletions
diff --git a/keyboards/orthodox/keymaps/drashna/config.h b/keyboards/orthodox/keymaps/drashna/config.h
index 4719c2269..585c91640 100644
--- a/keyboards/orthodox/keymaps/drashna/config.h
+++ b/keyboards/orthodox/keymaps/drashna/config.h
@@ -34,41 +34,40 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
34 34
35/* key combination for magic key command */ 35/* key combination for magic key command */
36#undef IS_COMMAND 36#undef IS_COMMAND
37#define IS_COMMAND() ( \ 37#define IS_COMMAND() (get_mods() == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_LALT)))
38 get_mods() == (MOD_BIT(KC_LSHIFT) | MOD_BIT(KC_LALT)) \
39)
40 38
41#ifdef RGBLIGHT_ENABLE 39#ifdef RGBLIGHT_ENABLE
42# define RGB_DI_PIN D3 40# define RGB_DI_PIN D3
43# define RGBLED_NUM 16 // Number of LEDs 41# define RGBLED_NUM 16 // Number of LEDs
44# define RGBLED_SPLIT { 8, 8 } 42# define RGBLED_SPLIT \
45 43 { 8, 8 }
46# define RGBLIGHT_HUE_STEP 12 44
47# define RGBLIGHT_SAT_STEP 12 45# define RGBLIGHT_HUE_STEP 12
48# define RGBLIGHT_VAL_STEP 12 46# define RGBLIGHT_SAT_STEP 12
49# define RGBLIGHT_EFFECT_KNIGHT_LENGTH 2 47# define RGBLIGHT_VAL_STEP 12
50# define RGBLIGHT_EFFECT_SNAKE_LENGTH 2 48# define RGBLIGHT_EFFECT_KNIGHT_LENGTH 2
51#endif // RGBLIGHT_ENABLE 49# define RGBLIGHT_EFFECT_SNAKE_LENGTH 2
50#endif // RGBLIGHT_ENABLE
52 51
53#ifdef AUDIO_ENABLE 52#ifdef AUDIO_ENABLE
54# define C6_AUDIO 53# define C6_AUDIO
55# ifdef RGBLIGHT_ENABLE 54# ifdef RGBLIGHT_ENABLE
56# define NO_MUSIC_MODE 55# define NO_MUSIC_MODE
57# endif 56# endif
58#endif //AUDIO_ENABLE 57#endif // AUDIO_ENABLE
59 58
60#undef PRODUCT 59#undef PRODUCT
61#ifdef KEYBOARD_orthodox_rev1 60#ifdef KEYBOARD_orthodox_rev1
62# define PRODUCT Drashna Hacked Orthodox Rev.1 61# define PRODUCT Drashna Hacked Orthodox Rev .1
63#elif KEYBOARD_orthodox_rev3 62#elif KEYBOARD_orthodox_rev3
64# define PRODUCT Drashna Hacked Orthodox Rev.3 63# define PRODUCT Drashna Hacked Orthodox Rev .3
65#endif 64#endif
66 65
67#define QMK_ESC_OUTPUT D7 // usually COL 66#define QMK_ESC_OUTPUT D7 // usually COL
68#ifdef KEYBOARD_orthodox_rev1 67#ifdef KEYBOARD_orthodox_rev1
69# define QMK_ESC_INPUT D4 // usually ROW 68# define QMK_ESC_INPUT D4 // usually ROW
70#else 69#else
71# define QMK_ESC_INPUT D2 // usually ROW 70# define QMK_ESC_INPUT D2 // usually ROW
72#endif 71#endif
73#define QMK_LED B0 72#define QMK_LED B0
74#define QMK_SPEAKER C6 73#define QMK_SPEAKER C6
diff --git a/keyboards/orthodox/keymaps/drashna/keymap.c b/keyboards/orthodox/keymaps/drashna/keymap.c
index bf6b62b41..2dbe18634 100644
--- a/keyboards/orthodox/keymaps/drashna/keymap.c
+++ b/keyboards/orthodox/keymaps/drashna/keymap.c
@@ -1,35 +1,12 @@
1/*
2This is the keymap for the keyboard
3
4Copyright 2012 Jun Wako <wakojun@gmail.com>
5Copyright 2015 Jack Humbert
6Copyright 2017 Art Ortenburger
7
8This program is free software: you can redistribute it and/or modify
9it under the terms of the GNU General Public License as published by
10the Free Software Foundation, either version 2 of the License, or
11(at your option) any later version.
12
13This program is distributed in the hope that it will be useful,
14but WITHOUT ANY WARRANTY; without even the implied warranty of
15MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16GNU General Public License for more details.
17
18You should have received a copy of the GNU General Public License
19along with this program. If not, see <http://www.gnu.org/licenses/>.
20*/
21
22#include QMK_KEYBOARD_H
23#include "drashna.h" 1#include "drashna.h"
24 2
25#ifdef INDICATOR_LIGHTS 3/*
26extern userspace_config_t userspace_config; 4 * The `LAYOUT_orthodox_base` macro is a template to allow the use of identical
27 5 * modifiers for the default layouts (eg QWERTY, Colemak, Dvorak, etc), so
28uint8_t last_mod; 6 * that there is no need to set them up for each layout, and modify all of
29uint8_t last_led; 7 * them if I want to change them. This helps to keep consistency and ease
30uint8_t last_osm; 8 * of use. K## is a placeholder to pass through the individual keycodes
31#endif 9 */
32
33// clang-format off 10// clang-format off
34#define LAYOUT_orthodox_base( \ 11#define LAYOUT_orthodox_base( \
35 K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, \ 12 K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, \
@@ -38,7 +15,7 @@ uint8_t last_osm;
38 ) \ 15 ) \
39 LAYOUT_wrapper( \ 16 LAYOUT_wrapper( \
40 KC_ESC, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, KC_BSPC, \ 17 KC_ESC, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, KC_BSPC, \
41 KC_TAB, ALT_T(K11), K12, K13, K14, K15, OS_LALT, OS_LGUI, OS_RALT, RAISE, K16, K17, K18, K19, K1A, RALT_T(KC_QUOT), \ 18 LALT_T(KC_TAB), K11, K12, K13, K14, K15, OS_LALT, OS_LGUI, OS_RALT, RAISE, K16, K17, K18, K19, K1A, RALT_T(KC_QUOT), \
42 KC_MLSF, CTL_T(K21), K22, K23, K24, K25, LOWER, KC_SPACE,KC_BSPC, KC_DEL, KC_ENT, RAISE, K26, K27, K28, K29, RCTL_T(K2A), KC_MRSF \ 19 KC_MLSF, CTL_T(K21), K22, K23, K24, K25, LOWER, KC_SPACE,KC_BSPC, KC_DEL, KC_ENT, RAISE, K26, K27, K28, K29, RCTL_T(K2A), KC_MRSF \
43 ) 20 )
44#define LAYOUT_orthodox_base_wrapper(...) LAYOUT_orthodox_base(__VA_ARGS__) 21#define LAYOUT_orthodox_base_wrapper(...) LAYOUT_orthodox_base(__VA_ARGS__)