RGB matrix works

This commit is contained in:
Thomas Haukland 2023-04-23 15:12:47 +02:00
parent 892afe5e36
commit ca8ab1dcf6
5 changed files with 131 additions and 110 deletions

View File

@ -20,10 +20,24 @@
//#define NO_ACTION_ONESHOT //#define NO_ACTION_ONESHOT
#define BOTH_SHIFTS_TURNS_ON_CAPS_WORD #define BOTH_SHIFTS_TURNS_ON_CAPS_WORD
#define RGB_MATRIX_MAXIMUM_BRIGHTNESS 128
#define WS2812_PIO_USE_PIO1 // Force the usage of PIO1 peripheral, by default the WS2812 implementation uses the PIO0 peripheral
//#define WS2812_TRST_US 80
#define WS2812_BYTE_ORDER WS2812_BYTE_ORDER_RGB
#define RGB_MATRIX_DEFAULT_VAL 32
// Pick good defaults for enabling homerow modifiers // Pick good defaults for enabling homerow modifiers
#define TAPPING_TERM 230 #define TAPPING_TERM 230
// #define PERMISSIVE_HOLD // #define PERMISSIVE_HOLD
#define IGNORE_MOD_TAP_INTERRUPT #define IGNORE_MOD_TAP_INTERRUPT
#define TAPPING_FORCE_HOLD #define TAPPING_FORCE_HOLD
//#define RETRO_TAPPING //#define RETRO_TAPPING
#ifdef RGB_MATRIX_ENABLE
// #define NOP_FUDGE 0.4
#define RGB_DI_PIN GP16 // The pin connected to the data pin of the LEDs
#define RGB_MATRIX_LED_COUNT 1 // The number of LEDs connected
#define ENABLE_RGB_MATRIX_SINGLE_COLOR // Single hue brightness cycling animation
#define ENABLE_RGB_MATRIX_BREATHING
#endif

View File

