From 19ecd697570784bff8803edc2f18a8ee75d3d4ce Mon Sep 17 00:00:00 2001 From: Charly Delay <0xcharly@users.noreply.github.com> Date: Fri, 27 Jan 2023 03:43:08 +0900 Subject: Rename `LAYOUT` macros identifier that contained the keyboard name (#19657) --- keyboards/bastardkb/charybdis/3x5/3x5.h | 2 +- keyboards/bastardkb/charybdis/3x5/info.json | 5 ++++- keyboards/bastardkb/charybdis/3x5/keymaps/bstiq/config.h | 4 ++++ keyboards/bastardkb/charybdis/3x5/keymaps/bstiq/keymap.c | 2 +- keyboards/bastardkb/charybdis/3x5/keymaps/default/keymap.c | 6 +++--- keyboards/bastardkb/charybdis/3x5/keymaps/via/keymap.c | 2 +- keyboards/bastardkb/charybdis/3x6/3x6.h | 2 +- keyboards/bastardkb/charybdis/3x6/info.json | 5 ++++- keyboards/bastardkb/charybdis/3x6/keymaps/default/keymap.c | 6 +++--- keyboards/bastardkb/charybdis/3x6/keymaps/via/keymap.c | 8 ++++---- keyboards/bastardkb/charybdis/4x6/4x6.h | 2 +- keyboards/bastardkb/charybdis/4x6/info.json | 5 ++++- keyboards/bastardkb/charybdis/4x6/keymaps/default/keymap.c | 6 +++--- keyboards/bastardkb/charybdis/4x6/keymaps/via/keymap.c | 8 ++++---- 14 files changed, 38 insertions(+), 25 deletions(-) diff --git a/keyboards/bastardkb/charybdis/3x5/3x5.h b/keyboards/bastardkb/charybdis/3x5/3x5.h index 665fcbeec2..4ea3ef94bb 100644 --- a/keyboards/bastardkb/charybdis/3x5/3x5.h +++ b/keyboards/bastardkb/charybdis/3x5/3x5.h @@ -21,7 +21,7 @@ #include "charybdis.h" // clang-format off -#define LAYOUT_charybdis_3x5( \ +#define LAYOUT( \ k00, k01, k02, k03, k04, k44, k43, k42, k41, k40, \ k10, k11, k12, k13, k14, k54, k53, k52, k51, k50, \ k20, k21, k22, k23, k24, k64, k63, k62, k61, k60, \ diff --git a/keyboards/bastardkb/charybdis/3x5/info.json b/keyboards/bastardkb/charybdis/3x5/info.json index efa863ea4b..0c47d1a3ad 100644 --- a/keyboards/bastardkb/charybdis/3x5/info.json +++ b/keyboards/bastardkb/charybdis/3x5/info.json @@ -5,8 +5,11 @@ "pid": "0x1832", "vid": "0xA8F8" }, + "layout_aliases": { + "LAYOUT_charybdis_3x5": "LAYOUT" + }, "layouts": { - "LAYOUT_charybdis_3x5": { + "LAYOUT": { "layout": [ { "label": "L00", "x": 0, "y": 0 }, { "label": "L01", "x": 1, "y": 0 }, diff --git a/keyboards/bastardkb/charybdis/3x5/keymaps/bstiq/config.h b/keyboards/bastardkb/charybdis/3x5/keymaps/bstiq/config.h index cceba7c1fb..3ab7e56ebd 100644 --- a/keyboards/bastardkb/charybdis/3x5/keymaps/bstiq/config.h +++ b/keyboards/bastardkb/charybdis/3x5/keymaps/bstiq/config.h @@ -156,10 +156,14 @@ # define RGB_MATRIX_DEFAULT_MODE RGB_MATRIX_CYCLE_LEFT_RIGHT // Slow swirl at startup. +# undef RGB_MATRIX_DEFAULT_SPD # define RGB_MATRIX_DEFAULT_SPD 32 // Startup values. +# undef RGB_MATRIX_DEFAULT_HUE # define RGB_MATRIX_DEFAULT_HUE 0 +# undef RGB_MATRIX_DEFAULT_SAT # define RGB_MATRIX_DEFAULT_SAT 255 +# undef RGB_MATRIX_DEFAULT_VAL # define RGB_MATRIX_DEFAULT_VAL RGB_MATRIX_MAXIMUM_BRIGHTNESS #endif // RGB_MATRIX_ENABLE diff --git a/keyboards/bastardkb/charybdis/3x5/keymaps/bstiq/keymap.c b/keyboards/bastardkb/charybdis/3x5/keymaps/bstiq/keymap.c index 2664b531a2..8f02227c01 100644 --- a/keyboards/bastardkb/charybdis/3x5/keymaps/bstiq/keymap.c +++ b/keyboards/bastardkb/charybdis/3x5/keymaps/bstiq/keymap.c @@ -182,7 +182,7 @@ enum charybdis_keymap_bstiq_layers { __VA_ARGS__ #define MOUSE_MOD(...) _MOUSE_MOD(__VA_ARGS__) -#define LAYOUT_wrapper(...) LAYOUT_charybdis_3x5(__VA_ARGS__) +#define LAYOUT_wrapper(...) LAYOUT(__VA_ARGS__) const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [LAYER_BASE] = LAYOUT_wrapper( diff --git a/keyboards/bastardkb/charybdis/3x5/keymaps/default/keymap.c b/keyboards/bastardkb/charybdis/3x5/keymaps/default/keymap.c index 60c3146308..b1bd74957d 100644 --- a/keyboards/bastardkb/charybdis/3x5/keymaps/default/keymap.c +++ b/keyboards/bastardkb/charybdis/3x5/keymaps/default/keymap.c @@ -32,7 +32,7 @@ enum charybdis_keymap_layers { // clang-format off const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [LAYER_BASE] = LAYOUT_charybdis_3x5( + [LAYER_BASE] = LAYOUT( // ╭─────────────────────────────────────────────╮ ╭─────────────────────────────────────────────╮ KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, // ├─────────────────────────────────────────────┤ ├─────────────────────────────────────────────┤ @@ -44,7 +44,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // ╰───────────────────────────╯ ╰──────────────────╯ ), - [LAYER_LOWER] = LAYOUT_charybdis_3x5( + [LAYER_LOWER] = LAYOUT( // ╭─────────────────────────────────────────────╮ ╭─────────────────────────────────────────────╮ RGB_TOG, KC_MNXT, KC_MPLY, KC_MPRV, XXXXXXX, KC_LBRC, KC_7, KC_8, KC_9, KC_RBRC, // ├─────────────────────────────────────────────┤ ├─────────────────────────────────────────────┤ @@ -56,7 +56,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // ╰───────────────────────────╯ ╰──────────────────╯ ), - [LAYER_RAISE] = LAYOUT_charybdis_3x5( + [LAYER_RAISE] = LAYOUT( // ╭─────────────────────────────────────────────╮ ╭─────────────────────────────────────────────╮ XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_VOLU, KC_MUTE, KC_VOLD, XXXXXXX, // ├─────────────────────────────────────────────┤ ├─────────────────────────────────────────────┤ diff --git a/keyboards/bastardkb/charybdis/3x5/keymaps/via/keymap.c b/keyboards/bastardkb/charybdis/3x5/keymaps/via/keymap.c index ec93cec627..4a91548090 100644 --- a/keyboards/bastardkb/charybdis/3x5/keymaps/via/keymap.c +++ b/keyboards/bastardkb/charybdis/3x5/keymaps/via/keymap.c @@ -200,7 +200,7 @@ static uint16_t auto_pointer_layer_timer = 0; __VA_ARGS__ #define POINTER_MOD(...) _POINTER_MOD(__VA_ARGS__) -#define LAYOUT_wrapper(...) LAYOUT_charybdis_3x5(__VA_ARGS__) +#define LAYOUT_wrapper(...) LAYOUT(__VA_ARGS__) const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [LAYER_BASE] = LAYOUT_wrapper( diff --git a/keyboards/bastardkb/charybdis/3x6/3x6.h b/keyboards/bastardkb/charybdis/3x6/3x6.h index bf5de31036..71c22a561b 100644 --- a/keyboards/bastardkb/charybdis/3x6/3x6.h +++ b/keyboards/bastardkb/charybdis/3x6/3x6.h @@ -20,7 +20,7 @@ #include "charybdis.h" // clang-format off -#define LAYOUT_charybdis_3x6( \ +#define LAYOUT( \ k00, k01, k02, k03, k04, k05, k45, k44, k43, k42, k41, k40, \ k10, k11, k12, k13, k14, k15, k55, k54, k53, k52, k51, k50, \ k20, k21, k22, k23, k24, k25, k65, k64, k63, k62, k61, k60, \ diff --git a/keyboards/bastardkb/charybdis/3x6/info.json b/keyboards/bastardkb/charybdis/3x6/info.json index 4851da1d53..92c424788f 100644 --- a/keyboards/bastardkb/charybdis/3x6/info.json +++ b/keyboards/bastardkb/charybdis/3x6/info.json @@ -3,8 +3,11 @@ "usb": { "pid": "0x1834" }, + "layout_aliases": { + "LAYOUT_charybdis_3x6": "LAYOUT" + }, "layouts": { - "LAYOUT_charybdis_3x6": { + "LAYOUT": { "layout": [ { "label": "L00", "x": 0, "y": 0 }, { "label": "L01", "x": 1, "y": 0 }, diff --git a/keyboards/bastardkb/charybdis/3x6/keymaps/default/keymap.c b/keyboards/bastardkb/charybdis/3x6/keymaps/default/keymap.c index 8632ab7258..c3aa67a944 100644 --- a/keyboards/bastardkb/charybdis/3x6/keymaps/default/keymap.c +++ b/keyboards/bastardkb/charybdis/3x6/keymaps/default/keymap.c @@ -27,7 +27,7 @@ enum charybdis_keymap_layers { // clang-format off const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [LAYER_BASE] = LAYOUT_charybdis_3x6( + [LAYER_BASE] = LAYOUT( // ╭──────────────────────────────────────────────────────╮ ╭──────────────────────────────────────────────────────╮ KC_LGUI, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_RGUI, // ├──────────────────────────────────────────────────────┤ ├──────────────────────────────────────────────────────┤ @@ -39,7 +39,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // ╰───────────────────────────╯ ╰──────────────────╯ ), - [LAYER_LOWER] = LAYOUT_charybdis_3x6( + [LAYER_LOWER] = LAYOUT( // ╭──────────────────────────────────────────────────────╮ ╭──────────────────────────────────────────────────────╮ XXXXXXX, RGB_TOG, KC_MNXT, KC_MPLY, KC_MPRV, XXXXXXX, KC_LBRC, KC_7, KC_8, KC_9, KC_RBRC, XXXXXXX, // ├──────────────────────────────────────────────────────┤ ├──────────────────────────────────────────────────────┤ @@ -51,7 +51,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // ╰───────────────────────────╯ ╰──────────────────╯ ), - [LAYER_RAISE] = LAYOUT_charybdis_3x6( + [LAYER_RAISE] = LAYOUT( // ╭──────────────────────────────────────────────────────╮ ╭──────────────────────────────────────────────────────╮ XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_VOLU, KC_MUTE, KC_VOLD, XXXXXXX, XXXXXXX, // ├──────────────────────────────────────────────────────┤ ├──────────────────────────────────────────────────────┤ diff --git a/keyboards/bastardkb/charybdis/3x6/keymaps/via/keymap.c b/keyboards/bastardkb/charybdis/3x6/keymaps/via/keymap.c index 7f6eb6a911..fd56cce25d 100644 --- a/keyboards/bastardkb/charybdis/3x6/keymaps/via/keymap.c +++ b/keyboards/bastardkb/charybdis/3x6/keymaps/via/keymap.c @@ -45,7 +45,7 @@ static uint16_t auto_pointer_layer_timer = 0; // clang-format off const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [LAYER_BASE] = LAYOUT_charybdis_3x6( + [LAYER_BASE] = LAYOUT( // ╭──────────────────────────────────────────────────────╮ ╭──────────────────────────────────────────────────────╮ KC_LGUI, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_RGUI, // ├──────────────────────────────────────────────────────┤ ├──────────────────────────────────────────────────────┤ @@ -57,7 +57,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // ╰───────────────────────────╯ ╰──────────────────╯ ), - [LAYER_LOWER] = LAYOUT_charybdis_3x6( + [LAYER_LOWER] = LAYOUT( // ╭──────────────────────────────────────────────────────╮ ╭──────────────────────────────────────────────────────╮ XXXXXXX, RGB_TOG, KC_MNXT, KC_MPLY, KC_MPRV, XXXXXXX, KC_LBRC, KC_7, KC_8, KC_9, KC_RBRC, XXXXXXX, // ├──────────────────────────────────────────────────────┤ ├──────────────────────────────────────────────────────┤ @@ -69,7 +69,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // ╰───────────────────────────╯ ╰──────────────────╯ ), - [LAYER_RAISE] = LAYOUT_charybdis_3x6( + [LAYER_RAISE] = LAYOUT( // ╭──────────────────────────────────────────────────────╮ ╭──────────────────────────────────────────────────────╮ XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_VOLU, KC_MUTE, KC_VOLD, XXXXXXX, XXXXXXX, // ├──────────────────────────────────────────────────────┤ ├──────────────────────────────────────────────────────┤ @@ -81,7 +81,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // ╰───────────────────────────╯ ╰──────────────────╯ ), - [LAYER_POINTER] = LAYOUT_charybdis_3x6( + [LAYER_POINTER] = LAYOUT( // ╭──────────────────────────────────────────────────────╮ ╭──────────────────────────────────────────────────────╮ XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, DPI_MOD, S_D_MOD, S_D_MOD, DPI_MOD, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, // ├──────────────────────────────────────────────────────┤ ├──────────────────────────────────────────────────────┤ diff --git a/keyboards/bastardkb/charybdis/4x6/4x6.h b/keyboards/bastardkb/charybdis/4x6/4x6.h index c26d356d69..0d8810266e 100644 --- a/keyboards/bastardkb/charybdis/4x6/4x6.h +++ b/keyboards/bastardkb/charybdis/4x6/4x6.h @@ -21,7 +21,7 @@ #include "charybdis.h" // clang-format off -#define LAYOUT_charybdis_4x6( \ +#define LAYOUT( \ k00, k01, k02, k03, k04, k05, k55, k54, k53, k52, k51, k50, \ k10, k11, k12, k13, k14, k15, k65, k64, k63, k62, k61, k60, \ k20, k21, k22, k23, k24, k25, k75, k74, k73, k72, k71, k70, \ diff --git a/keyboards/bastardkb/charybdis/4x6/info.json b/keyboards/bastardkb/charybdis/4x6/info.json index 0b929a2188..6f3b6ec57e 100644 --- a/keyboards/bastardkb/charybdis/4x6/info.json +++ b/keyboards/bastardkb/charybdis/4x6/info.json @@ -5,8 +5,11 @@ "pid": "0x1833", "vid": "0xA8F8" }, + "layout_aliases": { + "LAYOUT_charybdis_4x6": "LAYOUT" + }, "layouts": { - "LAYOUT_charybdis_4x6": { + "LAYOUT": { "layout": [ { "label": "L00", "x": 0, "y": 0 }, { "label": "L01", "x": 1, "y": 0 }, diff --git a/keyboards/bastardkb/charybdis/4x6/keymaps/default/keymap.c b/keyboards/bastardkb/charybdis/4x6/keymaps/default/keymap.c index 98edad47d9..304e9fc9a4 100644 --- a/keyboards/bastardkb/charybdis/4x6/keymaps/default/keymap.c +++ b/keyboards/bastardkb/charybdis/4x6/keymaps/default/keymap.c @@ -27,7 +27,7 @@ enum charybdis_keymap_layers { // clang-format off const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [LAYER_BASE] = LAYOUT_charybdis_4x6( + [LAYER_BASE] = LAYOUT( // ╭──────────────────────────────────────────────────────╮ ╭──────────────────────────────────────────────────────╮ KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, // ├──────────────────────────────────────────────────────┤ ├──────────────────────────────────────────────────────┤ @@ -42,7 +42,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // ╰───────────────────────────╯ ╰──────────────────╯ ), - [LAYER_LOWER] = LAYOUT_charybdis_4x6( + [LAYER_LOWER] = LAYOUT( // ╭──────────────────────────────────────────────────────╮ ╭──────────────────────────────────────────────────────╮ KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_UNDS, // ├──────────────────────────────────────────────────────┤ ├──────────────────────────────────────────────────────┤ @@ -57,7 +57,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // ╰───────────────────────────╯ ╰──────────────────╯ ), - [LAYER_RAISE] = LAYOUT_charybdis_4x6( + [LAYER_RAISE] = LAYOUT( // ╭──────────────────────────────────────────────────────╮ ╭──────────────────────────────────────────────────────╮ KC_F12, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, // ├──────────────────────────────────────────────────────┤ ├──────────────────────────────────────────────────────┤ diff --git a/keyboards/bastardkb/charybdis/4x6/keymaps/via/keymap.c b/keyboards/bastardkb/charybdis/4x6/keymaps/via/keymap.c index 1050974212..fb795829fd 100644 --- a/keyboards/bastardkb/charybdis/4x6/keymaps/via/keymap.c +++ b/keyboards/bastardkb/charybdis/4x6/keymaps/via/keymap.c @@ -56,7 +56,7 @@ static uint16_t auto_pointer_layer_timer = 0; // clang-format off const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [LAYER_BASE] = LAYOUT_charybdis_4x6( + [LAYER_BASE] = LAYOUT( // ╭──────────────────────────────────────────────────────╮ ╭──────────────────────────────────────────────────────╮ KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, // ├──────────────────────────────────────────────────────┤ ├──────────────────────────────────────────────────────┤ @@ -71,7 +71,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // ╰───────────────────────────╯ ╰──────────────────╯ ), - [LAYER_LOWER] = LAYOUT_charybdis_4x6( + [LAYER_LOWER] = LAYOUT( // ╭──────────────────────────────────────────────────────╮ ╭──────────────────────────────────────────────────────╮ KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_UNDS, // ├──────────────────────────────────────────────────────┤ ├──────────────────────────────────────────────────────┤ @@ -86,7 +86,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // ╰───────────────────────────╯ ╰──────────────────╯ ), - [LAYER_RAISE] = LAYOUT_charybdis_4x6( + [LAYER_RAISE] = LAYOUT( // ╭──────────────────────────────────────────────────────╮ ╭──────────────────────────────────────────────────────╮ KC_F12, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, // ├──────────────────────────────────────────────────────┤ ├──────────────────────────────────────────────────────┤ @@ -101,7 +101,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // ╰───────────────────────────╯ ╰──────────────────╯ ), - [LAYER_POINTER] = LAYOUT_charybdis_4x6( + [LAYER_POINTER] = LAYOUT( // ╭──────────────────────────────────────────────────────╮ ╭──────────────────────────────────────────────────────╮ XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, // ├──────────────────────────────────────────────────────┤ ├──────────────────────────────────────────────────────┤ -- cgit v1.2.3 From 6e42b5854902963469a4016abeca48a9df5c1c46 Mon Sep 17 00:00:00 2001 From: AnotherStranger Date: Thu, 26 Jan 2023 22:14:34 +0100 Subject: VIA keymap for the dactyl manuform 4x6 (#19668) Co-authored-by: adophoxia <100170946+adophoxia@users.noreply.github.com> Co-authored-by: Drashna Jaelre --- .../dactyl_manuform/4x6/keymaps/via/config.h | 28 ++++++ .../dactyl_manuform/4x6/keymaps/via/keymap.c | 108 +++++++++++++++++++++ .../dactyl_manuform/4x6/keymaps/via/rules.mk | 1 + 3 files changed, 137 insertions(+) create mode 100644 keyboards/handwired/dactyl_manuform/4x6/keymaps/via/config.h create mode 100644 keyboards/handwired/dactyl_manuform/4x6/keymaps/via/keymap.c create mode 100644 keyboards/handwired/dactyl_manuform/4x6/keymaps/via/rules.mk diff --git a/keyboards/handwired/dactyl_manuform/4x6/keymaps/via/config.h b/keyboards/handwired/dactyl_manuform/4x6/keymaps/via/config.h new file mode 100644 index 0000000000..ce7fd324eb --- /dev/null +++ b/keyboards/handwired/dactyl_manuform/4x6/keymaps/via/config.h @@ -0,0 +1,28 @@ +/* +This is the c configuration file for the keymap + +Copyright 2012 Jun Wako +Copyright 2015 Jack Humbert +Copyright 2023 André Büsgen + +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 . +*/ + +#pragma once + +/* Select hand configuration */ +// #define MASTER_LEFT +// #define MASTER_RIGHT + +#define EE_HANDS diff --git a/keyboards/handwired/dactyl_manuform/4x6/keymaps/via/keymap.c b/keyboards/handwired/dactyl_manuform/4x6/keymaps/via/keymap.c new file mode 100644 index 0000000000..3e70e664af --- /dev/null +++ b/keyboards/handwired/dactyl_manuform/4x6/keymaps/via/keymap.c @@ -0,0 +1,108 @@ +/* +This is the c configuration file for the keymap + +Copyright 2012 Jun Wako +Copyright 2015 Jack Humbert +Copyright 2023 André Büsgen + +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 . +*/ +#include QMK_KEYBOARD_H + +enum layers{ + _BASE, + _RAISE, + _LOWER, + _BLANK +}; + +#define SFT_ESC SFT_T(KC_ESC) +#define CTL_BSPC CTL_T(KC_BSPC) +#define ALT_SPC ALT_T(KC_SPC) +#define SFT_ENT SFT_T(KC_ENT) + +#define KC_ML KC_MS_LEFT +#define KC_MR KC_MS_RIGHT +#define KC_MU KC_MS_UP +#define KC_MD KC_MS_DOWN +#define KC_MB1 KC_MS_BTN1 +#define KC_MB2 KC_MS_BTN1 + +#define RAISE MO(_RAISE) +#define LOWER MO(_LOWER) + +// clang-format off +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + /* Base (qwerty) + * +-----------------------------------------+ +-----------------------------------------+ + * | ESC | q | w | e | r | t | | y | u | i | o | p | | + * |------+------+------+------+------+------| |------+------+------+------+------+------| + * | TAB | a | s | d | f | g | | h | j | k | l | ; | | + * |------+------+------+------+------+------| |------+------+------+------+------+------| + * | SHFT | z | x | c | v | b | | n | m | , | . | / | | + * +------+------+------+------+-------------+ +-------------+------+------+------+------+ + * | [ | ] | | | | + * +-------------+-------------+ +-------------+-------------+ + * | | | | | | + * |------+------| |------+------| + * | | | | | | + * +-------------+ +-------------+ + * +-------------+ +-------------+ + * | | | | | | + * |------+------| |------+------| + * | | | | | | + * +-------------+ +-------------+ + */ + [_BASE] = LAYOUT( + KC_ESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_MINS, + KC_TAB, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_BSLS, + KC_LBRC, KC_RBRC, KC_PLUS, KC_EQL, + RAISE, KC_SPC, KC_ENT, LOWER, + KC_TAB, KC_HOME, KC_END, KC_DEL, + KC_BSPC, KC_GRV, KC_LGUI, KC_LALT + ), + + [_LOWER] = LAYOUT( + _______, _______, _______, _______, _______, KC_LBRC, KC_RBRC, KC_P7, KC_P8, KC_P9, QK_BOOT, KC_PLUS, + _______, KC_HOME, KC_PGUP, KC_PGDN, KC_END , KC_LPRN, KC_RPRN, KC_P4, KC_P5, KC_P6, KC_MINS, KC_PIPE, + _______, _______, _______, _______, _______, _______, _______, KC_P1, KC_P2, KC_P3, KC_EQL, KC_UNDS, + _______, KC_PSCR, _______, KC_P0, + _______, _______, _______, _______, + _______, _______, _______, _______, + _______, _______, _______, _______ + ), + + [_RAISE] = LAYOUT( + _______, QK_BOOT, _______, _______, _______, KC_LBRC, KC_RBRC, _______, KC_NUM, KC_INS, KC_SCRL, KC_MUTE, + _______, KC_LEFT, KC_UP , KC_DOWN, KC_RGHT, KC_LPRN, KC_RPRN, KC_MPRV, KC_MPLY, KC_MNXT, _______, KC_VOLU, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_VOLD, + _______, _______, KC_EQL, _______, + _______, _______, _______, _______, + _______, _______, _______, _______, + _______, _______, _______, _______ + ), + + [_BLANK] = LAYOUT( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, + _______, _______, _______, _______, + _______, _______, _______, _______, + _______, _______, _______, _______ + ) +}; +//clang-format on + diff --git a/keyboards/handwired/dactyl_manuform/4x6/keymaps/via/rules.mk b/keyboards/handwired/dactyl_manuform/4x6/keymaps/via/rules.mk new file mode 100644 index 0000000000..1e5b99807c --- /dev/null +++ b/keyboards/handwired/dactyl_manuform/4x6/keymaps/via/rules.mk @@ -0,0 +1 @@ +VIA_ENABLE = yes -- cgit v1.2.3 From b3dca4bb36d0c08e8145f6f25649aaf61b513fdd Mon Sep 17 00:00:00 2001 From: Jay Greco Date: Fri, 27 Jan 2023 00:03:57 -0800 Subject: Add RP2040 SCRAMBLE v2 (#19489) --- keyboards/nullbitsco/scramble/config.h | 34 ------------ keyboards/nullbitsco/scramble/rules.mk | 21 ++------ keyboards/nullbitsco/scramble/scramble.c | 22 -------- keyboards/nullbitsco/scramble/scramble.h | 17 +++--- keyboards/nullbitsco/scramble/v1/config.h | 36 +++++++++++++ keyboards/nullbitsco/scramble/v1/rules.mk | 21 ++++++++ keyboards/nullbitsco/scramble/v1/v1.c | 25 +++++++++ keyboards/nullbitsco/scramble/v1/v1.h | 18 +++++++ keyboards/nullbitsco/scramble/v2/config.h | 42 +++++++++++++++ keyboards/nullbitsco/scramble/v2/halconf.h | 9 ++++ keyboards/nullbitsco/scramble/v2/mcuconf.h | 14 +++++ keyboards/nullbitsco/scramble/v2/rules.mk | 21 ++++++++ keyboards/nullbitsco/scramble/v2/v2.c | 84 ++++++++++++++++++++++++++++++ keyboards/nullbitsco/scramble/v2/v2.h | 43 +++++++++++++++ 14 files changed, 322 insertions(+), 85 deletions(-) delete mode 100644 keyboards/nullbitsco/scramble/config.h create mode 100644 keyboards/nullbitsco/scramble/v1/config.h create mode 100644 keyboards/nullbitsco/scramble/v1/rules.mk create mode 100644 keyboards/nullbitsco/scramble/v1/v1.c create mode 100644 keyboards/nullbitsco/scramble/v1/v1.h create mode 100644 keyboards/nullbitsco/scramble/v2/config.h create mode 100644 keyboards/nullbitsco/scramble/v2/halconf.h create mode 100644 keyboards/nullbitsco/scramble/v2/mcuconf.h create mode 100644 keyboards/nullbitsco/scramble/v2/rules.mk create mode 100644 keyboards/nullbitsco/scramble/v2/v2.c create mode 100644 keyboards/nullbitsco/scramble/v2/v2.h diff --git a/keyboards/nullbitsco/scramble/config.h b/keyboards/nullbitsco/scramble/config.h deleted file mode 100644 index 4333d94d37..0000000000 --- a/keyboards/nullbitsco/scramble/config.h +++ /dev/null @@ -1,34 +0,0 @@ -/* -Copyright 2021 Jay Greco - -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 . -*/ - -#pragma once - -#include "config_common.h" - -/* key matrix size */ -#define MATRIX_ROWS 2 -#define MATRIX_COLS 3 - -#define DIRECT_PINS {{D4,D5,B1}, {C3,C2,C1}} - -/* Set 0 if debouncing isn't needed */ -#define DEBOUNCE 10 - -/* Optional encoder pins */ -#define ENCODERS_PAD_A { D6 } -#define ENCODERS_PAD_B { D7 } -#define TAP_CODE_DELAY 10 diff --git a/keyboards/nullbitsco/scramble/rules.mk b/keyboards/nullbitsco/scramble/rules.mk index e6d789691b..6f83796e9f 100644 --- a/keyboards/nullbitsco/scramble/rules.mk +++ b/keyboards/nullbitsco/scramble/rules.mk @@ -1,19 +1,4 @@ -# MCU name -MCU = atmega328p +# NOTE: This file is shared and only exists to set the default build +# The real build rules are set in the v1/v2 directories -# Bootloader selection -BOOTLOADER = usbasploader - -# Build Options -# change yes to no to disable -# -BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite -MOUSEKEY_ENABLE = yes # Mouse keys -EXTRAKEY_ENABLE = yes # Audio control and System control -CONSOLE_ENABLE = no # Console for debug -COMMAND_ENABLE = no # Commands for debug and configuration -NKRO_ENABLE = no # Enable N-Key Rollover -BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality -RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow -AUDIO_ENABLE = no # Audio output -ENCODER_ENABLE = yes # Use rotary encoder +DEFAULT_FOLDER = nullbitsco/scramble/v2 diff --git a/keyboards/nullbitsco/scramble/scramble.c b/keyboards/nullbitsco/scramble/scramble.c index f9f28d2c31..c8a55e0d48 100644 --- a/keyboards/nullbitsco/scramble/scramble.c +++ b/keyboards/nullbitsco/scramble/scramble.c @@ -16,25 +16,3 @@ along with this program. If not, see . */ #include QMK_KEYBOARD_H - -// place overrides here -void set_scramble_LED(uint8_t mode) { - switch(mode) { - case LED_ON: - setPinOutput(PIN_LED); - writePin(PIN_LED, GPIO_STATE_HIGH); - break; - - case LED_DIM: - setPinInput(PIN_LED); - break; - - case LED_OFF: - setPinOutput(PIN_LED); - writePin(PIN_LED, GPIO_STATE_LOW); - break; - - default: - break; - } -} diff --git a/keyboards/nullbitsco/scramble/scramble.h b/keyboards/nullbitsco/scramble/scramble.h index 101645e51d..22c112040b 100644 --- a/keyboards/nullbitsco/scramble/scramble.h +++ b/keyboards/nullbitsco/scramble/scramble.h @@ -18,18 +18,13 @@ #include "quantum.h" -// Indication LED settings -#define LED_ON 2 -#define LED_DIM 1 -#define LED_OFF 0 - -#define GPIO_STATE_LOW 0 -#define GPIO_STATE_HIGH 1 - -#define PIN_LED B2 - -void set_scramble_LED(uint8_t mode); +#if defined(KEYBOARD_nullbitsco_scramble_v1) + #include "v1.h" +#elif defined(KEYBOARD_nullbitsco_scramble_v2) + #include "v2.h" +#endif +// Layout is the same in all revisions #define LAYOUT( \ K01, K02, K03, \ K11, K12, K13 \ diff --git a/keyboards/nullbitsco/scramble/v1/config.h b/keyboards/nullbitsco/scramble/v1/config.h new file mode 100644 index 0000000000..b249b99851 --- /dev/null +++ b/keyboards/nullbitsco/scramble/v1/config.h @@ -0,0 +1,36 @@ +/* +Copyright 2021 Jay Greco + +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 . +*/ + +/* NOTE: This config file is specific to AVR builds. */ + +#pragma once + +#include "config_common.h" + +/* key matrix size */ +#define MATRIX_ROWS 2 +#define MATRIX_COLS 3 + +#define DIRECT_PINS {{D4,D5,B1}, {C3,C2,C1}} + +/* Set 0 if debouncing isn't needed */ +#define DEBOUNCE 10 + +/* Optional encoder pins */ +#define ENCODERS_PAD_A { D6 } +#define ENCODERS_PAD_B { D7 } +#define TAP_CODE_DELAY 10 diff --git a/keyboards/nullbitsco/scramble/v1/rules.mk b/keyboards/nullbitsco/scramble/v1/rules.mk new file mode 100644 index 0000000000..c1cf175c64 --- /dev/null +++ b/keyboards/nullbitsco/scramble/v1/rules.mk @@ -0,0 +1,21 @@ +# NOTE: This file is specific to AVR builds. + +# MCU name +MCU = atmega328p + +# Bootloader selection +BOOTLOADER = usbasploader + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite +MOUSEKEY_ENABLE = yes # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = no # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output +ENCODER_ENABLE = yes # Use rotary encoder diff --git a/keyboards/nullbitsco/scramble/v1/v1.c b/keyboards/nullbitsco/scramble/v1/v1.c new file mode 100644 index 0000000000..4b5e8e3e67 --- /dev/null +++ b/keyboards/nullbitsco/scramble/v1/v1.c @@ -0,0 +1,25 @@ +// Copyright 2022 Jay Greco +// SPDX-License-Identifier: GPL-2.0-or-later + +#include "v1.h" + +void set_scramble_LED(uint8_t mode) { + switch(mode) { + case LED_ON: + setPinOutput(PIN_LED); + writePin(PIN_LED, GPIO_STATE_HIGH); + break; + + case LED_DIM: + setPinInput(PIN_LED); + break; + + case LED_OFF: + setPinOutput(PIN_LED); + writePin(PIN_LED, GPIO_STATE_LOW); + break; + + default: + break; + } +} diff --git a/keyboards/nullbitsco/scramble/v1/v1.h b/keyboards/nullbitsco/scramble/v1/v1.h new file mode 100644 index 0000000000..5dc6d4a0e8 --- /dev/null +++ b/keyboards/nullbitsco/scramble/v1/v1.h @@ -0,0 +1,18 @@ +// Copyright 2022 Jay Greco +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#include "scramble.h" + +// Indication LED settings +#define LED_ON 2 +#define LED_DIM 1 +#define LED_OFF 0 + +#define GPIO_STATE_LOW 0 +#define GPIO_STATE_HIGH 1 + +#define PIN_LED B2 + +void set_scramble_LED(uint8_t mode); diff --git a/keyboards/nullbitsco/scramble/v2/config.h b/keyboards/nullbitsco/scramble/v2/config.h new file mode 100644 index 0000000000..a2eb9712f9 --- /dev/null +++ b/keyboards/nullbitsco/scramble/v2/config.h @@ -0,0 +1,42 @@ +/* +Copyright 2021 Jay Greco + +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 . +*/ + +/* NOTE: This config file is specific to RP2040 builds. */ + +#pragma once + +#include "config_common.h" + +/* key matrix size */ +#define MATRIX_ROWS 2 +#define MATRIX_COLS 3 + +#define DIRECT_PINS {{GP6,GP8,GP10}, {GP29,GP28,GP22}} + +/* Set 0 if debouncing isn't needed */ +#define DEBOUNCE 10 + +/* Optional encoder pins */ +#define ENCODERS_PAD_A { GP24 } +#define ENCODERS_PAD_B { GP25 } +#define TAP_CODE_DELAY 10 + +/* RP2040-specific defines*/ +#define RP2040_FLASH_GENERIC_03H +#define I2C1_SDA_PIN GP26 +#define I2C1_SCL_PIN GP27 +#define I2C_DRIVER I2CD2 diff --git a/keyboards/nullbitsco/scramble/v2/halconf.h b/keyboards/nullbitsco/scramble/v2/halconf.h new file mode 100644 index 0000000000..2cc40eaa91 --- /dev/null +++ b/keyboards/nullbitsco/scramble/v2/halconf.h @@ -0,0 +1,9 @@ +// Copyright 2022 Jay Greco +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#define HAL_USE_I2C TRUE +#define HAL_USE_PWM TRUE + +#include_next diff --git a/keyboards/nullbitsco/scramble/v2/mcuconf.h b/keyboards/nullbitsco/scramble/v2/mcuconf.h new file mode 100644 index 0000000000..9646c6b702 --- /dev/null +++ b/keyboards/nullbitsco/scramble/v2/mcuconf.h @@ -0,0 +1,14 @@ +// Copyright 2022 Jay Greco +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#include_next + +#undef RP_I2C_USE_I2C1 +#define RP_I2C_USE_I2C1 TRUE + +#undef RP_PWM_USE_PWM1 +#define RP_PWM_USE_PWM1 TRUE +#undef RP_PWM_USE_PWM2 +#define RP_PWM_USE_PWM2 TRUE diff --git a/keyboards/nullbitsco/scramble/v2/rules.mk b/keyboards/nullbitsco/scramble/v2/rules.mk new file mode 100644 index 0000000000..f93963285b --- /dev/null +++ b/keyboards/nullbitsco/scramble/v2/rules.mk @@ -0,0 +1,21 @@ +# NOTE: This file is is specific to RP2040 builds. + +# MCU name +MCU = RP2040 + +# Bootloader selection +BOOTLOADER = rp2040 + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite +MOUSEKEY_ENABLE = yes # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = no # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output +ENCODER_ENABLE = yes # Use rotary encoder diff --git a/keyboards/nullbitsco/scramble/v2/v2.c b/keyboards/nullbitsco/scramble/v2/v2.c new file mode 100644 index 0000000000..9b0a088855 --- /dev/null +++ b/keyboards/nullbitsco/scramble/v2/v2.c @@ -0,0 +1,84 @@ +// Copyright 2022 Jay Greco +// SPDX-License-Identifier: GPL-2.0-or-later + +#include "v2.h" + +// SCRAMBLE PWM LED config +pwm_led_t scramble_rgb = { + {GP18, GP19, GP20}, + {&PWMD1, &PWMD1, &PWMD2}, + {0, 1, 0}, + PWM_OUTPUT_ACTIVE_LOW, + 0 +}; + +// Internal PWM init +// only runs once per PWM LED +void _init_pwm(pwm_led_t* led) { + if (!led->init_complete) { + for (int i=0; ipin[i]), PAL_PAD(led->pin[i]), PWM_PAL_MODE); + + static PWMConfig pwmCFG = { + .frequency = PWM_PWM_COUNTER_FREQUENCY, + .period = PWM_PWM_PERIOD, + }; + + // Channels are always configured as active low + // If active high is needed, pwm is inverted in _set_led_pwm() + pwmCFG.channels[0].mode = PWM_OUTPUT_ACTIVE_LOW; + pwmCFG.channels[1].mode = PWM_OUTPUT_ACTIVE_LOW; + pwmStart(led->driver[i], &pwmCFG); + + // Start LEDs in the OFF state + uint8_t pwm = led->mode == PWM_OUTPUT_ACTIVE_HIGH ? 100 : 0; + pwmEnableChannel(led->driver[i], led->channel[i], PWM_FRACTION_TO_WIDTH(led->driver[i], 99, pwm)); + } + + led->init_complete = 1; + } +} + +// Internal generic PWM setter +void _set_led_pwm(uint8_t pwm, pwm_led_t* led, uint8_t channel) { + if (pwm > 100) pwm = 100; + if (led->mode == PWM_OUTPUT_ACTIVE_HIGH) pwm = (100 - pwm); + + _init_pwm(led); + pwmEnableChannel(led->driver[channel], led->channel[channel], PWM_FRACTION_TO_WIDTH(led->driver[channel], 99, pwm)); +} + +// SCRAMBLE +void set_scramble_LED(uint8_t mode) { + switch(mode) { + case LED_ON: + set_scramble_LED_rgb_pwm(65, 100, 95); + break; + + case LED_DIM: + set_scramble_LED_rgb_pwm(3, 9, 3); + break; + + default: //LED_OFF + set_scramble_LED_rgb_pwm(0, 0, 0); + break; + } +} + +void set_scramble_LED_rgb_pwm(uint8_t r_pwm, uint8_t g_pwm, uint8_t b_pwm) { + _set_led_pwm(r_pwm, &scramble_rgb, RED); + _set_led_pwm(g_pwm, &scramble_rgb, GREEN); + _set_led_pwm(b_pwm, &scramble_rgb, BLUE); +} + +void set_scramble_LED_r_pwm(uint8_t pwm) { + _set_led_pwm(pwm, &scramble_rgb, RED); +} + +void set_scramble_LED_g_pwm(uint8_t pwm) { + _set_led_pwm(pwm, &scramble_rgb, GREEN); +} + +void set_scramble_LED_b_pwm(uint8_t pwm) { + _set_led_pwm(pwm, &scramble_rgb, BLUE); +} diff --git a/keyboards/nullbitsco/scramble/v2/v2.h b/keyboards/nullbitsco/scramble/v2/v2.h new file mode 100644 index 0000000000..d278c0a86a --- /dev/null +++ b/keyboards/nullbitsco/scramble/v2/v2.h @@ -0,0 +1,43 @@ +// Copyright 2022 Jay Greco +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#include "scramble.h" +#include + +enum led_mode { + LED_OFF = 0, + LED_DIM, + LED_ON, + NUM_LED_MODE +}; + +enum rgb_idx { + RED = 0, + GREEN, + BLUE, + NUM_RGB_IDX +}; + +typedef struct pwm_led_t { + uint32_t pin[3]; + PWMDriver* driver[3]; + uint8_t channel[3]; + uint8_t mode; + uint8_t init_complete; +} pwm_led_t; + +#define PWM_PAL_MODE (PAL_MODE_ALTERNATE_PWM | PAL_RP_PAD_DRIVE12 | PAL_RP_GPIO_OE) +#define PWM_PWM_COUNTER_FREQUENCY 1000000 +#define PWM_PWM_PERIOD PWM_PWM_COUNTER_FREQUENCY / 1000 + +// RP2040 adds HW PWM control! +// PWM values are in percent, 0-100 +void + set_scramble_LED(uint8_t mode), + set_scramble_LED_rgb_pwm(uint8_t r_pwm, uint8_t g_pwm, uint8_t b_pwm), + set_scramble_LED_r_pwm(uint8_t pwm), + set_scramble_LED_g_pwm(uint8_t pwm), + set_scramble_LED_b_pwm(uint8_t pwm); + \ No newline at end of file -- cgit v1.2.3 From 9aaf1c26f028d22bae8fdf9d63e21d1b9951a3bd Mon Sep 17 00:00:00 2001 From: Patrick Muldoon Date: Fri, 27 Jan 2023 08:35:26 -0800 Subject: Swap LED_PIN_ON_STATE to 0. (#19692) User reported that CAPS lock Led state was inverted after soldering a LED to their board. LED_PIN_ON_STATE defaults to 1, so just swap to low. Flashed board and now CAPS LED reflects the actual state --- keyboards/mode/m80v2/config.h | 1 + 1 file changed, 1 insertion(+) diff --git a/keyboards/mode/m80v2/config.h b/keyboards/mode/m80v2/config.h index 9382def58a..6a8864fdb9 100644 --- a/keyboards/mode/m80v2/config.h +++ b/keyboards/mode/m80v2/config.h @@ -38,3 +38,4 @@ along with this program. If not, see . #define LOCKING_RESYNC_ENABLE #define LED_CAPS_LOCK_PIN A0 +#define LED_PIN_ON_STATE 0 -- cgit v1.2.3 From acea06b4f5d7dbbe3a65ea512a367b8fb202b5e2 Mon Sep 17 00:00:00 2001 From: adophoxia <100170946+adophoxia@users.noreply.github.com> Date: Fri, 27 Jan 2023 13:39:38 -0800 Subject: [Keyboard] Update effects for Keychron Q2 (#19685) --- keyboards/keychron/q2/config.h | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/keyboards/keychron/q2/config.h b/keyboards/keychron/q2/config.h index 210ecb1201..51b5b72faa 100644 --- a/keyboards/keychron/q2/config.h +++ b/keyboards/keychron/q2/config.h @@ -103,4 +103,7 @@ #define ENABLE_RGB_MATRIX_SPLASH // #define ENABLE_RGB_MATRIX_MULTISPLASH #define ENABLE_RGB_MATRIX_SOLID_SPLASH -#define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH +// #define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH + +#define RGB_MATRIX_KEYPRESSES +#define RGB_MATRIX_FRAMEBUFFER_EFFECTS -- cgit v1.2.3 From ce7bb639998f97536c562c2cde5afbd3e3a0950e Mon Sep 17 00:00:00 2001 From: azhizhinov Date: Sat, 28 Jan 2023 01:52:05 +0300 Subject: VIA keymap for Reviung 34. (#19694) VIA keymap for Reviung 34. --- keyboards/reviung/reviung34/keymaps/via/keymap.c | 69 ++++++++++++++++++++++++ keyboards/reviung/reviung34/keymaps/via/rules.mk | 3 ++ 2 files changed, 72 insertions(+) create mode 100644 keyboards/reviung/reviung34/keymaps/via/keymap.c create mode 100644 keyboards/reviung/reviung34/keymaps/via/rules.mk diff --git a/keyboards/reviung/reviung34/keymaps/via/keymap.c b/keyboards/reviung/reviung34/keymaps/via/keymap.c new file mode 100644 index 0000000000..44ec64bdd3 --- /dev/null +++ b/keyboards/reviung/reviung34/keymaps/via/keymap.c @@ -0,0 +1,69 @@ +/* Copyright 2019 gtips + * + * 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 . + */ +#include QMK_KEYBOARD_H + +enum layer_names { + _BASE, + _LOWER, + _RAISE, + _ADJUST +}; + +#define LOWER MO(_LOWER) +#define RAISE MO(_RAISE) + +#define CT_Q LCTL_T(KC_Q) +#define CT_CM RCTL_T(KC_COMM) +#define SF_Z LSFT_T(KC_Z) +#define SF_SS RSFT_T(KC_SLSH) +#define AL_X LALT_T(KC_X) +#define AL_DT RALT_T(KC_DOT) +#define RA_SP LT(RAISE, KC_SPC) + + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_BASE] = LAYOUT_reviung34( + CT_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, + KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_ENT, + SF_Z, AL_X, KC_C, KC_V, KC_B, KC_N, KC_M, CT_CM, AL_DT, SF_SS, + KC_TAB, KC_BSPC, LOWER, RA_SP + ), + + [_LOWER] = LAYOUT_reviung34( + KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, + KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_SCLN, + KC_LSFT, KC_ESC, KC_LGUI, KC_LALT, KC_QUOT, KC_HOME, KC_END, KC_PGUP, KC_PGDN, KC_BSPC, + _______, _______, _______, _______ + ), + + [_RAISE] = LAYOUT_reviung34( + KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, + KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS, XXXXXXX, XXXXXXX, KC_GRV, KC_TILD, KC_COLN, + KC_LSFT, KC_ESC, KC_RGUI, KC_LALT, KC_DQUO, KC_TAB, XXXXXXX, KC_RCTL, KC_RALT, KC_DEL, + _______, _______, _______, _______ + ), + + [_ADJUST] = LAYOUT_reviung34( + KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_PSCR, + KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + KC_F11, KC_F12, KC_CAPS, XXXXXXX, XXXXXXX, QK_BOOT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + _______, _______, _______, _______ + ), +}; + +layer_state_t layer_state_set_user(layer_state_t state) { + return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST); +} diff --git a/keyboards/reviung/reviung34/keymaps/via/rules.mk b/keyboards/reviung/reviung34/keymaps/via/rules.mk new file mode 100644 index 0000000000..5d85ccd103 --- /dev/null +++ b/keyboards/reviung/reviung34/keymaps/via/rules.mk @@ -0,0 +1,3 @@ +VIA_ENABLE = yes +RGBLIGHT_ENABLE = no +LTO_ENABLE = yes -- cgit v1.2.3 From 981f3c316cb1619aef554fbb2913c8d1b03b0d08 Mon Sep 17 00:00:00 2001 From: Albert Y <76888457+filterpaper@users.noreply.github.com> Date: Sun, 29 Jan 2023 00:41:50 +0800 Subject: Additional handedness by EEPROM examples (#19686) Co-authored-by: jack <0x6a73@protonmail.com> Co-authored-by: Dasky <32983009+daskygit@users.noreply.github.com> --- docs/feature_split_keyboard.md | 31 ++++++++++++++----------------- 1 file changed, 14 insertions(+), 17 deletions(-) diff --git a/docs/feature_split_keyboard.md b/docs/feature_split_keyboard.md index 0b475cc63d..fff72f71f3 100644 --- a/docs/feature_split_keyboard.md +++ b/docs/feature_split_keyboard.md @@ -132,28 +132,25 @@ To enable this method, add the following to your `config.h` file: #define EE_HANDS ``` -Next, you will have to flash the EEPROM files once for the correct hand to the controller on each halve. You can do this manually with the following bootloader targets while flashing the firmware: +Next, you will have to flash the correct handedness option to the controller on each halve. You can do this manually with the following bootloader targets using `qmk flash -kb -km -bl ` command to flash: -* AVR controllers with the Caterina bootloader (e.g. Pro Micro): - * `:avrdude-split-left` - * `:avrdude-split-right` -* AVR controllers with the stock Amtel DFU or DFU compatible bootloader (e.g. Elite-C): - * `:dfu-split-left` - * `:dfu-split-right` -* ARM controllers with a DFU compatible bootloader (e.g. Proton-C): - * `:dfu-util-split-left` - * `:dfu-util-split-right` -* ARM controllers with a UF2 compatible bootloader: - * `:uf2-split-left` - * `:uf2-split-right` - -Example: +|Microcontroller Type|Bootloader Parameter| +|--------------------|--------------------| +|AVR controllers with Caterina bootloader
(e.g. Pro Micro)|`avrdude-split-left`
`avrdude-split-right`| +|AVR controllers with the stock Amtel DFU or DFU compatible bootloader
(e.g. Elite-C)|`dfu-split-left`
`dfu-split-right`| +|ARM controllers with a DFU compatible bootloader
(e.g. Proton-C)|`dfu-util-split-left`
`dfu-util-split-right`| +|ARM controllers with a UF2 compatible bootloader
(e.g. RP2040)|`uf2-split-left`
`uf2-split-right`| +Example for `crkbd/rev1` keyboard with normal AVR Pro Micro MCUs, reset the left controller and run: +``` +qmk flash -kb crkbd/rev1 -km default -bl avrdude-split-left +``` +Reset the right controller and run: ``` -make crkbd:default:avrdude-split-left +qmk flash -kb crkbd/rev1 -km default -bl avrdude-split-right ``` -?> ARM controllers using `dfu-util` will require an EEPROM reset after setting handedness. This can be done using the `EE_CLR` keycode or [Bootmagic Lite](feature_bootmagic.md). Controllers using emulated EEPROM will always require handedness parameter when flashing the firmware. +?> Some controllers (e.g. Blackpill with DFU compatible bootloader) will need to be flashed with handedness bootloader parameter every time because it is not retained between flashes. ?> [QMK Toolbox]() can also be used to flash EEPROM handedness files. Place the controller in bootloader mode and select menu option Tools -> EEPROM -> Set Left/Right Hand -- cgit v1.2.3 From d322b4c041d4b600fee00ba7f94966ac9a9e2dfa Mon Sep 17 00:00:00 2001 From: yiancar Date: Sun, 29 Jan 2023 16:59:13 +0000 Subject: [Keyboard] Baion 808 (#19690) Co-authored-by: jack <0x6a73@protonmail.com> Co-authored-by: Joel Challis Co-authored-by: yiancar --- keyboards/baion_808/baion_808.c | 22 ++++ keyboards/baion_808/baion_808.h | 164 +++++++++++++++++++++++++++ keyboards/baion_808/config.h | 66 +++++++++++ keyboards/baion_808/info.json | 42 +++++++ keyboards/baion_808/keymaps/default/keymap.c | 27 +++++ keyboards/baion_808/keymaps/via/keymap.c | 54 +++++++++ keyboards/baion_808/keymaps/via/rules.mk | 1 + keyboards/baion_808/readme.md | 38 +++++++ keyboards/baion_808/rules.mk | 22 ++++ 9 files changed, 436 insertions(+) create mode 100755 keyboards/baion_808/baion_808.c create mode 100644 keyboards/baion_808/baion_808.h create mode 100755 keyboards/baion_808/config.h create mode 100755 keyboards/baion_808/info.json create mode 100644 keyboards/baion_808/keymaps/default/keymap.c create mode 100644 keyboards/baion_808/keymaps/via/keymap.c create mode 100755 keyboards/baion_808/keymaps/via/rules.mk create mode 100755 keyboards/baion_808/readme.md create mode 100755 keyboards/baion_808/rules.mk diff --git a/keyboards/baion_808/baion_808.c b/keyboards/baion_808/baion_808.c new file mode 100755 index 0000000000..4f4b7adeab --- /dev/null +++ b/keyboards/baion_808/baion_808.c @@ -0,0 +1,22 @@ +/* Copyright 2022 Yiancar-Designs + * + * 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 . + */ +#include "baion_808.h" + +void led_init_ports(void) { + // Set our LED pins as open drain outputs + palSetLineMode(LED_CAPS_LOCK_PIN, PAL_MODE_OUTPUT_OPENDRAIN); + palSetLineMode(LED_SCROLL_LOCK_PIN, PAL_MODE_OUTPUT_OPENDRAIN); +} diff --git a/keyboards/baion_808/baion_808.h b/keyboards/baion_808/baion_808.h new file mode 100644 index 0000000000..944b46ef90 --- /dev/null +++ b/keyboards/baion_808/baion_808.h @@ -0,0 +1,164 @@ +/* Copyright 2022 Yiancar-Designs + * + * 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 . + */ +#pragma once + +#define XXX KC_NO + +#include "quantum.h" + +#define LAYOUT_all( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0E, K0F, KOG, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K2D, K1E, K1F, K1G, \ + K20, K21