Migrate RGB Matrix config to info.json (#23000)

This commit is contained in:
Joel Challis 2024-02-14 00:55:39 +00:00 committed by GitHub
parent 974e98ce59
commit 7be40fd143
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
22 changed files with 323 additions and 342 deletions

View File

@ -23,5 +23,3 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define IS31FL3733_I2C_ADDRESS_1 IS31FL3733_I2C_ADDRESS_GND_GND #define IS31FL3733_I2C_ADDRESS_1 IS31FL3733_I2C_ADDRESS_GND_GND
#define IS31FL3733_PWM_FREQUENCY IS31FL3733_PWM_FREQUENCY_26K7_HZ #define IS31FL3733_PWM_FREQUENCY IS31FL3733_PWM_FREQUENCY_26K7_HZ
#define RGB_MATRIX_LED_COUNT 62

View File

@ -82,10 +82,9 @@ const is31fl3733_led_t PROGMEM g_is31fl3733_leds[IS31FL3733_LED_COUNT] = {
{ 0, B_16, A_16, C_16 } //D464 { 0, B_16, A_16, C_16 } //D464
}; };
#define XXX NO_LED
led_config_t g_led_config = { led_config_t g_led_config = {
{ {
#define XXX NO_LED
{ 0, 2, 4, 6, 8, 10, 12 }, { 0, 2, 4, 6, 8, 10, 12 },
{ 1, 3, 5, 7, 9, 11, XXX }, { 1, 3, 5, 7, 9, 11, XXX },
{ 14, 16, 18, 20, 22, 24, 26 }, { 14, 16, 18, 20, 22, 24, 26 },

View File

@ -18,7 +18,6 @@
#pragma once #pragma once
#include "pin_defs.h" #include "pin_defs.h"
#include "config_led.h"
// key matrix size // key matrix size
#define MATRIX_ROWS 5 #define MATRIX_ROWS 5

View File

@ -11,7 +11,116 @@
} }
}, },
"rgb_matrix": { "rgb_matrix": {
"driver": "custom" "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_fractal": true,
"pixel_flow": true,
"pixel_rain": 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": "custom",
"layout": [
{"matrix": [0, 0], "x": 0, "y": 0, "flags": 4},
{"matrix": [0, 1], "x": 16, "y": 0, "flags": 4},
{"matrix": [0, 2], "x": 32, "y": 0, "flags": 4},
{"matrix": [0, 3], "x": 48, "y": 0, "flags": 4},
{"matrix": [0, 4], "x": 65, "y": 0, "flags": 4},
{"matrix": [0, 5], "x": 81, "y": 0, "flags": 4},
{"matrix": [0, 6], "x": 97, "y": 0, "flags": 4},
{"matrix": [0, 7], "x": 113, "y": 0, "flags": 4},
{"matrix": [0, 8], "x": 129, "y": 0, "flags": 4},
{"matrix": [0, 9], "x": 145, "y": 0, "flags": 4},
{"matrix": [0, 10], "x": 161, "y": 0, "flags": 4},
{"matrix": [0, 11], "x": 178, "y": 0, "flags": 4},
{"matrix": [0, 12], "x": 194, "y": 0, "flags": 4},
{"matrix": [0, 13], "x": 218, "y": 0, "flags": 4},
{"matrix": [1, 0], "x": 4, "y": 16, "flags": 4},
{"matrix": [1, 1], "x": 24, "y": 16, "flags": 4},
{"matrix": [1, 2], "x": 40, "y": 16, "flags": 4},
{"matrix": [1, 3], "x": 57, "y": 16, "flags": 4},
{"matrix": [1, 4], "x": 73, "y": 16, "flags": 4},
{"matrix": [1, 5], "x": 89, "y": 16, "flags": 4},
{"matrix": [1, 6], "x": 105, "y": 16, "flags": 4},
{"matrix": [1, 7], "x": 121, "y": 16, "flags": 4},
{"matrix": [1, 8], "x": 137, "y": 16, "flags": 4},
{"matrix": [1, 9], "x": 153, "y": 16, "flags": 4},
{"matrix": [1, 10], "x": 170, "y": 16, "flags": 4},
{"matrix": [1, 11], "x": 186, "y": 16, "flags": 4},
{"matrix": [1, 12], "x": 202, "y": 16, "flags": 4},
{"matrix": [1, 13], "x": 222, "y": 16, "flags": 4},
{"matrix": [2, 0], "x": 6, "y": 32, "flags": 4},
{"matrix": [2, 1], "x": 28, "y": 32, "flags": 4},
{"matrix": [2, 2], "x": 44, "y": 32, "flags": 4},
{"matrix": [2, 3], "x": 61, "y": 32, "flags": 4},
{"matrix": [2, 4], "x": 77, "y": 32, "flags": 4},
{"matrix": [2, 5], "x": 93, "y": 32, "flags": 4},
{"matrix": [2, 6], "x": 109, "y": 32, "flags": 4},
{"matrix": [2, 7], "x": 125, "y": 32, "flags": 4},
{"matrix": [2, 8], "x": 141, "y": 32, "flags": 4},
{"matrix": [2, 9], "x": 157, "y": 32, "flags": 4},
{"matrix": [2, 10], "x": 174, "y": 32, "flags": 4},
{"matrix": [2, 11], "x": 190, "y": 32, "flags": 4},
{"matrix": [2, 12], "x": 216, "y": 32, "flags": 4},
{"matrix": [3, 0], "x": 10, "y": 48, "flags": 1},
{"matrix": [3, 2], "x": 36, "y": 48, "flags": 4},
{"matrix": [3, 3], "x": 52, "y": 48, "flags": 4},
{"matrix": [3, 4], "x": 69, "y": 48, "flags": 4},
{"matrix": [3, 5], "x": 85, "y": 48, "flags": 4},
{"matrix": [3, 6], "x": 101, "y": 48, "flags": 4},
{"matrix": [3, 7], "x": 117, "y": 48, "flags": 4},
{"matrix": [3, 8], "x": 133, "y": 48, "flags": 4},
{"matrix": [3, 9], "x": 149, "y": 48, "flags": 4},
{"matrix": [3, 10], "x": 165, "y": 48, "flags": 4},
{"matrix": [3, 11], "x": 182, "y": 48, "flags": 4},
{"matrix": [3, 12], "x": 212, "y": 48, "flags": 1},
{"matrix": [4, 0], "x": 2, "y": 64, "flags": 1},
{"matrix": [4, 2], "x": 22, "y": 64, "flags": 1},
{"matrix": [4, 3], "x": 42, "y": 64, "flags": 1},
{"matrix": [4, 6], "x": 103, "y": 64, "flags": 4},
{"matrix": [4, 9], "x": 163, "y": 64, "flags": 1},
{"matrix": [4, 10], "x": 184, "y": 64, "flags": 1},
{"matrix": [4, 11], "x": 204, "y": 64, "flags": 1},
{"matrix": [4, 12], "x": 224, "y": 64, "flags": 1}
],
"led_flush_limit": 40
}, },
"community_layouts": ["60_ansi"] "community_layouts": ["60_ansi"]
} }

