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 <http://www.gnu.org/licenses/>.
 #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 <http://www.gnu.org/licenses/>.
 // 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 <http://www.gnu.org/licenses/>.
    #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