From ec0bf7c207f8eb16e83bbab84bcc2daa2fb47556 Mon Sep 17 00:00:00 2001 From: wholteza Date: Tue, 17 Jun 2025 21:49:24 +0200 Subject: [PATCH 01/10] Added 5x6_split --- keyboards/5x6_split/keyboard.json | 113 +++++++++++++++++++ keyboards/5x6_split/keymaps/default/keymap.c | 40 +++++++ keyboards/5x6_split/readme.md | 27 +++++ 3 files changed, 180 insertions(+) create mode 100644 keyboards/5x6_split/keyboard.json create mode 100644 keyboards/5x6_split/keymaps/default/keymap.c create mode 100644 keyboards/5x6_split/readme.md diff --git a/keyboards/5x6_split/keyboard.json b/keyboards/5x6_split/keyboard.json new file mode 100644 index 00000000000..0254d5ca5f7 --- /dev/null +++ b/keyboards/5x6_split/keyboard.json @@ -0,0 +1,113 @@ +{ + "manufacturer": "wholteza", + "keyboard_name": "5x6_split", + "maintainer": "wholteza", + "bootloader": "rp2040", + "diode_direction": "COL2ROW", + "features": { + "bootmagic": true, + "extrakey": true, + "mousekey": true, + "nkro": true + }, + "matrix_pins": { + "cols": ["GP21", "GP20", "GP19", "GP18", "GP17", "GP16"], + "rows": ["GP15", "GP14", "GP13", "GP12", "GP11"] + }, + "split": { + "enabled": true, + "matrix_pins": { + "right": { + "cols": ["GP10", "GP11", "GP12", "GP13", "GP14", "GP15"], + "rows": ["GP16", "GP17", "GP18", "GP19", "GP20"] + }, + }, + "serial": { + "pin": "GP0", + "driver": "vendor" + }, + "transport": { + "protocol": "serial", + }, + "usb_detect": { + "enabled": true + } + }, + "processor": "RP2040", + "url": "", + "usb": { + "device_version": "1.0.0", + "pid": "0x1234", + "vid": "0xFEED" + }, + "layouts": { + "LAYOUT": { + "layout": [ + {"matrix": [0, 0], "x": 0, "y": 0}, + {"matrix": [0, 1], "x": 1, "y": 0}, + {"matrix": [0, 2], "x": 2, "y": 0}, + {"matrix": [0, 3], "x": 3, "y": 0}, + {"matrix": [0, 4], "x": 4, "y": 0}, + {"matrix": [0, 5], "x": 5, "y": 0}, + {"matrix": [5, 0], "x": 6, "y": 0}, + {"matrix": [5, 1], "x": 7, "y": 0}, + {"matrix": [5, 2], "x": 8, "y": 0}, + {"matrix": [5, 3], "x": 9, "y": 0}, + {"matrix": [5, 4], "x": 10, "y": 0}, + {"matrix": [5, 5], "x": 11, "y": 0}, + + {"matrix": [1, 0], "x": 0, "y": 1}, + {"matrix": [1, 1], "x": 1, "y": 1}, + {"matrix": [1, 2], "x": 2, "y": 1}, + {"matrix": [1, 3], "x": 3, "y": 1}, + {"matrix": [1, 4], "x": 4, "y": 1}, + {"matrix": [1, 5], "x": 5, "y": 1}, + {"matrix": [6, 0], "x": 6, "y": 1}, + {"matrix": [6, 1], "x": 7, "y": 1}, + {"matrix": [6, 2], "x": 8, "y": 1}, + {"matrix": [6, 3], "x": 9, "y": 1}, + {"matrix": [6, 4], "x": 10, "y": 1}, + {"matrix": [6, 5], "x": 11, "y": 1}, + + {"matrix": [2, 0], "x": 0, "y": 2}, + {"matrix": [2, 1], "x": 1, "y": 2}, + {"matrix": [2, 2], "x": 2, "y": 2}, + {"matrix": [2, 3], "x": 3, "y": 2}, + {"matrix": [2, 4], "x": 4, "y": 2}, + {"matrix": [2, 5], "x": 5, "y": 2}, + {"matrix": [7, 0], "x": 6, "y": 2}, + {"matrix": [7, 1], "x": 7, "y": 2}, + {"matrix": [7, 2], "x": 8, "y": 2}, + {"matrix": [7, 3], "x": 9, "y": 2}, + {"matrix": [7, 4], "x": 10, "y": 2}, + {"matrix": [7, 5], "x": 11, "y": 2}, + + {"matrix": [3, 0], "x": 0, "y": 3}, + {"matrix": [3, 1], "x": 1, "y": 3}, + {"matrix": [3, 2], "x": 2, "y": 3}, + {"matrix": [3, 3], "x": 3, "y": 3}, + {"matrix": [3, 4], "x": 4, "y": 3}, + {"matrix": [3, 5], "x": 5, "y": 3}, + {"matrix": [8, 0], "x": 6, "y": 3}, + {"matrix": [8, 1], "x": 7, "y": 3}, + {"matrix": [8, 2], "x": 8, "y": 3}, + {"matrix": [8, 3], "x": 9, "y": 3}, + {"matrix": [8, 4], "x": 10, "y": 3}, + {"matrix": [8, 5], "x": 11, "y": 3}, + + {"matrix": [4, 0], "x": 0, "y": 4}, + {"matrix": [4, 1], "x": 1, "y": 4}, + {"matrix": [4, 2], "x": 2, "y": 4}, + {"matrix": [4, 3], "x": 3, "y": 4}, + {"matrix": [4, 4], "x": 4, "y": 4}, + {"matrix": [4, 5], "x": 5, "y": 4}, + {"matrix": [9, 0], "x": 6, "y": 4}, + {"matrix": [9, 1], "x": 7, "y": 4}, + {"matrix": [9, 2], "x": 8, "y": 4}, + {"matrix": [9, 3], "x": 9, "y": 4}, + {"matrix": [9, 4], "x": 10, "y": 4}, + {"matrix": [9, 5], "x": 11, "y": 4}, + ] + } + } +} diff --git a/keyboards/5x6_split/keymaps/default/keymap.c b/keyboards/5x6_split/keymaps/default/keymap.c new file mode 100644 index 00000000000..4176cb425ca --- /dev/null +++ b/keyboards/5x6_split/keymaps/default/keymap.c @@ -0,0 +1,40 @@ +/* Copyright 2021 beanaccle + * + * 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 + +// Defines names for use in layer keycodes and the keymap +enum layer_names { + _BASE, + _FN +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + /* Base */ + [_BASE] = LAYOUT( + KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, + KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, + KC_LCTL, 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_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_BSLS + ), + [_FN] = LAYOUT( + KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, + KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, + KC_LCTL, 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_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_BSLS + ) +}; diff --git a/keyboards/5x6_split/readme.md b/keyboards/5x6_split/readme.md new file mode 100644 index 00000000000..0a5f300e25c --- /dev/null +++ b/keyboards/5x6_split/readme.md @@ -0,0 +1,27 @@ +# 5x6_split + +![5x6_split](imgur.com image replace me!) + +*A short description of the keyboard/project* + +* Keyboard Maintainer: [wholteza](https://github.com/wholteza) +* Hardware Supported: *The PCBs, controllers supported* +* Hardware Availability: *Links to where you can find this hardware* + +Make example for this keyboard (after setting up your build environment): + + make 5x6_split:default + +Flashing example for this keyboard: + + make 5x6_split: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,0) in the matrix (usually the top left key or Escape) and plug in the keyboard +* **Physical reset button**: Briefly press the button on the back of the PCB - some may have pads you must short instead +* **Keycode in layout**: Press the key mapped to `QK_BOOT` if it is available From c951c6dd9f2c64575743531cf59afafbbaebc157 Mon Sep 17 00:00:00 2001 From: wholteza Date: Thu, 26 Jun 2025 22:22:11 +0200 Subject: [PATCH 02/10] wip getting serial to work --- keyboards/5x6_split/config.h | 11 +++++++++++ keyboards/5x6_split/keyboard.json | 10 ++-------- keyboards/5x6_split/rules.mk | 2 ++ 3 files changed, 15 insertions(+), 8 deletions(-) create mode 100644 keyboards/5x6_split/config.h create mode 100644 keyboards/5x6_split/rules.mk diff --git a/keyboards/5x6_split/config.h b/keyboards/5x6_split/config.h new file mode 100644 index 00000000000..c9e36f08dc0 --- /dev/null +++ b/keyboards/5x6_split/config.h @@ -0,0 +1,11 @@ +#pragma once + +#define SERIAL_USART_FULL_DUPLEX // Enable full duplex operation mode. +#define SERIAL_USART_TX_PIN GP0 // USART TX pin +#define SERIAL_USART_RX_PIN GP1 // USART RX pin + +#define SERIAL_DEBUG + +#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET // Activates the double-tap behavior +#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 200U // Timeout window in ms in which the double tap can occur. +#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_LED GP25 // Specify a optional status led by GPIO number which blinks when entering the bootloader diff --git a/keyboards/5x6_split/keyboard.json b/keyboards/5x6_split/keyboard.json index 0254d5ca5f7..ed151530485 100644 --- a/keyboards/5x6_split/keyboard.json +++ b/keyboards/5x6_split/keyboard.json @@ -16,21 +16,15 @@ }, "split": { "enabled": true, + "main": "right", "matrix_pins": { "right": { "cols": ["GP10", "GP11", "GP12", "GP13", "GP14", "GP15"], "rows": ["GP16", "GP17", "GP18", "GP19", "GP20"] }, }, - "serial": { - "pin": "GP0", - "driver": "vendor" - }, - "transport": { - "protocol": "serial", - }, "usb_detect": { - "enabled": true + "enabled": true, } }, "processor": "RP2040", diff --git a/keyboards/5x6_split/rules.mk b/keyboards/5x6_split/rules.mk new file mode 100644 index 00000000000..d14e9f7aae7 --- /dev/null +++ b/keyboards/5x6_split/rules.mk @@ -0,0 +1,2 @@ +SERIAL_DRIVER = vendor +BOARD = GENERIC_RP_RP2040 From 80aa9a9faca1267a04e2ed32878be0e39023274b Mon Sep 17 00:00:00 2001 From: wholteza Date: Sat, 28 Jun 2025 13:29:20 +0200 Subject: [PATCH 03/10] wip try using half duplex --- keyboards/5x6_split/config.h | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/keyboards/5x6_split/config.h b/keyboards/5x6_split/config.h index c9e36f08dc0..4e07bfbbb5e 100644 --- a/keyboards/5x6_split/config.h +++ b/keyboards/5x6_split/config.h @@ -1,11 +1,14 @@ #pragma once -#define SERIAL_USART_FULL_DUPLEX // Enable full duplex operation mode. -#define SERIAL_USART_TX_PIN GP0 // USART TX pin -#define SERIAL_USART_RX_PIN GP1 // USART RX pin +//#define SERIAL_USART_FULL_DUPLEX // Enable full duplex operation mode. +#define SERIAL_USART_TX_PIN GP2 // USART TX pin +//#define SERIAL_USART_RX_PIN GP1 // USART RX pin #define SERIAL_DEBUG #define RP2040_BOOTLOADER_DOUBLE_TAP_RESET // Activates the double-tap behavior #define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 200U // Timeout window in ms in which the double tap can occur. #define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_LED GP25 // Specify a optional status led by GPIO number which blinks when entering the bootloader + +#define SPLIT_WATCHDOG_ENABLE +#define SPLIT_WATCHDOG_TIMEOUT 3000 From 25498e4f4cf0ec27471647b7989c7fcd1c9a8b97 Mon Sep 17 00:00:00 2001 From: wholteza Date: Sun, 29 Jun 2025 15:27:00 +0200 Subject: [PATCH 04/10] test --- keyboards/5x6_split/config.h | 17 ++++++++++------- keyboards/5x6_split/keyboard.json | 3 +-- keyboards/5x6_split/keymaps/default/keymap.c | 20 ++++++++++---------- keyboards/5x6_split/rules.mk | 1 + 4 files changed, 22 insertions(+), 19 deletions(-) diff --git a/keyboards/5x6_split/config.h b/keyboards/5x6_split/config.h index 4e07bfbbb5e..57c422b3485 100644 --- a/keyboards/5x6_split/config.h +++ b/keyboards/5x6_split/config.h @@ -1,14 +1,17 @@ #pragma once -//#define SERIAL_USART_FULL_DUPLEX // Enable full duplex operation mode. -#define SERIAL_USART_TX_PIN GP2 // USART TX pin -//#define SERIAL_USART_RX_PIN GP1 // USART RX pin +//#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET +//#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 200U -#define SERIAL_DEBUG +#define SERIAL_USART_FULL_DUPLEX -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET // Activates the double-tap behavior -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 200U // Timeout window in ms in which the double tap can occur. -#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_LED GP25 // Specify a optional status led by GPIO number which blinks when entering the bootloader +#define SERIAL_USART_TX_PIN GP0 +#define SERIAL_USART_RX_PIN GP1 +//#define SERIAL_USART_DRIVER SIO0 + +#define MASTER_RIGHT + +//#define SERIAL_DEBUG #define SPLIT_WATCHDOG_ENABLE #define SPLIT_WATCHDOG_TIMEOUT 3000 diff --git a/keyboards/5x6_split/keyboard.json b/keyboards/5x6_split/keyboard.json index ed151530485..4e8d8ea71d9 100644 --- a/keyboards/5x6_split/keyboard.json +++ b/keyboards/5x6_split/keyboard.json @@ -3,6 +3,7 @@ "keyboard_name": "5x6_split", "maintainer": "wholteza", "bootloader": "rp2040", + "processor": "RP2040", "diode_direction": "COL2ROW", "features": { "bootmagic": true, @@ -27,8 +28,6 @@ "enabled": true, } }, - "processor": "RP2040", - "url": "", "usb": { "device_version": "1.0.0", "pid": "0x1234", diff --git a/keyboards/5x6_split/keymaps/default/keymap.c b/keyboards/5x6_split/keymaps/default/keymap.c index 4176cb425ca..a263e8a98fe 100644 --- a/keyboards/5x6_split/keymaps/default/keymap.c +++ b/keyboards/5x6_split/keymaps/default/keymap.c @@ -24,17 +24,17 @@ enum layer_names { const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Base */ [_BASE] = LAYOUT( - KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, - KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, - KC_LCTL, 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_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_BSLS + KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, + KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, + KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, + KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, + KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1 ), [_FN] = LAYOUT( - KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, - KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, - KC_LCTL, 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_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_BSLS + KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, + KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, + KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, + KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, + KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1 ) }; diff --git a/keyboards/5x6_split/rules.mk b/keyboards/5x6_split/rules.mk index d14e9f7aae7..7cd74dd2aeb 100644 --- a/keyboards/5x6_split/rules.mk +++ b/keyboards/5x6_split/rules.mk @@ -1,2 +1,3 @@ SERIAL_DRIVER = vendor +SPLIT_KEYBOARD = yes BOARD = GENERIC_RP_RP2040 From 27d8f7a02229db3c75c4d0260c7ef96f9ec78cec Mon Sep 17 00:00:00 2001 From: wholteza Date: Sun, 29 Jun 2025 22:12:50 +0200 Subject: [PATCH 05/10] reverse cols and migrate keymap --- keyboards/5x6_split/keyboard.json | 2 +- keyboards/5x6_split/keymaps/default/keymap.c | 33 +++++++++++++------- 2 files changed, 22 insertions(+), 13 deletions(-) diff --git a/keyboards/5x6_split/keyboard.json b/keyboards/5x6_split/keyboard.json index 4e8d8ea71d9..9eb42abae5f 100644 --- a/keyboards/5x6_split/keyboard.json +++ b/keyboards/5x6_split/keyboard.json @@ -12,7 +12,7 @@ "nkro": true }, "matrix_pins": { - "cols": ["GP21", "GP20", "GP19", "GP18", "GP17", "GP16"], + "cols": ["GP16", "GP17", "GP18", "GP19", "GP20", "GP21"], "rows": ["GP15", "GP14", "GP13", "GP12", "GP11"] }, "split": { diff --git a/keyboards/5x6_split/keymaps/default/keymap.c b/keyboards/5x6_split/keymaps/default/keymap.c index a263e8a98fe..ec5ad831600 100644 --- a/keyboards/5x6_split/keymaps/default/keymap.c +++ b/keyboards/5x6_split/keymaps/default/keymap.c @@ -14,27 +14,36 @@ * along with this program. If not, see . */ #include QMK_KEYBOARD_H +#include "keymap_swedish.h" // Defines names for use in layer keycodes and the keymap enum layer_names { _BASE, - _FN + _NUM, + _SYM }; const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Base */ [_BASE] = LAYOUT( - KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, - KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, - KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, - KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, - KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1 + KC_TAB, SE_1, SE_2, SE_3, SE_4, SE_5, SE_6, SE_7, SE_8, SE_9, SE_0, SE_PLUS, + KC_ESC, SE_Q, SE_W, SE_F, SE_P, SE_G, SE_J, SE_L, SE_U, SE_Y, SE_ODIA, SE_ARNG, + KC_BSPC, SE_A, SE_R, SE_S, SE_T, SE_D, SE_H, SE_N, SE_E, SE_I, SE_O, SE_ADIA, + KC_LSFT, SE_Z, SE_X, SE_C, SE_V, SE_B, SE_K, SE_M, SE_COMM, SE_DOT, SE_MINS, KC_LSFT, + KC_LCTL, LCTL(KC_LSFT), KC_LGUI, KC_LALT, MO(1), KC_SPC, KC_SPC, MO(2), KC_ENT, KC_LGUI, LCTL(KC_LSFT), KC_LCTL ), - [_FN] = LAYOUT( - KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, - KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, - KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, - KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, - KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1 + [_NUM] = LAYOUT( + KC_TAB, SE_1, SE_2, SE_3, SE_4, SE_5, SE_6, SE_7, SE_8, SE_9, SE_0, SE_PLUS, + KC_TAB, SE_1, SE_2, SE_3, SE_4, SE_5, SE_6, SE_7, SE_8, SE_9, SE_0, SE_PLUS, + KC_TRNS, KC_TRNS, KC_LEFT , KC_UP, KC_DOWN, KC_RIGHT, KC_HOME, KC_END, KC_PGDN, KC_PGUP, KC_TRNS, KC_F12, + KC_TRNS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, MO(3), KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ), + [_SYM] = LAYOUT( + KC_TAB, SE_1, SE_2, SE_3, SE_4, SE_5, SE_6, SE_7, SE_8, SE_9, SE_0, SE_PLUS, + KC_DEL, SE_EXLM, SE_AT, SE_DLR, SE_TILD, SE_CIRC, SE_LCBR, SE_LBRC, SE_RBRC, SE_RCBR, SE_LABK, KC_TRNS, + KC_TRNS, KC_TRNS, SE_DQUO, SE_HASH, SE_PERC, SE_QUOT, SE_SLSH, SE_LPRN, SE_RPRN, SE_EQL, SE_RABK, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, SE_ASTR, SE_BSLS, SE_GRV, KC_TRNS, KC_TRNS, KC_TRNS, SE_AMPR, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_VOLD, KC_VOLU, SE_PIPE ) }; From ed20785e434a3ee111cca7eb3eceed0397bc5a75 Mon Sep 17 00:00:00 2001 From: wholteza Date: Sat, 12 Jul 2025 17:37:02 +0200 Subject: [PATCH 06/10] Added esc instead of tab on all layers --- keyboards/5x6_split/keymaps/default/keymap.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/keyboards/5x6_split/keymaps/default/keymap.c b/keyboards/5x6_split/keymaps/default/keymap.c index ec5ad831600..51be48c742b 100644 --- a/keyboards/5x6_split/keymaps/default/keymap.c +++ b/keyboards/5x6_split/keymaps/default/keymap.c @@ -26,21 +26,21 @@ enum layer_names { const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Base */ [_BASE] = LAYOUT( - KC_TAB, SE_1, SE_2, SE_3, SE_4, SE_5, SE_6, SE_7, SE_8, SE_9, SE_0, SE_PLUS, + KC_ESC, SE_1, SE_2, SE_3, SE_4, SE_5, SE_6, SE_7, SE_8, SE_9, SE_0, SE_PLUS, KC_ESC, SE_Q, SE_W, SE_F, SE_P, SE_G, SE_J, SE_L, SE_U, SE_Y, SE_ODIA, SE_ARNG, KC_BSPC, SE_A, SE_R, SE_S, SE_T, SE_D, SE_H, SE_N, SE_E, SE_I, SE_O, SE_ADIA, KC_LSFT, SE_Z, SE_X, SE_C, SE_V, SE_B, SE_K, SE_M, SE_COMM, SE_DOT, SE_MINS, KC_LSFT, KC_LCTL, LCTL(KC_LSFT), KC_LGUI, KC_LALT, MO(1), KC_SPC, KC_SPC, MO(2), KC_ENT, KC_LGUI, LCTL(KC_LSFT), KC_LCTL ), [_NUM] = LAYOUT( - KC_TAB, SE_1, SE_2, SE_3, SE_4, SE_5, SE_6, SE_7, SE_8, SE_9, SE_0, SE_PLUS, + KC_ESC, SE_1, SE_2, SE_3, SE_4, SE_5, SE_6, SE_7, SE_8, SE_9, SE_0, SE_PLUS, KC_TAB, SE_1, SE_2, SE_3, SE_4, SE_5, SE_6, SE_7, SE_8, SE_9, SE_0, SE_PLUS, KC_TRNS, KC_TRNS, KC_LEFT , KC_UP, KC_DOWN, KC_RIGHT, KC_HOME, KC_END, KC_PGDN, KC_PGUP, KC_TRNS, KC_F12, KC_TRNS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, MO(3), KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS ), [_SYM] = LAYOUT( - KC_TAB, SE_1, SE_2, SE_3, SE_4, SE_5, SE_6, SE_7, SE_8, SE_9, SE_0, SE_PLUS, + KC_ESC, SE_1, SE_2, SE_3, SE_4, SE_5, SE_6, SE_7, SE_8, SE_9, SE_0, SE_PLUS, KC_DEL, SE_EXLM, SE_AT, SE_DLR, SE_TILD, SE_CIRC, SE_LCBR, SE_LBRC, SE_RBRC, SE_RCBR, SE_LABK, KC_TRNS, KC_TRNS, KC_TRNS, SE_DQUO, SE_HASH, SE_PERC, SE_QUOT, SE_SLSH, SE_LPRN, SE_RPRN, SE_EQL, SE_RABK, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, SE_ASTR, SE_BSLS, SE_GRV, KC_TRNS, KC_TRNS, KC_TRNS, SE_AMPR, From 916ce3adbf8cac4966f0cea10a7f29fe691febf8 Mon Sep 17 00:00:00 2001 From: wholteza Date: Sun, 20 Jul 2025 16:11:21 +0200 Subject: [PATCH 07/10] Clean up keyboard directory as rev1 --- keyboards/5x6_split/config.h | 17 ------- keyboards/5x6_split/keymaps/default/keymap.c | 49 ------------------- keyboards/5x6_split/rev1/config.h | 23 +++++++++ keyboards/5x6_split/{ => rev1}/keyboard.json | 29 ++++++----- .../5x6_split/rev1/keymaps/default/keymap.c | 46 +++++++++++++++++ keyboards/5x6_split/{ => rev1}/readme.md | 18 ++++--- keyboards/5x6_split/rules.mk | 3 -- 7 files changed, 97 insertions(+), 88 deletions(-) delete mode 100644 keyboards/5x6_split/config.h delete mode 100644 keyboards/5x6_split/keymaps/default/keymap.c create mode 100644 keyboards/5x6_split/rev1/config.h rename keyboards/5x6_split/{ => rev1}/keyboard.json (88%) create mode 100644 keyboards/5x6_split/rev1/keymaps/default/keymap.c rename keyboards/5x6_split/{ => rev1}/readme.md (50%) delete mode 100644 keyboards/5x6_split/rules.mk diff --git a/keyboards/5x6_split/config.h b/keyboards/5x6_split/config.h deleted file mode 100644 index 57c422b3485..00000000000 --- a/keyboards/5x6_split/config.h +++ /dev/null @@ -1,17 +0,0 @@ -#pragma once - -//#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET -//#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 200U - -#define SERIAL_USART_FULL_DUPLEX - -#define SERIAL_USART_TX_PIN GP0 -#define SERIAL_USART_RX_PIN GP1 -//#define SERIAL_USART_DRIVER SIO0 - -#define MASTER_RIGHT - -//#define SERIAL_DEBUG - -#define SPLIT_WATCHDOG_ENABLE -#define SPLIT_WATCHDOG_TIMEOUT 3000 diff --git a/keyboards/5x6_split/keymaps/default/keymap.c b/keyboards/5x6_split/keymaps/default/keymap.c deleted file mode 100644 index 51be48c742b..00000000000 --- a/keyboards/5x6_split/keymaps/default/keymap.c +++ /dev/null @@ -1,49 +0,0 @@ -/* Copyright 2021 beanaccle - * - * 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 -#include "keymap_swedish.h" - -// Defines names for use in layer keycodes and the keymap -enum layer_names { - _BASE, - _NUM, - _SYM -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - /* Base */ - [_BASE] = LAYOUT( - KC_ESC, SE_1, SE_2, SE_3, SE_4, SE_5, SE_6, SE_7, SE_8, SE_9, SE_0, SE_PLUS, - KC_ESC, SE_Q, SE_W, SE_F, SE_P, SE_G, SE_J, SE_L, SE_U, SE_Y, SE_ODIA, SE_ARNG, - KC_BSPC, SE_A, SE_R, SE_S, SE_T, SE_D, SE_H, SE_N, SE_E, SE_I, SE_O, SE_ADIA, - KC_LSFT, SE_Z, SE_X, SE_C, SE_V, SE_B, SE_K, SE_M, SE_COMM, SE_DOT, SE_MINS, KC_LSFT, - KC_LCTL, LCTL(KC_LSFT), KC_LGUI, KC_LALT, MO(1), KC_SPC, KC_SPC, MO(2), KC_ENT, KC_LGUI, LCTL(KC_LSFT), KC_LCTL - ), - [_NUM] = LAYOUT( - KC_ESC, SE_1, SE_2, SE_3, SE_4, SE_5, SE_6, SE_7, SE_8, SE_9, SE_0, SE_PLUS, - KC_TAB, SE_1, SE_2, SE_3, SE_4, SE_5, SE_6, SE_7, SE_8, SE_9, SE_0, SE_PLUS, - KC_TRNS, KC_TRNS, KC_LEFT , KC_UP, KC_DOWN, KC_RIGHT, KC_HOME, KC_END, KC_PGDN, KC_PGUP, KC_TRNS, KC_F12, - KC_TRNS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, MO(3), KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS - ), - [_SYM] = LAYOUT( - KC_ESC, SE_1, SE_2, SE_3, SE_4, SE_5, SE_6, SE_7, SE_8, SE_9, SE_0, SE_PLUS, - KC_DEL, SE_EXLM, SE_AT, SE_DLR, SE_TILD, SE_CIRC, SE_LCBR, SE_LBRC, SE_RBRC, SE_RCBR, SE_LABK, KC_TRNS, - KC_TRNS, KC_TRNS, SE_DQUO, SE_HASH, SE_PERC, SE_QUOT, SE_SLSH, SE_LPRN, SE_RPRN, SE_EQL, SE_RABK, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, SE_ASTR, SE_BSLS, SE_GRV, KC_TRNS, KC_TRNS, KC_TRNS, SE_AMPR, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_VOLD, KC_VOLU, SE_PIPE - ) -}; diff --git a/keyboards/5x6_split/rev1/config.h b/keyboards/5x6_split/rev1/config.h new file mode 100644 index 00000000000..0797edb1439 --- /dev/null +++ b/keyboards/5x6_split/rev1/config.h @@ -0,0 +1,23 @@ +/* Copyright 2025 Zackarias Montell (@Wholteza) + * + * 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 SERIAL_USART_FULL_DUPLEX + +#define SERIAL_USART_TX_PIN GP0 +#define SERIAL_USART_RX_PIN GP1 + +#define MASTER_RIGHT diff --git a/keyboards/5x6_split/keyboard.json b/keyboards/5x6_split/rev1/keyboard.json similarity index 88% rename from keyboards/5x6_split/keyboard.json rename to keyboards/5x6_split/rev1/keyboard.json index 9eb42abae5f..849baeef9b8 100644 --- a/keyboards/5x6_split/keyboard.json +++ b/keyboards/5x6_split/rev1/keyboard.json @@ -1,9 +1,9 @@ { - "manufacturer": "wholteza", + "manufacturer": "zacke.dev", "keyboard_name": "5x6_split", - "maintainer": "wholteza", + "maintainer": "Wholteza", + "board": "GENERIC_RP_RP2040", "bootloader": "rp2040", - "processor": "RP2040", "diode_direction": "COL2ROW", "features": { "bootmagic": true, @@ -15,22 +15,31 @@ "cols": ["GP16", "GP17", "GP18", "GP19", "GP20", "GP21"], "rows": ["GP15", "GP14", "GP13", "GP12", "GP11"] }, + "processor": "RP2040", "split": { "enabled": true, - "main": "right", "matrix_pins": { "right": { "cols": ["GP10", "GP11", "GP12", "GP13", "GP14", "GP15"], "rows": ["GP16", "GP17", "GP18", "GP19", "GP20"] - }, + } + }, + "serial": { + "driver": "vendor" + }, + "transport": { + "protocol": "serial", + "watchdog": true, + "watchdog_timeout": 3000 }, "usb_detect": { - "enabled": true, + "enabled": true } }, + "url": "https://git.zacke.dev/wholteza/5x6-split-kb/src/branch/main/rev1", "usb": { "device_version": "1.0.0", - "pid": "0x1234", + "pid": "0x0057", "vid": "0xFEED" }, "layouts": { @@ -48,7 +57,6 @@ {"matrix": [5, 3], "x": 9, "y": 0}, {"matrix": [5, 4], "x": 10, "y": 0}, {"matrix": [5, 5], "x": 11, "y": 0}, - {"matrix": [1, 0], "x": 0, "y": 1}, {"matrix": [1, 1], "x": 1, "y": 1}, {"matrix": [1, 2], "x": 2, "y": 1}, @@ -61,7 +69,6 @@ {"matrix": [6, 3], "x": 9, "y": 1}, {"matrix": [6, 4], "x": 10, "y": 1}, {"matrix": [6, 5], "x": 11, "y": 1}, - {"matrix": [2, 0], "x": 0, "y": 2}, {"matrix": [2, 1], "x": 1, "y": 2}, {"matrix": [2, 2], "x": 2, "y": 2}, @@ -74,7 +81,6 @@ {"matrix": [7, 3], "x": 9, "y": 2}, {"matrix": [7, 4], "x": 10, "y": 2}, {"matrix": [7, 5], "x": 11, "y": 2}, - {"matrix": [3, 0], "x": 0, "y": 3}, {"matrix": [3, 1], "x": 1, "y": 3}, {"matrix": [3, 2], "x": 2, "y": 3}, @@ -87,7 +93,6 @@ {"matrix": [8, 3], "x": 9, "y": 3}, {"matrix": [8, 4], "x": 10, "y": 3}, {"matrix": [8, 5], "x": 11, "y": 3}, - {"matrix": [4, 0], "x": 0, "y": 4}, {"matrix": [4, 1], "x": 1, "y": 4}, {"matrix": [4, 2], "x": 2, "y": 4}, @@ -99,7 +104,7 @@ {"matrix": [9, 2], "x": 8, "y": 4}, {"matrix": [9, 3], "x": 9, "y": 4}, {"matrix": [9, 4], "x": 10, "y": 4}, - {"matrix": [9, 5], "x": 11, "y": 4}, + {"matrix": [9, 5], "x": 11, "y": 4} ] } } diff --git a/keyboards/5x6_split/rev1/keymaps/default/keymap.c b/keyboards/5x6_split/rev1/keymaps/default/keymap.c new file mode 100644 index 00000000000..1b56c3434c1 --- /dev/null +++ b/keyboards/5x6_split/rev1/keymaps/default/keymap.c @@ -0,0 +1,46 @@ +/* Copyright 2025 Zackarias Montell (@Wholteza) + * + * 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, + _NAV, + _SYM +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_BASE] = LAYOUT( + KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, + KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, + KC_ESC, 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_ENT , + MO(3), KC_LCTL, KC_LALT, KC_LGUI, MO(1), KC_SPC, KC_SPC, MO(2), KC_LEFT, KC_DOWN, KC_UP, KC_RGHT + ), + [_NAV] = LAYOUT( + KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, + KC_GRV, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_BSPC, + KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS, + KC_TRNS, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_NUHS, KC_NUBS, KC_PGUP, KC_PGDN, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY + ), + [_SYM] = LAYOUT( + KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, + KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC, + KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, + KC_TRNS, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, S(KC_NUHS), S(KC_NUBS), KC_HOME, KC_END, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MNXT, KC_VOLD, KC_VOLU, QK_BOOT + ) +}; diff --git a/keyboards/5x6_split/readme.md b/keyboards/5x6_split/rev1/readme.md similarity index 50% rename from keyboards/5x6_split/readme.md rename to keyboards/5x6_split/rev1/readme.md index 0a5f300e25c..e9bcc94cac2 100644 --- a/keyboards/5x6_split/readme.md +++ b/keyboards/5x6_split/rev1/readme.md @@ -1,20 +1,24 @@ -# 5x6_split +# 5x6_split revision 1 -![5x6_split](imgur.com image replace me!) +![5x6_split-rev1](https://git.zacke.dev/wholteza/5x6-split-kb/raw/branch/main/rev1/images/assembled.jpeg) -*A short description of the keyboard/project* +**This is the first revision of the 5x6_split keyboard.** + +The 5x6_split is designed to be easily accessible, with openly and freely available hardware and firmware. It features a split layout to minimize the PCB footprint, reducing manufacturing costs. + +In the repository linked below (see the Hardware Availability section), you will find KiCad schematics, PCB designs, and 3D models for a printable chassis. * Keyboard Maintainer: [wholteza](https://github.com/wholteza) -* Hardware Supported: *The PCBs, controllers supported* -* Hardware Availability: *Links to where you can find this hardware* +* Hardware Supported: Raspberry Pi Pico, 5x6_split PCB, 5x6_split Chassis +* Hardware Availability: [PCB, Chassi 3d-models](https://git.zacke.dev/wholteza/5x6-split-kb/src/branch/main/rev1) Make example for this keyboard (after setting up your build environment): - make 5x6_split:default + make 5x6_split/rev1:default Flashing example for this keyboard: - make 5x6_split:default:flash + make 5x6_split/rev1: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). diff --git a/keyboards/5x6_split/rules.mk b/keyboards/5x6_split/rules.mk deleted file mode 100644 index 7cd74dd2aeb..00000000000 --- a/keyboards/5x6_split/rules.mk +++ /dev/null @@ -1,3 +0,0 @@ -SERIAL_DRIVER = vendor -SPLIT_KEYBOARD = yes -BOARD = GENERIC_RP_RP2040 From 9850b0b1332fc17697c5f69c6509d75723a7f54b Mon Sep 17 00:00:00 2001 From: wholteza Date: Sun, 20 Jul 2025 16:16:54 +0200 Subject: [PATCH 08/10] Updated readme --- keyboards/5x6_split/rev1/readme.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/keyboards/5x6_split/rev1/readme.md b/keyboards/5x6_split/rev1/readme.md index e9bcc94cac2..09e9df16d2a 100644 --- a/keyboards/5x6_split/rev1/readme.md +++ b/keyboards/5x6_split/rev1/readme.md @@ -4,7 +4,9 @@ **This is the first revision of the 5x6_split keyboard.** -The 5x6_split is designed to be easily accessible, with openly and freely available hardware and firmware. It features a split layout to minimize the PCB footprint, reducing manufacturing costs. +The 5x6_split is designed to be easily accessible, with openly and freely available hardware and firmware. It features a split layout to minimize the PCB footprint, reducing manufacturing costs. Like the Ergodox, it allows you to keep your hands at shoulder width for a more natural typing posture, but without a thumb cluster, making it a better option for users who experience discomfort or limitations in their thumbs. + +The keyboard is also designed with ergonomics in mind. Its low profile, measuring just 19.4 mm from the table to the top of the keycaps (including rubber feet), helps reduce wrist strain during extended use. In the repository linked below (see the Hardware Availability section), you will find KiCad schematics, PCB designs, and 3D models for a printable chassis. From 1bddee1d97392cf6654e8fde687547139b358228 Mon Sep 17 00:00:00 2001 From: wholteza Date: Sun, 20 Jul 2025 17:20:56 +0200 Subject: [PATCH 09/10] Renamed layers --- keyboards/5x6_split/rev1/keymaps/default/keymap.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/keyboards/5x6_split/rev1/keymaps/default/keymap.c b/keyboards/5x6_split/rev1/keymaps/default/keymap.c index 1b56c3434c1..d8b211661cc 100644 --- a/keyboards/5x6_split/rev1/keymaps/default/keymap.c +++ b/keyboards/5x6_split/rev1/keymaps/default/keymap.c @@ -17,8 +17,8 @@ enum layer_names { _BASE, - _NAV, - _SYM + _LOWER, + _RAISE }; const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { @@ -29,14 +29,14 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT , MO(3), KC_LCTL, KC_LALT, KC_LGUI, MO(1), KC_SPC, KC_SPC, MO(2), KC_LEFT, KC_DOWN, KC_UP, KC_RGHT ), - [_NAV] = LAYOUT( + [_LOWER] = LAYOUT( KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, KC_GRV, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_BSPC, KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS, KC_TRNS, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_NUHS, KC_NUBS, KC_PGUP, KC_PGDN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY ), - [_SYM] = LAYOUT( + [_RAISE] = LAYOUT( KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC, KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, From 6cea4dfbe910bbd306468d1c2122e179a0ba6ab6 Mon Sep 17 00:00:00 2001 From: wholteza Date: Tue, 22 Jul 2025 08:13:35 +0200 Subject: [PATCH 10/10] Removed value declared as default and rehost image on imgur --- keyboards/5x6_split/rev1/keyboard.json | 1 - keyboards/5x6_split/rev1/readme.md | 2 +- 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/keyboards/5x6_split/rev1/keyboard.json b/keyboards/5x6_split/rev1/keyboard.json index 849baeef9b8..72eade4ed4f 100644 --- a/keyboards/5x6_split/rev1/keyboard.json +++ b/keyboards/5x6_split/rev1/keyboard.json @@ -28,7 +28,6 @@ "driver": "vendor" }, "transport": { - "protocol": "serial", "watchdog": true, "watchdog_timeout": 3000 }, diff --git a/keyboards/5x6_split/rev1/readme.md b/keyboards/5x6_split/rev1/readme.md index 09e9df16d2a..aea4ad27c82 100644 --- a/keyboards/5x6_split/rev1/readme.md +++ b/keyboards/5x6_split/rev1/readme.md @@ -1,6 +1,6 @@ # 5x6_split revision 1 -![5x6_split-rev1](https://git.zacke.dev/wholteza/5x6-split-kb/raw/branch/main/rev1/images/assembled.jpeg) +![5x6_split-rev1](https://i.imgur.com/FJ3kro3.jpeg) **This is the first revision of the 5x6_split keyboard.**