diff options
author | Drashna Jaelre <drashna@live.com> | 2019-07-22 20:22:33 -0700 |
---|---|---|
committer | MechMerlin <30334081+mechmerlin@users.noreply.github.com> | 2019-07-22 20:22:33 -0700 |
commit | d41961c9eddb78591d3b55ea65e6e0baff4bdd69 (patch) | |
tree | a2e03c31b93dc35fbdb539c59de0d2f7c655f02f /layouts | |
parent | 840b9090a0fd4faf070d9bbb9039337ecdb82de4 (diff) |
[Keymap] Drashna's Feature madness (#6128)
* Fix my Tap Dance issues after I broke them
* Cleanup and organization of userspace documentation
As well as some additional cleanup of functions due to review of documentation.
* Enable Tapdance on Glow and remove more animations
* Revert to Eager PR debouncing
* Add better check for startup animation
* Move where RGB Matrix defines are listed
* Limit RGB Matrix max val
* Update keyboard for Iris Rev 3 conflicts
* Enable encoder support on planck ez
* Remove is_master check from corne\'s OLED code
* Overhaul OLED screens for my Corne
* One last removal
* Show RGB valu On both sides
* Updates for OLED display info
* Fix compile issues for rgb config
* Disabled Space Cadet for all drashna keymaps
* Fix OLED Screen configs
* Minor OLED Tweaks
* Revert some Iris changes
* Fix song include
* Handle MAKE macro for the Corne boards better
* Add super hacky-hack for eeconfig initialization
* Add audio support for Fractal since Elite Cs support it
* Add defines for keycode steps
* Add White layout
* Update Corne RGB info
* Add fun effects to layer indication for RGB Matrix enabled boards
* Use proper define for product name detection
* Update formatting
* Use custom timeout mechanism for OLED timeout
* Fix up OLED screen HSV code for new HSV structure
* Better handle turning off RGB Matrix when sleeping
* Disable MultiSplash Animation
* Change Iris back to using serial
* Why was RGB disabled?!?!?!
* Limit val in rgb_matrix_layer_helper function
* Remove EECONFIG setting for RGB matrix
Diffstat (limited to 'layouts')
-rw-r--r-- | layouts/community/ergodox/drashna/keymap.c | 129 | ||||
-rw-r--r-- | layouts/community/ergodox/drashna/rules.mk | 2 | ||||
-rw-r--r-- | layouts/community/ergodox/drashna_glow/config.h | 22 | ||||
-rw-r--r-- | layouts/community/ergodox/drashna_glow/rules.mk | 2 | ||||
-rw-r--r-- | layouts/community/numpad_5x6/drashna/keymap.c | 2 | ||||
-rw-r--r-- | layouts/community/ortho_4x12/drashna/config.h | 63 | ||||
-rw-r--r-- | layouts/community/ortho_4x12/drashna/keymap.c | 180 | ||||
-rw-r--r-- | layouts/community/ortho_4x12/drashna/rules.mk | 2 | ||||
-rw-r--r-- | layouts/community/ortho_5x12/drashna/config.h | 31 | ||||
-rw-r--r-- | layouts/community/ortho_5x12/drashna/keymap.c | 20 | ||||
-rw-r--r-- | layouts/community/ortho_5x12/drashna/rules.mk | 2 |
11 files changed, 225 insertions, 230 deletions
diff --git a/layouts/community/ergodox/drashna/keymap.c b/layouts/community/ergodox/drashna/keymap.c index 74382f1752..763b218f74 100644 --- a/layouts/community/ergodox/drashna/keymap.c +++ b/layouts/community/ergodox/drashna/keymap.c @@ -18,21 +18,20 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. #include "drashna.h" #ifdef UNICODEMAP_ENABLE -#include "drashna_unicode.h" -#endif // UNICODEMAP_ENABLE +# include "drashna_unicode.h" +#endif // UNICODEMAP_ENABLE #ifndef UNICODE_ENABLE -# define UC(x) KC_NO +# define UC(x) KC_NO #endif extern userspace_config_t userspace_config; -enum more_custom_keycodes { - KC_SWAP_NUM = NEW_SAFE_RANGE -}; +enum more_custom_keycodes { KC_SWAP_NUM = NEW_SAFE_RANGE }; -//define layer change stuff for underglow indicator +// define layer change stuff for underglow indicator bool skip_leds = false; +// clang-format off #define LAYOUT_ergodox_pretty_base( \ K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, \ K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, \ @@ -301,9 +300,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), }; +// clang-format on bool process_record_keymap(uint16_t keycode, keyrecord_t *record) { - switch (keycode) { case KC_1: if (IS_LAYER_ON(_GAMEPAD) && userspace_config.swapped_numbers) { @@ -332,7 +331,7 @@ bool process_record_keymap(uint16_t keycode, keyrecord_t *record) { } break; } - //switch (keycode) { + // switch (keycode) { // case KC_P00: // if (!record->event.pressed) { // register_code(KC_KP_0); @@ -347,9 +346,9 @@ bool process_record_keymap(uint16_t keycode, keyrecord_t *record) { } void matrix_scan_keymap(void) { // runs frequently to update info - uint8_t modifiers = get_mods(); + uint8_t modifiers = get_mods(); uint8_t led_usb_state = host_keyboard_leds(); - uint8_t one_shot = get_oneshot_mods(); + uint8_t one_shot = get_oneshot_mods(); if (!skip_leds) { ergodox_board_led_off(); @@ -360,24 +359,21 @@ void matrix_scan_keymap(void) { // runs frequently to update info // Since we're not using the LEDs here for layer indication anymore, // then lets use them for modifier indicators. Shame we don't have 4... // Also, no "else", since we want to know each, independently. - if ( ( modifiers | one_shot ) & MOD_MASK_SHIFT || led_usb_state & (1<<USB_LED_CAPS_LOCK) ) { + if ((modifiers | one_shot) & MOD_MASK_SHIFT || led_usb_state & (1 << USB_LED_CAPS_LOCK)) { ergodox_right_led_2_on(); - ergodox_right_led_2_set( 50 ); + ergodox_right_led_2_set(50); } - if ( ( modifiers | one_shot ) & MOD_MASK_CTRL) { + if ((modifiers | one_shot) & MOD_MASK_CTRL) { ergodox_right_led_1_on(); - ergodox_right_led_1_set( 10 ); + ergodox_right_led_1_set(10); } - if ( ( modifiers | one_shot ) & MOD_MASK_ALT) { + if ((modifiers | one_shot) & MOD_MASK_ALT) { ergodox_right_led_3_on(); - ergodox_right_led_3_set( 10 ); + ergodox_right_led_3_set(10); } - } - } - bool indicator_is_this_led_used_keyboard(uint8_t index) { switch (index) { case 13 ... 14: @@ -388,76 +384,83 @@ bool indicator_is_this_led_used_keyboard(uint8_t index) { } } - #ifdef RGB_MATRIX_ENABLE -void suspend_power_down_keymap(void) { - rgb_matrix_set_suspend_state(true); -} +void suspend_power_down_keymap(void) { rgb_matrix_set_suspend_state(true); } -void suspend_wakeup_init_keymap(void) { - rgb_matrix_set_suspend_state(false); -} +void suspend_wakeup_init_keymap(void) { rgb_matrix_set_suspend_state(false); } void rgb_matrix_indicators_user(void) { - if ( userspace_config.rgb_layer_change && -#ifdef RGB_DISABLE_WHEN_USB_SUSPENDED + if (userspace_config.rgb_layer_change && +# ifdef RGB_DISABLE_WHEN_USB_SUSPENDED !g_suspend_state && -#endif -#if defined(RGBLIGHT_ENABLE) +# endif +# if defined(RGBLIGHT_ENABLE) (!rgblight_config.enable && rgb_matrix_config.enable) -#else +# else rgb_matrix_config.enable -#endif +# endif ) { switch (biton32(layer_state)) { - case _MODS: - rgb_matrix_layer_helper(0xFF, 0xFF, 0x00, LED_FLAG_MODIFIER); break; case _GAMEPAD: - rgb_matrix_layer_helper(0xFF, 0x80, 0x00, LED_FLAG_MODIFIER); - rgb_matrix_set_color(32, 0x00, 0xFF, 0x00); // Q - rgb_matrix_set_color(31, 0x00, 0xFF, 0xFF); // W - rgb_matrix_set_color(30, 0xFF, 0x00, 0x00); // E - rgb_matrix_set_color(29, 0xFF, 0x80, 0x00); // R - rgb_matrix_set_color(37, 0x00, 0xFF, 0xFF); // A - rgb_matrix_set_color(36, 0x00, 0xFF, 0xFF); // S - rgb_matrix_set_color(35, 0x00, 0xFF, 0xFF); // D - rgb_matrix_set_color(34, 0x7A, 0x00, 0xFF); // F - - rgb_matrix_set_color(userspace_config.swapped_numbers ? 27 : 26, 0xFF, 0xFF, 0xFF); // 1 - rgb_matrix_set_color(userspace_config.swapped_numbers ? 26 : 27, 0x00, 0xFF, 0x00); // 2 - rgb_matrix_set_color(25, 0x7A, 0x00, 0xFF); // 3 - + rgb_matrix_layer_helper(HSV_ORANGE, 1, rgb_matrix_config.speed, LED_FLAG_MODIFIER); + rgb_matrix_set_color(32, 0x00, 0xFF, 0x00); // Q + rgb_matrix_set_color(31, 0x00, 0xFF, 0xFF); // W + rgb_matrix_set_color(30, 0xFF, 0x00, 0x00); // E + rgb_matrix_set_color(29, 0xFF, 0x80, 0x00); // R + rgb_matrix_set_color(37, 0x00, 0xFF, 0xFF); // A + rgb_matrix_set_color(36, 0x00, 0xFF, 0xFF); // S + rgb_matrix_set_color(35, 0x00, 0xFF, 0xFF); // D + rgb_matrix_set_color(34, 0x7A, 0x00, 0xFF); // F + + rgb_matrix_set_color(userspace_config.swapped_numbers ? 27 : 26, 0xFF, 0xFF, 0xFF); // 1 + rgb_matrix_set_color(userspace_config.swapped_numbers ? 26 : 27, 0x00, 0xFF, 0x00); // 2 + rgb_matrix_set_color(25, 0x7A, 0x00, 0xFF); // 3 break; case _DIABLO: - rgb_matrix_layer_helper(0xFF, 0x00, 0x00, LED_FLAG_MODIFIER); break; + rgb_matrix_layer_helper(HSV_RED, 1, rgb_matrix_config.speed * 8, LED_FLAG_MODIFIER); + break; case _RAISE: - rgb_matrix_layer_helper(0xFF, 0xFF, 0x00, LED_FLAG_MODIFIER); break; + rgb_matrix_layer_helper(HSV_YELLOW, 1, rgb_matrix_config.speed, LED_FLAG_MODIFIER); + break; case _LOWER: - rgb_matrix_layer_helper(0x00, 0xFF, 0x00, LED_FLAG_MODIFIER); break; + rgb_matrix_layer_helper(HSV_GREEN, 1, rgb_matrix_config.speed, LED_FLAG_MODIFIER); + break; case _ADJUST: - rgb_matrix_layer_helper(0xFF, 0x00, 0x00, LED_FLAG_MODIFIER); break; - default: + rgb_matrix_layer_helper(HSV_RED, 1, rgb_matrix_config.speed, LED_FLAG_MODIFIER); + break; + default: { + bool mods_enabled = IS_LAYER_ON(_MODS); switch (biton32(default_layer_state)) { case _QWERTY: - rgb_matrix_layer_helper(0x00, 0xFF, 0xFF, LED_FLAG_MODIFIER); break; + rgb_matrix_layer_helper(HSV_CYAN, mods_enabled, rgb_matrix_config.speed, LED_FLAG_MODIFIER); + break; case _COLEMAK: - rgb_matrix_layer_helper(0xFF, 0x00, 0xFF, LED_FLAG_MODIFIER); break; + rgb_matrix_layer_helper(HSV_MAGENTA, mods_enabled, rgb_matrix_config.speed, LED_FLAG_MODIFIER); + break; case _DVORAK: - rgb_matrix_layer_helper(0x00, 0xFF, 0x00, LED_FLAG_MODIFIER); break; + rgb_matrix_layer_helper(HSV_SPRINGGREEN, mods_enabled, rgb_matrix_config.speed, LED_FLAG_MODIFIER); + break; case _WORKMAN: - rgb_matrix_layer_helper(0xD9, 0xA5, 0x21, LED_FLAG_MODIFIER); break; + rgb_matrix_layer_helper(HSV_GOLDENROD, mods_enabled, rgb_matrix_config.speed, LED_FLAG_MODIFIER); + break; case _NORMAN: - rgb_matrix_layer_helper(0xFF, 0x7C, 0x4D, LED_FLAG_MODIFIER); break; + rgb_matrix_layer_helper(HSV_CORAL, mods_enabled, rgb_matrix_config.speed, LED_FLAG_MODIFIER); + break; case _MALTRON: - rgb_matrix_layer_helper(0xFF, 0xFF, 0x00, LED_FLAG_MODIFIER); break; + rgb_matrix_layer_helper(HSV_YELLOW, mods_enabled, rgb_matrix_config.speed, LED_FLAG_MODIFIER); + break; case _EUCALYN: - rgb_matrix_layer_helper(0xFF, 0x80, 0xBF, LED_FLAG_MODIFIER); break; + rgb_matrix_layer_helper(HSV_PINK, mods_enabled, rgb_matrix_config.speed, LED_FLAG_MODIFIER); + break; case _CARPLAX: - rgb_matrix_layer_helper(0x00, 0x00, 0xFF, LED_FLAG_MODIFIER); break; + rgb_matrix_layer_helper(HSV_BLUE, mods_enabled, rgb_matrix_config.speed, LED_FLAG_MODIFIER); + break; } + break; + } } } } -#endif //RGB_MATRIX_INIT +#endif // RGB_MATRIX_INIT diff --git a/layouts/community/ergodox/drashna/rules.mk b/layouts/community/ergodox/drashna/rules.mk index f0628d9daf..f3cd55ea8f 100644 --- a/layouts/community/ergodox/drashna/rules.mk +++ b/layouts/community/ergodox/drashna/rules.mk @@ -17,4 +17,4 @@ RGBLIGHT_TWINKLE = no INDICATOR_LIGHTS = no RGBLIGHT_STARTUP_ANIMATION = yes -DEBOUNCE_TYPE = eager_pk +DEBOUNCE_TYPE = eager_pr diff --git a/layouts/community/ergodox/drashna_glow/config.h b/layouts/community/ergodox/drashna_glow/config.h index e6c8223e91..28bed20e08 100644 --- a/layouts/community/ergodox/drashna_glow/config.h +++ b/layouts/community/ergodox/drashna_glow/config.h @@ -4,25 +4,3 @@ #undef PRODUCT #define PRODUCT DrashnaDox - Hacked ErgoDox EZ Glow - -#ifdef RGB_MATRIX_ENABLE -# define RGB_MATRIX_KEYPRESSES // reacts to keypresses (will slow down matrix scan by a lot) -// #define RGB_MATRIX_KEYRELEASES // reacts to keyreleases (not recommened) -// #define RGB_DISABLE_AFTER_TIMEOUT 0 // number of ticks to wait until disabling effects -# define RGB_DISABLE_WHEN_USB_SUSPENDED true// turn off effects when suspended -// #define RGB_MATRIX_MAXIMUM_BRIGHTNESS 200 // limits maximum brightness of LEDs to 200 out of 255. If not defined maximum brightness is set to 255 -// #define EECONFIG_RGB_MATRIX (uint32_t *)16 - -# define DISABLE_RGB_MATRIX_GRADIENT_UP_DOWN -# define DISABLE_RGB_MATRIX_CYCLE_ALL -# define DISABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON -# define DISABLE_RGB_MATRIX_DUAL_BEACON -# define DISABLE_RGB_MATRIX_RAINBOW_BEACON -# define DISABLE_RGB_MATRIX_RAINBOW_PINWHEELS -# define DISABLE_RGB_MATRIX_DIGITAL_RAIN -# define DISABLE_RGB_MATRIX_SOLID_REACTIVE -# define DISABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE -# define DISABLE_RGB_MATRIX_SOLID_REACTIVE_CROSS -# define DISABLE_RGB_MATRIX_SOLID_REACTIVE_NEXUS - -#endif diff --git a/layouts/community/ergodox/drashna_glow/rules.mk b/layouts/community/ergodox/drashna_glow/rules.mk index ae9a2fb16c..e1da86443f 100644 --- a/layouts/community/ergodox/drashna_glow/rules.mk +++ b/layouts/community/ergodox/drashna_glow/rules.mk @@ -9,5 +9,5 @@ SRC += $(CORRECTED_LAYOUT)/keymap.c ifneq (,$(findstring ergodox_ez,$(KEYBOARD))) RGBLIGHT_ENABLE = no RGB_MATRIX_ENABLE = yes - TAP_DANCE_ENABLE = no +# TAP_DANCE_ENABLE = no endif diff --git a/layouts/community/numpad_5x6/drashna/keymap.c b/layouts/community/numpad_5x6/drashna/keymap.c index 646f4db337..81710221d3 100644 --- a/layouts/community/numpad_5x6/drashna/keymap.c +++ b/layouts/community/numpad_5x6/drashna/keymap.c @@ -3,6 +3,7 @@ #define F2_MCRO LT(_GAMEPAD, KC_F2) +// clang-format off const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_NUMLOCK] = LAYOUT_numpad_5x6( KC_F1, F2_MCRO, KC_NLCK, KC_PSLS, KC_PAST, KC_PMNS, @@ -20,3 +21,4 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { RGB_VAI, RGB_VAD, _______, _______, _______ ), }; +// clang-format on diff --git a/layouts/community/ortho_4x12/drashna/config.h b/layouts/community/ortho_4x12/drashna/config.h index 475afd213f..30db12965d 100644 --- a/layouts/community/ortho_4x12/drashna/config.h +++ b/layouts/community/ortho_4x12/drashna/config.h @@ -1,53 +1,48 @@ #pragma once - #if defined(RGBLIGHT_ENABLE) && !defined(RGBLED_NUM) -# define RGB_DI_PIN B3 -# define RGBLED_NUM 13 // Number of LEDs -# define RGBLIGHT_ANIMATIONS -# define RGBLIGHT_HUE_STEP 12 -# define RGBLIGHT_SAT_STEP 12 -# define RGBLIGHT_VAL_STEP 12 -# define RGBLIGHT_EFFECT_KNIGHT_LENGTH 2 -# define RGBLIGHT_EFFECT_SNAKE_LENGTH 2 -# ifdef RGB_MATRIX_ENABLE -# define RGBLIGHT_DISABLE_KEYCODES -# endif -#endif // RGBLIGHT_ENABLE +# define RGB_DI_PIN B3 +# define RGBLED_NUM 13 // Number of LEDs +# define RGBLIGHT_ANIMATIONS +# define RGBLIGHT_HUE_STEP 12 +# define RGBLIGHT_SAT_STEP 12 +# define RGBLIGHT_VAL_STEP 12 +# define RGBLIGHT_EFFECT_KNIGHT_LENGTH 2 +# define RGBLIGHT_EFFECT_SNAKE_LENGTH 2 +# ifdef RGB_MATRIX_ENABLE +# define RGBLIGHT_DISABLE_KEYCODES +# endif +#endif // RGBLIGHT_ENABLE #ifdef RGB_MATRIX_ENABLE -# define RGB_MATRIX_KEYPRESSES // reacts to keypresses (will slow down matrix scan by a lot) +# define RGB_MATRIX_KEYPRESSES // reacts to keypresses (will slow down matrix scan by a lot) // #define RGB_MATRIX_KEYRELEASES // reacts to keyreleases (not recommened) // #define RGB_DISABLE_AFTER_TIMEOUT 0 // number of ticks to wait until disabling effects // #define RGB_MATRIX_MAXIMUM_BRIGHTNESS 200 // limits maximum brightness of LEDs to 200 out of 255. If not defined maximum brightness is set to 255 -# define RGB_DISABLE_WHEN_USB_SUSPENDED true// turn off effects when suspended -# ifndef KEYBOARD_planck_ez -# define EECONFIG_RGB_MATRIX (uint32_t *)15 -# endif +# define RGB_DISABLE_WHEN_USB_SUSPENDED true // turn off effects when suspended #endif #if defined(KEYBOARD_lets_split_rev2) -# define USE_SERIAL -# undef USE_I2C -# define EE_HANDS +# define USE_SERIAL +# undef USE_I2C +# define EE_HANDS #endif #if !defined(KEYBOARD_planck_light) -# ifdef RGBLIGHT_ENABLE -# define NO_MUSIC_MODE -# endif // RGBLIGHT_ENABLE -#endif // KEYBOARD_planck_light - +# ifdef RGBLIGHT_ENABLE +# define NO_MUSIC_MODE +# endif // RGBLIGHT_ENABLE +#endif // KEYBOARD_planck_light #if defined(KEYBOARD_planck) -# undef PRODUCT -# if defined(KEYBOARD_planck_light) -# define PRODUCT Drashna Hacked RGB Beacon (Planck Light) -# elif defined(KEYBOARD_planck_rev6) -# define PRODUCT Drashna Hacked Planck Rev6 -# elif defined(KEYBOARD_planck_EZ) -# define PRODUCT Drashna Hacked Planck EZ -# endif +# undef PRODUCT +# if defined(KEYBOARD_planck_light) +# define PRODUCT Drashna Hacked RGB Beacon(Planck Light) +# elif defined(KEYBOARD_planck_rev6) +# define PRODUCT Drashna Hacked Planck Rev6 +# elif defined(KEYBOARD_planck_ez) +# define PRODUCT Drashna Hacked Planck EZ +# endif #endif /* diff --git a/layouts/community/ortho_4x12/drashna/keymap.c b/layouts/community/ortho_4x12/drashna/keymap.c index c1c016ce9f..3e26b93fcd 100644 --- a/layouts/community/ortho_4x12/drashna/keymap.c +++ b/layouts/community/ortho_4x12/drashna/keymap.c @@ -21,27 +21,27 @@ extern rgblight_config_t rgblight_config; #endif - #ifdef BACKLIGHT_ENABLE enum planck_keycodes { - BACKLIT = NEW_SAFE_RANGE, + BACKLIT = NEW_SAFE_RANGE, }; #else - #define BACKLIT OSM(MOD_LSFT) +# define BACKLIT OSM(MOD_LSFT) #endif #ifdef KEYBOARD_planck_ez -# define PLNK_1 BK_LWER -# define PLNK_2 SP_LWER -# define PLNK_3 KC_NO -# define PLNK_4 ET_RAIS +# define PLNK_1 BK_LWER +# define PLNK_2 SP_LWER +# define PLNK_3 KC_NO +# define PLNK_4 ET_RAIS #else -# define PLNK_1 SP_LWER -# define PLNK_2 BK_LWER -# define PLNK_3 DL_RAIS -# define PLNK_4 ET_RAIS +# define PLNK_1 SP_LWER +# define PLNK_2 BK_LWER +# define PLNK_3 DL_RAIS +# define PLNK_4 ET_RAIS #endif +// clang-format off #define LAYOUT_ortho_4x12_base( \ K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, \ K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, \ @@ -135,17 +135,17 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ) }; - +// clang-format on bool process_record_keymap(uint16_t keycode, keyrecord_t *record) { switch (keycode) { - #ifdef BACKLIGHT_ENABLE +#ifdef BACKLIGHT_ENABLE case BACKLIT: if (record->event.pressed) { register_code(KC_RSFT); - #ifdef BACKLIGHT_ENABLE +# ifdef BACKLIGHT_ENABLE backlight_step(); - #endif +# endif } else { unregister_code(KC_RSFT); } @@ -172,6 +172,7 @@ bool music_mask_user(uint16_t keycode) { #ifdef RGB_MATRIX_ENABLE +// clang-format off void suspend_power_down_keymap(void) { rgb_matrix_set_suspend_state(true); } @@ -179,98 +180,122 @@ void suspend_power_down_keymap(void) { void suspend_wakeup_init_keymap(void) { rgb_matrix_set_suspend_state(false); } +// clang-format on void rgb_matrix_indicators_user(void) { uint8_t this_mod = get_mods(); uint8_t this_led = host_keyboard_leds(); uint8_t this_osm = get_oneshot_mods(); - bool is_ez; - #ifdef KEYBOARD_planck_ez + bool is_ez; +# ifdef KEYBOARD_planck_ez is_ez = true; - #endif +# endif - if ( userspace_config.rgb_layer_change && -#ifdef RGB_DISABLE_WHEN_USB_SUSPENDED + if (userspace_config.rgb_layer_change && +# ifdef RGB_DISABLE_WHEN_USB_SUSPENDED !g_suspend_state && -#endif -#if defined(RGBLIGHT_ENABLE) - (!rgblight_config.enable && rgb_matrix_config.enable) -#else - rgb_matrix_config.enable -#endif - ) { +# endif +# if defined(RGBLIGHT_ENABLE) + (!rgblight_config.enable && rgb_matrix_config.enable) +# else + rgb_matrix_config.enable +# endif + ) { switch (biton32(layer_state)) { + case _GAMEPAD: + rgb_matrix_layer_helper(HSV_ORANGE, 1, rgb_matrix_config.speed, LED_FLAG_MODIFIER); + break; + case _DIABLO: + rgb_matrix_layer_helper(HSV_RED, 1, rgb_matrix_config.speed * 8, LED_FLAG_MODIFIER); + break; case _RAISE: - rgb_matrix_layer_helper(0xFF, 0xFF, 0x00, LED_FLAG_MODIFIER); break; + rgb_matrix_layer_helper(HSV_YELLOW, 1, rgb_matrix_config.speed, LED_FLAG_MODIFIER); + break; case _LOWER: - rgb_matrix_layer_helper(0x00, 0xFF, 0x00, LED_FLAG_MODIFIER); break; + rgb_matrix_layer_helper(HSV_GREEN, 1, rgb_matrix_config.speed, LED_FLAG_MODIFIER); + break; case _ADJUST: - rgb_matrix_layer_helper(0xFF, 0x00, 0x00, LED_FLAG_MODIFIER); break; - default: + rgb_matrix_layer_helper(HSV_RED, 1, rgb_matrix_config.speed, LED_FLAG_MODIFIER); + break; + default: { + bool mods_enabled = IS_LAYER_ON(_MODS); switch (biton32(default_layer_state)) { - case _QWERTY: - rgb_matrix_layer_helper(0x00, 0xFF, 0xFF, LED_FLAG_MODIFIER); break; - case _COLEMAK: - rgb_matrix_layer_helper(0xFF, 0x00, 0xFF, LED_FLAG_MODIFIER); break; - case _DVORAK: - rgb_matrix_layer_helper(0x00, 0xFF, 0x00, LED_FLAG_MODIFIER); break; - case _WORKMAN: - rgb_matrix_layer_helper(0xD9, 0xA5, 0x21, LED_FLAG_MODIFIER); break; - case _NORMAN: - rgb_matrix_layer_helper(0xFF, 0x7C, 0x4D, LED_FLAG_MODIFIER); break; - case _MALTRON: - rgb_matrix_layer_helper(0xFF, 0xFF, 0x00, LED_FLAG_MODIFIER); break; - case _EUCALYN: - rgb_matrix_layer_helper(0xFF, 0x80, 0xBF, LED_FLAG_MODIFIER); break; - case _CARPLAX: - rgb_matrix_layer_helper(0x00, 0x00, 0xFF, LED_FLAG_MODIFIER); break; + case _QWERTY: + rgb_matrix_layer_helper(HSV_CYAN, mods_enabled, rgb_matrix_config.speed, LED_FLAG_MODIFIER); + break; + case _COLEMAK: + rgb_matrix_layer_helper(HSV_MAGENTA, mods_enabled, rgb_matrix_config.speed, LED_FLAG_MODIFIER); + break; + case _DVORAK: + rgb_matrix_layer_helper(HSV_SPRINGGREEN, mods_enabled, rgb_matrix_config.speed, LED_FLAG_MODIFIER); + break; + case _WORKMAN: + rgb_matrix_layer_helper(HSV_GOLDENROD, mods_enabled, rgb_matrix_config.speed, LED_FLAG_MODIFIER); + break; + case _NORMAN: + rgb_matrix_layer_helper(HSV_CORAL, mods_enabled, rgb_matrix_config.speed, LED_FLAG_MODIFIER); + break; + case _MALTRON: + rgb_matrix_layer_helper(HSV_YELLOW, mods_enabled, rgb_matrix_config.speed, LED_FLAG_MODIFIER); + break; + case _EUCALYN: + rgb_matrix_layer_helper(HSV_PINK, mods_enabled, rgb_matrix_config.speed, LED_FLAG_MODIFIER); + break; + case _CARPLAX: + rgb_matrix_layer_helper(HSV_BLUE, mods_enabled, rgb_matrix_config.speed, LED_FLAG_MODIFIER); + break; } + break; + } } } switch (biton32(default_layer_state)) { case _QWERTY: - rgb_matrix_set_color(is_ez ? 41 : 42, 0x00, 0xFF, 0xFF); break; + rgb_matrix_set_color(is_ez ? 41 : 42, 0x00, 0xFF, 0xFF); + break; case _COLEMAK: - rgb_matrix_set_color(is_ez ? 41 : 42, 0xFF, 0x00, 0xFF); break; + rgb_matrix_set_color(is_ez ? 41 : 42, 0xFF, 0x00, 0xFF); + break; case _DVORAK: - rgb_matrix_set_color(is_ez ? 41 : 42, 0x00, 0xFF, 0x00); break; + rgb_matrix_set_color(is_ez ? 41 : 42, 0x00, 0xFF, 0x00); + break; case _WORKMAN: - rgb_matrix_set_color(is_ez ? 41 : 42, 0xD9, 0xA5, 0x21); break; + rgb_matrix_set_color(is_ez ? 41 : 42, 0xD9, 0xA5, 0x21); + break; } - if ( (this_mod | this_osm) & MOD_MASK_SHIFT || this_led & (1<<USB_LED_CAPS_LOCK)) { + if ((this_mod | this_osm) & MOD_MASK_SHIFT || this_led & (1 << USB_LED_CAPS_LOCK)) { rgb_matrix_set_color(24, 0x00, 0xFF, 0x00); rgb_matrix_set_color(36, 0x00, 0xFF, 0x00); } - if ( (this_mod | this_osm) & MOD_MASK_CTRL) { + if ((this_mod | this_osm) & MOD_MASK_CTRL) { rgb_matrix_set_color(25, 0xFF, 0x00, 0x00); rgb_matrix_set_color(34, 0xFF, 0x00, 0x00); rgb_matrix_set_color(37, 0xFF, 0x00, 0x00); - } - if ( (this_mod | this_osm) & MOD_MASK_GUI) { + if ((this_mod | this_osm) & MOD_MASK_GUI) { rgb_matrix_set_color(39, 0xFF, 0xD9, 0x00); } - if ( (this_mod | this_osm) & MOD_MASK_ALT) { + if ((this_mod | this_osm) & MOD_MASK_ALT) { rgb_matrix_set_color(38, 0x00, 0x00, 0xFF); } } void matrix_init_keymap(void) { - // rgblight_mode(RGB_MATRIX_MULTISPLASH); + // rgblight_mode(RGB_MATRIX_MULTISPLASH); } -#else //RGB_MATRIX_INIT +#else // RGB_MATRIX_INIT void matrix_init_keymap(void) { -#if !defined(CONVERT_TO_PROTON_C) && !defined(KEYBOARD_planck) +# if !defined(CONVERT_TO_PROTON_C) && !defined(KEYBOARD_planck) setPinOutput(D5); writePinHigh(D5); setPinOutput(B0); writePinHigh(B0); -#endif +# endif } -#endif //RGB_MATRIX_INIT +#endif // RGB_MATRIX_INIT #ifdef ENCODER_ENABLE void encoder_update(bool clockwise) { @@ -279,34 +304,42 @@ void encoder_update(bool clockwise) { clockwise ? tap_code(KC_VOLD) : tap_code(KC_VOLU); break; case _LOWER: -#ifdef RGB_MATRIX_ENABLE - clockwise ? rgb_matrix_step() : rgblight_step_reverse(); -#else +# ifdef RGB_MATRIX_ENABLE + clockwise ? rgb_matrix_step() : rgb_matrix_step_reverse(); +# else clockwise ? tap_code(KC_PGDN) : tap_code(KC_PGUP); -#endif +# endif break; case _ADJUST: -#ifdef AUDIO_CLICKY +# ifdef AUDIO_CLICKY clockwise ? clicky_freq_up() : clicky_freq_down(); -#endif +# endif break; default: clockwise ? tap_code(KC_DOWN) : tap_code(KC_UP); } -#ifdef AUDIO_CLICKY +# ifdef AUDIO_CLICKY clicky_play(); -#endif +# endif } -#endif // ENCODER_ENABLE +#endif // ENCODER_ENABLE #ifdef KEYBOARD_planck_rev6 void dip_update(uint8_t index, bool active) { switch (index) { case 0: - if(active) { audio_on(); } else { audio_off(); } + if (active) { + audio_on(); + } else { + audio_off(); + } break; case 1: - if(active) { clicky_on(); } else { clicky_off(); } + if (active) { + clicky_on(); + } else { + clicky_off(); + } break; case 2: keymap_config.swap_lalt_lgui = keymap_config.swap_ralt_rgui = active; @@ -316,11 +349,10 @@ void dip_update(uint8_t index, bool active) { break; } } -#endif // KEYBOARD_planck_rev6 +#endif // KEYBOARD_planck_rev6 #ifdef KEYBOARD_planck_ez layer_state_t layer_state_set_keymap(layer_state_t state) { - palClearPad(GPIOB, 8); palClearPad(GPIOB, 9); switch (biton32(state)) { diff --git a/layouts/community/ortho_4x12/drashna/rules.mk b/layouts/community/ortho_4x12/drashna/rules.mk index 351201e2f0..21ce7ebb1c 100644 --- a/layouts/community/ortho_4x12/drashna/rules.mk +++ b/layouts/community/ortho_4x12/drashna/rules.mk @@ -21,7 +21,7 @@ endif ifneq (,$(findstring planck/ez,$(KEYBOARD))) # Make sure it IS the Planck Light RGBLIGHT_ENABLE = no # SERIAL_LINK_ENABLE = yes - ENCODER_ENABLE = no + ENCODER_ENABLE = yes RGB_MATRIX_ENABLE = IS31FL3737 INDICATOR_LIGHTS = yes RGBLIGHT_TWINKLE = yes diff --git a/layouts/community/ortho_5x12/drashna/config.h b/layouts/community/ortho_5x12/drashna/config.h index 123c284a2c..7504338fff 100644 --- a/layouts/community/ortho_5x12/drashna/config.h +++ b/layouts/community/ortho_5x12/drashna/config.h @@ -1,21 +1,22 @@ #pragma once - /* ws2812 RGB LED */ #if defined(KEYBOARD_fractal) -# define RGB_DI_PIN D2 -# undef RGBLED_NUM -# define RGBLIGHT_ANIMATIONS -# define RGBLED_NUM 29 // Number of LEDs -# undef RGBLIGHT_HUE_STEP -# define RGBLIGHT_HUE_STEP 8 -# undef RGBLIGHT_SAT_STEP -# define RGBLIGHT_SAT_STEP 8 -# undef RGBLIGHT_VAL_STEP -# define RGBLIGHT_VAL_STEP 8 -# define RGBLIGHT_LIMIT_VAL 175 -# define RGBLIGHT_SLEEP +# define RGB_DI_PIN D2 +# undef RGBLED_NUM +# define RGBLIGHT_ANIMATIONS +# define RGBLED_NUM 29 // Number of LEDs +# undef RGBLIGHT_HUE_STEP +# define RGBLIGHT_HUE_STEP 8 +# undef RGBLIGHT_SAT_STEP +# define RGBLIGHT_SAT_STEP 8 +# undef RGBLIGHT_VAL_STEP +# define RGBLIGHT_VAL_STEP 8 +# define RGBLIGHT_LIMIT_VAL 175 +# define RGBLIGHT_SLEEP -# define RGBLIGHT_EFFECT_KNIGHT_OFFSET 3 -# define RGBLIGHT_EFFECT_KNIGHT_LED_NUM 14 +# define RGBLIGHT_EFFECT_KNIGHT_OFFSET 3 +# define RGBLIGHT_EFFECT_KNIGHT_LED_NUM 14 +# define B7_AUDIO +# define NO_MUSIC_MODE #endif diff --git a/layouts/community/ortho_5x12/drashna/keymap.c b/layouts/community/ortho_5x12/drashna/keymap.c index bf0907a513..26be99af5c 100644 --- a/layouts/community/ortho_5x12/drashna/keymap.c +++ b/layouts/community/ortho_5x12/drashna/keymap.c @@ -19,6 +19,7 @@ #include QMK_KEYBOARD_H #include "drashna.h" +// clang-format off #define LAYOUT_ortho_5x12_base( \ K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, \ K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, \ @@ -135,22 +136,5 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _________________ADJUST_L3_________________, _________________ADJUST_R3_________________, TG_MODS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ) - - -}; - -bool process_record_keymap(uint16_t keycode, keyrecord_t *record) { - switch (keycode) { - } - return true; }; - -void matrix_init_keymap(void) { -#ifdef KEYBOARD_fractal - setPinOutput(D5); - writePinHigh(D5); - - setPinOutput(B0); - writePinHigh(B0); -#endif -} +// clang-format on diff --git a/layouts/community/ortho_5x12/drashna/rules.mk b/layouts/community/ortho_5x12/drashna/rules.mk index 160419fcce..ee7c2ad63c 100644 --- a/layouts/community/ortho_5x12/drashna/rules.mk +++ b/layouts/community/ortho_5x12/drashna/rules.mk @@ -7,7 +7,7 @@ TAP_DANCE_ENABLE = no AUDIO_ENABLE = yes ifneq (,$(findstring fractal,$(KEYBOARD))) # Make sure it IS the Planck Light RGB_MATRIX_ENABLE = no - AUDIO_ENABLE = no + AUDIO_ENABLE = yes RGBLIGHT_ENABLE = yes RGBLIGHT_TWINKLE = yes BOOTLOADER = qmk-dfu |