summaryrefslogtreecommitdiff
path: root/keyboards/planck
diff options
context:
space:
mode:
authorNick Brassel <nick@tzarc.org>2024-02-28 21:47:37 +1100
committerNick Brassel <nick@tzarc.org>2024-02-28 21:47:37 +1100
commit4e369d405af6bba1adce6337b2e1b1ea1788566c (patch)
treeb0f020feff1809e37c9e7795d344929ff0bb290a /keyboards/planck
parent4e04da397ef643f8fcf4afbe1d19f63aee1fc561 (diff)
parentdd1706e468bb18dd7f7ae143de735a5d3be1bfb8 (diff)
Merge branch 'develop'
Diffstat (limited to 'keyboards/planck')
-rw-r--r--keyboards/planck/ez/config.h57
-rw-r--r--keyboards/planck/ez/ez.c110
-rw-r--r--keyboards/planck/ez/info.json50
-rw-r--r--keyboards/planck/ez/rules.mk2
-rw-r--r--keyboards/planck/light/config.h52
-rw-r--r--keyboards/planck/light/info.json45
-rw-r--r--keyboards/planck/light/light.c2
-rw-r--r--keyboards/planck/light/rules.mk2
-rw-r--r--keyboards/planck/rev1/rules.mk2
-rw-r--r--keyboards/planck/rev2/rules.mk2
-rw-r--r--keyboards/planck/rev3/rules.mk2
-rw-r--r--keyboards/planck/rev4/rules.mk2
-rw-r--r--keyboards/planck/rev5/rules.mk2
-rw-r--r--keyboards/planck/rev6/config.h4
-rw-r--r--keyboards/planck/rev6/info.json3
-rw-r--r--keyboards/planck/rev6/rules.mk2
-rw-r--r--keyboards/planck/rev6_drop/config.h4
-rw-r--r--keyboards/planck/rev6_drop/info.json3
-rw-r--r--keyboards/planck/rev6_drop/rules.mk2
-rw-r--r--keyboards/planck/rev7/config.h2
-rw-r--r--keyboards/planck/rev7/info.json12
-rw-r--r--keyboards/planck/rev7/matrix.c86
-rw-r--r--keyboards/planck/rev7/rules.mk2
23 files changed, 175 insertions, 275 deletions
diff --git a/keyboards/planck/ez/config.h b/keyboards/planck/ez/config.h
index 93d0823714..74d8d21155 100644
--- a/keyboards/planck/ez/config.h
+++ b/keyboards/planck/ez/config.h
@@ -52,63 +52,6 @@
#define IS31FL3737_I2C_ADDRESS_1 IS31FL3737_I2C_ADDRESS_GND
-#define RGB_MATRIX_LED_COUNT 47
-
-#define RGB_MATRIX_KEYPRESSES
-#define RGB_MATRIX_FRAMEBUFFER_EFFECTS
-#define RGB_DISABLE_WHEN_USB_SUSPENDED
-
-#define RGB_MATRIX_LED_PROCESS_LIMIT 5
-#define RGB_MATRIX_LED_FLUSH_LIMIT 26
-// RGB Matrix Animation modes. Explicitly enabled
-// For full list of effects, see:
-// https://docs.qmk.fm/#/feature_rgb_matrix?id=rgb-matrix-effects
-#define ENABLE_RGB_MATRIX_ALPHAS_MODS
-#define ENABLE_RGB_MATRIX_GRADIENT_UP_DOWN
-#define ENABLE_RGB_MATRIX_GRADIENT_LEFT_RIGHT
-#define ENABLE_RGB_MATRIX_BREATHING
-#define ENABLE_RGB_MATRIX_BAND_SAT
-#define ENABLE_RGB_MATRIX_BAND_VAL
-#define ENABLE_RGB_MATRIX_BAND_PINWHEEL_SAT
-#define ENABLE_RGB_MATRIX_BAND_PINWHEEL_VAL
-#define ENABLE_RGB_MATRIX_BAND_SPIRAL_SAT
-#define ENABLE_RGB_MATRIX_BAND_SPIRAL_VAL
-#define ENABLE_RGB_MATRIX_CYCLE_ALL
-#define ENABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT
-#define ENABLE_RGB_MATRIX_CYCLE_UP_DOWN
-#define ENABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON
-#define ENABLE_RGB_MATRIX_CYCLE_OUT_IN
-#define ENABLE_RGB_MATRIX_CYCLE_OUT_IN_DUAL
-#define ENABLE_RGB_MATRIX_CYCLE_PINWHEEL
-#define ENABLE_RGB_MATRIX_CYCLE_SPIRAL
-#define ENABLE_RGB_MATRIX_DUAL_BEACON
-#define ENABLE_RGB_MATRIX_RAINBOW_BEACON
-#define ENABLE_RGB_MATRIX_RAINBOW_PINWHEELS
-#define ENABLE_RGB_MATRIX_RAINDROPS
-#define ENABLE_RGB_MATRIX_JELLYBEAN_RAINDROPS
-#define ENABLE_RGB_MATRIX_HUE_BREATHING
-#define ENABLE_RGB_MATRIX_HUE_PENDULUM
-#define ENABLE_RGB_MATRIX_HUE_WAVE
-#define ENABLE_RGB_MATRIX_PIXEL_RAIN
-#define ENABLE_RGB_MATRIX_PIXEL_FLOW
-#define ENABLE_RGB_MATRIX_PIXEL_FRACTAL
-// enabled only if RGB_MATRIX_FRAMEBUFFER_EFFECTS is defined
-#define ENABLE_RGB_MATRIX_TYPING_HEATMAP
-#define ENABLE_RGB_MATRIX_DIGITAL_RAIN
-// enabled only 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
-
#define MOUSEKEY_INTERVAL 20
#define MOUSEKEY_DELAY 0
#define MOUSEKEY_TIME_TO_MAX 60
diff --git a/keyboards/planck/ez/ez.c b/keyboards/planck/ez/ez.c
index dfadb820ae..522fd70033 100644
--- a/keyboards/planck/ez/ez.c
+++ b/keyboards/planck/ez/ez.c
@@ -21,67 +21,67 @@
keyboard_config_t keyboard_config;
#ifdef RGB_MATRIX_ENABLE
-const is31fl3737_led_t PROGMEM g_is31fl3737_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3737_led_t PROGMEM g_is31fl3737_leds[IS31FL3737_LED_COUNT] = {
/* Refer to IS31 manual for these locations
* driver
* | R location
* | | G location
* | | | B location
* | | | | */
- {0, B_12, A_12, C_12},
- {0, B_11, A_11, C_11},
- {0, B_10, A_10, C_10},
- {0, B_9, A_9, C_9},
- {0, B_8, A_8, C_8},
- {0, B_7, A_7, C_7},
-
- {0, H_12, G_12, I_12},
- {0, H_11, G_11, I_11},
- {0, H_10, G_10, I_10},
- {0, H_9, G_9, I_9},
- {0, H_8, G_8, I_8},
- {0, H_7, G_7, I_7},
-
- {0, B_6, A_6, C_6},
- {0, B_5, A_5, C_5},
- {0, B_4, A_4, C_4},
- {0, B_3, A_3, C_3},
- {0, B_2, A_2, C_2},
- {0, B_1, A_1, C_1},
-
- {0, H_6, G_6, I_6},
- {0, H_5, G_5, I_5},
- {0, H_4, G_4, I_4},
- {0, H_3, G_3, I_3},
- {0, H_2, G_2, I_2},
- {0, H_1, G_1, I_1},
-
- {0, E_12, D_12, F_12},
- {0, E_11, D_11, F_11},
- {0, E_10, D_10, F_10},
- {0, E_9, D_9, F_9},
- {0, E_8, D_8, F_8},
- {0, E_7, D_7, F_7},
-
- {0, K_12, J_12, L_12},
- {0, K_11, J_11, L_11},
- {0, K_10, J_10, L_10},
- {0, K_9, J_9, L_9},
- {0, K_8, J_8, L_8},
- {0, K_7, J_7, L_7},
-
- {0, E_6, D_6, F_6},
- {0, E_5, D_5, F_5},
- {0, E_4, D_4, F_4},
- {0, E_3, D_3, F_3},
- {0, E_2, D_2, F_2},
- {0, E_1, D_1, F_1},
-
- {0, K_6, J_6, L_6},
- {0, K_5, J_5, L_5},
- {0, K_4, J_4, L_4},
- {0, K_3, J_3, L_3},
- {0, K_2, J_2, L_2},
+ {0, SW2_CS12, SW1_CS12, SW3_CS12},
+ {0, SW2_CS11, SW1_CS11, SW3_CS11},
+ {0, SW2_CS10, SW1_CS10, SW3_CS10},
+ {0, SW2_CS9, SW1_CS9, SW3_CS9},
+ {0, SW2_CS8, SW1_CS8, SW3_CS8},
+ {0, SW2_CS7, SW1_CS7, SW3_CS7},
+
+ {0, SW8_CS12, SW7_CS12, SW9_CS12},
+ {0, SW8_CS11, SW7_CS11, SW9_CS11},
+ {0, SW8_CS10, SW7_CS10, SW9_CS10},
+ {0, SW8_CS9, SW7_CS9, SW9_CS9},
+ {0, SW8_CS8, SW7_CS8, SW9_CS8},
+ {0, SW8_CS7, SW7_CS7, SW9_CS7},
+
+ {0, SW2_CS6, SW1_CS6, SW3_CS6},
+ {0, SW2_CS5, SW1_CS5, SW3_CS5},
+ {0, SW2_CS4, SW1_CS4, SW3_CS4},
+ {0, SW2_CS3, SW1_CS3, SW3_CS3},
+ {0, SW2_CS2, SW1_CS2, SW3_CS2},
+ {0, SW2_CS1, SW1_CS1, SW3_CS1},
+
+ {0, SW8_CS6, SW7_CS6, SW9_CS6},
+ {0, SW8_CS5, SW7_CS5, SW9_CS5},
+ {0, SW8_CS4, SW7_CS4, SW9_CS4},
+ {0, SW8_CS3, SW7_CS3, SW9_CS3},
+ {0, SW8_CS2, SW7_CS2, SW9_CS2},
+ {0, SW8_CS1, SW7_CS1, SW9_CS1},
+
+ {0, SW5_CS12, SW4_CS12, SW6_CS12},
+ {0, SW5_CS11, SW4_CS11, SW6_CS11},
+ {0, SW5_CS10, SW4_CS10, SW6_CS10},
+ {0, SW5_CS9, SW4_CS9, SW6_CS9},
+ {0, SW5_CS8, SW4_CS8, SW6_CS8},
+ {0, SW5_CS7, SW4_CS7, SW6_CS7},
+
+ {0, SW11_CS12, SW10_CS12, SW12_CS12},
+ {0, SW11_CS11, SW10_CS11, SW12_CS11},
+ {0, SW11_CS10, SW10_CS10, SW12_CS10},
+ {0, SW11_CS9, SW10_CS9, SW12_CS9},
+ {0, SW11_CS8, SW10_CS8, SW12_CS8},
+ {0, SW11_CS7, SW10_CS7, SW12_CS7},
+
+ {0, SW5_CS6, SW4_CS6, SW6_CS6},
+ {0, SW5_CS5, SW4_CS5, SW6_CS5},
+ {0, SW5_CS4, SW4_CS4, SW6_CS4},
+ {0, SW5_CS3, SW4_CS3, SW6_CS3},
+ {0, SW5_CS2, SW4_CS2, SW6_CS2},
+ {0, SW5_CS1, SW4_CS1, SW6_CS1},
+
+ {0, SW11_CS6, SW10_CS6, SW12_CS6},
+ {0, SW11_CS5, SW10_CS5, SW12_CS5},
+ {0, SW11_CS4, SW10_CS4, SW12_CS4},
+ {0, SW11_CS3, SW10_CS3, SW12_CS3},
+ {0, SW11_CS2, SW10_CS2, SW12_CS2},
};
diff --git a/keyboards/planck/ez/info.json b/keyboards/planck/ez/info.json
index 6848239279..044e187c4b 100644
--- a/keyboards/planck/ez/info.json
+++ b/keyboards/planck/ez/info.json
@@ -7,7 +7,55 @@
"device_version": "0.0.1"
},
"rgb_matrix": {
- "driver": "is31fl3737"
+ "animations": {
+ "alphas_mods": true,
+ "gradient_up_down": true,
+ "gradient_left_right": true,
+ "breathing": true,
+ "band_sat": true,
+ "band_val": true,
+ "band_pinwheel_sat": true,
+ "band_pinwheel_val": true,
+ "band_spiral_sat": true,
+ "band_spiral_val": true,
+ "cycle_all": true,
+ "cycle_left_right": true,
+ "cycle_up_down": true,
+ "rainbow_moving_chevron": true,
+ "cycle_out_in": true,
+ "cycle_out_in_dual": true,
+ "cycle_pinwheel": true,
+ "cycle_spiral": true,
+ "dual_beacon": true,
+ "rainbow_beacon": true,
+ "rainbow_pinwheels": true,
+ "raindrops": true,
+ "jellybean_raindrops": true,
+ "hue_breathing": true,
+ "hue_pendulum": true,
+ "hue_wave": true,
+ "pixel_rain": true,
+ "pixel_flow": true,
+ "pixel_fractal": true,
+ "typing_heatmap": true,
+ "digital_rain": true,
+ "solid_reactive_simple": true,
+ "solid_reactive": true,
+ "solid_reactive_wide": true,
+ "solid_reactive_multiwide": true,
+ "solid_reactive_cross": true,
+ "solid_reactive_multicross": true,
+ "solid_reactive_nexus": true,
+ "solid_reactive_multinexus": true,
+ "splash": true,
+ "multisplash": true,
+ "solid_splash": true,
+ "solid_multisplash": true
+ },
+ "driver": "is31fl3737",
+ "led_process_limit": 5,
+ "led_flush_limit": 26,
+ "sleep": true
},
"matrix_pins": {
"cols": ["B11", "B10", "B2", "B1", "A7", "B0"],
diff --git a/keyboards/planck/ez/rules.mk b/keyboards/planck/ez/rules.mk
index a19a4fceaa..9d3db5cdb7 100644
--- a/keyboards/planck/ez/rules.mk
+++ b/keyboards/planck/ez/rules.mk
@@ -14,8 +14,6 @@ RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight.
ENCODER_ENABLE = yes
-LAYOUTS_HAS_RGB = no
-
RGB_MATRIX_SUPPORTED = yes
RGBLIGHT_SUPPORTED = no
BAKCLIGHT_SUPPORTED = no
diff --git a/keyboards/planck/light/config.h b/keyboards/planck/light/config.h
index 6d12061b51..7c78d7cd3c 100644
--- a/keyboards/planck/light/config.h
+++ b/keyboards/planck/light/config.h
@@ -9,55 +9,3 @@
#define IS31FL3731_I2C_ADDRESS_1 IS31FL3731_I2C_ADDRESS_GND
#define IS31FL3731_I2C_ADDRESS_2 IS31FL3731_I2C_ADDRESS_SDA
-
-#define DRIVER_1_LED_TOTAL 25
-#define DRIVER_2_LED_TOTAL 24
-#define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL + DRIVER_2_LED_TOTAL)
-// RGB Matrix Animation modes. Explicitly enabled
-// For full list of effects, see:
-// https://docs.qmk.fm/#/feature_rgb_matrix?id=rgb-matrix-effects
-#define ENABLE_RGB_MATRIX_ALPHAS_MODS
-#define ENABLE_RGB_MATRIX_GRADIENT_UP_DOWN
-#define ENABLE_RGB_MATRIX_GRADIENT_LEFT_RIGHT
-#define ENABLE_RGB_MATRIX_BREATHING
-#define ENABLE_RGB_MATRIX_BAND_SAT
-#define ENABLE_RGB_MATRIX_BAND_VAL
-#define ENABLE_RGB_MATRIX_BAND_PINWHEEL_SAT
-#define ENABLE_RGB_MATRIX_BAND_PINWHEEL_VAL
-#define ENABLE_RGB_MATRIX_BAND_SPIRAL_SAT
-#define ENABLE_RGB_MATRIX_BAND_SPIRAL_VAL
-#define ENABLE_RGB_MATRIX_CYCLE_ALL
-#define ENABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT
-#define ENABLE_RGB_MATRIX_CYCLE_UP_DOWN
-#define ENABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON
-#define ENABLE_RGB_MATRIX_CYCLE_OUT_IN
-#define ENABLE_RGB_MATRIX_CYCLE_OUT_IN_DUAL
-#define ENABLE_RGB_MATRIX_CYCLE_PINWHEEL
-#define ENABLE_RGB_MATRIX_CYCLE_SPIRAL
-#define ENABLE_RGB_MATRIX_DUAL_BEACON
-#define ENABLE_RGB_MATRIX_RAINBOW_BEACON
-#define ENABLE_RGB_MATRIX_RAINBOW_PINWHEELS
-#define ENABLE_RGB_MATRIX_RAINDROPS
-#define ENABLE_RGB_MATRIX_JELLYBEAN_RAINDROPS
-#define ENABLE_RGB_MATRIX_HUE_BREATHING
-#define ENABLE_RGB_MATRIX_HUE_PENDULUM
-#define ENABLE_RGB_MATRIX_HUE_WAVE
-#define ENABLE_RGB_MATRIX_PIXEL_RAIN
-#define ENABLE_RGB_MATRIX_PIXEL_FLOW
-#define ENABLE_RGB_MATRIX_PIXEL_FRACTAL
-// enabled only if RGB_MATRIX_FRAMEBUFFER_EFFECTS is defined
-#define ENABLE_RGB_MATRIX_TYPING_HEATMAP
-#define ENABLE_RGB_MATRIX_DIGITAL_RAIN
-// enabled only 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
diff --git a/keyboards/planck/light/info.json b/keyboards/planck/light/info.json
index b6f3df8fe6..8fc112664b 100644
--- a/keyboards/planck/light/info.json
+++ b/keyboards/planck/light/info.json
@@ -9,6 +9,51 @@
"device_version": "0.0.1"
},
"rgb_matrix": {
+ "animations": {
+ "alphas_mods": true,
+ "gradient_up_down": true,
+ "gradient_left_right": true,
+ "breathing": true,
+ "band_sat": true,
+ "band_val": true,
+ "band_pinwheel_sat": true,
+ "band_pinwheel_val": true,
+ "band_spiral_sat": true,
+ "band_spiral_val": true,
+ "cycle_all": true,
+ "cycle_left_right": true,
+ "cycle_up_down": true,
+ "rainbow_moving_chevron": true,
+ "cycle_out_in": true,
+ "cycle_out_in_dual": true,
+ "cycle_pinwheel": true,
+ "cycle_spiral": true,
+ "dual_beacon": true,
+ "rainbow_beacon": true,
+ "rainbow_pinwheels": true,
+ "raindrops": true,
+ "jellybean_raindrops": true,
+ "hue_breathing": true,
+ "hue_pendulum": true,
+ "hue_wave": true,
+ "pixel_rain": true,
+ "pixel_flow": true,
+ "pixel_fractal": true,
+ "typing_heatmap": true,
+ "digital_rain": true,
+ "solid_reactive_simple": true,
+ "solid_reactive": true,
+ "solid_reactive_wide": true,
+ "solid_reactive_multiwide": true,
+ "solid_reactive_cross": true,
+ "solid_reactive_multicross": true,
+ "solid_reactive_nexus": true,
+ "solid_reactive_multinexus": true,
+ "splash": true,
+ "multisplash": true,
+ "solid_splash": true,
+ "solid_multisplash": true
+ },
"driver": "is31fl3731"
},
"matrix_pins": {
diff --git a/keyboards/planck/light/light.c b/keyboards/planck/light/light.c
index 828319c66d..44bd89dc11 100644
--- a/keyboards/planck/light/light.c
+++ b/keyboards/planck/light/light.c
@@ -16,7 +16,7 @@
#include "quantum.h"
-const is31fl3731_led_t PROGMEM g_is31fl3731_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3731_led_t PROGMEM g_is31fl3731_leds[IS31FL3731_LED_COUNT] = {
/* Refer to IS31 manual for these locations
* driver
* | R location
diff --git a/keyboards/planck/light/rules.mk b/keyboards/planck/light/rules.mk
index dbc992922b..a8efaf98f4 100644
--- a/keyboards/planck/light/rules.mk
+++ b/keyboards/planck/light/rules.mk
@@ -12,5 +12,3 @@ MIDI_ENABLE = yes # MIDI support
AUDIO_ENABLE = yes # Audio output
RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight.
RGB_MATRIX_ENABLE = yes
-
-LAYOUTS_HAS_RGB = no
diff --git a/keyboards/planck/rev1/rules.mk b/keyboards/planck/rev1/rules.mk
index 8827627e99..99b8691962 100644
--- a/keyboards/planck/rev1/rules.mk
+++ b/keyboards/planck/rev1/rules.mk
@@ -10,5 +10,3 @@ NKRO_ENABLE = yes # Enable N-Key Rollover
BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
AUDIO_ENABLE = no # Audio output
RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight.
-
-LAYOUTS_HAS_RGB = no
diff --git a/keyboards/planck/rev2/rules.mk b/keyboards/planck/rev2/rules.mk
index 8827627e99..99b8691962 100644
--- a/keyboards/planck/rev2/rules.mk
+++ b/keyboards/planck/rev2/rules.mk
@@ -10,5 +10,3 @@ NKRO_ENABLE = yes # Enable N-Key Rollover
BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
AUDIO_ENABLE = no # Audio output
RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight.
-
-LAYOUTS_HAS_RGB = no
diff --git a/keyboards/planck/rev3/rules.mk b/keyboards/planck/rev3/rules.mk
index 8827627e99..99b8691962 100644
--- a/keyboards/planck/rev3/rules.mk
+++ b/keyboards/planck/rev3/rules.mk
@@ -10,5 +10,3 @@ NKRO_ENABLE = yes # Enable N-Key Rollover
BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
AUDIO_ENABLE = no # Audio output
RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight.
-
-LAYOUTS_HAS_RGB = no
diff --git a/keyboards/planck/rev4/rules.mk b/keyboards/planck/rev4/rules.mk
index 78e1ba9f7b..73d6182ff4 100644
--- a/keyboards/planck/rev4/rules.mk
+++ b/keyboards/planck/rev4/rules.mk
@@ -10,5 +10,3 @@ NKRO_ENABLE = yes # Enable N-Key Rollover
BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
AUDIO_ENABLE = yes # Audio output
RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight.
-
-LAYOUTS_HAS_RGB = no
diff --git a/keyboards/planck/rev5/rules.mk b/keyboards/planck/rev5/rules.mk
index 78e1ba9f7b..73d6182ff4 100644
--- a/keyboards/planck/rev5/rules.mk
+++ b/keyboards/planck/rev5/rules.mk
@@ -10,5 +10,3 @@ NKRO_ENABLE = yes # Enable N-Key Rollover
BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
AUDIO_ENABLE = yes # Audio output
RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight.
-
-LAYOUTS_HAS_RGB = no
diff --git a/keyboards/planck/rev6/config.h b/keyboards/planck/rev6/config.h
index a0a997f860..7fec8be56b 100644
--- a/keyboards/planck/rev6/config.h
+++ b/keyboards/planck/rev6/config.h
@@ -43,12 +43,8 @@
/*
* WS2812 Underglow Matrix options
*/
-#define RGB_MATRIX_LED_COUNT 9
-
#define WS2812_PWM_DRIVER PWMD2
#define WS2812_PWM_CHANNEL 2
#define WS2812_PWM_PAL_MODE 1
#define WS2812_DMA_STREAM STM32_DMA1_STREAM2
#define WS2812_DMA_CHANNEL 2
-
-#define RGB_DISABLE_WHEN_USB_SUSPENDED
diff --git a/keyboards/planck/rev6/info.json b/keyboards/planck/rev6/info.json
index a6ad35281d..add17963b4 100644
--- a/keyboards/planck/rev6/info.json
+++ b/keyboards/planck/rev6/info.json
@@ -16,7 +16,8 @@
"driver": "pwm"
},
"rgb_matrix": {
- "driver": "ws2812"
+ "driver": "ws2812",
+ "sleep": true
},
"matrix_pins": {
"cols": ["B11", "B10", "B2", "B1", "A7", "B0"],
diff --git a/keyboards/planck/rev6/rules.mk b/keyboards/planck/rev6/rules.mk
index 048b723c4c..ce96f94079 100644
--- a/keyboards/planck/rev6/rules.mk
+++ b/keyboards/planck/rev6/rules.mk
@@ -14,5 +14,3 @@ RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight.
RGB_MATRIX_ENABLE = no
ENCODER_ENABLE = yes
DIP_SWITCH_ENABLE = yes
-
-LAYOUTS_HAS_RGB = no
diff --git a/keyboards/planck/rev6_drop/config.h b/keyboards/planck/rev6_drop/config.h
index a0a997f860..7fec8be56b 100644
--- a/keyboards/planck/rev6_drop/config.h
+++ b/keyboards/planck/rev6_drop/config.h
@@ -43,12 +43,8 @@
/*
* WS2812 Underglow Matrix options
*/
-#define RGB_MATRIX_LED_COUNT 9
-
#define WS2812_PWM_DRIVER PWMD2
#define WS2812_PWM_CHANNEL 2
#define WS2812_PWM_PAL_MODE 1
#define WS2812_DMA_STREAM STM32_DMA1_STREAM2
#define WS2812_DMA_CHANNEL 2
-
-#define RGB_DISABLE_WHEN_USB_SUSPENDED
diff --git a/keyboards/planck/rev6_drop/info.json b/keyboards/planck/rev6_drop/info.json
index d224561c7f..aff2eef5d7 100644
--- a/keyboards/planck/rev6_drop/info.json
+++ b/keyboards/planck/rev6_drop/info.json
@@ -16,7 +16,8 @@
"driver": "pwm"
},
"rgb_matrix": {
- "driver": "ws2812"
+ "driver": "ws2812",
+ "sleep": true
},
"matrix_pins": {
"cols": ["B11", "B10", "B2", "B1", "A7", "B0"],
diff --git a/keyboards/planck/rev6_drop/rules.mk b/keyboards/planck/rev6_drop/rules.mk
index 3eb3eac7eb..022a5ccd53 100644
--- a/keyboards/planck/rev6_drop/rules.mk
+++ b/keyboards/planck/rev6_drop/rules.mk
@@ -17,5 +17,3 @@ ENCODER_ENABLE = yes
DIP_SWITCH_ENABLE = yes
SRC += matrix.c
-
-LAYOUTS_HAS_RGB = no
diff --git a/keyboards/planck/rev7/config.h b/keyboards/planck/rev7/config.h
index 678cb1d438..a5e49c8a53 100644
--- a/keyboards/planck/rev7/config.h
+++ b/keyboards/planck/rev7/config.h
@@ -30,8 +30,6 @@
#define WS2812_DMA_STREAM STM32_DMA1_STREAM2
#define WS2812_DMA_CHANNEL 2
-#define RGB_DISABLE_WHEN_USB_SUSPENDED
-
/*
* Feature disable options
* These options are also useful to firmware size reduction.
diff --git a/keyboards/planck/rev7/info.json b/keyboards/planck/rev7/info.json
index 72dce51d83..d674af98d1 100644
--- a/keyboards/planck/rev7/info.json
+++ b/keyboards/planck/rev7/info.json
@@ -13,7 +13,8 @@
"driver": "pwm"
},
"rgb_matrix": {
- "driver": "ws2812"
+ "driver": "ws2812",
+ "sleep": true
},
"matrix_pins": {
"cols": ["B11", "B10", "B2", "B1", "A7", "B0"],
@@ -25,7 +26,14 @@
},
"encoder": {
"rotary": [
- {"pin_a": "B12", "pin_b": "B13"}
+ {"pin_a": "B12", "pin_b": "B13"},
+ {"pin_a": "B12", "pin_b": "B13"},
+ {"pin_a": "B12", "pin_b": "B13"},
+ {"pin_a": "B12", "pin_b": "B13"},
+ {"pin_a": "B12", "pin_b": "B13"},
+ {"pin_a": "B12", "pin_b": "B13"},
+ {"pin_a": "B12", "pin_b": "B13"},
+ {"pin_a": "B12", "pin_b": "B13"}
]
},
"features": {
diff --git a/keyboards/planck/rev7/matrix.c b/keyboards/planck/rev7/matrix.c
index c89c399a40..350ce93ce0 100644
--- a/keyboards/planck/rev7/matrix.c
+++ b/keyboards/planck/rev7/matrix.c
@@ -32,31 +32,16 @@
#define STM32_IWDG_RL_MS(s) STM32_IWDG_RL_US(s * 1000.0)
#define STM32_IWDG_RL_S(s) STM32_IWDG_RL_US(s * 1000000.0)
-#if !defined(PLANCK_ENCODER_RESOLUTION)
-# define PLANCK_ENCODER_RESOLUTION 4
-#endif
-
#if !defined(PLANCK_WATCHDOG_TIMEOUT)
# define PLANCK_WATCHDOG_TIMEOUT 1.0
#endif
-#ifdef ENCODER_MAP_ENABLE
-#error "The encoder map feature is not currently supported by the Planck's encoder matrix"
-#endif
-
/* matrix state(1:on, 0:off) */
static pin_t matrix_row_pins[MATRIX_ROWS] = MATRIX_ROW_PINS;
static pin_t matrix_col_pins[MATRIX_COLS] = MATRIX_COL_PINS;
static matrix_row_t matrix_inverted[MATRIX_COLS];
-#ifdef ENCODER_ENABLE
-int8_t encoder_LUT[] = {0, -1, 1, 0, 1, 0, 0, -1, -1, 0, 0, 1, 0, 1, -1, 0};
-uint8_t encoder_state[8] = {0};
-int8_t encoder_pulses[8] = {0};
-uint8_t encoder_value[8] = {0};
-#endif
-
void matrix_init_custom(void) {
// actual matrix setup - cols
for (int i = 0; i < MATRIX_COLS; i++) {
@@ -84,31 +69,6 @@ void matrix_init_custom(void) {
#endif
}
-#ifdef ENCODER_ENABLE
-bool encoder_update(uint8_t index, uint8_t state) {
- bool changed = false;
- uint8_t i = index;
-
- encoder_pulses[i] += encoder_LUT[state & 0xF];
-
- if (encoder_pulses[i] >= PLANCK_ENCODER_RESOLUTION) {
- encoder_value[index]++;
- changed = true;
- encoder_update_kb(index, false);
- }
- if (encoder_pulses[i] <= -PLANCK_ENCODER_RESOLUTION) {
- encoder_value[index]--;
- changed = true;
- encoder_update_kb(index, true);
- }
- encoder_pulses[i] %= PLANCK_ENCODER_RESOLUTION;
-#ifdef ENCODER_DEFAULT_POS
- encoder_pulses[i] = 0;
-#endif
- return changed;
-}
-#endif
-
bool matrix_scan_custom(matrix_row_t current_matrix[]) {
#ifndef PLANCK_WATCHDOG_DISABLE
// reset watchdog
@@ -149,40 +109,16 @@ bool matrix_scan_custom(matrix_row_t current_matrix[]) {
changed |= old != current_matrix[row];
}
-#ifdef ENCODER_ENABLE
- // encoder-matrix functionality
-
- // set up C/rows for encoder read
- for (int i = 0; i < MATRIX_ROWS; i++) {
- setPinOutput(matrix_row_pins[i]);
- writePinHigh(matrix_row_pins[i]);
- }
-
- // set up A & B for reading
- setPinInputHigh(B12);
- setPinInputHigh(B13);
-
- for (int i = 0; i < MATRIX_ROWS; i++) {
- writePinLow(matrix_row_pins[i]);
- wait_us(10);
- uint8_t new_status = (palReadPad(GPIOB, 12) << 0) | (palReadPad(GPIOB, 13) << 1);
- if ((encoder_state[i] & 0x3) != new_status) {
- encoder_state[i] <<= 2;
- encoder_state[i] |= new_status;
- encoder_update(i, encoder_state[i]);
- }
- writePinHigh(matrix_row_pins[i]);
- }
-
- // revert A & B to matrix state
- setPinInputLow(B12);
- setPinInputLow(B13);
-
- // revert C/rows to matrix state
- for (int i = 0; i < MATRIX_ROWS; i++) {
- setPinInputLow(matrix_row_pins[i]);
- }
-#endif
-
return changed;
}
+
+uint8_t encoder_quadrature_read_pin(uint8_t index, bool pad_b) {
+ pin_t pin = pad_b ? B13: B12;
+ setPinInputHigh(pin);
+ writePinLow(matrix_row_pins[index]);
+ wait_us(10);
+ uint8_t ret = readPin(pin) ? 1 : 0;
+ setPinInputLow(matrix_row_pins[index]);
+ setPinInputLow(pin);
+ return ret;
+}
diff --git a/keyboards/planck/rev7/rules.mk b/keyboards/planck/rev7/rules.mk
index 38710bc00b..04b21019ae 100644
--- a/keyboards/planck/rev7/rules.mk
+++ b/keyboards/planck/rev7/rules.mk
@@ -5,5 +5,3 @@ CUSTOM_MATRIX = lite
DIP_SWITCH_ENABLE = yes
SRC += matrix.c
-
-LAYOUTS_HAS_RGB = no