~ruther/qmk_firmware

c024acd75243034d7d70d3bfb2fd6d3eacc0b62a — Albert Y 4 years ago 6b8168c
[Keyboard] RGB Matrix support for TBK Mini (#13506)

Co-authored-by: filterpaper <filterpaper@localhost>
M keyboards/bastardkb/tbkmini/config.h => keyboards/bastardkb/tbkmini/config.h +14 -1
@@ 1,4 1,4 @@
/* 
/*
 * Copyright 2021 Quentin LEBASTARD <qlebastard@gmail.com>
 *
 * This program is free software: you can redistribute it and/or modify


@@ 45,3 45,16 @@
#define F_SCL 400000L
#define USB_POLLING_INTERVAL_MS 1
#define MASTER_RIGHT

// RGB matrix support
#ifdef RGB_MATRIX_ENABLE
#    define SPLIT_TRANSPORT_MIRROR
#    define DRIVER_LED_TOTAL 42 // Number of LEDs
#    define RGB_MATRIX_SPLIT { 21, 21 }
#    define RGB_MATRIX_MAXIMUM_BRIGHTNESS 50
#    define RGB_MATRIX_STARTUP_VAL RGB_MATRIX_MAXIMUM_BRIGHTNESS
#    ifndef RGB_DISABLE_WHEN_USB_SUSPENDED
#        define RGB_DISABLE_WHEN_USB_SUSPENDED true
#    endif
#    define RGB_MATRIX_KEYPRESSES
#endif

M keyboards/bastardkb/tbkmini/rules.mk => keyboards/bastardkb/tbkmini/rules.mk +5 -2
@@ 17,7 17,10 @@ SLEEP_LED_ENABLE = no       # Breathing sleep LED during USB suspend
# if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
NKRO_ENABLE = yes            # USB Nkey Rollover
BACKLIGHT_ENABLE = no       # Enable keyboard backlight functionality
RGBLIGHT_ENABLE = yes       # Enable keyboard RGB underglow
RGBLIGHT_ENABLE = no        # Enable keyboard RGB underglow
RGBLIGHT_ENABLE = no        # Enable keyboard RGB underglow
RGB_MATRIX_ENABLE = yes     # Enable keyboard RGB matrix (do not use together with RGBLIGHT_ENABLE)
RGB_MATRIX_DRIVER = WS2812  # RGB matrix driver support
BLUETOOTH_ENABLE = no       # Enable Bluetooth
AUDIO_ENABLE = no           # Audio output
SPLIT_KEYBOARD = yes


@@ 25,7 28,7 @@ TAP_DANCE_ENABLE = no
LTO_ENABLE = yes

AUDIO_SUPPORTED = no
RGB_MATRIX_SUPPORTED = no
RGB_MATRIX_SUPPORTED = yes
RGBLIGHT_SUPPORTED = yes

LAYOUTS = split_3x6_3

M keyboards/bastardkb/tbkmini/tbkmini.c => keyboards/bastardkb/tbkmini/tbkmini.c +42 -1
@@ 1,4 1,4 @@
/* 
/*
 * Copyright 2021 Quentin LEBASTARD <qlebastard@gmail.com>
 *
 * This program is free software: you can redistribute it and/or modify


@@ 16,3 16,44 @@
 */

#include "tbkmini.h"

#ifdef RGB_MATRIX_ENABLE
led_config_t g_led_config = { {
    // left
    {  0,  5,  6, 11, 12, 15 },
    {  1,  4,  7, 10, 13, 16 },
    {  2,  3,  8,  9, 14, 17 },
    { NO_LED, 18, NO_LED, 19, 20, NO_LED },
    // right
    { 21, 26, 27, 32, 33, 36 },
    { 22, 25, 28, 31, 34, 37 },
    { 23, 24, 29, 30, 35, 38 },
    { NO_LED, 39, NO_LED, 40, 41, NO_LED }
}, {
    // left
    {   0,   0 }, {   0,  21 }, {   0,  42 }, // col 1
    {  20,  42 }, {  20,  21 }, {  20,   0 }, // col 2
    {  41,   0 }, {  41,  21 }, {  41,  42 },
    {  61,  42 }, {  61,  21 }, {  61,   0 },
    {  81,   0 }, {  81,  21 }, {  81,  42 },
    { 102,   0 }, { 102,  21 }, { 102,  42 },
    {  61,  64 }, {  81,  64 }, { 102,  64 }, // left thumb cluster
    // right
    { 224,   0 }, { 224,  21 }, { 224,  42 }, // col 12
    { 204,  42 }, { 204,  21 }, { 204,   0 }, // col 11
    { 183,   0 }, { 183,  21 }, { 183,  42 },
    { 163,  42 }, { 163,  21 }, { 163,   0 },
    { 142,   0 }, { 142,  21 }, { 142,  42 },
    { 122,   0 }, { 122,  21 }, { 122,  42 },
    { 163,  64 }, { 142,  64 }, { 122,  64 }  // right thumb cluster
}, {
    // left
    2, 2, 2, 4, 4, 4, 4, 4, 4,
    4, 4, 4, 4, 4, 4, 4, 4, 4,
    2, 2, 2,
    // right
    2, 2, 2, 4, 4, 4, 4, 4, 4,
    4, 4, 4, 4, 4, 4, 4, 4, 4,
    2, 2, 2
} };
#endif