From dc7081a8233e5d709d09cc09adafdc42efd9c8a0 Mon Sep 17 00:00:00 2001
From: Takeshi ISHII <2170248+mtei@users.noreply.github.com>
Date: Wed, 23 Dec 2020 11:50:12 +0900
Subject: [PATCH] [Keymap] fix and update helix/rev3_5rows:five_rows (#11191)
* [Keymap] fix and update helix/rev3_5rows:five_rows
* fix rgblight animation selection
* use `DEBUG_MATRIX_SCAN_RATE_ENABLE` insted of keyboard_post_init_user_scan.c
* Change the initial value of the ENCODER_ENABLE to 'no' in 'keymaps/five_rows/rules.mk'
* Add 'HELIX=debug/no-debug' option into 'rev3_5rows/keymaps/five_rows/rules.mk'
* Add '#define OLED_UPDATE_INTERVAL 100' 'rev3_5rows/keymaps/five_rows/config.h'
* add LED_ANIMATIONS_LEVEL macro into rev3_5rows/keymaps/five_rows/
* Change OLED_UPDATE_INTERVAL value in rev3_5rows/keymaps/five_rows/config.h
---
.../rev3_5rows/keymaps/five_rows/config.h | 30 +++++++++++
.../five_rows/keyboard_post_init_user_scan.c | 7 ---
.../rev3_5rows/keymaps/five_rows/rules.mk | 51 +++++++++++++++++--
3 files changed, 76 insertions(+), 12 deletions(-)
delete mode 100644 keyboards/helix/rev3_5rows/keymaps/five_rows/keyboard_post_init_user_scan.c
diff --git a/keyboards/helix/rev3_5rows/keymaps/five_rows/config.h b/keyboards/helix/rev3_5rows/keymaps/five_rows/config.h
index 416e8fd7c4..205867e5b7 100644
--- a/keyboards/helix/rev3_5rows/keymaps/five_rows/config.h
+++ b/keyboards/helix/rev3_5rows/keymaps/five_rows/config.h
@@ -22,6 +22,9 @@ along with this program. If not, see .
#ifndef CONFIG_USER_H
#define CONFIG_USER_H
+#undef OLED_UPDATE_INTERVAL
+#define OLED_UPDATE_INTERVAL 50
+
#undef TAPPING_TERM
#define TAPPING_TERM 300
#define PERMISSIVE_HOLD
@@ -33,7 +36,19 @@ along with this program. If not, see .
// If you need more program area, try select and reduce rgblight modes to use.
// Selection of RGBLIGHT MODE to use.
+#undef RGBLIGHT_ANIMATIONS
+#undef RGBLIGHT_EFFECT_BREATHING
+#undef RGBLIGHT_EFFECT_RAINBOW_MOOD
+#undef RGBLIGHT_EFFECT_RAINBOW_SWIRL
+#undef RGBLIGHT_EFFECT_SNAKE
+#undef RGBLIGHT_EFFECT_KNIGHT
+#undef RGBLIGHT_EFFECT_CHRISTMAS
+#undef RGBLIGHT_EFFECT_STATIC_GRADIENT
+#undef RGBLIGHT_EFFECT_RGB_TEST
+#undef RGBLIGHT_EFFECT_ALTERNATING
+
#if defined(LED_ANIMATIONS)
+# if LED_ANIMATIONS_LEVEL > 1
#define RGBLIGHT_EFFECT_BREATHING
#define RGBLIGHT_EFFECT_RAINBOW_MOOD
#define RGBLIGHT_EFFECT_RAINBOW_SWIRL
@@ -43,6 +58,21 @@ along with this program. If not, see .
#define RGBLIGHT_EFFECT_STATIC_GRADIENT
//#define RGBLIGHT_EFFECT_RGB_TEST
//#define RGBLIGHT_EFFECT_ALTERNATING
+# else
+ #define RGBLIGHT_EFFECT_BREATHING
+ #define RGBLIGHT_EFFECT_RAINBOW_MOOD
+ //#define RGBLIGHT_EFFECT_RAINBOW_SWIRL
+ //#define RGBLIGHT_EFFECT_SNAKE
+ //#define RGBLIGHT_EFFECT_KNIGHT
+ //#define RGBLIGHT_EFFECT_CHRISTMAS
+ #define RGBLIGHT_EFFECT_STATIC_GRADIENT
+ //#define RGBLIGHT_EFFECT_RGB_TEST
+ //#define RGBLIGHT_EFFECT_ALTERNATING
+# endif
#endif
#endif /* CONFIG_USER_H */
+
+#ifdef DEBUG_CONFIG
+# include "debug_config.h"
+#endif
diff --git a/keyboards/helix/rev3_5rows/keymaps/five_rows/keyboard_post_init_user_scan.c b/keyboards/helix/rev3_5rows/keymaps/five_rows/keyboard_post_init_user_scan.c
deleted file mode 100644
index 7c84e1ed8d..0000000000
--- a/keyboards/helix/rev3_5rows/keymaps/five_rows/keyboard_post_init_user_scan.c
+++ /dev/null
@@ -1,7 +0,0 @@
-#include QMK_KEYBOARD_H
-
-void keyboard_post_init_user(void) {
-#if defined(DEBUG_MATRIX_SCAN_RATE)
- debug_enable = true;
-#endif
-}
diff --git a/keyboards/helix/rev3_5rows/keymaps/five_rows/rules.mk b/keyboards/helix/rev3_5rows/keymaps/five_rows/rules.mk
index 21261fa20a..7344797643 100644
--- a/keyboards/helix/rev3_5rows/keymaps/five_rows/rules.mk
+++ b/keyboards/helix/rev3_5rows/keymaps/five_rows/rules.mk
@@ -10,12 +10,14 @@
# yes, no +1500
# yes, yes +3200
# no, yes +400
+ENCODER_ENABLE = no
LTO_ENABLE = no # if firmware size over limit, try this option
+LED_ANIMATIONS = yes
ifneq ($(strip $(HELIX)),)
define KEYMAP_OPTION_PARSE
- # $xinfo .$1.x #debug
- # parse 'dispoff', 'consle', 'back', 'oled'
+ # parse 'dispoff', 'consle', 'back', 'oled', 'no-ani', 'mini-ani', 'lto', 'no-lto', 'no-enc', 'scan'
+ $(if $(SHOW_PARCE),$(info parse .$1.)) #debug
ifeq ($(strip $1),dispoff)
OLED_DRIVER_ENABLE = no
RGBLIGHT_ENABLE = no
@@ -23,18 +25,43 @@ ifneq ($(strip $(HELIX)),)
ifeq ($(strip $1),console)
CONSOLE_ENABLE = yes
endif
+ ifeq ($(strip $1),debug)
+ DEBUG_CONFIG = yes
+ endif
+ ifneq ($(filter nodebug no-debug no_debug,$(strip $1)),)
+ DEBUG_CONFIG = no
+ endif
+ ifneq ($(filter enc,$(strip $1)),)
+ ENCODER_ENABLE = yes
+ endif
+ ifneq ($(filter noenc no-enc no_enc,$(strip $1)),)
+ ENCODER_ENABLE = no
+ endif
ifeq ($(strip $1),oled)
OLED_DRIVER_ENABLE = yes
endif
ifeq ($(strip $1),back)
RGBLIGHT_ENABLE = yes
endif
+ ifneq ($(filter na no_ani no-ani,$(strip $1)),)
+ LED_ANIMATIONS = no
+ endif
+ ifneq ($(filter mini-ani mini_ani,$(strip $1)),)
+ LED_ANIMATIONS = mini
+ endif
+ ifneq ($(filter ani animation,$(strip $1)),)
+ LED_ANIMATIONS = yes
+ endif
+ ifeq ($(strip $1),lto)
+ LTO_ENABLE = yes
+ endif
+ ifneq ($(filter nolto no-lto no_lto,$(strip $1)),)
+ LTO_ENABLE = no
+ endif
ifeq ($(strip $1),scan)
# use DEBUG_MATRIX_SCAN_RATE
# see docs/newbs_testing_debugging.md
- OPT_DEFS += -DDEBUG_MATRIX_SCAN_RATE
- CONSOLE_ENABLE = yes
- SRC += keyboard_post_init_user_scan.c
+ DEBUG_MATRIX_SCAN_RATE_ENABLE = yes
endif
endef # end of KEYMAP_OPTION_PARSE
@@ -42,3 +69,17 @@ ifneq ($(strip $(HELIX)),)
$(eval $(foreach A_OPTION_NAME,$(subst $(COMMA), ,$(HELIX)), \
$(call KEYMAP_OPTION_PARSE,$(A_OPTION_NAME))))
endif
+
+ifeq ($(strip $(LED_ANIMATIONS)), yes)
+ OPT_DEFS += -DLED_ANIMATIONS
+ OPT_DEFS += -DLED_ANIMATIONS_LEVEL=2
+endif
+
+ifeq ($(strip $(LED_ANIMATIONS)), mini)
+ OPT_DEFS += -DLED_ANIMATIONS
+ OPT_DEFS += -DLED_ANIMATIONS_LEVEL=1
+endif
+
+ifeq ($(strip $(DEBUG_CONFIG)), yes)
+ OPT_DEFS += -DDEBUG_CONFIG
+endif