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

Added my prototype keyboard K_Pro v1 TKL #23797

Open
wants to merge 10 commits into
base: master
Choose a base branch
from
20 changes: 20 additions & 0 deletions keyboards/k_pro_v1_tkl/config.h
waffle87 marked this conversation as resolved.
Show resolved Hide resolved
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
// Copyright 2024 ksmosna (@ksmosna)
// SPDX-License-Identifier: GPL-2.0-or-later

#pragma once

/*
* Feature disable options
* These options are also useful to firmware size reduction.
*/

/* disable debug print */
//#define NO_DEBUG

/* disable print */
//#define NO_PRINT

/* disable action features */
//#define NO_ACTION_LAYER
//#define NO_ACTION_TAPPING
//#define NO_ACTION_ONESHOT
125 changes: 125 additions & 0 deletions keyboards/k_pro_v1_tkl/info.json
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please rename this file to keyboard.json.

Original file line number Diff line number Diff line change
@@ -0,0 +1,125 @@
{
"manufacturer": "ksmosna",
"keyboard_name": "k_pro_v1_tkl",
"maintainer": "ksmosna",
"bootloader": "stm32-dfu",
"diode_direction": "COL2ROW",
"features": {
"bootmagic": true,
"command": false,
"console": false,
"extrakey": true,
"mousekey": true,
"nkro": true
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
"nkro": true
"nkro": true,
"rgb_matrix": true,
"encoder": true,
"oled": true

},
"matrix_pins": {
"cols": ["PA10", "PA9", "PA8", "PC9", "PC8", "PC7", "PC6", "PB15", "PB14", "PB13", "PB12", "PB10", "PB2", "PB1", "PB0", "PC5", "PC4", "PA7"],
"rows": ["PB5", "PB4", "PB3", "PD2", "PC12", "PC11"]
waffle87 marked this conversation as resolved.
Show resolved Hide resolved
},
"processor": "STM32F411",
"url": "",
"usb": {
"device_version": "1.0.0",
"pid": "0x0000",
"vid": "0xFEED"
},
"layouts": {
"LAYOUT_tkl_ansi": {
"layout": [
{"matrix": [0, 17], "x": 0, "y": 0},
{"matrix": [0, 0], "x": 1.25, "y": 0},
{"matrix": [0, 2], "x": 3.25, "y": 0},
{"matrix": [0, 3], "x": 4.25, "y": 0},
{"matrix": [0, 4], "x": 5.25, "y": 0},
{"matrix": [0, 5], "x": 6.25, "y": 0},
{"matrix": [0, 6], "x": 7.75, "y": 0},
{"matrix": [0, 7], "x": 8.75, "y": 0},
{"matrix": [0, 8], "x": 9.75, "y": 0},
{"matrix": [0, 9], "x": 10.75, "y": 0},
{"matrix": [0, 11], "x": 12.25, "y": 0},
{"matrix": [0, 12], "x": 13.25, "y": 0},
{"matrix": [0, 13], "x": 14.25, "y": 0},
{"matrix": [0, 14], "x": 15.25, "y": 0},
{"matrix": [1, 17], "x": 0, "y": 1.25},
{"matrix": [1, 0], "x": 1.25, "y": 1.25},
{"matrix": [1, 1], "x": 2.25, "y": 1.25},
{"matrix": [1, 2], "x": 3.25, "y": 1.25},
{"matrix": [1, 3], "x": 4.25, "y": 1.25},
{"matrix": [1, 4], "x": 5.25, "y": 1.25},
{"matrix": [1, 5], "x": 6.25, "y": 1.25},
{"matrix": [1, 6], "x": 7.25, "y": 1.25},
{"matrix": [1, 7], "x": 8.25, "y": 1.25},
{"matrix": [1, 8], "x": 9.25, "y": 1.25},
{"matrix": [1, 9], "x": 10.25, "y": 1.25},
{"matrix": [1, 10], "x": 11.25, "y": 1.25},
{"matrix": [1, 11], "x": 12.25, "y": 1.25},
{"matrix": [1, 12], "x": 13.25, "y": 1.25},
{"matrix": [1, 13], "x": 15.25, "y": 1.25, "w": 2.0},
{"matrix": [1, 14], "x": 16.25, "y": 1.25},
{"matrix": [1, 15], "x": 17.25, "y": 1.25},
{"matrix": [1, 16], "x": 17.25, "y": 1.25},
{"matrix": [2, 17], "x": 0, "y": 2.25},
{"matrix": [2, 0], "x": 1.25, "y": 2.25, "w": 1.5},
{"matrix": [2, 1], "x": 2.75, "y": 2.25},
{"matrix": [2, 2], "x": 3.75, "y": 2.25},
{"matrix": [2, 3], "x": 4.75, "y": 2.25},
{"matrix": [2, 4], "x": 5.75, "y": 2.25},
{"matrix": [2, 5], "x": 6.75, "y": 2.25},
{"matrix": [2, 6], "x": 7.75, "y": 2.25},
{"matrix": [2, 7], "x": 8.75, "y": 2.25},
{"matrix": [2, 8], "x": 9.75, "y": 2.25},
{"matrix": [2, 9], "x": 10.75, "y": 2.25},
{"matrix": [2, 10], "x": 11.75, "y": 2.25},
{"matrix": [2, 11], "x": 12.75, "y": 2.25},
{"matrix": [2, 12], "x": 13.75, "y": 2.25},
{"matrix": [2, 13], "x": 14.75, "y": 2.25, "w": 1.5},
{"matrix": [2, 14], "x": 16.5, "y": 2.25},
{"matrix": [2, 15], "x": 16.25, "y": 2.25},
{"matrix": [2, 16], "x": 17.25, "y": 2.25},
{"matrix": [3, 0], "x": 0, "y": 3.25},
{"matrix": [3, 1], "x": 1.25, "y": 3.25, "w": 1.75},
{"matrix": [3, 2], "x": 3, "y": 3.25},
{"matrix": [3, 3], "x": 4, "y": 3.25},
{"matrix": [3, 4], "x": 5, "y": 3.25},
{"matrix": [3, 5], "x": 6, "y": 3.25},
{"matrix": [3, 6], "x": 7, "y": 3.25},
{"matrix": [3, 7], "x": 8, "y": 3.25},
{"matrix": [3, 8], "x": 9, "y": 3.25},
{"matrix": [3, 9], "x": 10, "y": 3.25},
{"matrix": [3, 10], "x": 11, "y": 3.25},
{"matrix": [3, 11], "x": 12, "y": 3.25},
{"matrix": [3, 12], "x": 13, "y": 3.25},
{"matrix": [3, 13], "x": 14, "y": 3.25, "w": 2.25},
{"matrix": [3, 14], "x": 16.5, "y": 3.25},
{"matrix": [3, 15], "x": 17.5, "y": 3.25},
{"matrix": [3, 16], "x": 18.5, "y": 3.25},
{"matrix": [4, 17], "x": 0, "y": 4.25},
{"matrix": [4, 0], "x": 1.25, "y": 4.25, "w": 2.25},
{"matrix": [4, 2], "x": 3.5, "y": 4.25},
{"matrix": [4, 3], "x": 4.5, "y": 4.25},
{"matrix": [4, 4], "x": 5.5, "y": 4.25},
{"matrix": [4, 5], "x": 6.5, "y": 4.25},
{"matrix": [4, 6], "x": 7.5, "y": 4.25},
{"matrix": [4, 7], "x": 8.5, "y": 4.25},
{"matrix": [4, 8], "x": 9.5, "y": 4.25},
{"matrix": [4, 9], "x": 10.5, "y": 4.25},
{"matrix": [4, 10], "x": 11.5, "y": 4.25},
{"matrix": [4, 11], "x": 12.5, "y": 4.25},
{"matrix": [4, 13], "x": 13.5, "y": 4.25, "w": 2.75},
{"matrix": [4, 15], "x": 17.5, "y": 4.25},
{"matrix": [5, 17], "x": 0, "y": 5.25},
{"matrix": [5, 0], "x": 1.25, "y": 5.25, "w": 1.25},
{"matrix": [5, 1], "x": 2.5, "y": 5.25, "w": 1.25},
{"matrix": [5, 2], "x": 3.75, "y": 5.25, "w": 1.25},
{"matrix": [5, 3], "x": 5, "y": 5.25, "w": 6.25},
{"matrix": [5, 10], "x": 11.25, "y": 5.25, "w": 1.25},
{"matrix": [5, 11], "x": 12.5, "y": 5.25, "w": 1.25},
{"matrix": [5, 12], "x": 13.75, "y": 5.25, "w": 1.25},
{"matrix": [5, 13], "x": 15, "y": 5.25, "w": 1.25},
{"matrix": [5, 15], "x": 16.5, "y": 5.25},
{"matrix": [5, 16], "x": 17.5, "y": 5.25},
{"matrix": [5, 17], "x": 18.5, "y": 5.25}
]
}
}
}
32 changes: 32 additions & 0 deletions keyboards/k_pro_v1_tkl/keymaps/default/keymap.c
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
// Copyright 2023 QMK
// SPDX-License-Identifier: GPL-2.0-or-later

