Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Adding kolhoz keyboard #24574

Open
wants to merge 18 commits into
base: master
Choose a base branch
from
12 changes: 12 additions & 0 deletions keyboards/handwired/kolhoz/config.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
// Copyright 2023 QMK
// SPDX-License-Identifier: GPL-2.0-or-later

#pragma once

#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET
#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 1000U

#define SERIAL_USART_TX_PIN GP0

vf1 marked this conversation as resolved.
Show resolved Hide resolved
#define TAPPING_TOGGLE 2

vf1 marked this conversation as resolved.
Show resolved Hide resolved
6 changes: 6 additions & 0 deletions keyboards/handwired/kolhoz/halconf.h
vf1 marked this conversation as resolved.
Show resolved Hide resolved
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
// Copyright 2023 QMK
// SPDX-License-Identifier: GPL-2.0-or-later

#pragma once

#include_next <halconf.h>
108 changes: 108 additions & 0 deletions keyboards/handwired/kolhoz/keyboard.json
vf1 marked this conversation as resolved.
Show resolved Hide resolved
Original file line number Diff line number Diff line change
@@ -0,0 +1,108 @@
{
"manufacturer": "Vitali Fomine",
"keyboard_name": "handwired/kolhoz",
"maintainer": "vf1",
"development_board": "promicro_rp2040",
"diode_direction": "COL2ROW",
vf1 marked this conversation as resolved.
Show resolved Hide resolved
"features": {
"bootmagic": true,
"command": false,
"console": false,
"extrakey": true,
"mousekey": true,
"nkro": true
},
"matrix_pins": {
"direct":[
[ "GP14", "GP2", "GP6", "GP10", "GP27", "GP20", null, null],
[ "GP15", "GP3", "GP7", "GP11", "GP28", "GP21", null, null],
[ null, "GP4", "GP8", "GP12", "GP22", "GP18", null, null],
[ null, "GP5", "GP9", "GP13", "GP26", "GP19", "GP16", "GP17"]
]
},
"url": "",
"usb": {
"device_version": "1.0.0",
"pid": "0x0000",
"vid": "0xFEED"
},
"split": {
"enabled": true,
"handedness": {
"pin": "GP23"
}
vf1 marked this conversation as resolved.
Show resolved Hide resolved
"matrix_pins": {
"right": {
"direct": [
[ "GP27", "GP20", "GP16", "GP10", "GP6", "GP2", null, null],
[ "GP28", "GP21", "GP17", "GP11", "GP7", "GP3", null, null],
[ null, "GP22", "GP18", "GP12", "GP8", "GP4", null, null],
[ null, "GP26", "GP19", "GP13", "GP9", "GP5", "GP14", "GP15"]
]
}
}
},
vf1 marked this conversation as resolved.
Show resolved Hide resolved
"layouts": {
"LAYOUT_split_2_3x5_4_3": {
"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": [4, 5], "x":12, "y":0},
{"matrix": [4, 4], "x":13, "y":0},
{"matrix": [4, 3], "x":14, "y":0},
{"matrix": [4, 2], "x":15, "y":0},
{"matrix": [4, 1], "x":16, "y":0},
{"matrix": [4, 0], "x":17, "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": [5, 5], "x":12, "y":1},
{"matrix": [5, 4], "x":13, "y":1},
{"matrix": [5, 3], "x":14, "y":1},
{"matrix": [5, 2], "x":15, "y":1},
{"matrix": [5, 1], "x":16, "y":1},
{"matrix": [5, 0], "x":17, "y":1},

{"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": [6, 5], "x":12, "y":2},
{"matrix": [6, 4], "x":13, "y":2},
{"matrix": [6, 3], "x":14, "y":2},
{"matrix": [6, 2], "x":15, "y":2},
{"matrix": [6, 1], "x":16, "y":2},

{"matrix": [3, 1], "x":1, "y":3.25},
{"matrix": [3, 2], "x":2, "y":3.25},
{"matrix": [3, 3], "x":3, "y":3.25},
{"matrix": [3, 4], "x":4, "y":3.25},

{"matrix": [3, 5], "x":5.25, "y":3.5},
{"matrix": [3, 6], "x":6.25, "y":3.75},
{"matrix": [3, 7], "x":7.25, "y":4},

{"matrix": [7, 7], "x":13, "y":3.25},
{"matrix": [7, 6], "x":14, "y":3.25},
{"matrix": [7, 5], "x":15, "y":3.25},
{"matrix": [7, 4], "x":16, "y":3.25},

{"matrix": [7, 3], "x":9.75, "y":4},
{"matrix": [7, 2], "x":10.75, "y":3.75},
{"matrix": [7, 1], "x":11.75, "y":3.5}
]
}
}
}
35 changes: 35 additions & 0 deletions keyboards/handwired/kolhoz/keymaps/default/keymap.c
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
// Copyright 2023 QMK
// SPDX-License-Identifier: GPL-2.0-or-later