View File

@ -46,4 +46,3 @@ SRC = \
ap2_led.c \ ap2_led.c \
protocol.c \ protocol.c \
rgb_driver.c \ rgb_driver.c \
config_led.c

View File

@ -18,7 +18,6 @@
#pragma once #pragma once
#include "pin_defs.h" #include "pin_defs.h"
#include "config_led.h"
// key matrix size // key matrix size
#define MATRIX_ROWS 5 #define MATRIX_ROWS 5

View File

@ -11,7 +11,116 @@
} }
}, },
"rgb_matrix": { "rgb_matrix": {
"driver": "custom" "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_fractal": true,
"pixel_flow": true,
"pixel_rain": 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": "custom",
"layout": [
{"matrix": [0, 0], "x": 0, "y": 0, "flags": 4},
{"matrix": [0, 1], "x": 16, "y": 0, "flags": 4},
{"matrix": [0, 2], "x": 32, "y": 0, "flags": 4},
{"matrix": [0, 3], "x": 48, "y": 0, "flags": 4},
{"matrix": [0, 4], "x": 65, "y": 0, "flags": 4},
{"matrix": [0, 5], "x": 81, "y": 0, "flags": 4},
{"matrix": [0, 6], "x": 97, "y": 0, "flags": 4},
{"matrix": [0, 7], "x": 113, "y": 0, "flags": 4},
{"matrix": [0, 8], "x": 129, "y": 0, "flags": 4},
{"matrix": [0, 9], "x": 145, "y": 0, "flags": 4},
{"matrix": [0, 10], "x": 161, "y": 0, "flags": 4},
{"matrix": [0, 11], "x": 178, "y": 0, "flags": 4},
{"matrix": [0, 12], "x": 194, "y": 0, "flags": 4},
{"matrix": [0, 13], "x": 218, "y": 0, "flags": 4},
{"matrix": [1, 0], "x": 4, "y": 16, "flags": 4},
{"matrix": [1, 1], "x": 24, "y": 16, "flags": 4},
{"matrix": [1, 2], "x": 40, "y": 16, "flags": 4},
{"matrix": [1, 3], "x": 57, "y": 16, "flags": 4},
{"matrix": [1, 4], "x": 73, "y": 16, "flags": 4},
{"matrix": [1, 5], "x": 89, "y": 16, "flags": 4},
{"matrix": [1, 6], "x": 105, "y": 16, "flags": 4},
{"matrix": [1, 7], "x": 121, "y": 16, "flags": 4},
{"matrix": [1, 8], "x": 137, "y": 16, "flags": 4},
{"matrix": [1, 9], "x": 153, "y": 16, "flags": 4},
{"matrix": [1, 10], "x": 170, "y": 16, "flags": 4},
{"matrix": [1, 11], "x": 186, "y": 16, "flags": 4},
{"matrix": [1, 12], "x": 202, "y": 16, "flags": 4},
{"matrix": [1, 13], "x": 222, "y": 16, "flags": 4},
{"matrix": [2, 0], "x": 6, "y": 32, "flags": 4},
{"matrix": [2, 1], "x": 28, "y": 32, "flags": 4},
{"matrix": [2, 2], "x": 44, "y": 32, "flags": 4},
{"matrix": [2, 3], "x": 61, "y": 32, "flags": 4},
{"matrix": [2, 4], "x": 77, "y": 32, "flags": 4},
{"matrix": [2, 5], "x": 93, "y": 32, "flags": 4},
{"matrix": [2, 6], "x": 109, "y": 32, "flags": 4},
{"matrix": [2, 7], "x": 125, "y": 32, "flags": 4},
{"matrix": [2, 8], "x": 141, "y": 32, "flags": 4},
{"matrix": [2, 9], "x": 157, "y": 32, "flags": 4},
{"matrix": [2, 10], "x": 174, "y": 32, "flags": 4},
{"matrix": [2, 11], "x": 190, "y": 32, "flags": 4},
{"matrix": [2, 12], "x": 216, "y": 32, "flags": 4},
{"matrix": [3, 0], "x": 10, "y": 48, "flags": 1},
{"matrix": [3, 2], "x": 36, "y": 48, "flags": 4},
{"matrix": [3, 3], "x": 52, "y": 48, "flags": 4},
{"matrix": [3, 4], "x": 69, "y": 48, "flags": 4},
{"matrix": [3, 5], "x": 85, "y": 48, "flags": 4},
{"matrix": [3, 6], "x": 101, "y": 48, "flags": 4},
{"matrix": [3, 7], "x": 117, "y": 48, "flags": 4},
{"matrix": [3, 8], "x": 133, "y": 48, "flags": 4},
{"matrix": [3, 9], "x": 149, "y": 48, "flags": 4},
{"matrix": [3, 10], "x": 165, "y": 48, "flags": 4},
{"matrix": [3, 11], "x": 182, "y": 48, "flags": 4},
{"matrix": [3, 12], "x": 212, "y": 48, "flags": 1},
{"matrix": [4, 0], "x": 2, "y": 64, "flags": 1},
{"matrix": [4, 2], "x": 22, "y": 64, "flags": 1},
{"matrix": [4, 3], "x": 42, "y": 64, "flags": 1},
{"matrix": [4, 6], "x": 103, "y": 64, "flags": 4},
{"matrix": [4, 9], "x": 163, "y": 64, "flags": 1},
{"matrix": [4, 10], "x": 184, "y": 64, "flags": 1},
{"matrix": [4, 11], "x": 204, "y": 64, "flags": 1},
{"matrix": [4, 12], "x": 224, "y": 64, "flags": 1}
],
"led_flush_limit": 40
}, },
"community_layouts": ["60_ansi", "60_iso"] "community_layouts": ["60_ansi", "60_iso"]
} }