#include QMK_KEYBOARD_H

const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/*
* ┌───┐ ┌───┐ ┌───┬───┬───┬───┐ ┌───┬───┬───┬───┐ ┌───┬───┬───┬───┐
* │Kno│ │Esc│ │F1 │F2 │F3 │F4 │ │F5 │F6 │F7 │F8 │ │F9 │F10│F11│F12│
* └───┘ └───┘ └───┴───┴───┴───┘ └───┴───┴───┴───┘ └───┴───┴───┴───┘
* ┌───┐ ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┐ ┌───┬───┬───┐
* │M1 │ │ ` │ 1 │ 2 │ 3 │ 4 │ 5 │ 6 │ 7 │ 8 │ 9 │ 0 │ - │ = │ Backsp│ │PSc│Scr│Pse│
* ├───┤ ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┤ ├───┼───┼───┤
* │M2 │ │ Tab │ Q │ W │ E │ R │ T │ Y │ U │ I │ O │ P │ [ │ ] │ \ │ │Ins│Hom│PgU│
* ├───┤ ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤ ├───┼───┼───┤
* │M3 │ │ Caps │ A │ S │ D │ F │ G │ H │ J │ K │ L │ ; │ ' │ Enter │ │Del│End│PgD│
* ├───┤ ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────────┤ └───┴───┴───┘
* │M4 │ │ Shift │ Z │ X │ C │ V │ B │ N │ M │ , │ . │ / │ Shift │ │ ↑ │
* ├───┤ ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬────┬────┤ ┌───┼───┼───┐
* │M5 │ │Ctrl│GUI │Alt │ │ Alt│ GUI│Menu│Ctrl│ │ ← │ ↓ │ → │
* └───┘ └────┴────┴────┴────────────────────────┴────┴────┴────┴────┘ └───┴───┴───┘
*/
[0] = LAYOUT_tkl_ansi(
KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_PSCR, KC_SCRL, KC_PAUS,

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_EQL, KC_BSPC, KC_INS, KC_HOME, KC_PGUP,
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_RBRC, KC_BSLS, KC_DEL, KC_END, KC_PGDN,
KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP,
KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_APP, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT
)
};
27 changes: 27 additions & 0 deletions keyboards/k_pro_v1_tkl/readme.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
# k_pro_v1_tkl

![k_pro_v1_tkl](imgur.com image replace me!)

*A short description of the keyboard/project*

* Keyboard Maintainer: [ksmosna](https://github.com/ksmosna)
* Hardware Supported: *The PCBs, controllers supported*
* Hardware Availability: *Links to where you can find this hardware*
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please fill these fields out.


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

make k_pro_v1_tkl:default

Flashing example for this keyboard:

make k_pro_v1_tkl: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
1 change: 1 addition & 0 deletions keyboards/k_pro_v1_tkl/rules.mk
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
# This file intentionally left blank
Loading