~ruther/qmk_firmware

7be40fd14373c73cae96484b536ad8498ecd1a88 — Joel Challis 1 year, 3 months ago 974e98c
Migrate RGB Matrix config to info.json (#23000)

M keyboards/4pplet/perk60_iso/rev_a/config.h => keyboards/4pplet/perk60_iso/rev_a/config.h +0 -2
@@ 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_PWM_FREQUENCY IS31FL3733_PWM_FREQUENCY_26K7_HZ

#define RGB_MATRIX_LED_COUNT 62

M keyboards/4pplet/perk60_iso/rev_a/rev_a.c => keyboards/4pplet/perk60_iso/rev_a/rev_a.c +1 -2
@@ 82,10 82,9 @@ const is31fl3733_led_t PROGMEM g_is31fl3733_leds[IS31FL3733_LED_COUNT] = {
    { 0, B_16,  A_16,  C_16 } //D464
};

#define XXX NO_LED
led_config_t g_led_config = {
    {
    #define XXX NO_LED

    {   0,   2,   4,   6,   8,  10,  12 },
    {   1,   3,   5,   7,   9,  11, XXX },
    {  14,  16,  18,  20,  22,  24,  26 },

M keyboards/annepro2/c15/config.h => keyboards/annepro2/c15/config.h +0 -1
@@ 18,7 18,6 @@
#pragma once

#include "pin_defs.h"
#include "config_led.h"

// key matrix size
#define MATRIX_ROWS 5

M keyboards/annepro2/c15/info.json => keyboards/annepro2/c15/info.json +110 -1
@@ 11,7 11,116 @@
        }
    },
    "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"]
}

M keyboards/annepro2/c15/rules.mk => keyboards/annepro2/c15/rules.mk +0 -1
@@ 46,4 46,3 @@ SRC = \
	ap2_led.c \
	protocol.c \
	rgb_driver.c \
	config_led.c

M keyboards/annepro2/c18/config.h => keyboards/annepro2/c18/config.h +0 -1
@@ 18,7 18,6 @@
#pragma once

#include "pin_defs.h"
#include "config_led.h"

// key matrix size
#define MATRIX_ROWS 5

M keyboards/annepro2/c18/info.json => keyboards/annepro2/c18/info.json +110 -1
@@ 11,7 11,116 @@
        }
    },
    "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"]
}

M keyboards/annepro2/c18/rules.mk => keyboards/annepro2/c18/rules.mk +0 -1
@@ 46,4 46,3 @@ SRC = \
	ap2_led.c \
	protocol.c \
	rgb_driver.c \
	config_led.c

D keyboards/annepro2/config_led.c => keyboards/annepro2/config_led.c +0 -43
@@ 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

D keyboards/annepro2/config_led.h => keyboards/annepro2/config_led.h +0 -72
@@ 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

M keyboards/boston_meetup/2019/config.h => keyboards/boston_meetup/2019/config.h +0 -2
@@ 87,6 87,4 @@

#define RGB_MATRIX_LED_COUNT 10

#define RGB_MATRIX_KEYPRESSES

#define SOLENOID_PIN A14

D keyboards/crkbd/r2g/config.h => keyboards/crkbd/r2g/config.h +0 -51
@@ 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


M keyboards/crkbd/r2g/info.json => keyboards/crkbd/r2g/info.json +26 -1
@@ 3,7 3,15 @@
        "rgb_matrix": true
    },
    "split": {
        "soft_serial_pin": "D2"
        "soft_serial_pin": "D2",
        "transport": {
            "sync": {
                "matrix_state": true
            }
        },
        "usb_detect": {
            "enabled": true
        }
    },
    "rgblight": {
        "led_count": 54,


@@ 131,6 139,23 @@
        }
    },
    "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": [
            {"x": 85, "y": 16, "flags": 2},
            {"x": 50, "y": 13, "flags": 2},

M keyboards/crkbd/r2g/r2g.c => keyboards/crkbd/r2g/r2g.c +0 -69
@@ 18,75 18,6 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
*/
#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
void oled_render_logo(void) {
    static const char PROGMEM mb_logo[] = {

D keyboards/crkbd/rev1/config.h => keyboards/crkbd/rev1/config.h +0 -26
@@ 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

M keyboards/crkbd/rev1/info.json => keyboards/crkbd/rev1/info.json +7 -1
@@ 3,7 3,12 @@
        "rgblight": true
    },
    "split": {
        "soft_serial_pin": "D2"
        "soft_serial_pin": "D2",
        "transport": {
            "sync": {
                "matrix_state": true
            }
        }
    },
    "rgblight": {
        "led_count": 54,


@@ 13,6 18,7 @@
        "pin": "D3"
    },
    "rgb_matrix": {
        "split_count": [27, 27],
        "layout": [
            {"x": 85, "y": 16, "flags": 2},
            {"x": 50, "y": 13, "flags": 2},

M keyboards/durgod/dgk6x/hades_iso/config.h => keyboards/durgod/dgk6x/hades_iso/config.h +0 -3
@@ 16,7 16,4 @@

#pragma once

#define DRIVER_1_LED_TOTAL 59
#define DRIVER_2_LED_TOTAL 10   

#define CAPS_LED 29

M keyboards/keyboardio/model01/config.h => keyboards/keyboardio/model01/config.h +0 -2
@@ 20,5 20,3 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
/* key matrix size; rows are doubled for split */
#define MATRIX_ROWS 8
#define MATRIX_COLS 8

#define RGB_MATRIX_LED_COUNT 64

M keyboards/keyboardio/model01/info.json => keyboards/keyboardio/model01/info.json +67 -1
@@ 40,7 40,73 @@
      "pixel_flow": 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",
    "bootloader": "caterina",

M keyboards/keyboardio/model01/leds.c => keyboards/keyboardio/model01/leds.c +0 -31
@@ 45,37 45,6 @@ void set_led_to(int led, uint8_t r, uint8_t g, uint8_t b) {

#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 {
  uint8_t b;
  uint8_t g;

M keyboards/neson_design/700e/config.h => keyboards/neson_design/700e/config.h +1 -15
@@ 18,22 18,8 @@
 */
#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_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

M keyboards/neson_design/n6/config.h => keyboards/neson_design/n6/config.h +1 -15
@@ 18,20 18,6 @@
 */
#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_2 IS31FL3731_I2C_ADDRESS_VCC
#define IS31FL3731_LED_COUNT (DRIVER_1_LED_TOTAL+DRIVER_2_LED_TOTAL)
#define IS31FL3731_LED_COUNT 64

Do not follow this link