View File

@ -46,4 +46,3 @@ SRC = \
ap2_led.c \ ap2_led.c \
protocol.c \ protocol.c \
rgb_driver.c \ rgb_driver.c \
config_led.c

View File

@ -1,43 +0,0 @@
/* Copyright 2022 Jose Pablo Ramirez <jp.ramangulo@gmail.com>
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#ifdef RGB_MATRIX_ENABLE
#include "rgb_matrix.h"
#include "config_led.h"
#define NA NO_LED
led_config_t g_led_config = { {
{ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13 },
{ 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27 },
{ 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, NA },
{ 41, NA, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, NA },
{ 53, NA, 54, 55, NA, NA, 56, NA, NA, 57, 58, 59, 60, NA }
}, {
{ 0 , 0 }, { 16, 0 }, { 32, 0 }, { 48, 0 }, { 65, 0 }, { 81, 0 }, { 97 , 0 }, { 113, 0 }, { 129, 0 }, { 145, 0 }, { 161, 0 }, { 178, 0 }, { 194, 0 }, { 218, 0 },
{ 4 , 16 }, { 24, 16 }, { 40, 16 }, { 57, 16 }, { 73, 16 }, { 89, 16 }, { 105, 16 }, { 121, 16 }, { 137, 16 }, { 153, 16 }, { 170, 16 }, { 186, 16 }, { 202, 16 }, { 222, 16 },
{ 6 , 32 }, { 28, 32 }, { 44, 32 }, { 61, 32 }, { 77, 32 }, { 93, 32 }, { 109, 32 }, { 125, 32 }, { 141, 32 }, { 157, 32 }, { 174, 32 }, { 190, 32 }, { 216, 32 },
{ 10, 48 }, { 36, 48 }, { 52, 48 }, { 69, 48 }, { 85, 48 }, { 101, 48 }, { 117, 48 }, { 133, 48 }, { 149, 48 }, { 165, 48 }, { 182, 48 }, { 212, 48 },
{ 2 , 64 }, { 22, 64 }, { 42, 64 }, { 103, 64 }, { 163, 64 }, { 184, 64 }, { 204, 64 }, { 224, 64 },
}, {
4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1,
1, 1, 1, 4, 1, 1, 1, 1,
} };
#endif

View File

@ -1,72 +0,0 @@
/* Copyright 2022 Jose Pablo Ramirez <jp.ramangulo@gmail.com>
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#pragma once
#ifdef RGB_MATRIX_ENABLE
#define RGB_MATRIX_LED_COUNT 61
/* Limit animations to 25 FPS to avoid tearing. (1/.040 = 25 FPS). */
#define RGB_MATRIX_LED_FLUSH_LIMIT 40
#define RGB_MATRIX_FRAMEBUFFER_EFFECTS
#define RGB_MATRIX_KEYPRESSES
#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_FRACTAL
#define ENABLE_RGB_MATRIX_PIXEL_FLOW
#define ENABLE_RGB_MATRIX_PIXEL_RAIN
#define ENABLE_RGB_MATRIX_TYPING_HEATMAP
#define ENABLE_RGB_MATRIX_DIGITAL_RAIN
#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