@ -10,7 +10,8 @@
"console": true, "console": true,
"extrakey": true, "extrakey": true,
"mousekey": true, "mousekey": true,
"nkro": false "nkro": false,
"rgb_matrix": true
}, },
"matrix_pins": { "matrix_pins": {
"cols": ["GP0", "GP0", "GP1", "GP1", "GP2", "GP2", "GP29", "GP29", "GP28", "GP28", "GP27", "GP27"], "cols": ["GP0", "GP0", "GP1", "GP1", "GP2", "GP2", "GP29", "GP29", "GP28", "GP28", "GP27", "GP27"],
@ -23,6 +24,11 @@
"pid": "0x0000", "pid": "0x0000",
"vid": "0xFEED" "vid": "0xFEED"
}, },
"rgb_matrix": {
"driver": "WS2812",
"layout": [
{ "flags": 4, "matrix": [0, 0] , "x": 4 , "y": 0.25 }
]},
"layouts": { "layouts": {
"LAYOUT_split_3x5_3": { "LAYOUT_split_3x5_3": {
"layout": [ "layout": [

View File

@ -2,124 +2,124 @@
"version": 1, "version": 1,
"notes": "My awesome keymap", "notes": "My awesome keymap",
"documentation": "\"This file is a QMK Configurator export. You can import this at <https://config.qmk.fm>. It can also be used directly with QMK's source code.\n\nTo setup your QMK environment check out the tutorial: <https://docs.qmk.fm/#/newbs>\n\nYou can convert this file to a keymap.c using this command: `qmk json2c {keymap}`\n\nYou can compile this keymap using this command: `qmk compile {keymap}`\"\n", "documentation": "\"This file is a QMK Configurator export. You can import this at <https://config.qmk.fm>. It can also be used directly with QMK's source code.\n\nTo setup your QMK environment check out the tutorial: <https://docs.qmk.fm/#/newbs>\n\nYou can convert this file to a keymap.c using this command: `qmk json2c {keymap}`\n\nYou can compile this keymap using this command: `qmk compile {keymap}`\"\n",
"keyboard": "bastardkb/skeletyl", "keyboard": "bastardkb/skeletyl/blackpill",
"keymap": "default", "keymap": "default",
"layout": "LAYOUT_split_3x5_3", "layout": "LAYOUT_split_3x5_3",
"layers": [ "layers": [
[ [
"KC_Q", "KC_Q",
"KC_W", "KC_W",
"KC_F", "KC_F",
"KC_P", "KC_P",
"KC_B", "KC_B",
"KC_J", "KC_J",
"KC_L", "KC_L",
"KC_U", "KC_U",
"KC_Y", "KC_Y",
"KC_SCLN", "KC_SCLN",
"KC_A", "KC_A",
"KC_R", "KC_R",
"KC_S", "KC_S",
"KC_T", "KC_T",
"KC_G", "KC_G",
"KC_M", "KC_M",
"KC_N", "KC_N",
"KC_E", "KC_E",
"KC_I", "KC_I",
"KC_O", "KC_O",
"LSFT_T(KC_Z)", "LSFT_T(KC_Z)",
"LCTL_T(KC_X)", "LCTL_T(KC_X)",
"RALT_T(KC_C)", "RALT_T(KC_C)",
"KC_D", "KC_D",
"KC_V", "KC_V",
"KC_K", "KC_K",
"KC_H", "KC_H",
"RALT_T(KC_COMM)", "RALT_T(KC_COMM)",
"LCTL_T(KC_DOT)", "LCTL_T(KC_DOT)",
"LSFT_T(KC_SLSH)", "LSFT_T(KC_SLSH)",
"TO(1)", "TO(1)",
"KC_BSPC", "KC_BSPC",
"KC_TAB", "KC_TAB",
"KC_DEL", "KC_LGUI",
"KC_SPC", "KC_SPC",
"KC_ENT" "KC_ENT"
],
[
"KC_TRNS",
"KC_7",
"KC_8",
"KC_9",
"KC_TRNS",
"KC_QUOT",
"KC_MINS",
"KC_EQL",
"KC_ASTR",
"KC_CIRC",
"KC_TRNS",
"KC_4",
"KC_5",
"KC_6",
"KC_0",
"KC_TAB",
"KC_LPRN",
"KC_RPRN",
"KC_LBRC",
"KC_RBRC",
"KC_LSFT",
"KC_1",
"KC_2",
"KC_3",
"KC_TRNS",
"KC_PIPE",
"KC_GRV",
"KC_LALT",
"KC_LCTL",
"KC_RSFT",
"TO(2)",
"KC_BSPC",
"KC_TAB",
"KC_DEL",
"TO(0)",
"KC_ENT"
], ],
[ [
"KC_TRNS", "KC_TRNS",
"KC_TRNS", "KC_7",
"KC_PGUP", "KC_8",
"KC_TRNS", "KC_9",
"KC_TRNS", "KC_TRNS",
"ANY(UC(0xE6))", "KC_QUOT",
"ANY(UC(0xF8))", "KC_MINS",
"KC_TRNS", "KC_EQL",
"KC_TRNS", "KC_ASTR",
"KC_TRNS", "KC_CIRC",
"KC_LEFT", "KC_TRNS",
"KC_UP", "KC_4",
"KC_DOWN", "KC_5",
"KC_RGHT", "KC_6",
"KC_TRNS", "KC_0",
"KC_TRNS", "KC_BSLS",
"KC_LGUI", "KC_LPRN",
"ANY(UC(0xE5))", "KC_RPRN",
"LCTL(KC_LALT)", "KC_LBRC",
"LCA(KC_LSFT)", "KC_RBRC",
"KC_TRNS", "KC_LSFT",
"KC_HOME", "KC_1",
"KC_PGDN", "KC_2",
"KC_END", "KC_3",
"KC_TRNS", "KC_TRNS",
"KC_TRNS", "KC_PIPE",
"KC_RBRC", "KC_GRV",
"KC_TRNS", "KC_LALT",
"KC_TRNS", "KC_LCTL",
"KC_TRNS", "KC_RSFT",
"KC_TRNS", "TO(2)",
"KC_TRNS", "KC_BSPC",
"KC_TAB", "KC_TAB",
"KC_DEL", "KC_DEL",
"TO(0)", "TO(0)",
"KC_TRNS" "KC_ENT"
] ],
[
"KC_TRNS",
"KC_TRNS",
"KC_PGUP",
"KC_TRNS",
"KC_TRNS",
"ANY(UC(0xE6))",
"ANY(UC(0xF8))",
"KC_TRNS",
"KC_TRNS",
"KC_TRNS",
"KC_LEFT",
"KC_UP",
"KC_DOWN",
"KC_RGHT",
"KC_TRNS",
"KC_TRNS",
"KC_LGUI",
"ANY(UC(0xE5))",
"LCTL(KC_LALT)",
"LCA(KC_LSFT)",
"KC_TRNS",
"KC_HOME",
"KC_PGDN",
"KC_END",
"KC_TRNS",
"KC_TRNS",
"KC_RBRC",
"KC_TRNS",
"KC_TRNS",
"KC_TRNS",
"KC_TRNS",
"KC_TRNS",
"KC_TAB",
"KC_DEL",
"TO(0)",
"KC_TRNS"
]
], ],
"author": "thomas.haukland@gmail.com" "author": "thomas.haukland@gmail.com"
} }

View File

@ -245,7 +245,7 @@
"KC_P8", "KC_P8",
"KC_P9", "KC_P9",
"KC_PAST", "KC_PAST",
"KC_TRNS", "EE_CLR",
"KC_TRNS", "KC_TRNS",
"KC_TRNS", "KC_TRNS",
"KC_TRNS", "KC_TRNS",

View File

@ -1,4 +1,5 @@
CAPS_WORD_ENABLE = yes CAPS_WORD_ENABLE = yes
CUSTOM_MATRIX = lite CUSTOM_MATRIX = lite
WS2812_DRIVER = vendor
SRC += encoder.c SRC += encoder.c
SRC += matrix.c SRC += matrix.c