#include QMK_KEYBOARD_H

#define LSYM 1
#define LNUM 2
#define LNAV 3
vf1 marked this conversation as resolved.
Show resolved Hide resolved

const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[0] = LAYOUT_split_2_3x5_4_3(
vf1 marked this conversation as resolved.
Show resolved Hide resolved
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_DEL,
KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_ENTER,
KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMMA, KC_DOT, KC_QUOTE,
OSM(MOD_LSFT), OSM(MOD_LCTL), OSM(MOD_LGUI), OSM(MOD_LALT), OSL(LNUM), LT(LSYM,KC_SPC), TT(LNAV), KC_NO, LT(LSYM,KC_SPC), KC_NO, OSM(MOD_RALT), OSM(MOD_RGUI), OSM(MOD_RCTL), OSM(MOD_RSFT)
),
[LSYM] = LAYOUT_split_2_3x5_4_3(
KC_NO, KC_TILDE, KC_GRV, KC_NO, KC_NO, KC_NO, KC_PEQL, KC_LBRC, KC_RBRC, KC_QUES, KC_SLASH, KC_TRNS,
KC_NO, KC_AT, KC_HASH, KC_DOLLAR, KC_PERCENT, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_COLON, KC_BSPC,
KC_EXCLAIM, KC_UNDERSCORE, KC_MINUS, KC_PLUS, KC_PIPE, KC_LCBR, KC_RCBR, KC_LT, KC_GT, KC_DQUO,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, TO(0), KC_NO, KC_NO, KC_NO, KC_NO, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
),
[LNUM] = LAYOUT_split_2_3x5_4_3(
KC_NO, KC_F1, KC_F2, KC_F3, KC_F4, KC_NO, KC_0, KC_1, KC_2, KC_3, KC_NO, KC_TRNS,
KC_NO, KC_F5, KC_F6, KC_F7, KC_F8, KC_NO, KC_NO, KC_4, KC_5, KC_6, KC_NO, KC_BSPC,
KC_F9, KC_F10, KC_F11, KC_F12, KC_NO, KC_NO, KC_7, KC_8, KC_9, KC_NO,
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, TO(0), KC_NO, KC_NO, KC_NO, KC_NO, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
),
[LNAV] = LAYOUT_split_2_3x5_4_3(
KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_HOME, KC_PGDN, KC_PGUP, KC_END, KC_NO, KC_TRNS,
KC_NO, KC_NO, MS_BTN2, MS_BTN3, MS_BTN1, KC_NO, KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT, KC_NO, KC_BSPC,
KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, RCTL(KC_LEFT), KC_NO, KC_NO, RCTL(KC_RIGHT), KC_NO,
KC_NO, KC_NO, KC_NO, KC_NO, KC_TRNS, TO(0), TO(0), KC_NO, KC_NO, KC_NO, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
)
};
10 changes: 10 additions & 0 deletions keyboards/handwired/kolhoz/mcuconf.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
// Copyright 2023 QMK
// SPDX-License-Identifier: GPL-2.0-or-later

#pragma once

#include_next <mcuconf.h>

#undef RP_SIO_USE_UART0
#define RP_SIO_USE_UART0 TRUE
vf1 marked this conversation as resolved.
Show resolved Hide resolved

23 changes: 23 additions & 0 deletions keyboards/handwired/kolhoz/readme.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
# handwired/kolhoz

![handwired/kolhoz](https://github.com/vf1/kolhoz_kbd/blob/main/IMG20241107173135.jpg)
vf1 marked this conversation as resolved.
Show resolved Hide resolved
vf1 marked this conversation as resolved.
Show resolved Hide resolved

The layout is inspired by the [corne](https://github.com/foostan/crkbd), but has four additional vertical keys.

* Keyboard Maintainer: [Vitali Fomine](https://github.com/vf1)
* Hardware Supported: yd-2040

Make example for this keyboard (after setting up your build environment):

qmk clean -a && qmk compile -kb handwired/kolhoz -km default

Flashing example for this keyboard:

qmk flash -kb handwired/kolhoz -km default
vf1 marked this conversation as resolved.
Show resolved Hide resolved

## Bootloader

Enter the bootloader:

* **Physical reset button**: Briefly press the reset button on the case twice

1 change: 1 addition & 0 deletions keyboards/handwired/kolhoz/rules.mk
vf1 marked this conversation as resolved.
Show resolved Hide resolved
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
SERIAL_DRIVER = vendor