View File

@ -87,6 +87,4 @@
#define RGB_MATRIX_LED_COUNT 10 #define RGB_MATRIX_LED_COUNT 10
#define RGB_MATRIX_KEYPRESSES
#define SOLENOID_PIN A14 #define SOLENOID_PIN A14

View File

@ -1,51 +0,0 @@
/*
Copyright 2019 @foostan
Copyright 2020 Drashna Jaelre <@drashna>
Copyright 2021 Elliot Powell @e11i0t23
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#pragma once
#ifdef RGB_MATRIX_ENABLE
# define RGB_MATRIX_LED_COUNT 54
# define RGB_MATRIX_SPLIT \
{ 27, 27 }
# define SPLIT_TRANSPORT_MIRROR
# 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_SPIRAL_SAT
# define ENABLE_RGB_MATRIX_BAND_SPIRAL_VAL
# define ENABLE_RGB_MATRIX_CYCLE_ALL
# define ENABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON
# define ENABLE_RGB_MATRIX_CYCLE_SPIRAL
# define ENABLE_RGB_MATRIX_RAINDROPS
# define ENABLE_RGB_MATRIX_HUE_BREATHING
# define ENABLE_RGB_MATRIX_PIXEL_FRACTAL
// # define ENABLE_RGB_MATRIX_TYPING_HEATMAP
// # define ENABLE_RGB_MATRIX_SOLID_REACTIVE_SIMPLE
// # define ENABLE_RGB_MATRIX_SOLID_REACTIVE
// # define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTINEXUS
// # define ENABLE_RGB_MATRIX_SPLASH
// # define ENABLE_RGB_MATRIX_SOLID_SPLASH
#endif
#define SPLIT_USB_DETECT

View File

@ -3,7 +3,15 @@
"rgb_matrix": true "rgb_matrix": true
}, },
"split": { "split": {
"soft_serial_pin": "D2" "soft_serial_pin": "D2",
"transport": {
"sync": {
"matrix_state": true
}
},
"usb_detect": {
"enabled": true
}
}, },
"rgblight": { "rgblight": {
"led_count": 54, "led_count": 54,
@ -131,6 +139,23 @@
} }
}, },
"rgb_matrix": { "rgb_matrix": {
"animations": {
"alphas_mods": true,
"gradient_up_down": true,
"gradient_left_right": true,
"breathing": true,
"band_sat": true,
"band_val": true,
"band_spiral_sat": true,
"band_spiral_val": true,
"cycle_all": true,
"rainbow_moving_chevron": true,
"cycle_spiral": true,
"raindrops": true,
"hue_breathing": true,
"pixel_fractal": true
},
"split_count": [27, 27],
"layout": [ "layout": [
{"x": 85, "y": 16, "flags": 2}, {"x": 85, "y": 16, "flags": 2},
{"x": 50, "y": 13, "flags": 2}, {"x": 50, "y": 13, "flags": 2},

View File

@ -18,75 +18,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
*/ */
#include "quantum.h" #include "quantum.h"
#ifdef RGB_MATRIX_ENABLE
// Logical Layout
// Columns
// Left
// 0 1 2 3 4 5
// ROWS
// 25 24 19 18 11 10 0
// 03 02 01
// 26 23 20 17 12 09 1
// 04 05 06
// 27 22 21 16 13 08 2
//
// 15 14 07 3
//
// Right
// 0 1 2 3 4 5
// ROWS
// 25 24 19 18 11 10 4
// 03 02 01
// 26 23 20 17 12 09 5
// 04 05 06
// 27 22 21 16 13 08 6
//
// 15 14 07 7
//
// Physical Layout
// Columns
// 0 1 2 3 4 5 6 7 8 9 10 11 12 13
// ROWS
// 25 24 19 18 11 10 10 11 18 19 24 25 0
// 03 02 01 01 02 03
// 26 23 20 17 12 09 09 12 17 20 23 26 1
// 04 04
// 27 22 21 16 13 08 08 13 16 21 22 27 2
// 05 06 06 05
// 15 14 07 07 14 15 3
led_config_t g_led_config = { {
{ 24, 23, 18, 17, 10, 9 },
{ 25, 22, 19, 16, 11, 8 },
{ 26, 21, 20, 15, 12, 7 },
{ NO_LED, NO_LED, NO_LED, 14, 13, 6 },
{ 51, 50, 45, 44, 37, 36 },
{ 52, 49, 46, 43, 38, 35 },
{ 53, 48, 47, 42, 39, 34 },
{ NO_LED, NO_LED, NO_LED, 41, 40, 33 }
}, {
{ 85, 16 }, { 50, 13 }, { 16, 20 }, { 16, 38 }, { 50, 48 }, { 85, 52 }, { 95, 63 },
{ 85, 39 }, { 85, 21 }, { 85, 4 }, { 68, 2 }, { 68, 19 }, { 68, 37 }, { 80, 58 },
{ 60, 55 }, { 50, 35 }, { 50, 13 }, { 50, 0 }, { 33, 3 }, { 33, 20 }, { 33, 37 },
{ 16, 42 }, { 16, 24 }, { 16, 7 }, { 0, 7 }, { 0, 24 }, { 0, 41 }, { 139, 16 },
{ 174, 13 }, { 208, 20 }, { 208, 38 }, { 174, 48 }, { 139, 52 }, { 129, 63 }, { 139, 39 },
{ 139, 21 }, { 139, 4 }, { 156, 2 }, { 156, 19 }, { 156, 37 }, { 144, 58 }, { 164, 55 },
{ 174, 35 }, { 174, 13 }, { 174, 0 }, { 191, 3 }, { 191, 20 }, { 191, 37 }, { 208, 42 },
{ 208, 24 }, { 208, 7 }, { 224, 7 }, { 224, 24 }, { 224, 41 }
}, {
2, 2, 2, 2, 2, 2, 1,
4, 4, 4, 4, 4, 4, 1,
1, 4, 4, 4, 4, 4, 4,
4, 4, 4, 1, 1, 1, 2,
2, 2, 2, 2, 2, 1, 4,
4, 4, 4, 4, 4, 1, 1,
4, 4, 4, 4, 4, 4, 4,
4, 4, 1, 1, 1
} };
#endif
#ifdef OLED_ENABLE #ifdef OLED_ENABLE
void oled_render_logo(void) { void oled_render_logo(void) {
static const char PROGMEM mb_logo[] = { static const char PROGMEM mb_logo[] = {

View File

@ -1,26 +0,0 @@
/*
Copyright 2019 @foostan
Copyright 2020 Drashna Jaelre <@drashna>
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#pragma once
#ifdef RGB_MATRIX_ENABLE
# define RGB_MATRIX_LED_COUNT 54
# define RGB_MATRIX_SPLIT \
{ 27, 27 }
# define SPLIT_TRANSPORT_MIRROR
#endif

View File

@ -3,7 +3,12 @@
"rgblight": true "rgblight": true
}, },
"split": { "split": {
"soft_serial_pin": "D2" "soft_serial_pin": "D2",
"transport": {
"sync": {
"matrix_state": true
}
}
}, },
"rgblight": { "rgblight": {
"led_count": 54, "led_count": 54,
@ -13,6 +18,7 @@
"pin": "D3" "pin": "D3"
}, },
"rgb_matrix": { "rgb_matrix": {
"split_count": [27, 27],
"layout": [ "layout": [
{"x": 85, "y": 16, "flags": 2}, {"x": 85, "y": 16, "flags": 2},
{"x": 50, "y": 13, "flags": 2}, {"x": 50, "y": 13, "flags": 2},

View File

@ -16,7 +16,4 @@
#pragma once #pragma once
#define DRIVER_1_LED_TOTAL 59
#define DRIVER_2_LED_TOTAL 10
#define CAPS_LED 29 #define CAPS_LED 29

View File

@ -20,5 +20,3 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
/* key matrix size; rows are doubled for split */ /* key matrix size; rows are doubled for split */
#define MATRIX_ROWS 8 #define MATRIX_ROWS 8
#define MATRIX_COLS 8 #define MATRIX_COLS 8
#define RGB_MATRIX_LED_COUNT 64

View File

@ -40,7 +40,73 @@
"pixel_flow": true, "pixel_flow": true,
"pixel_fractal": true "pixel_fractal": true
}, },
"driver": "custom" "driver": "custom",
"layout": [
{"matrix": [3, 7], "x": 3, "y": 35, "flags": 4},
{"matrix": [2, 7], "x": 0, "y": 26, "flags": 4},
{"matrix": [1, 7], "x": 0, "y": 17, "flags": 4},
{"matrix": [0, 7], "x": 0, "y": 6, "flags": 4},
{"matrix": [0, 6], "x": 14, "y": 5, "flags": 4},
{"matrix": [1, 6], "x": 15, "y": 16, "flags": 4},
{"matrix": [2, 6], "x": 16, "y": 25, "flags": 4},
{"matrix": [3, 6], "x": 17, "y": 34, "flags": 4},
{"matrix": [3, 5], "x": 31, "y": 29, "flags": 4},
{"matrix": [2, 5], "x": 31, "y": 19, "flags": 4},
{"matrix": [1, 5], "x": 30, "y": 11, "flags": 4},
{"matrix": [0, 5], "x": 30, "y": 1, "flags": 4},
{"matrix": [0, 4], "x": 45, "y": 0, "flags": 4},
{"matrix": [1, 4], "x": 45, "y": 8, "flags": 4},
{"matrix": [2, 4], "x": 46, "y": 17, "flags": 4},
{"matrix": [3, 4], "x": 46, "y": 27, "flags": 4},
{"matrix": [3, 3], "x": 60, "y": 27, "flags": 4},
{"matrix": [2, 3], "x": 60, "y": 18, "flags": 4},
{"matrix": [1, 3], "x": 60, "y": 9, "flags": 4},
{"matrix": [0, 3], "x": 60, "y": 0, "flags": 4},
{"matrix": [0, 2], "x": 74, "y": 2, "flags": 4},
{"matrix": [1, 2], "x": 74, "y": 11, "flags": 4},
{"matrix": [2, 2], "x": 75, "y": 20, "flags": 4},
{"matrix": [3, 2], "x": 74, "y": 28, "flags": 4},
{"matrix": [2, 1], "x": 89, "y": 30, "flags": 4},
{"matrix": [1, 1], "x": 89, "y": 19, "flags": 4},
{"matrix": [0, 1], "x": 89, "y": 7, "flags": 4},
{"matrix": [0, 0], "x": 70, "y": 38, "flags": 1},
{"matrix": [1, 0], "x": 82, "y": 41, "flags": 1},
{"matrix": [2, 0], "x": 93, "y": 45, "flags": 1},
{"matrix": [3, 0], "x": 104, "y": 50, "flags": 1},
{"matrix": [3, 1], "x": 74, "y": 64, "flags": 1},
{"matrix": [7, 6], "x": 149, "y": 64, "flags": 1},
{"matrix": [7, 7], "x": 119, "y": 50, "flags": 1},
{"matrix": [6, 7], "x": 130, "y": 45, "flags": 1},
{"matrix": [5, 7], "x": 141, "y": 41, "flags": 1},
{"matrix": [4, 7], "x": 153, "y": 38, "flags": 1},
{"matrix": [4, 6], "x": 134, "y": 7, "flags": 4},
{"matrix": [5, 6], "x": 134, "y": 19, "flags": 4},
{"matrix": [6, 6], "x": 134, "y": 30, "flags": 4},
{"matrix": [7, 5], "x": 149, "y": 28, "flags": 4},
{"matrix": [6, 5], "x": 148, "y": 20, "flags": 4},
{"matrix": [5, 5], "x": 149, "y": 11, "flags": 4},
{"matrix": [4, 5], "x": 149, "y": 2, "flags": 4},
{"matrix": [4, 4], "x": 163, "y": 0, "flags": 4},
{"matrix": [5, 4], "x": 163, "y": 9, "flags": 4},
{"matrix": [6, 4], "x": 163, "y": 18, "flags": 4},
{"matrix": [7, 4], "x": 163, "y": 27, "flags": 4},
{"matrix": [7, 3], "x": 177, "y": 27, "flags": 4},
{"matrix": [6, 3], "x": 177, "y": 17, "flags": 4},
{"matrix": [5, 3], "x": 178, "y": 8, "flags": 4},
{"matrix": [4, 3], "x": 178, "y": 0, "flags": 4},
{"matrix": [4, 2], "x": 193, "y": 1, "flags": 4},
{"matrix": [5, 2], "x": 193, "y": 11, "flags": 4},
{"matrix": [6, 2], "x": 192, "y": 19, "flags": 4},
{"matrix": [7, 2], "x": 192, "y": 29, "flags": 4},
{"matrix": [7, 1], "x": 206, "y": 34, "flags": 4},
{"matrix": [6, 1], "x": 207, "y": 25, "flags": 4},
{"matrix": [5, 1], "x": 208, "y": 16, "flags": 4},
{"matrix": [4, 1], "x": 209, "y": 5, "flags": 4},
{"matrix": [4, 0], "x": 224, "y": 6, "flags": 4},
{"matrix": [5, 0], "x": 223, "y": 17, "flags": 4},
{"matrix": [6, 0], "x": 223, "y": 26, "flags": 4},
{"matrix": [7, 0], "x": 220, "y": 35, "flags": 4}
]
}, },
"processor": "atmega32u4", "processor": "atmega32u4",
"bootloader": "caterina", "bootloader": "caterina",

