Browse Source

[Keyboard] Update firmware for the FAve 87H (#16920)

Co-authored-by: Joel Challis <git@zvecr.com>
Co-authored-by: Drashna Jaelre <drashna@live.com>
Co-authored-by: Wolf Van Herreweghe <wolfvh@getupgamesofficial.com>
Wolf Van Herreweghe 4 years ago
parent
commit
1c26c0bc9b

+ 35 - 24
keyboards/linworks/fave87h/config.h

@@ -41,16 +41,19 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
 /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */
 /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */
 #define DEBOUNCE 5
 #define DEBOUNCE 5
 
 
-//Led configuration
-#define RGB_DI_PIN D2
-
+/* Define RGB */
+#define RGBLED_NUM 127
 #define DRIVER_LED_TOTAL 127
 #define DRIVER_LED_TOTAL 127
-#define RGB_MATRIX_MAXIMUM_BRIGHTNESS 140
+#define RGB_DI_PIN D2
 
 
-#define RGB_MATRIX_KEYPRESSES
-//#define RGB_MATRIX_FRAMEBUFFER_EFFECTS
+#ifdef RGB_MATRIX_ENABLE
 
 
 #define RGB_DISABLE_WHEN_USB_SUSPENDED
 #define RGB_DISABLE_WHEN_USB_SUSPENDED
+#define RGB_MATRIX_KEYPRESSES 
+#define RGB_MATRIX_FRAMEBUFFER_EFFECTS
+#define RGB_MATRIX_MAXIMUM_BRIGHTNESS 120
+
+#define RGB_MATRIX_STARTUP_MODE RGB_MATRIX_CYCLE_ALL
 
 
 #define ENABLE_RGB_MATRIX_ALPHAS_MODS
 #define ENABLE_RGB_MATRIX_ALPHAS_MODS
 #define ENABLE_RGB_MATRIX_GRADIENT_UP_DOWN
 #define ENABLE_RGB_MATRIX_GRADIENT_UP_DOWN
@@ -78,23 +81,31 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
 #define ENABLE_RGB_MATRIX_HUE_BREATHING
 #define ENABLE_RGB_MATRIX_HUE_BREATHING
 #define ENABLE_RGB_MATRIX_HUE_PENDULUM
 #define ENABLE_RGB_MATRIX_HUE_PENDULUM
 #define ENABLE_RGB_MATRIX_HUE_WAVE
 #define ENABLE_RGB_MATRIX_HUE_WAVE
-#define ENABLE_RGB_MATRIX_PIXEL_FRACTAL
 #define ENABLE_RGB_MATRIX_PIXEL_RAIN
 #define ENABLE_RGB_MATRIX_PIXEL_RAIN
-#ifdef RGB_MATRIX_FRAMEBUFFER_EFFECTS
-    #define ENABLE_RGB_MATRIX_TYPING_HEATMAP
-    #define ENABLE_RGB_MATRIX_DIGITAL_RAIN
-#endif
-#ifdef RGB_MATRIX_KEYPRESSES
-    #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_SIMPLE
-    #define ENABLE_RGB_MATRIX_SOLID_REACTIVE
-    #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE
-    #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTIWIDE
-    #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_CROSS
-    #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTICROSS
-    #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_NEXUS
-    #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTINEXUS
-    #define ENABLE_RGB_MATRIX_SPLASH
-    #define ENABLE_RGB_MATRIX_MULTISPLASH
-    #define ENABLE_RGB_MATRIX_SOLID_SPLASH
-    #define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH
+// The PIXEL_FRACTAL effect does not work properly when the matrix layout is
+// different from the physical layout; it also has problems when underglow
+// LEDs are present, or when multiple LEDs are associated with the same key.
+#undef ENABLE_RGB_MATRIX_PIXEL_FRACTAL
+
+// Framebuffer effects; can be enabled only if RGB_MATRIX_FRAMEBUFFER_EFFECTS
+// is defined.  Both of these effects currently don't work properly when the
+// key matrix does not match the physical layout, so they are disabled.
+#undef ENABLE_RGB_MATRIX_TYPING_HEATMAP
+#undef ENABLE_RGB_MATRIX_DIGITAL_RAIN
+
+// Reactive effects; can be enabled only if at least one of
+// RGB_MATRIX_KEYPRESSES or RGB_MATRIX_KEYRELEASES is defined.
+#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_SIMPLE
+#define ENABLE_RGB_MATRIX_SOLID_REACTIVE
+#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE
+#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTIWIDE
+#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_CROSS
+#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTICROSS
+#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_NEXUS
+#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTINEXUS
+#define ENABLE_RGB_MATRIX_SPLASH
+#define ENABLE_RGB_MATRIX_MULTISPLASH
+#define ENABLE_RGB_MATRIX_SOLID_SPLASH
+#define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH
+
 #endif
 #endif

+ 1 - 1
keyboards/linworks/fave87h/fave87h.c

@@ -40,7 +40,7 @@ led_config_t g_led_config = {
         1,    4, 4, 4, 4, 1, 1, 1, 1, 4, 4, 4, 4, 1, 1, 1, 
         1,    4, 4, 4, 4, 1, 1, 1, 1, 4, 4, 4, 4, 1, 1, 1, 
         1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1, 1, 1, 
         1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1, 1, 1, 
         1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1, 1, 1, 
         1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1, 1, 1, 
-        8, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,    1, 
+        9, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,    1, 
         1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,    1,       4,
         1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,    1,       4,
         1, 1, 1,       4,          1, 1,    1, 1, 1, 1, 1,
         1, 1, 1,       4,          1, 1,    1, 1, 1, 1, 1,
 
 

+ 1 - 1
keyboards/linworks/fave87h/keymaps/via/keymap.c

@@ -65,4 +65,4 @@ void rgb_matrix_indicators_user(void) {
     if (host_leds.caps_lock) {
     if (host_leds.caps_lock) {
         rgb_matrix_set_color(12, 254, 189, 41); // set caps lock led color first number is index, R G B
         rgb_matrix_set_color(12, 254, 189, 41); // set caps lock led color first number is index, R G B
     }
     }
-}
+}

+ 1 - 0
keyboards/linworks/fave87h/keymaps/via/rules.mk

@@ -1 +1,2 @@
 VIA_ENABLE = yes
 VIA_ENABLE = yes
+LTO_ENABLE = yes

+ 2 - 1
keyboards/linworks/fave87h/readme.md

@@ -5,6 +5,7 @@ The following is the QMK Firmware for the FAve 87H Hotswap PCB.
 The PCB features:
 The PCB features:
 * QMK & VIA compatibility
 * QMK & VIA compatibility
 * Hotswap
 * Hotswap
+* Perkey RGB and Underglow
 
 
 ---
 ---
 
 
@@ -18,5 +19,5 @@ See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_to
 
 
 ## Bootloader Enter the bootloader in 3 ways: 
 ## Bootloader Enter the bootloader in 3 ways: 
 * **Bootmagic reset**: Hold down the key ESC key and plug in the keyboard (Top Left most switch)
 * **Bootmagic reset**: Hold down the key ESC key and plug in the keyboard (Top Left most switch)
-* **Physical reset button**: Briefly press the button on the back of the PCB
+* **Physical reset short**: Briefly short the 2 pads labelled RESET on the back of the PCB
 * **Keycode in layout**: Press the B key on layer 1 which is mapped to `RESET`
 * **Keycode in layout**: Press the B key on layer 1 which is mapped to `RESET`

+ 1 - 1
keyboards/linworks/fave87h/rules.mk

@@ -20,4 +20,4 @@ BACKLIGHT_ENABLE = no       # Enable keyboard backlight functionality
 RGBLIGHT_ENABLE = no        # Enable keyboard RGB underglow
 RGBLIGHT_ENABLE = no        # Enable keyboard RGB underglow
 AUDIO_ENABLE = no           # Audio output
 AUDIO_ENABLE = no           # Audio output
 RGB_MATRIX_ENABLE = yes
 RGB_MATRIX_ENABLE = yes
-RGB_MATRIX_DRIVER = WS2812
+RGB_MATRIX_DRIVER = WS2812