diff --git a/keyboards/electronlab/klor/config.h b/keyboards/electronlab/klor/config.h index 52fbcba54687..0450fbb09cdb 100644 --- a/keyboards/electronlab/klor/config.h +++ b/keyboards/electronlab/klor/config.h @@ -24,26 +24,16 @@ along with this program. If not, see . #define I2C1_SCL_PIN GP3 #define I2C1_SDA_PIN GP2 -// ┌─────────────────────────────────────────────────┐ -// │ k e y m a t r i x │ -// └─────────────────────────────────────────────────┘ - -#define MATRIX_ROWS 8 -#define MATRIX_COLS 6 -#define DEBOUNCE 5 - // ┌─────────────────────────────────────────────────┐ // │ s p l i t c o m m u n i c a t i o n │ // └─────────────────────────────────────────────────┘ -#define USE_SERIAL -#define SERIAL_USE_MULTI_TRANSACTION -#define SPLIT_USB_DETECT +//#define SPLIT_USB_DETECT //Half Duplex communication -#define SERIAL_USART_TX_PIN GP1 // USART TX pin - +//#define SERIAL_USART_TX_PIN GP1 // USART TX pin +// //Full Duplex communication //#define SERIAL_USART_TX_PIN GP4 // USART TX pin //#define SERIAL_USART_RX_PIN GP1 // USART RX pin @@ -51,13 +41,6 @@ along with this program. If not, see . //#define SERIAL_USART_PIN_SWAP -// ┌─────────────────────────────────────────────────┐ -// │ e n c o d e r s │ -// └─────────────────────────────────────────────────┘ - -#define ENCODER_RESOLUTION { 2 } -#define ENCODER_RESOLUTIONS_RIGHT { 2 } - // ┌─────────────────────────────────────────────────┐ // │ o l e d s │ // └─────────────────────────────────────────────────┘ @@ -69,33 +52,6 @@ along with this program. If not, see . #endif -// ┌─────────────────────────────────────────────────┐ -// │ r g b l e d s │ -// └─────────────────────────────────────────────────┘ - -#define RGBLED_NUM 42 -#define RGBLED_SPLIT { 21, 21 } -#define RGB_MATRIX_LED_COUNT RGBLED_NUM - -#ifdef RGB_MATRIX_ENABLE -# define RGB_MATRIX_STARTUP_MODE RGB_MATRIX_BREATHING -# define SPLIT_TRANSPORT_MIRROR true -# define DRIVER_LED_TOTAL 42 // Number of LEDs -# define RGB_MATRIX_SPLIT { 21, 21 } -# define RGB_MATRIX_TIMEOUT 120000 -# define RGB_MATRIX_SLEEP -# define RGB_MATRIX_LED_FLUSH_LIMIT 16 -# define RGB_MATRIX_MAXIMUM_BRIGHTNESS 255 -# define RGB_MATRIX_STARTUP_HUE 299 -# define RGB_MATRIX_DEFAULT_ON true -# define RGB_MATRIX_DEFAULT_SAT 255 -# define RGB_MATRIX_DEFAULT_SPD 127 -# define RGB_MATRIX_STARTUP_VAL RGB_MATRIX_MAXIMUM_BRIGHTNESS -# define RGB_DISABLE_WHEN_USB_SUSPENDED -# define RGB_MATRIX_KEYPRESSES -#endif - - // ┌─────────────────────────────────────────────────┐ // │ a u d i o │ // └─────────────────────────────────────────────────┘ @@ -104,10 +60,8 @@ along with this program. If not, see . #define AUDIO_PWM_CHANNEL RP2040_PWM_CHANNEL_B #define AUDIO_STATE_TIMER GPTD4 #define AUDIO_PIN GP9 -#define AUDIO_VOICES #define AUDIO_DAC_SAMPLE_MAX 4095U #define AUDIO_VOICE_DEFAULT butts_fader - #ifdef AUDIO_ENABLE # define KLOR_SOUND W__NOTE(_DS0), W__NOTE(_DS1), H__NOTE(_DS2), H__NOTE(_DS3), Q__NOTE(_DS4), Q__NOTE(_DS5), E__NOTE(_DS6), E__NOTE(_DS7), S__NOTE(_DS8), Q__NOTE(_GS0) # define STARTUP_SONG SONG(KLOR_SOUND) diff --git a/keyboards/electronlab/klor/glcdfont.c b/keyboards/electronlab/klor/glcdfont.c index 187ffd4a74e5..c97aa15e5422 100644 --- a/keyboards/electronlab/klor/glcdfont.c +++ b/keyboards/electronlab/klor/glcdfont.c @@ -1,5 +1,19 @@ -// This is the 'classic' fixed-space bitmap font for Adafruit_GFX since 1.0. -// See gfxfont.h for newer custom bitmap font info. +/* +Copyright 2024 ElectronLab + +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 diff --git a/keyboards/electronlab/klor/keyboard.json b/keyboards/electronlab/klor/keyboard.json index bb2e444b661b..25e81726cb13 100644 --- a/keyboards/electronlab/klor/keyboard.json +++ b/keyboards/electronlab/klor/keyboard.json @@ -12,7 +12,7 @@ "diode_direction": "COL2ROW", "encoder": { "rotary": [ - {"pin_a": "GP28", "pin_b": "GP29"} + {"pin_a": "GP28", "pin_b": "GP29", "resolution": 2} ] }, "features": { @@ -26,6 +26,14 @@ "pointing_device": false, "rgb_matrix": true }, + "audio": { + "default": { + "on": true, + "clicky": true + }, + "driver": "pwm_hardware", + "voices": true + }, "haptic": { "driver": "drv2605l" }, @@ -79,6 +87,14 @@ "splash": true, "typing_heatmap": true }, + "default": { + "animation": "breathing", + "on": true, + "hue": 128, + "sat": 255, + "val": 255, + "speed": 128 + }, "driver": "ws2812", "layout": [ {"matrix": [0, 1], "x": 13, "y": 17, "flags": 4}, @@ -124,14 +140,31 @@ {"matrix": [7, 2], "x": 150, "y": 49, "flags": 1}, {"matrix": [7, 1], "x": 166, "y": 48, "flags": 1} ], - "split_count": [21, 21] + "split_count": [21, 21], + "led_flush_limit": 16, + "led_process_limit": 10, + "max_brightness": 255, + "react_on_keyup": false, + "sat_steps": 16, + "sleep": true, + "speed_steps": 16, + "timeout": 120000, + "val_steps": 16, + "hue_steps": 3 }, "split": { "enabled": true, + "bootmagic": { + "matrix": [4, 1] + }, + "serial": { + "driver": "vendor", + "pin": "GP1" + }, "encoder": { "right": { "rotary": [ - {"pin_a": "GP29", "pin_b": "GP28"} + {"pin_a": "GP29", "pin_b": "GP28", "resolution": 2} ] } }, @@ -146,7 +179,10 @@ "modifiers": true, "oled": true } - } + }, + "usb_detect": { + "enabled": true + }, }, "url": "https://github.com/Lefuneste83/KLOR", "usb": { @@ -155,10 +191,14 @@ "vid": "0x3A3C" }, "ws2812": { - "pin": "GP0" + "pin": "GP0", + "driver": "vendor" + }, + "layout_aliases": { + "LAYOUT_all": "LAYOUT_polydactyl" }, "layouts": { - "LAYOUT_konrad": { + "LAYOUT_polydactyl": { "layout": [ {"label": "L01", "matrix": [0, 1], "x": 1, "y": 0}, {"label": "L02", "matrix": [0, 2], "x": 2, "y": 0}, @@ -199,12 +239,14 @@ {"label": "L31", "matrix": [3, 1], "x": 2, "y": 3}, {"label": "L32", "matrix": [3, 2], "x": 3, "y": 3}, {"label": "L33", "matrix": [3, 3], "x": 4, "y": 3}, + {"label": "L34", "matrix": [3, 4], "x": 5, "y": 3}, + {"label": "R31", "matrix": [7, 4], "x": 9, "y": 3}, {"label": "R32", "matrix": [7, 3], "x": 10, "y": 3}, {"label": "R33", "matrix": [7, 2], "x": 11, "y": 3}, {"label": "R34", "matrix": [7, 1], "x": 12, "y": 3} ] }, - "LAYOUT_polydactyl": { + "LAYOUT_konrad": { "layout": [ {"label": "L01", "matrix": [0, 1], "x": 1, "y": 0}, {"label": "L02", "matrix": [0, 2], "x": 2, "y": 0}, @@ -245,8 +287,6 @@ {"label": "L31", "matrix": [3, 1], "x": 2, "y": 3}, {"label": "L32", "matrix": [3, 2], "x": 3, "y": 3}, {"label": "L33", "matrix": [3, 3], "x": 4, "y": 3}, - {"label": "L34", "matrix": [3, 4], "x": 5, "y": 3}, - {"label": "R31", "matrix": [7, 4], "x": 9, "y": 3}, {"label": "R32", "matrix": [7, 3], "x": 10, "y": 3}, {"label": "R33", "matrix": [7, 2], "x": 11, "y": 3}, {"label": "R34", "matrix": [7, 1], "x": 12, "y": 3} diff --git a/keyboards/electronlab/klor/keymaps/default/config.h b/keyboards/electronlab/klor/keymaps/default/config.h index ba38fec94760..caccffba1d95 100644 --- a/keyboards/electronlab/klor/keymaps/default/config.h +++ b/keyboards/electronlab/klor/keymaps/default/config.h @@ -14,6 +14,7 @@ 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 /* The way how "handedness" is decided (which half is which), @@ -35,13 +36,6 @@ for more options. #define AUTO_SHIFT_TIMEOUT TAPPING_TERM #define AUTO_SHIFT_NO_SETUP -#undef LOCKING_SUPPORT_ENABLE -#undef LOCKING_RESYNC_ENABLE -#define NO_ACTION_ONESHOT -//#define NO_ACTION_TAPPING -//#define NO_MUSIC_MODE - -#define COMBO_COUNT 25 // RGB matrix support #ifdef RGB_MATRIX_ENABLE // RGB Matrix Animation modes. Explicitly enabled @@ -96,12 +90,6 @@ for more options. # define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH #endif -// Bootmagic support -# define BOOTMAGIC_ROW 0 -# define BOOTMAGIC_COLUMN 1 -# define BOOTMAGIC_ROW_RIGHT 4 -# define BOOTMAGIC_COLUMN_RIGHT 1 - // Haptic support #ifdef HAPTIC_ENABLE //# define NO_HAPTIC_ALPHA diff --git a/keyboards/electronlab/klor/keymaps/default/keymap.c b/keyboards/electronlab/klor/keymaps/default/keymap.c index 41e70d28a965..b8be79454972 100644 --- a/keyboards/electronlab/klor/keymaps/default/keymap.c +++ b/keyboards/electronlab/klor/keymaps/default/keymap.c @@ -19,7 +19,6 @@ #include QMK_KEYBOARD_H #include #include -#include "klor.h" #ifdef HAPTIC_ENABLE #include "drivers/haptic/drv2605l.h" @@ -112,10 +111,10 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_QWERTY] = LAYOUT_polydactyl( //╷ ╷ ╷ ╷ ╷ ╷ ╷ ╷╷ ╷ ╷ ╷ ╷ ╷ ╷ ╷ - KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, -LSFT_T(KC_TAB), KC_A, KC_S, KC_D, LSFT_T(KC_F),KC_G, KC_H, RSFT_T(KC_J), KC_K, KC_L, KC_SCLN, KC_QUOT, - KC_LCTL, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_MUTE, KC_MPLY, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_BSLS, - KC_LALT, LOWER, KC_RALT, KC_SPC, KC_BSPC, KC_ENT, RAISE, KC_DEL + KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, + 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_LCTL, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_MUTE, KC_MPLY, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_BSLS, + KC_LALT, LOWER, KC_RALT, KC_SPC, KC_BSPC, KC_ENT, RAISE, KC_DEL ), /* @@ -148,21 +147,21 @@ LSFT_T(KC_TAB), KC_A, KC_S, KC_D, LSFT_T(KC_F),KC_G, │ r a i s e │ └───────────────────────────────────────────────────────────┘ ┌─────────┬─────────┬─────────┬─────────┬─────────┐ ┌─────────┬─────────┬─────────┬─────────┬─────────┐ - │ RGB_SPI │ RGB_HUI │ │ │ { │ │ } │ LEFT │ UP │ RIGHT │ HOME │ + │ RGB_SPI │ RGB_HUI │ HF_NEXT │ CK_UP │ { │ │ } │ LEFT │ UP │ RIGHT │ HOME │ ┌─────────┼─────────┼─────────┼─────────┼─────────┼─────────┤ ├─────────┼─────────┼─────────┼─────────┼─────────┼─────────┐ - │ RGB_BRI │ RGB_EFF │ │ │ │ [ │ │ ] │ │ DOWN │ │ PSCRN │ P UP │ + │ RGB_VAI │ RGB_MOD │ RGB_M_B │ HF_TOGG │ CK_TOGG │ [ │ │ ] │ │ DOWN │ │ PSCRN │ P UP │ ├─────────┼─────────┼─────────┼─────────┼─────────┼─────────┤╭────────╮╭────────╮├─────────┼─────────┼─────────┼─────────┼─────────┼─────────┤ - │ RGB_BRD │ RGB_SPD │ RGB_HUD │ │ │ ( ││ MUTE ││PLY/PASE││ ) │ │ │ │ END │ P DOWN │ + │ RGB_VAD │ RGB_SPD │ RGB_HUD │ HF_PREV │ CK_DOWN │ ( ││ MUTE ││PLY/PASE││ ) │ │ │ │ END │ P DOWN │ └─────────┴─────────┴─────────┼─────────┼─────────┼─────────┼╰────────╯╰────────╯┼─────────┼─────────┼─────────┼─────────┴─────────┴─────────┘ - │ │ ADJUST │ │ LSHIFT ││ RSHIFT │ │ │ ADJUST │ + │ │ │ │ LSHIFT ││ RSHIFT │ │ │ │ └─────────┴─────────┴─────────┴─────────┘└─────────┴─────────┴─────────┴─────────┘ */ [_RAISE] = LAYOUT_polydactyl( //╷ ╷ ╷ ╷ ╷ ╷ ╷ ╷╷ ╷ ╷ ╷ ╷ ╷ ╷ ╷ RGB_SPI, RGB_HUI, HF_NEXT, CK_UP, KC_LCBR, KC_RCBR, KC_LEFT, KC_UP, KC_RGHT, KC_HOME, - RGB_VAI, RGB_MOD, RGB_M_B, HF_TOGG, CK_TOGG, KC_LBRC, KC_RBRC, KC_TRNS, KC_DOWN, KC_TRNS, KC_PSCR, KC_PGUP, - RGB_VAD, RGB_SPD, RGB_HUD, HF_PREV, CK_DOWN, KC_LPRN, KC_MUTE, KC_MPLY, KC_RPRN, KC_TRNS, KC_TRNS, KC_TRNS, KC_END, KC_PGDN, - KC_TRNS, KC_TRNS, KC_TRNS, KC_LSFT, KC_RSFT, KC_TRNS, KC_TRNS, ADJUST + RGB_VAI, RGB_MOD, RGB_M_B, HF_TOGG, CK_TOGG, KC_LBRC, KC_RBRC, XXXXXXX, KC_DOWN, XXXXXXX, KC_PSCR, KC_PGUP, + RGB_VAD, RGB_SPD, RGB_HUD, HF_PREV, CK_DOWN, KC_LPRN, KC_MUTE, KC_MPLY, KC_RPRN, XXXXXXX, XXXXXXX, XXXXXXX, KC_END, KC_PGDN, + XXXXXXX, XXXXXXX, XXXXXXX, KC_LSFT, KC_RSFT, XXXXXXX, XXXXXXX, XXXXXXX ), /* ╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╸ @@ -177,15 +176,15 @@ LSFT_T(KC_TAB), KC_A, KC_S, KC_D, LSFT_T(KC_F),KC_G, ├─────────┼─────────┼─────────┼─────────┼─────────┼─────────┤╭────────╮╭────────╮├─────────┼─────────┼─────────┼─────────┼─────────┼─────────┤ │ MAKE │ OS SWAP │ │ RGB VAL │ │ ││ MUTE ││PLY/PSE ││ │ F1 │ F2 │ F3 │ F10 │ F11 │ └─────────┴─────────┴─────────┼─────────┼─────────┼─────────┼╰────────╯╰────────╯┼─────────┼─────────┼─────────┼─────────┴─────────┴─────────┘ - │ ▼ │ ▼ │ ▼ │ ▼ ││ ▼ │ ▼ │ ▼ │ ▼ │ + │ │ │ │ ││ │ │ │ │ └─────────┴─────────┴─────────┴─────────┘└─────────┴─────────┴─────────┴─────────┘ */ [_ADJUST] = LAYOUT_polydactyl( //╷ ╷ ╷ ╷ ╷ ╷ ╷ ╷╷ ╷ ╷ ╷ ╷ ╷ ╷ ╷ AU_TOGG, HF_TOGG, RGB_HUI, RGB_MOD, XXXXXXX, XXXXXXX, KC_F7, KC_F8, KC_F9, KC_F14, QK_BOOT, DB_TOGG, QWERTY, RGB_SAI, XXXXXXX, XXXXXXX, XXXXXXX, KC_F4, KC_F5, KC_F6, KC_F12, KC_F13, - MAKE_H, OS_SWAP, KC_TRNS, RGB_VAI, XXXXXXX, XXXXXXX, KC_MUTE, KC_MPLY, XXXXXXX, KC_F1, KC_F2, KC_F3, KC_F10, KC_F11, - _______, _______, _______, _______, _______, _______, _______, _______ + MAKE_H, OS_SWAP, XXXXXXX, RGB_VAI, XXXXXXX, XXXXXXX, KC_MUTE, KC_MPLY, XXXXXXX, KC_F1, KC_F2, KC_F3, KC_F10, KC_F11, + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX ), /* @@ -285,19 +284,6 @@ LSFT_T(KC_TAB), KC_A, KC_S, KC_D, LSFT_T(KC_F),KC_G, */ }; - -// ┌────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┐ -// │ H A P T I C F E E D B A C K │ -// └────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘ -// ▝▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▘ - -//void keyboard_post_init_user(void) { -// // Call the post init code. -// #if HAPTIC_ENABLE -// haptic_disable(); // disables per key haptic feedback by default -// #endif //HAPTIC ENABLE -//} - // ┌────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┐ // │ O L E D │ // └────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘ @@ -722,7 +708,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { #if defined(ENCODER_MAP_ENABLE) const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = { - [0] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU), ENCODER_CCW_CW(KC_LEFT, KC_RIGHT) }, + [0] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU), ENCODER_CCW_CW(KC_WBAK, KC_WFWD) }, [1] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU), ENCODER_CCW_CW(KC_MPRV, KC_MNXT) }, [2] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU), ENCODER_CCW_CW(KC_MPRV, KC_MNXT) }, [3] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU), ENCODER_CCW_CW(KC_MPRV, KC_MNXT) }, diff --git a/keyboards/electronlab/klor/keymaps/default/rules.mk b/keyboards/electronlab/klor/keymaps/default/rules.mk index d24e6c406a35..4e089e59a26e 100644 --- a/keyboards/electronlab/klor/keymaps/default/rules.mk +++ b/keyboards/electronlab/klor/keymaps/default/rules.mk @@ -5,12 +5,10 @@ ENCODER_MAP_ENABLE = yes EXTRAKEY_ENABLE = yes AUDIO_ENABLE = yes MUSIC_ENABLE = yes - DYNAMIC_MACRO_ENABLE = yes COMBO_ENABLE = yes KEY_OVERRIDE_ENABLE = no TRI_LAYER_ENABLE = yes - SPLIT_KEYBOARD = yes #HAPTIC FEEBACK diff --git a/keyboards/electronlab/klor/klor.c b/keyboards/electronlab/klor/klor.c index 96439709a95b..1e9a09a3f042 100644 --- a/keyboards/electronlab/klor/klor.c +++ b/keyboards/electronlab/klor/klor.c @@ -15,8 +15,7 @@ * along with this program. If not, see . */ -#include "klor.h" - +#include "quantum.h" oled_rotation_t oled_init_kb(oled_rotation_t rotation) { return OLED_ROTATION_180; @@ -92,6 +91,7 @@ const keypos_t PROGMEM hand_swap_config[MATRIX_ROWS][MATRIX_COLS] = // POLYDACTYL / YUBITSUME // use this matrix if you use the polydactyl or yubitsume layout ────────────────────────────────────┐ +/* led_config_t g_led_config = { { //COL 00 01 02 03 04 05 ROW { NO_LED, 18, 13, 12, 6, 5 },//00 @@ -128,7 +128,7 @@ led_config_t g_led_config = { { 4, 4, 4, 4, 4, 1, 1 } }; // ────────────────────────────────────────────────────────────────────────────────────────────────────┘ - +*/ /* // KONRAD @@ -216,15 +216,6 @@ led_config_t g_led_config = { { // ────────────────────────────────────────────────────────────────────────────────────────────────────┘ */ -void suspend_power_down_kb(void) { - rgb_matrix_set_suspend_state(true); - suspend_power_down_user(); -} - -void suspend_wakeup_init_kb(void) { - rgb_matrix_set_suspend_state(false); - suspend_wakeup_init_user(); -} #endif //RGB_MATRIX_ENABLE diff --git a/keyboards/electronlab/klor/klor.h b/keyboards/electronlab/klor/klor.h deleted file mode 100644 index 276c35a8dc00..000000000000 --- a/keyboards/electronlab/klor/klor.h +++ /dev/null @@ -1,33 +0,0 @@ -/* Copyright 2022 - * GEIST @geigeigeist - * - * 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 "quantum.h" - -/* This a shortcut to help you visually see your layout. - * - * The first section contains all of the arguments representing the physical - * layout of the board and position of the keys. - * - * The second converts the arguments into a two-dimensional array which - * represents the switch matrix. - */ - -// readability -#define ___ KC_NO - -#define LAYOUT LAYOUT_polydactyl diff --git a/keyboards/electronlab/klor/mcuconf.h b/keyboards/electronlab/klor/mcuconf.h index 223fc5746dd9..30b31f8b4614 100644 --- a/keyboards/electronlab/klor/mcuconf.h +++ b/keyboards/electronlab/klor/mcuconf.h @@ -1,112 +1,21 @@ -/* - ChibiOS - Copyright (C) 2006..2021 Giovanni Di Sirio - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. -*/ - -#ifndef MCUCONF_H -#define MCUCONF_H - -/* - * RP2040_MCUCONF drivers configuration. +/* Copyright 2020 Nick Brassel (tzarc) * - * IRQ priorities: - * 3...0 Lowest...Highest. + * 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 3 of the License, or + * (at your option) any later version. * - * DMA priorities: - * 0...1 Lowest...Highest. - */ - -#define RP2040_MCUCONF - -/* - * HAL driver system settings. - */ -#define RP_NO_INIT FALSE -#define RP_CORE1_START FALSE -#define RP_CORE1_VECTORS_TABLE _vectors -#define RP_CORE1_ENTRY_POINT _crt0_c1_entry -#define RP_CORE1_STACK_END __c1_main_stack_end__ - -/* - * IRQ system settings. - */ -#define RP_IRQ_SYSTICK_PRIORITY 2 -#define RP_IRQ_TIMER_ALARM0_PRIORITY 2 -#define RP_IRQ_TIMER_ALARM1_PRIORITY 2 -#define RP_IRQ_TIMER_ALARM2_PRIORITY 2 -#define RP_IRQ_TIMER_ALARM3_PRIORITY 2 -#define RP_IRQ_ADC1_PRIORITY 3 -#define RP_IRQ_UART0_PRIORITY 3 -#define RP_IRQ_UART1_PRIORITY 3 -#define RP_IRQ_SPI0_PRIORITY 2 -#define RP_IRQ_SPI1_PRIORITY 2 -#define RP_IRQ_USB0_PRIORITY 3 -#define RP_IRQ_I2C0_PRIORITY 2 -#define RP_IRQ_I2C1_PRIORITY 2 -#define RP_IRQ_RTC_PRIORITY 3 - -/* - * ADC driver system settings. - */ -#define RP_ADC_USE_ADC1 TRUE - -/* - * SIO driver system settings. + * 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 . */ -#define RP_SIO_USE_UART0 FALSE -#define RP_SIO_USE_UART1 FALSE +#pragma once -/* - * SPI driver system settings. - */ -#define RP_SPI_USE_SPI0 TRUE -#define RP_SPI_USE_SPI1 FALSE -#define RP_SPI_SPI0_RX_DMA_CHANNEL RP_DMA_CHANNEL_ID_ANY -#define RP_SPI_SPI0_TX_DMA_CHANNEL RP_DMA_CHANNEL_ID_ANY -#define RP_SPI_SPI1_RX_DMA_CHANNEL RP_DMA_CHANNEL_ID_ANY -#define RP_SPI_SPI1_TX_DMA_CHANNEL RP_DMA_CHANNEL_ID_ANY -#define RP_SPI_SPI0_DMA_PRIORITY 1 -#define RP_SPI_SPI1_DMA_PRIORITY 1 -#define RP_SPI_DMA_ERROR_HOOK(spip) +#include_next -/* - * PWM driver system settings. - */ -#define RP_PWM_USE_PWM0 FALSE -#define RP_PWM_USE_PWM1 FALSE -#define RP_PWM_USE_PWM2 FALSE -#define RP_PWM_USE_PWM3 FALSE +#undef RP_PWM_USE_PWM4 #define RP_PWM_USE_PWM4 TRUE -#define RP_PWM_USE_PWM5 FALSE -#define RP_PWM_USE_PWM6 FALSE -#define RP_PWM_USE_PWM7 FALSE -#define RP_PWM_IRQ_WRAP_NUMBER_PRIORITY 3 - -/* - * I2C driver system settings. - */ -#define RP_I2C_USE_I2C0 FALSE -#define RP_I2C_USE_I2C1 TRUE -#define RP_I2C_BUSY_TIMEOUT 50 -#define RP_I2C_ADDRESS_MODE_10BIT FALSE - -/* - * USB driver system settings. - */ -#define RP_USB_USE_USBD0 TRUE -#define RP_USB_FORCE_VBUS_DETECT TRUE -#define RP_USE_EXTERNAL_VBUS_DETECT FALSE -#define RP_USB_USE_ERROR_DATA_SEQ_INTR FALSE - -#endif /* MCUCONF_H */ diff --git a/keyboards/electronlab/klor/readme.md b/keyboards/electronlab/klor/readme.md index a26ee9abc437..e09f04a12d4e 100644 --- a/keyboards/electronlab/klor/readme.md +++ b/keyboards/electronlab/klor/readme.md @@ -1,3 +1,7 @@ + + +# Electronlab KLOR split keyboard + ``` █ █ █ ▄▄▄▀▀▀▀▀▀▄▄▄ █▀▀▀▀▀▀▀▀▀▀█ █ █ █ ▄▀ ▀▄ █ █ @@ -11,10 +15,28 @@ ██ █ █ ▀▄ ▄▀ █ █ █ █ █▄▄▄▄▄▄▄▄ ▀▀▀▄▄▄▄▄▄▀▀▀ █ █ ``` -# KLOR split keyboard KLOR is 42 keys column-staggered split keyboard originaly made by @geigeigeist and forked by Lefuneste83 from Electronlab. It supports a per key RGB matrix, encoders, OLED displays, haptic feedback, audio, a Pixart Paw3204 trackball and four different layouts, through brake off parts. It's schematics are based on the Sofle, while the layout is based on the Yacc46. -You can use this command to compile the firmware -`qmk compile -kb electronlab/klor -km default -c` +* Keyboard Maintainer: [Lefuneste83](https://github.com/Lefuneste83) +* Hardware Supported: KLOR PCB from 1.3 onward +* Hardware Availability: https://github.com/Lefuneste83/KLOR/tree/main/PCB + +Make example for this keyboard (after setting up your build environment): + + make electronlab/klor:default + +Flashing example for this keyboard: + + make electronlab/klor:default:flash + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). + +## Bootloader + +Enter the bootloader in 3 ways: + +* **Bootmagic reset**: Hold down the key at (0,1) in the matrix for the left side and (4,1) in the matrix for the right side (usually the top left and top right) and plug in the keyboard half to USB +* **Physical reset button**: Briefly press the button on the side of the PCB. A rapid double press will resart the keyboard half in bootloader mode. +* **Keycode in layout**: Press the key mapped to `QK_BOOT` diff --git a/keyboards/electronlab/klor/rules.mk b/keyboards/electronlab/klor/rules.mk deleted file mode 100644 index 9d124b93769b..000000000000 --- a/keyboards/electronlab/klor/rules.mk +++ /dev/null @@ -1,27 +0,0 @@ -# MCU name -MCU = RP2040 - -# Bootloader selection -BOOTLOADER = rp2040 - -# Ignore some warnings during the build, likely to be fixed before RP2040 PR is merged -ALLOW_WARNINGS = yes - -# LTO must be disabled for RP2040 builds -LTO_ENABLE = no - -# PIO serial/WS2812 drivers must be used on RP2040 -SERIAL_DRIVER = vendor -WS2812_DRIVER = vendor - -# CONVERTER - if you use a listed MCU comment the first line and uncomment the appropiate line -#CONVERT_TO = promicro_rp2040 -#CONVERT_TO = kb2040 -#CONVERT_TO = blok -#CONVERT_TO = elite_pi - -# AUDIO -AUDIO_DRIVER = pwm_hardware - -I2C_DRIVER_REQUIRED = yes -