View File

@ -45,37 +45,6 @@ void set_led_to(int led, uint8_t r, uint8_t g, uint8_t b) {
#ifdef RGB_MATRIX_ENABLE #ifdef RGB_MATRIX_ENABLE
__attribute__ ((weak))
led_config_t g_led_config = { {
{ 27, 26, 20, 19, 12, 11, 4, 3 },
{ 28, 25, 21, 18, 13, 10, 5, 2 },
{ 29, 24, 22, 17, 14, 9, 6, 1 },
{ 30, 31, 23, 16, 15, 8, 7, 0 },
{ 60, 59, 52, 51, 44, 43, 37, 36 },
{ 61, 58, 53, 50, 45, 42, 38, 35 },
{ 62, 57, 54, 49, 46, 41, 39, 34 },
{ 63, 56, 55, 48, 47, 40, 32, 33 }
}, {
{ 3, 35 }, { 0, 26 }, { 0, 17 }, { 0, 6 }, { 14, 5 }, { 15, 16 }, { 16, 25 }, { 17, 34 },
{ 31, 29 }, { 31, 19 }, { 30, 11 }, { 30, 1 }, { 45, 0 }, { 45, 8 }, { 46, 17 }, { 46, 27 },
{ 60, 27 }, { 60, 18 }, { 60, 9 }, { 60, 0 }, { 74, 2 }, { 74, 11 }, { 75, 20 }, { 74, 28 },
{ 89, 30 }, { 89, 19 }, { 89, 7 }, { 70, 38 }, { 82, 41 }, { 93, 45 }, { 104, 50 }, { 74, 64 },
{ 149, 64 }, { 119, 50 }, { 130, 45 }, { 141, 41 }, { 153, 38 }, { 134, 7 }, { 134, 19 }, { 134, 30 },
{ 149, 28 }, { 148, 20 }, { 149, 11 }, { 149, 2 }, { 163, 0 }, { 163, 9 }, { 163, 18 }, { 163, 27 },
{ 177, 27 }, { 177, 17 }, { 178, 8 }, { 178, 0 }, { 193, 1 }, { 193, 11 }, { 192, 19 }, { 192, 29 },
{ 206, 34 }, { 207, 25 }, { 208, 16 }, { 209, 5 }, { 224, 6 }, { 223, 17 }, { 223, 26 }, { 220, 35 }
}, {
4, 4, 4, 4, 4, 4, 4, 4,
4, 4, 4, 4, 4, 4, 4, 4,
4, 4, 4, 4, 4, 4, 4, 4,
4, 4, 4, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 4, 4, 4,
4, 4, 4, 4, 4, 4, 4, 4,
4, 4, 4, 4, 4, 4, 4, 4,
4, 4, 4, 4, 4, 4, 4, 4
} };
static struct { static struct {
uint8_t b; uint8_t b;
uint8_t g; uint8_t g;

View File

@ -18,22 +18,8 @@
*/ */
#pragma once #pragma once
/*
* Feature disable options
* These options are also useful to firmware size reduction.
*/
/* disable debug print */
//#define NO_DEBUG
/* disable print */
//#define NO_PRINT
#define DRIVER_1_LED_TOTAL 32
#define DRIVER_2_LED_TOTAL 32
#define IS31FL3731_I2C_ADDRESS_1 IS31FL3731_I2C_ADDRESS_GND #define IS31FL3731_I2C_ADDRESS_1 IS31FL3731_I2C_ADDRESS_GND
#define IS31FL3731_I2C_ADDRESS_2 IS31FL3731_I2C_ADDRESS_VCC #define IS31FL3731_I2C_ADDRESS_2 IS31FL3731_I2C_ADDRESS_VCC
#define IS31FL3731_LED_COUNT (DRIVER_1_LED_TOTAL+DRIVER_2_LED_TOTAL) #define IS31FL3731_LED_COUNT 64
#define USB_SUSPEND_WAKEUP_DELAY 1000 #define USB_SUSPEND_WAKEUP_DELAY 1000

View File

@ -18,20 +18,6 @@
*/ */
#pragma once #pragma once
/*
* Feature disable options
* These options are also useful to firmware size reduction.
*/
/* disable debug print */
//#define NO_DEBUG
/* disable print */
//#define NO_PRINT
#define DRIVER_1_LED_TOTAL 32
#define DRIVER_2_LED_TOTAL 32
#define IS31FL3731_I2C_ADDRESS_1 IS31FL3731_I2C_ADDRESS_GND #define IS31FL3731_I2C_ADDRESS_1 IS31FL3731_I2C_ADDRESS_GND
#define IS31FL3731_I2C_ADDRESS_2 IS31FL3731_I2C_ADDRESS_VCC #define IS31FL3731_I2C_ADDRESS_2 IS31FL3731_I2C_ADDRESS_VCC
#define IS31FL3731_LED_COUNT (DRIVER_1_LED_TOTAL+DRIVER_2_LED_TOTAL) #define IS31FL3731_LED_COUNT 64