mirror of
https://github.com/qmk/qmk_firmware.git
synced 2024-11-22 03:19:24 +00:00
Merge branch 'master' into nuphy-air75
This commit is contained in:
commit
c56e210d26
5
.gitignore
vendored
5
.gitignore
vendored
@ -18,6 +18,11 @@
|
||||
*.lst
|
||||
*.map
|
||||
*.o
|
||||
*.a
|
||||
*.so
|
||||
*.dylib
|
||||
*.dll
|
||||
*.la
|
||||
*.stackdump
|
||||
*.sym
|
||||
|
||||
|
258
keyboards/1upkeyboards/pi60_rgb_v2/info.json
Normal file
258
keyboards/1upkeyboards/pi60_rgb_v2/info.json
Normal file
@ -0,0 +1,258 @@
|
||||
{
|
||||
"manufacturer": "1upkeyboards",
|
||||
"keyboard_name": "pi60_rgb_v2",
|
||||
"maintainer": "ziptyze",
|
||||
"processor": "RP2040",
|
||||
"bootloader": "rp2040",
|
||||
"usb": {
|
||||
"device_version": "1.0.0",
|
||||
"pid": "0x5612",
|
||||
"vid": "0x6F75"
|
||||
},
|
||||
"diode_direction": "COL2ROW",
|
||||
"dynamic_keymap": {
|
||||
"layer_count": 10
|
||||
},
|
||||
"features": {
|
||||
"bootmagic": true,
|
||||
"extrakey": true,
|
||||
"mousekey": true,
|
||||
"rgb_matrix": true,
|
||||
},
|
||||
"qmk": {
|
||||
"locking": {
|
||||
"enabled": true,
|
||||
"resync": true
|
||||
}
|
||||
},
|
||||
"matrix_pins": {
|
||||
"cols": ["GP25", "GP1", "GP15", "GP4", "GP5", "GP14", "GP6", "GP7", "GP8", "GP13", "GP12", "GP9", "GP11", "GP10"],
|
||||
"rows": ["GP29", "GP27", "GP26", "GP17", "GP16"]
|
||||
},
|
||||
"rgb_matrix": {
|
||||
"max_brightness": 125,
|
||||
"sleep": true,
|
||||
"animations": {
|
||||
"alphas_mods": true,
|
||||
"band_pinwheel_sat": true,
|
||||
"band_pinwheel_val": true,
|
||||
"band_sat": true,
|
||||
"band_spiral_sat": true,
|
||||
"band_spiral_val": true,
|
||||
"band_val": true,
|
||||
"breathing": true,
|
||||
"cycle_all": true,
|
||||
"cycle_left_right": true,
|
||||
"cycle_out_in": true,
|
||||
"cycle_out_in_dual": true,
|
||||
"cycle_pinwheel": true,
|
||||
"cycle_spiral": true,
|
||||
"cycle_up_down": true,
|
||||
"digital_rain": true,
|
||||
"dual_beacon": true,
|
||||
"gradient_left_right": true,
|
||||
"gradient_up_down": true,
|
||||
"hue_breathing": true,
|
||||
"hue_pendulum": true,
|
||||
"hue_wave": true,
|
||||
"jellybean_raindrops": true,
|
||||
"multisplash": true,
|
||||
"pixel_flow": true,
|
||||
"pixel_rain": true,
|
||||
"rainbow_beacon": true,
|
||||
"rainbow_moving_chevron": true,
|
||||
"rainbow_pinwheels": true,
|
||||
"raindrops": true,
|
||||
"solid_multisplash": true,
|
||||
"solid_reactive": true,
|
||||
"solid_reactive_cross": true,
|
||||
"solid_reactive_multicross": true,
|
||||
"solid_reactive_multinexus": true,
|
||||
"solid_reactive_multiwide": true,
|
||||
"solid_reactive_nexus": true,
|
||||
"solid_reactive_simple": true,
|
||||
"solid_reactive_wide": true,
|
||||
"solid_splash": true,
|
||||
"splash": true,
|
||||
"typing_heatmap": true
|
||||
},
|
||||
"driver": "ws2812",
|
||||
"layout": [
|
||||
{"x": 4, "y": 5, "flags": 2},
|
||||
{"matrix": [0, 0], "x": 8, "y": 7, "flags": 1},
|
||||
{"matrix": [0, 1], "x": 23, "y": 7, "flags": 4},
|
||||
{"x": 30, "y": 7, "flags": 2},
|
||||
{"matrix": [0, 2], "x": 37, "y": 7, "flags": 4},
|
||||
{"x": 45, "y": 7, "flags": 2},
|
||||
{"matrix": [0, 3], "x": 52, "y": 7, "flags": 4},
|
||||
{"x": 60, "y": 7, "flags": 2},
|
||||
{"matrix": [0, 4], "x": 67, "y": 7, "flags": 4},
|
||||
{"x": 75, "y": 7, "flags": 2},
|
||||
{"matrix": [0, 5], "x": 82, "y": 7, "flags": 4},
|
||||
{"x": 90, "y": 7, "flags": 2},
|
||||
{"matrix": [0, 6], "x": 97, "y": 7, "flags": 4},
|
||||
{"x": 105, "y": 7, "flags": 2},
|
||||
{"matrix": [0, 7], "x": 112, "y": 7, "flags": 4},
|
||||
{"x": 120, "y": 7, "flags": 2},
|
||||
{"matrix": [0, 8], "x": 127, "y": 7, "flags": 4},
|
||||
{"x": 135, "y": 7, "flags": 2},
|
||||
{"matrix": [0, 9], "x": 142, "y": 7, "flags": 4},
|
||||
{"x": 149, "y": 7, "flags": 2},
|
||||
{"matrix": [0, 10], "x": 157, "y": 7, "flags": 4},
|
||||
{"x": 164, "y": 7, "flags": 2},
|
||||
{"matrix": [0, 11], "x": 172, "y": 7, "flags": 4},
|
||||
{"x": 179, "y": 7, "flags": 2},
|
||||
{"matrix": [0, 12], "x": 187, "y": 7, "flags": 4},
|
||||
{"x": 198, "y": 7, "flags": 2},
|
||||
{"matrix": [0, 13], "x": 209, "y": 7, "flags": 1},
|
||||
{"x": 220, "y": 7, "flags": 2},
|
||||
{"x": 220, "y": 19, "flags": 2},
|
||||
{"matrix": [1, 13], "x": 213, "y": 19, "flags": 1},
|
||||
{"matrix": [1, 12], "x": 194, "y": 19, "flags": 4},
|
||||
{"matrix": [1, 11], "x": 179, "y": 19, "flags": 4},
|
||||
{"matrix": [1, 10], "x": 164, "y": 19, "flags": 4},
|
||||
{"matrix": [1, 9], "x": 149, "y": 19, "flags": 4},
|
||||
{"matrix": [1, 8], "x": 134, "y": 19, "flags": 4},
|
||||
{"matrix": [1, 7], "x": 119, "y": 19, "flags": 4},
|
||||
{"matrix": [1, 6], "x": 105, "y": 19, "flags": 4},
|
||||
{"matrix": [1, 5], "x": 90, "y": 19, "flags": 4},
|
||||
{"matrix": [1, 4], "x": 75, "y": 19, "flags": 4},
|
||||
{"matrix": [1, 3], "x": 60, "y": 19, "flags": 4},
|
||||
{"matrix": [1, 2], "x": 45, "y": 19, "flags": 4},
|
||||
{"matrix": [1, 1], "x": 30, "y": 19, "flags": 4},
|
||||
{"matrix": [1, 0], "x": 11, "y": 19, "flags": 1},
|
||||
{"x": 4, "y": 19, "flags": 2},
|
||||
{"x": 4, "y": 32, "flags": 2},
|
||||
{"matrix": [2, 0], "x": 13, "y": 32, "flags": 1},
|
||||
{"matrix": [2, 1], "x": 34, "y": 32, "flags": 4},
|
||||
{"matrix": [2, 2], "x": 49, "y": 32, "flags": 4},
|
||||
{"matrix": [2, 3], "x": 64, "y": 32, "flags": 4},
|
||||
{"matrix": [2, 4], "x": 79, "y": 32, "flags": 4},
|
||||
{"matrix": [2, 5], "x": 94, "y": 32, "flags": 4},
|
||||
{"matrix": [2, 6], "x": 108, "y": 32, "flags": 4},
|
||||
{"matrix": [2, 7], "x": 123, "y": 32, "flags": 4},
|
||||
{"matrix": [2, 8], "x": 138, "y": 32, "flags": 4},
|
||||
{"matrix": [2, 9], "x": 153, "y": 32, "flags": 4},
|
||||
{"matrix": [2, 10], "x": 168, "y": 32, "flags": 4},
|
||||
{"matrix": [2, 11], "x": 183, "y": 32, "flags": 4},
|
||||
{"matrix": [2, 13], "x": 207, "y": 32, "flags": 1},
|
||||
{"x": 220, "y": 32, "flags": 2},
|
||||
{"x": 220, "y": 45, "flags": 2},
|
||||
{"matrix": [3, 13], "x": 203, "y": 45, "flags": 1},
|
||||
{"matrix": [3, 10], "x": 175, "y": 45, "flags": 4},
|
||||
{"matrix": [3, 9], "x": 161, "y": 45, "flags": 4},
|
||||
{"matrix": [3, 8], "x": 146, "y": 45, "flags": 4},
|
||||
{"matrix": [3, 7], "x": 135, "y": 45, "flags": 4},
|
||||
{"matrix": [3, 6], "x": 116, "y": 45, "flags": 4},
|
||||
{"matrix": [3, 5], "x": 101, "y": 45, "flags": 4},
|
||||
{"matrix": [3, 4], "x": 86, "y": 45, "flags": 4},
|
||||
{"matrix": [3, 3], "x": 71, "y": 45, "flags": 4},
|
||||
{"matrix": [3, 2], "x": 56, "y": 45, "flags": 4},
|
||||
{"matrix": [3, 1], "x": 41, "y": 45, "flags": 4},
|
||||
{"matrix": [3, 0], "x": 17, "y": 45, "flags": 1},
|
||||
{"x": 4, "y": 45, "flags": 2},
|
||||
{"x": 4, "y": 57, "flags": 2},
|
||||
{"matrix": [4, 0], "x": 9, "y": 57, "flags": 1},
|
||||
{"x": 15, "y": 57, "flags": 2},
|
||||
{"x": 23, "y": 57, "flags": 2},
|
||||
{"matrix": [4, 1], "x": 28, "y": 57, "flags": 1},
|
||||
{"x": 34, "y": 57, "flags": 2},
|
||||
{"x": 41, "y": 57, "flags": 2},
|
||||
{"matrix": [4, 2], "x": 47, "y": 57, "flags": 1},
|
||||
{"x": 53, "y": 57, "flags": 2},
|
||||
{"x": 67, "y": 57, "flags": 2},
|
||||
{"x": 71, "y": 57, "flags": 1},
|
||||
{"x": 81, "y": 57, "flags": 2},
|
||||
{"x": 95, "y": 57, "flags": 2},
|
||||
{"matrix": [4, 5], "x": 103, "y": 57, "flags": 1},
|
||||
{"x": 110, "y": 57, "flags": 2},
|
||||
{"x": 125, "y": 57, "flags": 2},
|
||||
{"x": 134, "y": 57, "flags": 1},
|
||||
{"x": 139, "y": 57, "flags": 2},
|
||||
{"x": 153, "y": 57, "flags": 2},
|
||||
{"matrix": [4, 9], "x": 159, "y": 57, "flags": 1},
|
||||
{"x": 165, "y": 57, "flags": 2},
|
||||
{"x": 172, "y": 57, "flags": 2},
|
||||
{"matrix": [4, 10], "x": 177, "y": 57, "flags": 1},
|
||||
{"x": 183, "y": 57, "flags": 2},
|
||||
{"x": 190, "y": 57, "flags": 2},
|
||||
{"matrix": [4, 12], "x": 196, "y": 57, "flags": 1},
|
||||
{"x": 202, "y": 57, "flags": 2},
|
||||
{"x": 209, "y": 57, "flags": 2},
|
||||
{"matrix": [4, 13], "x": 215, "y": 57, "flags": 1},
|
||||
{"x": 220, "y": 57, "flags": 2}
|
||||
]
|
||||
},
|
||||
"ws2812": {
|
||||
"driver": "vendor",
|
||||
"pin": "GP28"
|
||||
},
|
||||
"community_layouts" : ["60_ansi"],
|
||||
"layouts": {
|
||||
"LAYOUT_60_ansi": {
|
||||
"layout": [
|
||||
{"label": "Esc", "matrix": [0, 0], "x": 0, "y": 0},
|
||||
{"label": "1", "matrix": [0, 1], "x": 1, "y": 0},
|
||||
{"label": "2", "matrix": [0, 2], "x": 2, "y": 0},
|
||||
{"label": "3", "matrix": [0, 3], "x": 3, "y": 0},
|
||||
{"label": "4", "matrix": [0, 4], "x": 4, "y": 0},
|
||||
{"label": "5", "matrix": [0, 5], "x": 5, "y": 0},
|
||||
{"label": "6", "matrix": [0, 6], "x": 6, "y": 0},
|
||||
{"label": "7", "matrix": [0, 7], "x": 7, "y": 0},
|
||||
{"label": "8", "matrix": [0, 8], "x": 8, "y": 0},
|
||||
{"label": "9", "matrix": [0, 9], "x": 9, "y": 0},
|
||||
{"label": "0", "matrix": [0, 10], "x": 10, "y": 0},
|
||||
{"label": "-", "matrix": [0, 11], "x": 11, "y": 0},
|
||||
{"label": "=", "matrix": [0, 12], "x": 12, "y": 0},
|
||||
{"label": "BS", "matrix": [0, 13], "w": 2, "x": 13, "y": 0},
|
||||
{"label": "Tab", "matrix": [1, 0], "w": 1.5, "x": 0, "y": 1},
|
||||
{"label": "Q", "matrix": [1, 1], "x": 1.5, "y": 1},
|
||||
{"label": "W", "matrix": [1, 2], "x": 2.5, "y": 1},
|
||||
{"label": "E", "matrix": [1, 3], "x": 3.5, "y": 1},
|
||||
{"label": "R", "matrix": [1, 4], "x": 4.5, "y": 1},
|
||||
{"label": "T", "matrix": [1, 5], "x": 5.5, "y": 1},
|
||||
{"label": "Y", "matrix": [1, 6], "x": 6.5, "y": 1},
|
||||
{"label": "U", "matrix": [1, 7], "x": 7.5, "y": 1},
|
||||
{"label": "I", "matrix": [1, 8], "x": 8.5, "y": 1},
|
||||
{"label": "O", "matrix": [1, 9], "x": 9.5, "y": 1},
|
||||
{"label": "P", "matrix": [1, 10], "x": 10.5, "y": 1},
|
||||
{"label": "[", "matrix": [1, 11], "x": 11.5, "y": 1},
|
||||
{"label": "]", "matrix": [1, 12], "x": 12.5, "y": 1},
|
||||
{"label": "|", "matrix": [1, 13], "w": 1.5, "x": 13.5, "y": 1},
|
||||
{"label": "Caps", "matrix": [2, 0], "w": 1.75, "x": 0, "y": 2},
|
||||
{"label": "A", "matrix": [2, 1], "x": 1.75, "y": 2},
|
||||
{"label": "S", "matrix": [2, 2], "x": 2.75, "y": 2},
|
||||
{"label": "D", "matrix": [2, 3], "x": 3.75, "y": 2},
|
||||
{"label": "F", "matrix": [2, 4], "x": 4.75, "y": 2},
|
||||
{"label": "G", "matrix": [2, 5], "x": 5.75, "y": 2},
|
||||
{"label": "H", "matrix": [2, 6], "x": 6.75, "y": 2},
|
||||
{"label": "J", "matrix": [2, 7], "x": 7.75, "y": 2},
|
||||
{"label": "K", "matrix": [2, 8], "x": 8.75, "y": 2},
|
||||
{"label": "L", "matrix": [2, 9], "x": 9.75, "y": 2},
|
||||
{"label": ";", "matrix": [2, 10], "x": 10.75, "y": 2},
|
||||
{"label": "'", "matrix": [2, 11], "x": 11.75, "y": 2},
|
||||
{"label": "Enter", "matrix": [2, 13], "w": 2.25, "x": 12.75, "y": 2},
|
||||
{"label": "LShift", "matrix": [3, 0], "w": 2.25, "x": 0, "y": 3},
|
||||
{"label": "Z", "matrix": [3, 1], "x": 2.25, "y": 3},
|
||||
{"label": "X", "matrix": [3, 2], "x": 3.25, "y": 3},
|
||||
{"label": "C", "matrix": [3, 3], "x": 4.25, "y": 3},
|
||||
{"label": "V", "matrix": [3, 4], "x": 5.25, "y": 3},
|
||||
{"label": "B", "matrix": [3, 5], "x": 6.25, "y": 3},
|
||||
{"label": "N", "matrix": [3, 6], "x": 7.25, "y": 3},
|
||||
{"label": "M", "matrix": [3, 7], "x": 8.25, "y": 3},
|
||||
{"label": ",", "matrix": [3, 8], "x": 9.25, "y": 3},
|
||||
{"label": ".", "matrix": [3, 9], "x": 10.25, "y": 3},
|
||||
{"label": "/", "matrix": [3, 10], "x": 11.25, "y": 3},
|
||||
{"label": "RShift", "matrix": [3, 13], "w": 2.75, "x": 12.25, "y": 3},
|
||||
{"label": "LCtrl", "matrix": [4, 0], "w": 1.25, "x": 0, "y": 4},
|
||||
{"label": "LGui", "matrix": [4, 1], "w": 1.25, "x": 1.25, "y": 4},
|
||||
{"label": "LAlt", "matrix": [4, 2], "w": 1.25, "x": 2.5, "y": 4},
|
||||
{"label": "Space", "matrix": [4, 5], "w": 6.25, "x": 3.75, "y": 4},
|
||||
{"label": "RAlt", "matrix": [4, 9], "w": 1.25, "x": 10, "y": 4},
|
||||
{"label": "RGui", "matrix": [4, 10], "w": 1.25, "x": 11.25, "y": 4},
|
||||
{"label": "FN", "matrix": [4, 12], "w": 1.25, "x": 12.5, "y": 4},
|
||||
{"label": "RCtrl", "matrix": [4, 13], "w": 1.25, "x": 13.75, "y": 4}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
28
keyboards/1upkeyboards/pi60_rgb_v2/keymaps/default/keymap.c
Normal file
28
keyboards/1upkeyboards/pi60_rgb_v2/keymaps/default/keymap.c
Normal file
@ -0,0 +1,28 @@
|
||||
/* Copyright 2022 ziptyze
|
||||
*
|
||||
* 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 <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include QMK_KEYBOARD_H
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
|
||||
[0] = LAYOUT_60_ansi(
|
||||
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_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_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_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_APP, KC_RCTL
|
||||
)
|
||||
};
|
44
keyboards/1upkeyboards/pi60_rgb_v2/keymaps/via/keymap.c
Normal file
44
keyboards/1upkeyboards/pi60_rgb_v2/keymaps/via/keymap.c
Normal file
@ -0,0 +1,44 @@
|
||||
/* Copyright 2022 ziptyze
|
||||
*
|
||||
* 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 <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include QMK_KEYBOARD_H
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
|
||||
[0] = LAYOUT_60_ansi(
|
||||
KC_ESC, 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_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_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_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(1), KC_RCTL
|
||||
),
|
||||
|
||||
[1] = LAYOUT_60_ansi(
|
||||
KC_GRV, 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_DEL,
|
||||
KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_SCRL, KC_PAUS, KC_TRNS,
|
||||
KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_INS, KC_HOME, KC_PGUP, KC_TRNS,
|
||||
KC_TRNS, KC_VOLU, KC_VOLD, KC_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_END, KC_PGDN, KC_TRNS,
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, MO(2), KC_TRNS, KC_TRNS
|
||||
),
|
||||
|
||||
[2] = LAYOUT_60_ansi(
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||
RGB_TOG, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, RGB_SPI, RGB_M_P, RGB_M_B, RGB_M_R, RGB_M_SW,KC_TRNS, KC_TRNS, KC_TRNS,
|
||||
KC_TRNS, RGB_RMOD,RGB_HUD, RGB_SAD, RGB_VAD, RGB_SPD, RGB_M_SN,RGB_M_K, RGB_M_X, RGB_M_G, KC_TRNS, KC_TRNS,
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
|
||||
)
|
||||
};
|
2
keyboards/1upkeyboards/pi60_rgb_v2/keymaps/via/rules.mk
Normal file
2
keyboards/1upkeyboards/pi60_rgb_v2/keymaps/via/rules.mk
Normal file
@ -0,0 +1,2 @@
|
||||
VIA_ENABLE = yes
|
||||
LTO_ENABLE = yes
|
24
keyboards/1upkeyboards/pi60_rgb_v2/readme.md
Normal file
24
keyboards/1upkeyboards/pi60_rgb_v2/readme.md
Normal file
@ -0,0 +1,24 @@
|
||||
# 1up pi60 rgb v2
|
||||
|
||||
![1up pi60 rgb v2](https://i.imgur.com/H1tRGZh.png)
|
||||
|
||||
The pi60 RGB v2 is a 60% pcb from 1upkeyboards. This keyboard features an ANSI layout hot swap PCB with per-key in-switch RGB lighting as well as RGB underglow. The controller is a Raspberry Pi rp2040 microcontroller.
|
||||
|
||||
* Keyboard Maintainer: [ziptyze](https://github.com/ziptyze)
|
||||
|
||||
Make example for this keyboard (after setting up your build environment):
|
||||
|
||||
make 1upkeyboards/pi60_rgb_v2:default
|
||||
|
||||
Flashing example for this keyboard:
|
||||
|
||||
make 1upkeyboards/pi60_rgb_v2: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 2 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
|
||||
* **Bootloader button**: Hold the button on the back of the PCB and plug in the keyboard
|
0
keyboards/1upkeyboards/pi60_rgb_v2/rules.mk
Normal file
0
keyboards/1upkeyboards/pi60_rgb_v2/rules.mk
Normal file
@ -15,7 +15,6 @@
|
||||
"diode_direction": "COL2ROW",
|
||||
"processor": "STM32F072",
|
||||
"bootloader": "stm32-dfu",
|
||||
"community_layouts": ["tkl_ansi"],
|
||||
"layout_aliases": {
|
||||
"LAYOUT_eighty_m80h": "LAYOUT_tkl_ansi"
|
||||
},
|
||||
|
@ -19,7 +19,6 @@
|
||||
},
|
||||
"processor": "STM32F072",
|
||||
"bootloader": "stm32-dfu",
|
||||
"community_layouts": ["tkl_ansi"],
|
||||
"layout_aliases": {
|
||||
"LAYOUT_m80v2h": "LAYOUT_tkl_ansi"
|
||||
},
|
||||
|
7
keyboards/proteus67/config.h
Normal file
7
keyboards/proteus67/config.h
Normal file
@ -0,0 +1,7 @@
|
||||
// Copyright 2023 QMK
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
#pragma once
|
||||
|
||||
#define RGBLIGHT_MAX_LAYERS 3
|
||||
#define ENCODER_MAP_KEY_DELAY 10
|
||||
#define ENCODER_DEFAULT_POS 0x3
|
129
keyboards/proteus67/info.json
Normal file
129
keyboards/proteus67/info.json
Normal file
@ -0,0 +1,129 @@
|
||||
{
|
||||
"manufacturer": "gzowski",
|
||||
"keyboard_name": "Proteus67",
|
||||
"maintainer": "gzowski",
|
||||
"development_board": "elite_pi",
|
||||
"diode_direction": "COL2ROW",
|
||||
"encoder": {
|
||||
"rotary": [
|
||||
{"pin_a": "GP21", "pin_b": "GP9"}
|
||||
]
|
||||
},
|
||||
"features": {
|
||||
"encoder": true,
|
||||
"bootmagic": true,
|
||||
"extrakey": true,
|
||||
"mousekey": true,
|
||||
"nkro": true,
|
||||
"rgblight": true
|
||||
},
|
||||
"matrix_pins": {
|
||||
"cols": ["GP2", "GP3", "GP4", "GP5", "GP6", "GP7", "GP8", "GP23", "GP20", "GP22", "GP26", "GP27", "GP28", "GP29"],
|
||||
"rows": ["GP12", "GP13", "GP14", "GP15", "GP16"]
|
||||
},
|
||||
"rgblight": {
|
||||
"animations": {
|
||||
"alternating": true,
|
||||
"breathing": true,
|
||||
"christmas": true,
|
||||
"knight": true,
|
||||
"rainbow_mood": true,
|
||||
"rainbow_swirl": true,
|
||||
"rgb_test": false,
|
||||
"snake": true,
|
||||
"static_gradient": true,
|
||||
"twinkle": true
|
||||
},
|
||||
"brightness_steps": 5,
|
||||
"led_count": 21,
|
||||
"saturation_steps": 5,
|
||||
"sleep": true,
|
||||
"layers": {
|
||||
"enabled": true,
|
||||
"override_rgb": false
|
||||
}
|
||||
},
|
||||
"url": "https://github.com/gzowski",
|
||||
"usb": {
|
||||
"device_version": "1.0.0",
|
||||
"pid": "0x6F64",
|
||||
"vid": "0x7072"
|
||||
},
|
||||
"ws2812": {
|
||||
"pin": "GP0",
|
||||
"driver": "vendor"
|
||||
},
|
||||
"layouts": {
|
||||
"LAYOUT_ortho_5x14": {
|
||||
"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": [0, 6], "x": 6, "y": 0},
|
||||
{"matrix": [0, 7], "x": 7, "y": 0},
|
||||
{"matrix": [0, 8], "x": 8, "y": 0},
|
||||
{"matrix": [0, 9], "x": 9, "y": 0},
|
||||
{"matrix": [0, 10], "x": 10, "y": 0},
|
||||
{"matrix": [0, 11], "x": 11, "y": 0},
|
||||
{"matrix": [0, 12], "x": 12, "y": 0},
|
||||
{"matrix": [0, 13], "x": 13, "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": [1, 6], "x": 6, "y": 1},
|
||||
{"matrix": [1, 7], "x": 7, "y": 1},
|
||||
{"matrix": [1, 8], "x": 8, "y": 1},
|
||||
{"matrix": [1, 9], "x": 9, "y": 1},
|
||||
{"matrix": [1, 10], "x": 10, "y": 1},
|
||||
{"matrix": [1, 11], "x": 11, "y": 1},
|
||||
{"matrix": [1, 12], "x": 12, "y": 1},
|
||||
{"matrix": [1, 13], "x": 13, "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": [2, 6], "x": 6, "y": 2},
|
||||
{"matrix": [2, 7], "x": 7, "y": 2},
|
||||
{"matrix": [2, 8], "x": 8, "y": 2},
|
||||
{"matrix": [2, 9], "x": 9, "y": 2},
|
||||
{"matrix": [2, 10], "x": 10, "y": 2},
|
||||
{"matrix": [2, 11], "x": 11, "y": 2},
|
||||
{"matrix": [2, 12], "x": 12, "y": 2},
|
||||
{"matrix": [2, 13], "x": 13, "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": [3, 6], "x": 6, "y": 3},
|
||||
{"matrix": [3, 7], "x": 7, "y": 3},
|
||||
{"matrix": [3, 8], "x": 8, "y": 3},
|
||||
{"matrix": [3, 9], "x": 9, "y": 3},
|
||||
{"matrix": [3, 10], "x": 10, "y": 3},
|
||||
{"matrix": [3, 11], "x": 11, "y": 3},
|
||||
{"matrix": [3, 12], "x": 12, "y": 3},
|
||||
{"matrix": [3, 13], "x": 13, "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": [4, 7], "x": 7, "y": 4},
|
||||
{"matrix": [4, 8], "x": 8, "y": 4},
|
||||
{"matrix": [4, 9], "x": 9, "y": 4},
|
||||
{"matrix": [4, 10], "x": 10, "y": 4},
|
||||
{"matrix": [4, 11], "x": 11, "y": 4}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
42
keyboards/proteus67/keymaps/colemak/keymap.c
Normal file
42
keyboards/proteus67/keymaps/colemak/keymap.c
Normal file
@ -0,0 +1,42 @@
|
||||
// Copyright 2023 James Gzowski
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
#include QMK_KEYBOARD_H
|
||||
|
||||
enum custom_layer {
|
||||
_LAYERA,
|
||||
_LAYERB,
|
||||
_LAYERC,
|
||||
};
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
[_LAYERA] = LAYOUT_ortho_5x14(
|
||||
KC_ESC , KC_1 ,KC_2 ,KC_3 , KC_4 , KC_5 , KC_PSCR , KC_EQL , KC_6 , KC_7 , KC_8 , KC_9 , KC_0 , KC_GRV ,
|
||||
KC_TAB , KC_Q ,KC_W ,KC_F , KC_P , KC_G , KC_END , KC_HOME , KC_J , KC_L , KC_U , KC_Y , KC_SCLN ,KC_MINUS,
|
||||
KC_LCTL, KC_A ,KC_R ,KC_S , KC_T , KC_D , KC_PGDN , KC_PGUP , KC_H , KC_N , KC_E , KC_I , KC_O ,KC_QUOT ,
|
||||
KC_LSFT, KC_Z ,KC_X ,KC_C , KC_V , KC_B , KC_LBRC, KC_RBRC, KC_K , KC_M , KC_COMM , KC_DOT , KC_SLSH, KC_RSFT,
|
||||
KC_NO , MO(_LAYERB) ,KC_LGUI,KC_LALT, KC_SPC , KC_MUTE, KC_ENT , KC_BSPC , MO(_LAYERC) , KC_INS , KC_DEL
|
||||
),
|
||||
[_LAYERB] = LAYOUT_ortho_5x14(
|
||||
RGB_TOG , RGB_HUD ,RGB_HUI ,RGB_SAD , RGB_SAI , RGB_VAD , RGB_VAI , RGB_M_P , RGB_M_B , RGB_M_R , RGB_M_SW , RGB_M_K , RGB_M_TW , RGB_M_G ,
|
||||
KC_TRNS , KC_TRNS, KC_TRNS ,KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_BTN1 , KC_MS_U , KC_BTN2 , KC_TRNS ,KC_TRNS,
|
||||
KC_TRNS, KC_TRNS ,KC_TRNS ,KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_MS_L , KC_MS_D , KC_MS_R , KC_SCLN,KC_QUOT ,
|
||||
KC_TRNS, KC_TRNS ,KC_TRNS ,KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_NUBS, KC_TRNS,
|
||||
KC_TRNS , KC_TRNS ,KC_TRNS,KC_TRNS, KC_TRNS , RGB_RMOD, KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS
|
||||
),
|
||||
[_LAYERC] = LAYOUT_ortho_5x14(
|
||||
KC_TRNS , KC_F1 ,KC_F2 ,KC_F3 , KC_F4 , KC_F5 , KC_TRNS , KC_TRNS , KC_F6 , KC_F7 , KC_F8 , KC_F9 , KC_F10 , KC_GRV ,
|
||||
KC_TRNS , KC_TRNS, KC_TRNS ,KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS, KC_TRNS , KC_TRNS ,KC_TRNS,
|
||||
KC_TRNS, KC_TRNS ,KC_TRNS ,KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_LEFT , KC_DOWN , KC_UP , KC_RIGHT,KC_QUOT ,
|
||||
KC_TRNS, KC_TRNS ,KC_TRNS ,KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_NUBS, KC_TRNS,
|
||||
KC_TRNS , KC_TRNS ,KC_TRNS,KC_TRNS, KC_TRNS , RGB_MOD, KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS
|
||||
)
|
||||
};
|
||||
|
||||
#if defined(ENCODER_MAP_ENABLE)
|
||||
const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = {
|
||||
[_LAYERA] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU)},
|
||||
[_LAYERB] = { ENCODER_CCW_CW(RGB_HUD, RGB_HUI)},
|
||||
[_LAYERC] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}
|
||||
};
|
||||
#endif
|
||||
|
2
keyboards/proteus67/keymaps/colemak/rules.mk
Normal file
2
keyboards/proteus67/keymaps/colemak/rules.mk
Normal file
@ -0,0 +1,2 @@
|
||||
VIA_ENABLE = yes
|
||||
ENCODER_MAP_ENABLE = yes
|
41
keyboards/proteus67/keymaps/default/keymap.c
Normal file
41
keyboards/proteus67/keymaps/default/keymap.c
Normal file
@ -0,0 +1,41 @@
|
||||
// Copyright 2023 James Gzowski
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
#include QMK_KEYBOARD_H
|
||||
|
||||
enum custom_layer {
|
||||
_LAYERA,
|
||||
_LAYERB,
|
||||
_LAYERC,
|
||||
};
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
[_LAYERA] = LAYOUT_ortho_5x14(
|
||||
KC_ESC , KC_1 ,KC_2 ,KC_3 , KC_4 , KC_5 , KC_MINUS , KC_EQL , KC_6 , KC_7 , KC_8 , KC_9 , KC_0 , KC_GRV ,
|
||||
KC_TAB , KC_Q ,KC_W ,KC_E , KC_R , KC_T , KC_END , KC_HOME , KC_Y , KC_U , KC_I , KC_O , KC_P ,KC_MINUS,
|
||||
KC_LCTL, KC_A ,KC_S ,KC_D , KC_F , KC_G , KC_PGDN , KC_PGUP , 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_LBRC, KC_RBRC, KC_N , KC_M , KC_COMM , KC_DOT , KC_SLSH, KC_RSFT,
|
||||
KC_NO , MO(_LAYERB) ,KC_LGUI,KC_LALT, KC_SPC , KC_MUTE, KC_ENT , KC_BSPC , MO(_LAYERC) , KC_INS , KC_DEL
|
||||
),
|
||||
[_LAYERB] = LAYOUT_ortho_5x14(
|
||||
RGB_TOG , RGB_HUI ,RGB_HUD ,RGB_SAI , RGB_SAD , RGB_VAI , RGB_VAD , RGB_M_P , RGB_M_B , RGB_M_R , RGB_M_SW , RGB_M_K , RGB_M_X , RGB_M_G ,
|
||||
KC_TRNS , KC_TRNS, KC_TRNS ,KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_BTN1 , KC_MS_U , KC_BTN2 , KC_TRNS ,KC_TRNS,
|
||||
KC_TRNS, KC_TRNS ,KC_TRNS ,KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_MS_L , KC_MS_D , KC_MS_R , KC_SCLN,KC_QUOT ,
|
||||
KC_TRNS, KC_TRNS ,KC_TRNS ,KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_NUBS, KC_TRNS,
|
||||
KC_TRNS , KC_TRNS ,KC_TRNS,KC_TRNS, KC_TRNS , RGB_RMOD, KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS
|
||||
),
|
||||
[_LAYERC] = LAYOUT_ortho_5x14(
|
||||
KC_TRNS , KC_F1 ,KC_F2 ,KC_F3 , KC_F4 , KC_F5 , KC_TRNS , KC_TRNS , KC_F6 , KC_F7 , KC_F8 , KC_F9 , KC_F10 , KC_GRV ,
|
||||
KC_TRNS , KC_TRNS, KC_TRNS ,KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_UP , KC_TRNS , KC_TRNS ,KC_TRNS,
|
||||
KC_TRNS, KC_TRNS ,KC_TRNS ,KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_LEFT , KC_DOWN , KC_RIGHT , KC_SCLN,KC_QUOT ,
|
||||
KC_TRNS, KC_TRNS ,KC_TRNS ,KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_NUBS, KC_TRNS,
|
||||
KC_TRNS , KC_TRNS ,KC_TRNS,KC_TRNS, KC_TRNS , RGB_MOD, KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS
|
||||
)
|
||||
};
|
||||
|
||||
#if defined(ENCODER_MAP_ENABLE)
|
||||
const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = {
|
||||
[_LAYERA] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU)},
|
||||
[_LAYERB] = { ENCODER_CCW_CW(RGB_HUD, RGB_HUI)},
|
||||
[_LAYERC] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}
|
||||
};
|
||||
#endif
|
1
keyboards/proteus67/keymaps/default/rules.mk
Normal file
1
keyboards/proteus67/keymaps/default/rules.mk
Normal file
@ -0,0 +1 @@
|
||||
ENCODER_MAP_ENABLE = yes
|
41
keyboards/proteus67/keymaps/via/keymap.c
Normal file
41
keyboards/proteus67/keymaps/via/keymap.c
Normal file
@ -0,0 +1,41 @@
|
||||
// Copyright 2023 James Gzowski
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
#include QMK_KEYBOARD_H
|
||||
|
||||
enum custom_layer {
|
||||
_LAYERA,
|
||||
_LAYERB,
|
||||
_LAYERC,
|
||||
};
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
[_LAYERA] = LAYOUT_ortho_5x14(
|
||||
KC_ESC , KC_1 ,KC_2 ,KC_3 , KC_4 , KC_5 , KC_MINUS , KC_EQL , KC_6 , KC_7 , KC_8 , KC_9 , KC_0 , KC_GRV ,
|
||||
KC_TAB , KC_Q ,KC_W ,KC_E , KC_R , KC_T , KC_END , KC_HOME , KC_Y , KC_U , KC_I , KC_O , KC_P ,KC_MINUS,
|
||||
KC_LCTL, KC_A ,KC_S ,KC_D , KC_F , KC_G , KC_PGDN , KC_PGUP , 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_LBRC, KC_RBRC, KC_N , KC_M , KC_COMM , KC_DOT , KC_SLSH, KC_RSFT,
|
||||
KC_NO , MO(_LAYERB) ,KC_LGUI,KC_LALT, KC_SPC , KC_MUTE, KC_ENT , KC_BSPC , MO(_LAYERC) , KC_INS , KC_DEL
|
||||
),
|
||||
[_LAYERB] = LAYOUT_ortho_5x14(
|
||||
RGB_TOG , RGB_HUD ,RGB_HUI ,RGB_SAD , RGB_SAI , RGB_VAD , RGB_VAI , RGB_M_P , RGB_M_B , RGB_M_R , RGB_M_SW , RGB_M_K , RGB_M_TW , RGB_M_G ,
|
||||
KC_TRNS , KC_TRNS, KC_TRNS ,KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_BTN1 , KC_MS_U , KC_BTN2 , KC_TRNS ,KC_TRNS,
|
||||
KC_TRNS, KC_TRNS ,KC_TRNS ,KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_MS_L , KC_MS_D , KC_MS_R , KC_SCLN,KC_QUOT ,
|
||||
KC_TRNS, KC_TRNS ,KC_TRNS ,KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_NUBS, KC_TRNS,
|
||||
KC_TRNS , KC_TRNS ,KC_TRNS,KC_TRNS, KC_TRNS , RGB_RMOD, KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS
|
||||
),
|
||||
[_LAYERC] = LAYOUT_ortho_5x14(
|
||||
KC_TRNS , KC_F1 ,KC_F2 ,KC_F3 , KC_F4 , KC_F5 , KC_TRNS , KC_TRNS , KC_F6 , KC_F7 , KC_F8 , KC_F9 , KC_F10 , KC_GRV ,
|
||||
KC_TRNS , KC_TRNS, KC_TRNS ,KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_UP , KC_TRNS , KC_TRNS ,KC_TRNS,
|
||||
KC_TRNS, KC_TRNS ,KC_TRNS ,KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_LEFT , KC_DOWN , KC_RIGHT , KC_SCLN,KC_QUOT ,
|
||||
KC_TRNS, KC_TRNS ,KC_TRNS ,KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_NUBS, KC_TRNS,
|
||||
KC_TRNS , KC_TRNS ,KC_TRNS,KC_TRNS, KC_TRNS , RGB_MOD, KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS , KC_TRNS
|
||||
)
|
||||
};
|
||||
|
||||
#if defined(ENCODER_MAP_ENABLE)
|
||||
const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = {
|
||||
[_LAYERA] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU)},
|
||||
[_LAYERB] = { ENCODER_CCW_CW(RGB_HUD, RGB_HUI)},
|
||||
[_LAYERC] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}
|
||||
};
|
||||
#endif
|
2
keyboards/proteus67/keymaps/via/rules.mk
Normal file
2
keyboards/proteus67/keymaps/via/rules.mk
Normal file
@ -0,0 +1,2 @@
|
||||
VIA_ENABLE = yes
|
||||
ENCODER_MAP_ENABLE = yes
|
42
keyboards/proteus67/proteus67.c
Normal file
42
keyboards/proteus67/proteus67.c
Normal file
@ -0,0 +1,42 @@
|
||||
// Copyright 2023 James Gzowski
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
#include QMK_KEYBOARD_H
|
||||
|
||||
enum custom_layer {
|
||||
_LAYERA,
|
||||
_LAYERB,
|
||||
_LAYERC,
|
||||
};
|
||||
|
||||
// MO(_LAYERB)
|
||||
const rgblight_segment_t PROGMEM backlight_layer_layerb[] = RGBLIGHT_LAYER_SEGMENTS(
|
||||
{0, 4, HSV_GOLD}
|
||||
);
|
||||
// MO(_LAYERC)
|
||||
const rgblight_segment_t PROGMEM backlight_layer_layerc[] = RGBLIGHT_LAYER_SEGMENTS(
|
||||
{0, 4, HSV_CYAN}
|
||||
);
|
||||
const rgblight_segment_t PROGMEM backlight_layer_layera[] = RGBLIGHT_LAYER_SEGMENTS(
|
||||
{0, 4, HSV_BLACK}
|
||||
);
|
||||
const rgblight_segment_t* const PROGMEM set_backlight_mode[] = RGBLIGHT_LAYERS_LIST(
|
||||
backlight_layer_layerb,
|
||||
backlight_layer_layerc,
|
||||
backlight_layer_layera
|
||||
);
|
||||
|
||||
layer_state_t layer_state_set_kb(layer_state_t state) {
|
||||
rgblight_set_layer_state(0, layer_state_cmp(state, _LAYERB));
|
||||
rgblight_set_layer_state(1, layer_state_cmp(state, _LAYERC));
|
||||
rgblight_set_layer_state(2, layer_state_cmp(state, _LAYERA));
|
||||
|
||||
return layer_state_set_user(state);
|
||||
}
|
||||
|
||||
void keyboard_post_init_kb(void) {
|
||||
rgblight_set_effect_range(4, 17);
|
||||
rgblight_sethsv_range(HSV_BLACK, 0, 4);
|
||||
rgblight_layers = set_backlight_mode;
|
||||
|
||||
keyboard_post_init_user();
|
||||
}
|
25
keyboards/proteus67/readme.md
Normal file
25
keyboards/proteus67/readme.md
Normal file
@ -0,0 +1,25 @@
|
||||
# proteus67
|
||||
|
||||
![proteus67](https://i.imgur.com/mYhl7Jah.png)
|
||||
|
||||
67 key ortholinear layout with rotary encoder.
|
||||
|
||||
* Keyboard Maintainer: [James Gzowski](https://github.com/gzowski)
|
||||
* Hardware Supported: Elite-Pi or equivilent RP2040 controller with additional I/O along bottom.
|
||||
* Build Guide: [Proteus67](https://github.com/gzowski/Proteus67)
|
||||
|
||||
Make example for this keyboard (after setting up your build environment):
|
||||
|
||||
make proteus67:default
|
||||
|
||||
Flashing example for this keyboard:
|
||||
|
||||
make proteus67: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
|
||||
|
||||
* **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, if using a RP2040 press repeatidly to enter boot mode.
|
||||
* **Hold down boot loader button on MCU** Hold down the boot loader button on the MCU while plugging in the keyboard
|
1
keyboards/proteus67/rules.mk
Normal file
1
keyboards/proteus67/rules.mk
Normal file
@ -0,0 +1 @@
|
||||
# This file intentionally left blank
|
13
keyboards/tacworks/tac_k1/config.h
Normal file
13
keyboards/tacworks/tac_k1/config.h
Normal file
@ -0,0 +1,13 @@
|
||||
// Copyright 2023 JoyLee (@itarze)
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
||||
#pragma once
|
||||
|
||||
/* SPI Config for spi flash*/
|
||||
#define SPI_DRIVER SPIDQ
|
||||
#define SPI_SCK_PIN B3
|
||||
#define SPI_MOSI_PIN B5
|
||||
#define SPI_MISO_PIN B4
|
||||
#define SPI_MOSI_PAL_MODE 5
|
||||
|
||||
#define EXTERNAL_FLASH_SPI_SLAVE_SELECT_PIN C12
|
10
keyboards/tacworks/tac_k1/halconf.h
Normal file
10
keyboards/tacworks/tac_k1/halconf.h
Normal file
@ -0,0 +1,10 @@
|
||||
// Copyright 2023 JoyLee (@itarze)
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
||||
#pragma once
|
||||
|
||||
#define HAL_USE_SPI TRUE
|
||||
#define SPI_USE_WAIT TRUE
|
||||
#define SPI_SELECT_MODE SPI_SELECT_MODE_PAD
|
||||
|
||||
#include_next <halconf.h>
|
411
keyboards/tacworks/tac_k1/info.json
Normal file
411
keyboards/tacworks/tac_k1/info.json
Normal file
@ -0,0 +1,411 @@
|
||||
{
|
||||
"manufacturer": "TACWORKS",
|
||||
"keyboard_name": "TAC-K1",
|
||||
"maintainer": "JoyLee",
|
||||
"bootloader": "wb32-dfu",
|
||||
"diode_direction": "ROW2COL",
|
||||
"eeprom": {
|
||||
"driver": "wear_leveling",
|
||||
"wear_leveling": {
|
||||
"driver": "spi_flash",
|
||||
"backing_size": 4096
|
||||
}
|
||||
},
|
||||
"features": {
|
||||
"bootmagic": true,
|
||||
"command": false,
|
||||
"console": false,
|
||||
"extrakey": true,
|
||||
"mousekey": true,
|
||||
"nkro": true
|
||||
},
|
||||
"indicators": {
|
||||
"caps_lock": "A5",
|
||||
"on_state": 0
|
||||
},
|
||||
"matrix_pins": {
|
||||
"cols": ["C0", "C1", "C2", "C3", "A6", "B1", "B10", "B11", "B12", "B13", "B14", "B15", "C6", "C7", "C8", "C9"],
|
||||
"rows": ["A1", "A2", "A3", "A4", "C13"]
|
||||
},
|
||||
"processor": "WB32FQ95",
|
||||
"url": "https://tacworks.store",
|
||||
"usb": {
|
||||
"device_version": "1.0.0",
|
||||
"force_nkro": true,
|
||||
"pid": "0xE431",
|
||||
"suspend_wakeup_delay": 1000,
|
||||
"vid": "0x342D"
|
||||
},
|
||||
"community_layouts": [
|
||||
"65_ansi_blocker",
|
||||
"65_ansi_blocker_split_bs",
|
||||
"65_iso_blocker",
|
||||
"65_iso_blocker_split_bs"
|
||||
],
|
||||
"layouts": {
|
||||
"LAYOUT_all": {
|
||||
"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": [0, 6], "x": 6, "y": 0},
|
||||
{"matrix": [0, 7], "x": 7, "y": 0},
|
||||
{"matrix": [0, 8], "x": 8, "y": 0},
|
||||
{"matrix": [0, 9], "x": 9, "y": 0},
|
||||
{"matrix": [0, 10], "x": 10, "y": 0},
|
||||
{"matrix": [0, 11], "x": 11, "y": 0},
|
||||
{"matrix": [0, 12], "x": 12, "y": 0},
|
||||
{"matrix": [0, 13], "x": 13, "y": 0},
|
||||
{"matrix": [0, 14], "x": 14, "y": 0},
|
||||
{"matrix": [0, 15], "x": 15, "y": 0},
|
||||
{"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
|
||||
{"matrix": [1, 1], "x": 1.5, "y": 1},
|
||||
{"matrix": [1, 2], "x": 2.5, "y": 1},
|
||||
{"matrix": [1, 3], "x": 3.5, "y": 1},
|
||||
{"matrix": [1, 4], "x": 4.5, "y": 1},
|
||||
{"matrix": [1, 5], "x": 5.5, "y": 1},
|
||||
{"matrix": [1, 6], "x": 6.5, "y": 1},
|
||||
{"matrix": [1, 7], "x": 7.5, "y": 1},
|
||||
{"matrix": [1, 8], "x": 8.5, "y": 1},
|
||||
{"matrix": [1, 9], "x": 9.5, "y": 1},
|
||||
{"matrix": [1, 10], "x": 10.5, "y": 1},
|
||||
{"matrix": [1, 11], "x": 11.5, "y": 1},
|
||||
{"matrix": [1, 12], "x": 12.5, "y": 1},
|
||||
{"matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5},
|
||||
{"matrix": [1, 14], "x": 15, "y": 1},
|
||||
{"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
|
||||
{"matrix": [2, 1], "x": 1.75, "y": 2},
|
||||
{"matrix": [2, 2], "x": 2.75, "y": 2},
|
||||
{"matrix": [2, 3], "x": 3.75, "y": 2},
|
||||
{"matrix": [2, 4], "x": 4.75, "y": 2},
|
||||
{"matrix": [2, 5], "x": 5.75, "y": 2},
|
||||
{"matrix": [2, 6], "x": 6.75, "y": 2},
|
||||
{"matrix": [2, 7], "x": 7.75, "y": 2},
|
||||
{"matrix": [2, 8], "x": 8.75, "y": 2},
|
||||
{"matrix": [2, 9], "x": 9.75, "y": 2},
|
||||
{"matrix": [2, 10], "x": 10.75, "y": 2},
|
||||
{"matrix": [2, 11], "x": 11.75, "y": 2},
|
||||
{"matrix": [2, 12], "x": 12.75, "y": 2},
|
||||
{"matrix": [2, 13], "x": 13.75, "y": 2, "w": 1.25},
|
||||
{"matrix": [2, 14], "x": 15, "y": 2},
|
||||
{"matrix": [3, 0], "x": 0, "y": 3, "w": 1.25},
|
||||
{"matrix": [3, 1], "x": 1.25, "y": 3},
|
||||
{"matrix": [3, 2], "x": 2.25, "y": 3},
|
||||
{"matrix": [3, 3], "x": 3.25, "y": 3},
|
||||
{"matrix": [3, 4], "x": 4.25, "y": 3},
|
||||
{"matrix": [3, 5], "x": 5.25, "y": 3},
|
||||
{"matrix": [3, 6], "x": 6.25, "y": 3},
|
||||
{"matrix": [3, 7], "x": 7.25, "y": 3},
|
||||
{"matrix": [3, 8], "x": 8.25, "y": 3},
|
||||
{"matrix": [3, 9], "x": 9.25, "y": 3},
|
||||
{"matrix": [3, 10], "x": 10.25, "y": 3},
|
||||
{"matrix": [3, 11], "x": 11.25, "y": 3},
|
||||
{"matrix": [3, 12], "x": 12.25, "y": 3, "w": 1.75},
|
||||
{"matrix": [3, 14], "x": 14, "y": 3},
|
||||
{"matrix": [3, 15], "x": 15, "y": 3},
|
||||
{"matrix": [4, 0], "x": 0, "y": 4, "w": 1.25},
|
||||
{"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25},
|
||||
{"matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.25},
|
||||
{"matrix": [4, 5], "x": 3.75, "y": 4, "w": 2.5},
|
||||
{"matrix": [4, 6], "x": 6.25, "y": 4, "w": 1.25},
|
||||
{"matrix": [4, 7], "x": 7.5, "y": 4, "w": 2.5},
|
||||
{"matrix": [4, 8], "x": 10, "y": 4, "w": 1.25},
|
||||
{"matrix": [4, 9], "x": 11.25, "y": 4, "w": 1.25},
|
||||
{"matrix": [4, 13], "x": 13, "y": 4},
|
||||
{"matrix": [4, 14], "x": 14, "y": 4},
|
||||
{"matrix": [4, 15], "x": 15, "y": 4}
|
||||
]
|
||||
},
|
||||
"LAYOUT_65_ansi_blocker": {
|
||||
"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": [0, 6], "x": 6, "y": 0},
|
||||
{"matrix": [0, 7], "x": 7, "y": 0},
|
||||
{"matrix": [0, 8], "x": 8, "y": 0},
|
||||
{"matrix": [0, 9], "x": 9, "y": 0},
|
||||
{"matrix": [0, 10], "x": 10, "y": 0},
|
||||
{"matrix": [0, 11], "x": 11, "y": 0},
|
||||
{"matrix": [0, 12], "x": 12, "y": 0},
|
||||
{"matrix": [0, 13], "x": 13, "y": 0, "w": 2},
|
||||
{"matrix": [0, 15], "x": 15, "y": 0},
|
||||
{"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
|
||||
{"matrix": [1, 1], "x": 1.5, "y": 1},
|
||||
{"matrix": [1, 2], "x": 2.5, "y": 1},
|
||||
{"matrix": [1, 3], "x": 3.5, "y": 1},
|
||||
{"matrix": [1, 4], "x": 4.5, "y": 1},
|
||||
{"matrix": [1, 5], "x": 5.5, "y": 1},
|
||||
{"matrix": [1, 6], "x": 6.5, "y": 1},
|
||||
{"matrix": [1, 7], "x": 7.5, "y": 1},
|
||||
{"matrix": [1, 8], "x": 8.5, "y": 1},
|
||||
{"matrix": [1, 9], "x": 9.5, "y": 1},
|
||||
{"matrix": [1, 10], "x": 10.5, "y": 1},
|
||||
{"matrix": [1, 11], "x": 11.5, "y": 1},
|
||||
{"matrix": [1, 12], "x": 12.5, "y": 1},
|
||||
{"matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5},
|
||||
{"matrix": [1, 14], "x": 15, "y": 1},
|
||||
{"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
|
||||
{"matrix": [2, 1], "x": 1.75, "y": 2},
|
||||
{"matrix": [2, 2], "x": 2.75, "y": 2},
|
||||
{"matrix": [2, 3], "x": 3.75, "y": 2},
|
||||
{"matrix": [2, 4], "x": 4.75, "y": 2},
|
||||
{"matrix": [2, 5], "x": 5.75, "y": 2},
|
||||
{"matrix": [2, 6], "x": 6.75, "y": 2},
|
||||
{"matrix": [2, 7], "x": 7.75, "y": 2},
|
||||
{"matrix": [2, 8], "x": 8.75, "y": 2},
|
||||
{"matrix": [2, 9], "x": 9.75, "y": 2},
|
||||
{"matrix": [2, 10], "x": 10.75, "y": 2},
|
||||
{"matrix": [2, 11], "x": 11.75, "y": 2},
|
||||
{"matrix": [2, 13], "x": 12.75, "y": 2, "w": 2.25},
|
||||
{"matrix": [2, 14], "x": 15, "y": 2},
|
||||
{"matrix": [3, 0], "x": 0, "y": 3, "w": 2.25},
|
||||
{"matrix": [3, 2], "x": 2.25, "y": 3},
|
||||
{"matrix": [3, 3], "x": 3.25, "y": 3},
|
||||
{"matrix": [3, 4], "x": 4.25, "y": 3},
|
||||
{"matrix": [3, 5], "x": 5.25, "y": 3},
|
||||
{"matrix": [3, 6], "x": 6.25, "y": 3},
|
||||
{"matrix": [3, 7], "x": 7.25, "y": 3},
|
||||
{"matrix": [3, 8], "x": 8.25, "y": 3},
|
||||
{"matrix": [3, 9], "x": 9.25, "y": 3},
|
||||
{"matrix": [3, 10], "x": 10.25, "y": 3},
|
||||
{"matrix": [3, 11], "x": 11.25, "y": 3},
|
||||
{"matrix": [3, 12], "x": 12.25, "y": 3, "w": 1.75},
|
||||
{"matrix": [3, 14], "x": 14, "y": 3},
|
||||
{"matrix": [3, 15], "x": 15, "y": 3},
|
||||
{"matrix": [4, 0], "x": 0, "y": 4, "w": 1.25},
|
||||
{"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25},
|
||||
{"matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.25},
|
||||
{"matrix": [4, 6], "x": 3.75, "y": 4, "w": 6.25},
|
||||
{"matrix": [4, 8], "x": 10, "y": 4, "w": 1.25},
|
||||
{"matrix": [4, 9], "x": 11.25, "y": 4, "w": 1.25},
|
||||
{"matrix": [4, 13], "x": 13, "y": 4},
|
||||
{"matrix": [4, 14], "x": 14, "y": 4},
|
||||
{"matrix": [4, 15], "x": 15, "y": 4}
|
||||
]
|
||||
},
|
||||
"LAYOUT_65_ansi_blocker_split_bs": {
|
||||
"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": [0, 6], "x": 6, "y": 0},
|
||||
{"matrix": [0, 7], "x": 7, "y": 0},
|
||||
{"matrix": [0, 8], "x": 8, "y": 0},
|
||||
{"matrix": [0, 9], "x": 9, "y": 0},
|
||||
{"matrix": [0, 10], "x": 10, "y": 0},
|
||||
{"matrix": [0, 11], "x": 11, "y": 0},
|
||||
{"matrix": [0, 12], "x": 12, "y": 0},
|
||||
{"matrix": [0, 13], "x": 13, "y": 0},
|
||||
{"matrix": [0, 14], "x": 14, "y": 0},
|
||||
{"matrix": [0, 15], "x": 15, "y": 0},
|
||||
{"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
|
||||
{"matrix": [1, 1], "x": 1.5, "y": 1},
|
||||
{"matrix": [1, 2], "x": 2.5, "y": 1},
|
||||
{"matrix": [1, 3], "x": 3.5, "y": 1},
|
||||
{"matrix": [1, 4], "x": 4.5, "y": 1},
|
||||
{"matrix": [1, 5], "x": 5.5, "y": 1},
|
||||
{"matrix": [1, 6], "x": 6.5, "y": 1},
|
||||
{"matrix": [1, 7], "x": 7.5, "y": 1},
|
||||
{"matrix": [1, 8], "x": 8.5, "y": 1},
|
||||
{"matrix": [1, 9], "x": 9.5, "y": 1},
|
||||
{"matrix": [1, 10], "x": 10.5, "y": 1},
|
||||
{"matrix": [1, 11], "x": 11.5, "y": 1},
|
||||
{"matrix": [1, 12], "x": 12.5, "y": 1},
|
||||
{"matrix": [1, 13], "x": 13.5, "y": 1, "w": 1.5},
|
||||
{"matrix": [1, 14], "x": 15, "y": 1},
|
||||
{"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
|
||||
{"matrix": [2, 1], "x": 1.75, "y": 2},
|
||||
{"matrix": [2, 2], "x": 2.75, "y": 2},
|
||||
{"matrix": [2, 3], "x": 3.75, "y": 2},
|
||||
{"matrix": [2, 4], "x": 4.75, "y": 2},
|
||||
{"matrix": [2, 5], "x": 5.75, "y": 2},
|
||||
{"matrix": [2, 6], "x": 6.75, "y": 2},
|
||||
{"matrix": [2, 7], "x": 7.75, "y": 2},
|
||||
{"matrix": [2, 8], "x": 8.75, "y": 2},
|
||||
{"matrix": [2, 9], "x": 9.75, "y": 2},
|
||||
{"matrix": [2, 10], "x": 10.75, "y": 2},
|
||||
{"matrix": [2, 11], "x": 11.75, "y": 2},
|
||||
{"matrix": [2, 13], "x": 12.75, "y": 2, "w": 2.25},
|
||||
{"matrix": [2, 14], "x": 15, "y": 2},
|
||||
{"matrix": [3, 0], "x": 0, "y": 3, "w": 2.25},
|
||||
{"matrix": [3, 2], "x": 2.25, "y": 3},
|
||||
{"matrix": [3, 3], "x": 3.25, "y": 3},
|
||||
{"matrix": [3, 4], "x": 4.25, "y": 3},
|
||||
{"matrix": [3, 5], "x": 5.25, "y": 3},
|
||||
{"matrix": [3, 6], "x": 6.25, "y": 3},
|
||||
{"matrix": [3, 7], "x": 7.25, "y": 3},
|
||||
{"matrix": [3, 8], "x": 8.25, "y": 3},
|
||||
{"matrix": [3, 9], "x": 9.25, "y": 3},
|
||||
{"matrix": [3, 10], "x": 10.25, "y": 3},
|
||||
{"matrix": [3, 11], "x": 11.25, "y": 3},
|
||||
{"matrix": [3, 12], "x": 12.25, "y": 3, "w": 1.75},
|
||||
{"matrix": [3, 14], "x": 14, "y": 3},
|
||||
{"matrix": [3, 15], "x": 15, "y": 3},
|
||||
{"matrix": [4, 0], "x": 0, "y": 4, "w": 1.25},
|
||||
{"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25},
|
||||
{"matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.25},
|
||||
{"matrix": [4, 6], "x": 3.75, "y": 4, "w": 6.25},
|
||||
{"matrix": [4, 8], "x": 10, "y": 4, "w": 1.25},
|
||||
{"matrix": [4, 9], "x": 11.25, "y": 4, "w": 1.25},
|
||||
{"matrix": [4, 13], "x": 13, "y": 4},
|
||||
{"matrix": [4, 14], "x": 14, "y": 4},
|
||||
{"matrix": [4, 15], "x": 15, "y": 4}
|
||||
]
|
||||
},
|
||||
"LAYOUT_65_iso_blocker": {
|
||||
"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": [0, 6], "x": 6, "y": 0},
|
||||
{"matrix": [0, 7], "x": 7, "y": 0},
|
||||
{"matrix": [0, 8], "x": 8, "y": 0},
|
||||
{"matrix": [0, 9], "x": 9, "y": 0},
|
||||
{"matrix": [0, 10], "x": 10, "y": 0},
|
||||
{"matrix": [0, 11], "x": 11, "y": 0},
|
||||
{"matrix": [0, 12], "x": 12, "y": 0},
|
||||
{"matrix": [0, 13], "x": 13, "y": 0, "w": 2},
|
||||
{"matrix": [0, 15], "x": 15, "y": 0},
|
||||
{"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
|
||||
{"matrix": [1, 1], "x": 1.5, "y": 1},
|
||||
{"matrix": [1, 2], "x": 2.5, "y": 1},
|
||||
{"matrix": [1, 3], "x": 3.5, "y": 1},
|
||||
{"matrix": [1, 4], "x": 4.5, "y": 1},
|
||||
{"matrix": [1, 5], "x": 5.5, "y": 1},
|
||||
{"matrix": [1, 6], "x": 6.5, "y": 1},
|
||||
{"matrix": [1, 7], "x": 7.5, "y": 1},
|
||||
{"matrix": [1, 8], "x": 8.5, "y": 1},
|
||||
{"matrix": [1, 9], "x": 9.5, "y": 1},
|
||||
{"matrix": [1, 10], "x": 10.5, "y": 1},
|
||||
{"matrix": [1, 11], "x": 11.5, "y": 1},
|
||||
{"matrix": [1, 12], "x": 12.5, "y": 1},
|
||||
{"matrix": [1, 14], "x": 15, "y": 1},
|
||||
{"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
|
||||
{"matrix": [2, 1], "x": 1.75, "y": 2},
|
||||
{"matrix": [2, 2], "x": 2.75, "y": 2},
|
||||
{"matrix": [2, 3], "x": 3.75, "y": 2},
|
||||
{"matrix": [2, 4], "x": 4.75, "y": 2},
|
||||
{"matrix": [2, 5], "x": 5.75, "y": 2},
|
||||
{"matrix": [2, 6], "x": 6.75, "y": 2},
|
||||
{"matrix": [2, 7], "x": 7.75, "y": 2},
|
||||
{"matrix": [2, 8], "x": 8.75, "y": 2},
|
||||
{"matrix": [2, 9], "x": 9.75, "y": 2},
|
||||
{"matrix": [2, 10], "x": 10.75, "y": 2},
|
||||
{"matrix": [2, 11], "x": 11.75, "y": 2},
|
||||
{"matrix": [2, 12], "x": 12.75, "y": 2},
|
||||
{"matrix": [2, 13], "x": 13.75, "y": 1, "w": 1.25, "h": 2},
|
||||
{"matrix": [2, 14], "x": 15, "y": 2},
|
||||
{"matrix": [3, 0], "x": 0, "y": 3, "w": 1.25},
|
||||
{"matrix": [3, 1], "x": 1.25, "y": 3},
|
||||
{"matrix": [3, 2], "x": 2.25, "y": 3},
|
||||
{"matrix": [3, 3], "x": 3.25, "y": 3},
|
||||
{"matrix": [3, 4], "x": 4.25, "y": 3},
|
||||
{"matrix": [3, 5], "x": 5.25, "y": 3},
|
||||
{"matrix": [3, 6], "x": 6.25, "y": 3},
|
||||
{"matrix": [3, 7], "x": 7.25, "y": 3},
|
||||
{"matrix": [3, 8], "x": 8.25, "y": 3},
|
||||
{"matrix": [3, 9], "x": 9.25, "y": 3},
|
||||
{"matrix": [3, 10], "x": 10.25, "y": 3},
|
||||
{"matrix": [3, 11], "x": 11.25, "y": 3},
|
||||
{"matrix": [3, 12], "x": 12.25, "y": 3, "w": 1.75},
|
||||
{"matrix": [3, 14], "x": 14, "y": 3},
|
||||
{"matrix": [3, 15], "x": 15, "y": 3},
|
||||
{"matrix": [4, 0], "x": 0, "y": 4, "w": 1.25},
|
||||
{"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25},
|
||||
{"matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.25},
|
||||
{"matrix": [4, 6], "x": 3.75, "y": 4, "w": 6.25},
|
||||
{"matrix": [4, 8], "x": 10, "y": 4, "w": 1.25},
|
||||
{"matrix": [4, 9], "x": 11.25, "y": 4, "w": 1.25},
|
||||
{"matrix": [4, 13], "x": 13, "y": 4},
|
||||
{"matrix": [4, 14], "x": 14, "y": 4},
|
||||
{"matrix": [4, 15], "x": 15, "y": 4}
|
||||
]
|
||||
},
|
||||
"LAYOUT_65_iso_blocker_split_bs": {
|
||||
"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": [0, 6], "x": 6, "y": 0},
|
||||
{"matrix": [0, 7], "x": 7, "y": 0},
|
||||
{"matrix": [0, 8], "x": 8, "y": 0},
|
||||
{"matrix": [0, 9], "x": 9, "y": 0},
|
||||
{"matrix": [0, 10], "x": 10, "y": 0},
|
||||
{"matrix": [0, 11], "x": 11, "y": 0},
|
||||
{"matrix": [0, 12], "x": 12, "y": 0},
|
||||
{"matrix": [0, 13], "x": 13, "y": 0},
|
||||
{"matrix": [0, 14], "x": 14, "y": 0},
|
||||
{"matrix": [0, 15], "x": 15, "y": 0},
|
||||
{"matrix": [1, 0], "x": 0, "y": 1, "w": 1.5},
|
||||
{"matrix": [1, 1], "x": 1.5, "y": 1},
|
||||
{"matrix": [1, 2], "x": 2.5, "y": 1},
|
||||
{"matrix": [1, 3], "x": 3.5, "y": 1},
|
||||
{"matrix": [1, 4], "x": 4.5, "y": 1},
|
||||
{"matrix": [1, 5], "x": 5.5, "y": 1},
|
||||
{"matrix": [1, 6], "x": 6.5, "y": 1},
|
||||
{"matrix": [1, 7], "x": 7.5, "y": 1},
|
||||
{"matrix": [1, 8], "x": 8.5, "y": 1},
|
||||
{"matrix": [1, 9], "x": 9.5, "y": 1},
|
||||
{"matrix": [1, 10], "x": 10.5, "y": 1},
|
||||
{"matrix": [1, 11], "x": 11.5, "y": 1},
|
||||
{"matrix": [1, 12], "x": 12.5, "y": 1},
|
||||
{"matrix": [1, 14], "x": 15, "y": 1},
|
||||
{"matrix": [2, 0], "x": 0, "y": 2, "w": 1.75},
|
||||
{"matrix": [2, 1], "x": 1.75, "y": 2},
|
||||
{"matrix": [2, 2], "x": 2.75, "y": 2},
|
||||
{"matrix": [2, 3], "x": 3.75, "y": 2},
|
||||
{"matrix": [2, 4], "x": 4.75, "y": 2},
|
||||
{"matrix": [2, 5], "x": 5.75, "y": 2},
|
||||
{"matrix": [2, 6], "x": 6.75, "y": 2},
|
||||
{"matrix": [2, 7], "x": 7.75, "y": 2},
|
||||
{"matrix": [2, 8], "x": 8.75, "y": 2},
|
||||
{"matrix": [2, 9], "x": 9.75, "y": 2},
|
||||
{"matrix": [2, 10], "x": 10.75, "y": 2},
|
||||
{"matrix": [2, 11], "x": 11.75, "y": 2},
|
||||
{"matrix": [2, 12], "x": 12.75, "y": 2},
|
||||
{"matrix": [2, 13], "x": 13.75, "y": 1, "w": 1.25, "h": 2},
|
||||
{"matrix": [2, 14], "x": 15, "y": 2},
|
||||
{"matrix": [3, 0], "x": 0, "y": 3, "w": 1.25},
|
||||
{"matrix": [3, 1], "x": 1.25, "y": 3},
|
||||
{"matrix": [3, 2], "x": 2.25, "y": 3},
|
||||
{"matrix": [3, 3], "x": 3.25, "y": 3},
|
||||
{"matrix": [3, 4], "x": 4.25, "y": 3},
|
||||
{"matrix": [3, 5], "x": 5.25, "y": 3},
|
||||
{"matrix": [3, 6], "x": 6.25, "y": 3},
|
||||
{"matrix": [3, 7], "x": 7.25, "y": 3},
|
||||
{"matrix": [3, 8], "x": 8.25, "y": 3},
|
||||
{"matrix": [3, 9], "x": 9.25, "y": 3},
|
||||
{"matrix": [3, 10], "x": 10.25, "y": 3},
|
||||
{"matrix": [3, 11], "x": 11.25, "y": 3},
|
||||
{"matrix": [3, 12], "x": 12.25, "y": 3, "w": 1.75},
|
||||
{"matrix": [3, 14], "x": 14, "y": 3},
|
||||
{"matrix": [3, 15], "x": 15, "y": 3},
|
||||
{"matrix": [4, 0], "x": 0, "y": 4, "w": 1.25},
|
||||
{"matrix": [4, 1], "x": 1.25, "y": 4, "w": 1.25},
|
||||
{"matrix": [4, 2], "x": 2.5, "y": 4, "w": 1.25},
|
||||
{"matrix": [4, 6], "x": 3.75, "y": 4, "w": 6.25},
|
||||
{"matrix": [4, 8], "x": 10, "y": 4, "w": 1.25},
|
||||
{"matrix": [4, 9], "x": 11.25, "y": 4, "w": 1.25},
|
||||
{"matrix": [4, 13], "x": 13, "y": 4},
|
||||
{"matrix": [4, 14], "x": 14, "y": 4},
|
||||
{"matrix": [4, 15], "x": 15, "y": 4}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
22
keyboards/tacworks/tac_k1/keymaps/default/keymap.c
Normal file
22
keyboards/tacworks/tac_k1/keymaps/default/keymap.c
Normal file
@ -0,0 +1,22 @@
|
||||
// Copyright 2023 JoyLee (@itarze)
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
||||
#include QMK_KEYBOARD_H
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
[0] = LAYOUT_all(
|
||||
KC_ESC, 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_DEL,
|
||||
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_PGUP,
|
||||
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_PGDN,
|
||||
KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, MO(1),
|
||||
KC_LCTL, KC_LGUI, KC_LALT, _______, KC_SPC, _______, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT
|
||||
),
|
||||
|
||||
[1] = LAYOUT_all(
|
||||
KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, EE_CLR, _______, KC_HOME,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, KC_SCRL, KC_PAUS, _______, KC_END,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MPLY, KC_INS,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_VOLU, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, KC_MPRV, KC_VOLD, KC_MNXT
|
||||
)
|
||||
};
|
22
keyboards/tacworks/tac_k1/keymaps/via/keymap.c
Normal file
22
keyboards/tacworks/tac_k1/keymaps/via/keymap.c
Normal file
@ -0,0 +1,22 @@
|
||||
// Copyright 2023 JoyLee (@itarze)
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
||||
#include QMK_KEYBOARD_H
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
[0] = LAYOUT_all(
|
||||
KC_ESC, 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_DEL,
|
||||
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_PGUP,
|
||||
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_PGDN,
|
||||
KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, MO(1),
|
||||
KC_LCTL, KC_LGUI, KC_LALT, _______, KC_SPC, _______, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT
|
||||
),
|
||||
|
||||
[1] = LAYOUT_all(
|
||||
KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, EE_CLR, _______, KC_HOME,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, KC_SCRL, KC_PAUS, _______, KC_END,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MPLY, KC_INS,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_VOLU, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, KC_MPRV, KC_VOLD, KC_MNXT
|
||||
)
|
||||
};
|
1
keyboards/tacworks/tac_k1/keymaps/via/rules.mk
Normal file
1
keyboards/tacworks/tac_k1/keymaps/via/rules.mk
Normal file
@ -0,0 +1 @@
|
||||
VIA_ENABLE = yes
|
9
keyboards/tacworks/tac_k1/mcuconf.h
Normal file
9
keyboards/tacworks/tac_k1/mcuconf.h
Normal file
@ -0,0 +1,9 @@
|
||||
// Copyright 2023 JoyLee (@itarze)
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
||||
#pragma once
|
||||
|
||||
#include_next <mcuconf.h>
|
||||
|
||||
#undef WB32_SPI_USE_QSPI
|
||||
#define WB32_SPI_USE_QSPI TRUE
|
25
keyboards/tacworks/tac_k1/readme.md
Normal file
25
keyboards/tacworks/tac_k1/readme.md
Normal file
@ -0,0 +1,25 @@
|
||||
|
||||
# TAC-K1
|
||||
|
||||
![tac-k1](https://i.imgur.com/3YGvrSZh.jpg)
|
||||
|
||||
* Keyboard Maintainer: [JoyLee](https://github.com/itarze)
|
||||
* Hardware Supported: TAC-K1 PCB
|
||||
|
||||
Make example for this keyboard (after setting up your build environment):
|
||||
|
||||
make tacworks/tac_k1:default
|
||||
|
||||
Flashing example for this keyboard:
|
||||
|
||||
make tacworks/tac_k1: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
keyboards/tacworks/tac_k1/rules.mk
Normal file
1
keyboards/tacworks/tac_k1/rules.mk
Normal file
@ -0,0 +1 @@
|
||||
# This file intentionally left blank
|
6
keyboards/themadnoodle/udon13/config.h
Normal file
6
keyboards/themadnoodle/udon13/config.h
Normal file
@ -0,0 +1,6 @@
|
||||
// Copyright 2023 Jesse Leventhal (@The=Mad-Noodle)
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
||||
#pragma once
|
||||
|
||||
#define RGBLIGHT_DEFAULT_MODE RGBLIGHT_MODE_RAINBOW_SWIRL + 5
|
75
keyboards/themadnoodle/udon13/info.json
Normal file
75
keyboards/themadnoodle/udon13/info.json
Normal file
@ -0,0 +1,75 @@
|
||||
{
|
||||
"manufacturer": "The Mad Noodle",
|
||||
"keyboard_name": "Udon13",
|
||||
"maintainer": "The-Mad-Noodle",
|
||||
"url": "https://www.madnoodleprototypes.com/",
|
||||
"bootloader": "atmel-dfu",
|
||||
"diode_direction": "ROW2COL",
|
||||
"features": {
|
||||
"bootmagic": true,
|
||||
"command": false,
|
||||
"console": false,
|
||||
"extrakey": true,
|
||||
"encoder": true,
|
||||
"mousekey": true,
|
||||
"nkro": true,
|
||||
"rgblight": true,
|
||||
"oled": true
|
||||
},
|
||||
"rgblight": {
|
||||
"hue_steps": 10,
|
||||
"led_count": 6,
|
||||
"sleep": true,
|
||||
"animations": {
|
||||
"breathing": true,
|
||||
"rainbow_mood": true,
|
||||
"rainbow_swirl": true,
|
||||
"snake": true,
|
||||
"knight": true,
|
||||
"christmas": true,
|
||||
"static_gradient": true,
|
||||
"rgb_test": true,
|
||||
"alternating": true,
|
||||
"twinkle": true
|
||||
}
|
||||
},
|
||||
"ws2812": {
|
||||
"pin": "B7"
|
||||
},
|
||||
"matrix_pins": {
|
||||
"cols": ["F0", "F5", "F4", "F6"],
|
||||
"rows": ["F7", "F1", "D6", "D7"]
|
||||
},
|
||||
"processor": "atmega32u4",
|
||||
"usb": {
|
||||
"device_version": "1.0.0",
|
||||
"pid": "0x0012",
|
||||
"vid": "0x6A6C"
|
||||
},
|
||||
"layouts": {
|
||||
"LAYOUT": {
|
||||
"layout": [
|
||||
{"label":"Encoder", "x":3, "y":0, "matrix": [0,3]},
|
||||
{"x":0, "y":1, "matrix": [1,0]},
|
||||
{"x":1, "y":1, "matrix": [1,1]},
|
||||
{"x":2, "y":1, "matrix": [1,2]},
|
||||
{"x":3, "y":1, "matrix": [1,3]},
|
||||
{"x":0, "y":2, "matrix": [2,0]},
|
||||
{"x":1, "y":2, "matrix": [2,1]},
|
||||
{"x":2, "y":2, "matrix": [2,2]},
|
||||
{"x":3, "y":2, "matrix": [2,3]},
|
||||
{"x":0, "y":3, "matrix": [3,0]},
|
||||
{"x":1, "y":3, "matrix": [3,1]},
|
||||
{"x":2, "y":3, "matrix": [3,2]},
|
||||
{"x":3, "y":3, "matrix": [3,3]}
|
||||
]
|
||||
}
|
||||
},
|
||||
|
||||
"encoder": {
|
||||
"rotary": [
|
||||
{ "pin_a": "B6", "pin_b": "B5" }
|
||||
]
|
||||
|
||||
}
|
||||
}
|
52
keyboards/themadnoodle/udon13/keymaps/default/keymap.c
Normal file
52
keyboards/themadnoodle/udon13/keymaps/default/keymap.c
Normal file
@ -0,0 +1,52 @@
|
||||
// Copyright 2023 The Mad Noodle(@the_mad_noodle)
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
||||
#include QMK_KEYBOARD_H
|
||||
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
|
||||
/*Layer 0*/
|
||||
[0] = LAYOUT(
|
||||
KC_MUTE,
|
||||
KC_MPLY, KC_MPRV, KC_MNXT, KC_MSEL,
|
||||
KC_UNDO, KC_CALC, KC_MAIL, KC_MYCM,
|
||||
KC_COPY, KC_CUT, KC_PSTE, TO(3)
|
||||
),
|
||||
|
||||
/*Layer 1*/
|
||||
[1] = LAYOUT(
|
||||
RGB_TOG,
|
||||
RGB_SAD, RGB_SAI, RGB_HUD, RGB_HUI,
|
||||
RGB_MOD, RGB_RMOD, RGB_M_P, RGB_M_B,
|
||||
RGB_M_SW, RGB_SPD, RGB_SPI, TO(0)
|
||||
),
|
||||
|
||||
/*Layer 2*/
|
||||
[2] = LAYOUT(
|
||||
KC_NO,
|
||||
KC_NO, KC_NO, KC_NO, KC_NO,
|
||||
KC_NO, KC_NO, KC_NO, KC_NO,
|
||||
KC_NO, KC_NO, KC_NO, TO(0)
|
||||
),
|
||||
|
||||
/*Layer 3*/
|
||||
[3] = LAYOUT(
|
||||
KC_NO,
|
||||
TO(1), TO(2), KC_NO, KC_NO,
|
||||
KC_NO, KC_NO, KC_NO, KC_NO,
|
||||
KC_NO, KC_NO, KC_NO, TO(0)
|
||||
),
|
||||
|
||||
};
|
||||
|
||||
/*Encoder Mapping*/
|
||||
#if defined(ENCODER_MAP_ENABLE)
|
||||
const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = {
|
||||
[0] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)},
|
||||
[1] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI)},
|
||||
[2] = { ENCODER_CCW_CW(KC_LEFT, KC_RGHT)},
|
||||
[3] = { ENCODER_CCW_CW(KC_DOWN, KC_UP)},
|
||||
|
||||
};
|
||||
#endif
|
2
keyboards/themadnoodle/udon13/keymaps/default/rules.mk
Normal file
2
keyboards/themadnoodle/udon13/keymaps/default/rules.mk
Normal file
@ -0,0 +1,2 @@
|
||||
ENCODER_MAP_ENABLE = yes
|
||||
LTO_ENABLE = yes
|
52
keyboards/themadnoodle/udon13/keymaps/via/keymap.c
Normal file
52
keyboards/themadnoodle/udon13/keymaps/via/keymap.c
Normal file
@ -0,0 +1,52 @@
|
||||
// Copyright 2023 The Mad Noodle(@the_mad_noodle)
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
||||
#include QMK_KEYBOARD_H
|
||||
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
|
||||
/*Layer 0*/
|
||||
[0] = LAYOUT(
|
||||
KC_MUTE,
|
||||
KC_MPLY, KC_MPRV, KC_MNXT, KC_MSEL,
|
||||
KC_UNDO, KC_CALC, KC_MAIL, KC_MYCM,
|
||||
KC_COPY, KC_CUT, KC_PSTE, TO(3)
|
||||
),
|
||||
|
||||
/*Layer 1*/
|
||||
[1] = LAYOUT(
|
||||
RGB_TOG,
|
||||
RGB_SAD, RGB_SAI, RGB_HUD, RGB_HUI,
|
||||
RGB_MOD, RGB_RMOD, RGB_M_P, RGB_M_B,
|
||||
RGB_M_SW, RGB_SPD, RGB_SPI, TO(0)
|
||||
),
|
||||
|
||||
/*Layer 2*/
|
||||
[2] = LAYOUT(
|
||||
KC_NO,
|
||||
KC_NO, KC_NO, KC_NO, KC_NO,
|
||||
KC_NO, KC_NO, KC_NO, KC_NO,
|
||||
KC_NO, KC_NO, KC_NO, TO(0)
|
||||
),
|
||||
|
||||
/*Layer 3*/
|
||||
[3] = LAYOUT(
|
||||
KC_NO,
|
||||
TO(1), TO(2), KC_NO, KC_NO,
|
||||
KC_NO, KC_NO, KC_NO, KC_NO,
|
||||
KC_NO, KC_NO, KC_NO, TO(0)
|
||||
),
|
||||
|
||||
};
|
||||
|
||||
/*Encoder Mapping*/
|
||||
#if defined(ENCODER_MAP_ENABLE)
|
||||
const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = {
|
||||
[0] = {ENCODER_CCW_CW(KC_VOLD, KC_VOLU)},
|
||||
[1] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI)},
|
||||
[2] = { ENCODER_CCW_CW(KC_LEFT, KC_RGHT)},
|
||||
[3] = { ENCODER_CCW_CW(KC_DOWN, KC_UP)},
|
||||
|
||||
};
|
||||
#endif
|
3
keyboards/themadnoodle/udon13/keymaps/via/rules.mk
Normal file
3
keyboards/themadnoodle/udon13/keymaps/via/rules.mk
Normal file
@ -0,0 +1,3 @@
|
||||
ENCODER_MAP_ENABLE = yes
|
||||
LTO_ENABLE = yes
|
||||
VIA_ENABLE = yes
|
27
keyboards/themadnoodle/udon13/readme.md
Normal file
27
keyboards/themadnoodle/udon13/readme.md
Normal file
@ -0,0 +1,27 @@
|
||||
# Udon:13
|
||||
|
||||
![Udon13](https://i.imgur.com/DppYeTCh.jpg)
|
||||
|
||||
*The Udon:13 is a 12 hotswap key macro keypad with a push button encoder knob and 128x32 OLED display*
|
||||
|
||||
* Keyboard Maintainer: [The Mad Noodle](https://github.com/The-Mad-Noodle)
|
||||
* Hardware Supported: Udon:13 PCB
|
||||
* Hardware Availability: https://www.madnoodleprototypes.com/shop
|
||||
|
||||
|
||||
Compile example for this keyboard (after setting up your build environment):
|
||||
|
||||
qmk compile -kb themadnoodle/udon13 -km default
|
||||
|
||||
Flashing example for this keyboard:
|
||||
|
||||
qmk flash -kb themadnoodle/udon13 -km default
|
||||
|
||||
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 & Flashing
|
||||
|
||||
|
||||
**Physical reset button**:
|
||||
|
||||
* Press the physical button located on the top left of the back of the PCB (Labeled RST) to enter Bootloader Mode
|
1
keyboards/themadnoodle/udon13/rules.mk
Normal file
1
keyboards/themadnoodle/udon13/rules.mk
Normal file
@ -0,0 +1 @@
|
||||
# This file intentionally left blank
|
76
keyboards/themadnoodle/udon13/udon13.c
Normal file
76
keyboards/themadnoodle/udon13/udon13.c
Normal file
@ -0,0 +1,76 @@
|
||||
// Copyright 2023 The Mad Noodle(@the_mad_noodle)
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
||||
#include "quantum.h"
|
||||
|
||||
#ifdef OLED_ENABLE
|
||||
|
||||
/* OLED Settings */
|
||||
//------------------------------------------------------------------------------------------------
|
||||
|
||||
static void render_logo(void) { // Render Mad Noodle logo
|
||||
static const char PROGMEM logo_1[] = {0x00, 0x00, 0x80, 0xc0, 0x60, 0x30, 0x18, 0x0c, 0x04, 0x06, 0x82, 0xc3, 0x43, 0x61, 0xa1, 0xa1, 0xa1, 0xa1, 0x61, 0x43, 0xc3, 0x82, 0x06, 0x04, 0x0c, 0x18, 0x30, 0x60, 0xc0, 0x80, 0x00, 0x00};
|
||||
static const char PROGMEM logo_2[] = {0xf8, 0x1e, 0xc3, 0xf8, 0x5c, 0x76, 0x7b, 0x6d, 0x75, 0x55, 0x55, 0x75, 0x6d, 0x7b, 0x76, 0x5e, 0x7e, 0x77, 0x5b, 0x6d, 0x75, 0x55, 0x55, 0x75, 0x4d, 0x7b, 0x66, 0x5c, 0xf0, 0xc3, 0x3e, 0xf0};
|
||||
static const char PROGMEM logo_3[] = {0x1f, 0x78, 0xc1, 0x0f, 0x38, 0xe0, 0xc0, 0x00, 0x00, 0x02, 0x0e, 0x0e, 0x8e, 0xc6, 0xc0, 0x40, 0x40, 0xc0, 0xc6, 0x8e, 0x0e, 0x0e, 0x02, 0x00, 0x80, 0xc0, 0x60, 0x38, 0x0f, 0xc0, 0x7c, 0x0f};
|
||||
static const char PROGMEM logo_4[] = {0x00, 0x00, 0x01, 0x03, 0x06, 0x0c, 0x18, 0x31, 0x23, 0x66, 0x44, 0x44, 0xc4, 0xc4, 0x84, 0x84, 0x84, 0x84, 0xc4, 0xc4, 0x44, 0x46, 0x66, 0x23, 0x11, 0x18, 0x0c, 0x06, 0x03, 0x00, 0x00, 0x00};
|
||||
oled_set_cursor(0, 0);
|
||||
oled_write_raw_P(logo_1, sizeof(logo_1));
|
||||
oled_set_cursor(0, 1);
|
||||
oled_write_raw_P(logo_2, sizeof(logo_2));
|
||||
oled_set_cursor(0, 2);
|
||||
oled_write_raw_P(logo_3, sizeof(logo_3));
|
||||
oled_set_cursor(0, 3);
|
||||
oled_write_raw_P(logo_4, sizeof(logo_4));
|
||||
}
|
||||
//-----------
|
||||
|
||||
bool oled_task_kb(void) {
|
||||
if (!oled_task_user()) { return false; }
|
||||
render_logo();
|
||||
oled_set_cursor(7, 0);
|
||||
oled_write_P(PSTR("The Mad Noodle"), false);
|
||||
|
||||
oled_set_cursor(7, 1);
|
||||
oled_write_P(PSTR("Layer: "), false);
|
||||
|
||||
/*
|
||||
To change LAYER NAMES displayed on the OLED ensure they are a total of 6 characters, including spaces.
|
||||
Example:
|
||||
---------------------------------------------------
|
||||
case 0:
|
||||
oled_write_P(PSTR("Base "), false);
|
||||
break;
|
||||
---------------------------------------------------
|
||||
"B A S E *SPACE* *SPACE*" = 6 characters
|
||||
This would change layer 0 to Base on the OLED
|
||||
*/
|
||||
|
||||
switch (get_highest_layer(layer_state)) {
|
||||
case 0:
|
||||
oled_write_P(PSTR("Zero "), false);
|
||||
break;
|
||||
case 1:
|
||||
oled_write_P(PSTR("One "), false);
|
||||
break;
|
||||
case 2:
|
||||
oled_write_P(PSTR("Two "), false);
|
||||
break;
|
||||
case 3:
|
||||
oled_write_P(PSTR("Three "), false);
|
||||
break;
|
||||
|
||||
default:
|
||||
oled_write_P(PSTR("N/A "), false);
|
||||
}
|
||||
oled_set_cursor(7, 2);
|
||||
oled_write_P(PSTR("Status: "), false);
|
||||
oled_set_cursor(7, 3);
|
||||
led_t led_state = host_keyboard_led_state();
|
||||
oled_write_P(led_state.num_lock ? PSTR("NUM ") : PSTR(" "), false);
|
||||
oled_write_P(led_state.caps_lock ? PSTR("CAP ") : PSTR(" "), false);
|
||||
oled_write_P(led_state.scroll_lock ? PSTR("SCR ") : PSTR(" "), false);
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
#endif
|
6
keyboards/vertex/cycle8/config.h
Normal file
6
keyboards/vertex/cycle8/config.h
Normal file
@ -0,0 +1,6 @@
|
||||
// Copyright 2022 Eason
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
||||
#pragma once
|
||||
|
||||
#define WS2812_SPI_DRIVER SPID2
|
8
keyboards/vertex/cycle8/halconf.h
Normal file
8
keyboards/vertex/cycle8/halconf.h
Normal file
@ -0,0 +1,8 @@
|
||||
// Copyright 2022 Eason
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
||||
#pragma once
|
||||
|
||||
#define HAL_USE_SPI TRUE
|
||||
|
||||
#include_next <halconf.h>
|
523
keyboards/vertex/cycle8/info.json
Normal file
523
keyboards/vertex/cycle8/info.json
Normal file
@ -0,0 +1,523 @@
|
||||
{
|
||||
"keyboard_name": "Cycle8",
|
||||
"manufacturer": "vertex",
|
||||
"url": "",
|
||||
"maintainer": "Eason",
|
||||
"usb": {
|
||||
"vid": "0x8A94",
|
||||
"pid": "0x8F70",
|
||||
"device_version": "0.0.1",
|
||||
"force_nkro": true
|
||||
},
|
||||
"features": {
|
||||
"bootmagic": true,
|
||||
"command": false,
|
||||
"console": false,
|
||||
"extrakey": true,
|
||||
"mousekey": true,
|
||||
"nkro": true,
|
||||
"rgblight": true
|
||||
},
|
||||
"rgblight": {
|
||||
"led_count": 7,
|
||||
"animations": {
|
||||
"breathing": true,
|
||||
"rainbow_mood": true,
|
||||
"rainbow_swirl": true,
|
||||
"snake": true,
|
||||
"knight": true,
|
||||
"christmas": true,
|
||||
"static_gradient": true,
|
||||
"rgb_test": true,
|
||||
"alternating": true,
|
||||
"twinkle": true
|
||||
}
|
||||
},
|
||||
"ws2812": {
|
||||
"pin": "B15",
|
||||
"driver": "spi"
|
||||
},
|
||||
"indicators": {
|
||||
"caps_lock": "C13",
|
||||
"scroll_lock": "A10"
|
||||
},
|
||||
"matrix_pins": {
|
||||
"rows": ["B7", "B6", "B5", "B4", "B3","A15"],
|
||||
"cols": ["A1", "A2", "A3", "A4", "A5", "A6", "A7", "B0", "B1", "B10", "B11", "B12", "B13", "B14", "A8", "A9"]
|
||||
},
|
||||
"diode_direction": "COL2ROW",
|
||||
"processor": "STM32F103",
|
||||
"bootloader": "uf2boot",
|
||||
"community_layouts": [
|
||||
"tkl_ansi",
|
||||
"tkl_ansi_split_bs_rshift",
|
||||
"tkl_iso",
|
||||
"tkl_iso_split_bs_rshift",
|
||||
],
|
||||
"layouts":{
|
||||
"LAYOUT_all": {
|
||||
"layout": [
|
||||
{"matrix": [0, 0], "x": 0, "y": 0},
|
||||
{"matrix": [0, 1], "x": 2, "y": 0},
|
||||
{"matrix": [0, 2], "x": 3, "y": 0},
|
||||
{"matrix": [0, 3], "x": 4, "y": 0},
|
||||
{"matrix": [0, 4], "x": 5, "y": 0},
|
||||
{"matrix": [0, 5], "x": 6.5, "y": 0},
|
||||
{"matrix": [0, 6], "x": 7.5, "y": 0},
|
||||
{"matrix": [0, 7], "x": 8.5, "y": 0},
|
||||
{"matrix": [0, 8], "x": 9.5, "y": 0},
|
||||
{"matrix": [0, 9], "x": 11, "y": 0},
|
||||
{"matrix": [0, 10], "x": 12, "y": 0},
|
||||
{"matrix": [0, 11], "x": 13, "y": 0},
|
||||
{"matrix": [0, 12], "x": 14, "y": 0},
|
||||
{"matrix": [0, 13], "x": 15.25, "y": 0},
|
||||
{"matrix": [0, 14], "x": 16.25, "y": 0},
|
||||
{"matrix": [0, 15], "x": 17.25, "y": 0},
|
||||
{"matrix": [1, 0], "x": 0, "y": 1.5},
|
||||
{"matrix": [1, 1], "x": 1, "y": 1.5},
|
||||
{"matrix": [1, 2], "x": 2, "y": 1.5},
|
||||
{"matrix": [1, 3], "x": 3, "y": 1.5},
|
||||
{"matrix": [1, 4], "x": 4, "y": 1.5},
|
||||
{"matrix": [1, 5], "x": 5, "y": 1.5},
|
||||
{"matrix": [1, 6], "x": 6, "y": 1.5},
|
||||
{"matrix": [1, 7], "x": 7, "y": 1.5},
|
||||
{"matrix": [1, 8], "x": 8, "y": 1.5},
|
||||
{"matrix": [1, 9], "x": 9, "y": 1.5},
|
||||
{"matrix": [1, 10], "x": 10, "y": 1.5},
|
||||
{"matrix": [1, 11], "x": 11, "y": 1.5},
|
||||
{"matrix": [1, 12], "x": 12, "y": 1.5},
|
||||
{"matrix": [1, 13], "x": 13, "y": 1.5},
|
||||
{"matrix": [1, 14], "x": 14, "y": 1.5},
|
||||
{"matrix": [1, 15], "x": 15.25, "y": 1.5},
|
||||
{"matrix": [3, 13], "x": 16.25, "y": 1.5},
|
||||
{"matrix": [3, 14], "x": 17.25, "y": 1.5},
|
||||
{"matrix": [2, 0], "x": 0, "y": 2.5, "w": 1.5},
|
||||
{"matrix": [2, 1], "x": 1.5, "y": 2.5},
|
||||
{"matrix": [2, 2], "x": 2.5, "y": 2.5},
|
||||
{"matrix": [2, 3], "x": 3.5, "y": 2.5},
|
||||
{"matrix": [2, 4], "x": 4.5, "y": 2.5},
|
||||
{"matrix": [2, 5], "x": 5.5, "y": 2.5},
|
||||
{"matrix": [2, 6], "x": 6.5, "y": 2.5},
|
||||
{"matrix": [2, 7], "x": 7.5, "y": 2.5},
|
||||
{"matrix": [2, 8], "x": 8.5, "y": 2.5},
|
||||
{"matrix": [2, 9], "x": 9.5, "y": 2.5},
|
||||
{"matrix": [2, 10], "x": 10.5, "y": 2.5},
|
||||
{"matrix": [2, 11], "x": 11.5, "y": 2.5},
|
||||
{"matrix": [2, 12], "x": 12.5, "y": 2.5},
|
||||
{"matrix": [2, 13], "x": 13.5, "y": 2.5, "w": 1.5},
|
||||
{"matrix": [2, 14], "x": 15.25, "y": 2.5},
|
||||
{"matrix": [2, 15], "x": 16.25, "y": 2.5},
|
||||
{"matrix": [3, 15], "x": 17.25, "y": 2.5},
|
||||
{"matrix": [3, 0], "x": 0, "y": 3.5, "w": 1.75},
|
||||
{"matrix": [3, 1], "x": 1.75, "y": 3.5},
|
||||
{"matrix": [3, 2], "x": 2.75, "y": 3.5},
|
||||
{"matrix": [3, 3], "x": 3.75, "y": 3.5},
|
||||
{"matrix": [3, 4], "x": 4.75, "y": 3.5},
|
||||
{"matrix": [3, 5], "x": 5.75, "y": 3.5},
|
||||
{"matrix": [3, 6], "x": 6.75, "y": 3.5},
|
||||
{"matrix": [3, 7], "x": 7.75, "y": 3.5},
|
||||
{"matrix": [3, 8], "x": 8.75, "y": 3.5},
|
||||
{"matrix": [3, 9], "x": 9.75, "y": 3.5},
|
||||
{"matrix": [3, 10], "x": 10.75, "y": 3.5},
|
||||
{"matrix": [3, 11], "x": 11.75, "y": 3.5},
|
||||
{"matrix": [3, 12], "x": 12.75, "y": 3.5, "w": 2.25},
|
||||
{"matrix": [4, 0], "x": 0, "y": 4.5, "w": 1.25},
|
||||
{"matrix": [4, 1], "x": 1.25, "y": 4.5},
|
||||
{"matrix": [4, 2], "x": 2.25, "y": 4.5},
|
||||
{"matrix": [4, 3], "x": 3.25, "y": 4.5},
|
||||
{"matrix": [4, 4], "x": 4.25, "y": 4.5},
|
||||
{"matrix": [4, 5], "x": 5.25, "y": 4.5},
|
||||
{"matrix": [4, 6], "x": 6.25, "y": 4.5},
|
||||
{"matrix": [4, 7], "x": 7.25, "y": 4.5},
|
||||
{"matrix": [4, 8], "x": 8.25, "y": 4.5},
|
||||
{"matrix": [4, 9], "x": 9.25, "y": 4.5},
|
||||
{"matrix": [4, 10], "x": 10.25, "y": 4.5},
|
||||
{"matrix": [4, 11], "x": 11.25, "y": 4.5},
|
||||
{"matrix": [4, 12], "x": 12.25, "y": 4.5, "w": 1.75},
|
||||
{"matrix": [4, 13], "x": 14, "y": 4.5},
|
||||
{"matrix": [4, 14], "x": 16.25, "y": 4.5},
|
||||
{"matrix": [5, 0], "x": 0, "y": 5.5, "w": 1.25},
|
||||
{"matrix": [5, 1], "x": 1.25, "y": 5.5, "w": 1.25},
|
||||
{"matrix": [5, 2], "x": 2.5, "y": 5.5, "w": 1.25},
|
||||
{"matrix": [5, 6], "x": 3.75, "y": 5.5, "w": 6.25},
|
||||
{"matrix": [5, 9], "x": 10, "y": 5.5, "w": 1.25},
|
||||
{"matrix": [5, 10], "x": 11.25, "y": 5.5, "w": 1.25},
|
||||
{"matrix": [5, 11], "x": 12.5, "y": 5.5, "w": 1.25},
|
||||
{"matrix": [5, 12], "x": 13.75, "y": 5.5, "w": 1.25},
|
||||
{"matrix": [5, 13], "x": 15.25, "y": 5.5},
|
||||
{"matrix": [5, 14], "x": 16.25, "y": 5.5},
|
||||
{"matrix": [5, 15], "x": 17.25, "y": 5.5}
|
||||
]
|
||||
},
|
||||
"LAYOUT_tkl_ansi_split_bs_rshift": {
|
||||
"layout": [
|
||||
{"matrix": [0, 0], "x": 0, "y": 0},
|
||||
{"matrix": [0, 1], "x": 2, "y": 0},
|
||||
{"matrix": [0, 2], "x": 3, "y": 0},
|
||||
{"matrix": [0, 3], "x": 4, "y": 0},
|
||||
{"matrix": [0, 4], "x": 5, "y": 0},
|
||||
{"matrix": [0, 5], "x": 6.5, "y": 0},
|
||||
{"matrix": [0, 6], "x": 7.5, "y": 0},
|
||||
{"matrix": [0, 7], "x": 8.5, "y": 0},
|
||||
{"matrix": [0, 8], "x": 9.5, "y": 0},
|
||||
{"matrix": [0, 9], "x": 11, "y": 0},
|
||||
{"matrix": [0, 10], "x": 12, "y": 0},
|
||||
{"matrix": [0, 11], "x": 13, "y": 0},
|
||||
{"matrix": [0, 12], "x": 14, "y": 0},
|
||||
{"matrix": [0, 13], "x": 15.25, "y": 0},
|
||||
{"matrix": [0, 14], "x": 16.25, "y": 0},
|
||||
{"matrix": [0, 15], "x": 17.25, "y": 0},
|
||||
{"matrix": [1, 0], "x": 0, "y": 1.5},
|
||||
{"matrix": [1, 1], "x": 1, "y": 1.5},
|
||||
{"matrix": [1, 2], "x": 2, "y": 1.5},
|
||||
{"matrix": [1, 3], "x": 3, "y": 1.5},
|
||||
{"matrix": [1, 4], "x": 4, "y": 1.5},
|
||||
{"matrix": [1, 5], "x": 5, "y": 1.5},
|
||||
{"matrix": [1, 6], "x": 6, "y": 1.5},
|
||||
{"matrix": [1, 7], "x": 7, "y": 1.5},
|
||||
{"matrix": [1, 8], "x": 8, "y": 1.5},
|
||||
{"matrix": [1, 9], "x": 9, "y": 1.5},
|
||||
{"matrix": [1, 10], "x": 10, "y": 1.5},
|
||||
{"matrix": [1, 11], "x": 11, "y": 1.5},
|
||||
{"matrix": [1, 12], "x": 12, "y": 1.5},
|
||||
{"matrix": [1, 13], "x": 13, "y": 1.5},
|
||||
{"matrix": [1, 14], "x": 14, "y": 1.5},
|
||||
{"matrix": [1, 15], "x": 15.25, "y": 1.5},
|
||||
{"matrix": [3, 13], "x": 16.25, "y": 1.5},
|
||||
{"matrix": [3, 14], "x": 17.25, "y": 1.5},
|
||||
{"matrix": [2, 0], "x": 0, "y": 2.5, "w": 1.5},
|
||||
{"matrix": [2, 1], "x": 1.5, "y": 2.5},
|
||||
{"matrix": [2, 2], "x": 2.5, "y": 2.5},
|
||||
{"matrix": [2, 3], "x": 3.5, "y": 2.5},
|
||||
{"matrix": [2, 4], "x": 4.5, "y": 2.5},
|
||||
{"matrix": [2, 5], "x": 5.5, "y": 2.5},
|
||||
{"matrix": [2, 6], "x": 6.5, "y": 2.5},
|
||||
{"matrix": [2, 7], "x": 7.5, "y": 2.5},
|
||||
{"matrix": [2, 8], "x": 8.5, "y": 2.5},
|
||||
{"matrix": [2, 9], "x": 9.5, "y": 2.5},
|
||||
{"matrix": [2, 10], "x": 10.5, "y": 2.5},
|
||||
{"matrix": [2, 11], "x": 11.5, "y": 2.5},
|
||||
{"matrix": [2, 12], "x": 12.5, "y": 2.5},
|
||||
{"matrix": [2, 13], "x": 13.5, "y": 2.5, "w": 1.5},
|
||||
{"matrix": [2, 14], "x": 15.25, "y": 2.5},
|
||||
{"matrix": [2, 15], "x": 16.25, "y": 2.5},
|
||||
{"matrix": [3, 15], "x": 17.25, "y": 2.5},
|
||||
{"matrix": [3, 0], "x": 0, "y": 3.5, "w": 1.75},
|
||||
{"matrix": [3, 1], "x": 1.75, "y": 3.5},
|
||||
{"matrix": [3, 2], "x": 2.75, "y": 3.5},
|
||||
{"matrix": [3, 3], "x": 3.75, "y": 3.5},
|
||||
{"matrix": [3, 4], "x": 4.75, "y": 3.5},
|
||||
{"matrix": [3, 5], "x": 5.75, "y": 3.5},
|
||||
{"matrix": [3, 6], "x": 6.75, "y": 3.5},
|
||||
{"matrix": [3, 7], "x": 7.75, "y": 3.5},
|
||||
{"matrix": [3, 8], "x": 8.75, "y": 3.5},
|
||||
{"matrix": [3, 9], "x": 9.75, "y": 3.5},
|
||||
{"matrix": [3, 10], "x": 10.75, "y": 3.5},
|
||||
{"matrix": [3, 11], "x": 11.75, "y": 3.5},
|
||||
{"matrix": [3, 12], "x": 12.75, "y": 3.5, "w": 2.25},
|
||||
{"matrix": [4, 0], "x": 0, "y": 4.5, "w": 2.25},
|
||||
{"matrix": [4, 2], "x": 2.25, "y": 4.5},
|
||||
{"matrix": [4, 3], "x": 3.25, "y": 4.5},
|
||||
{"matrix": [4, 4], "x": 4.25, "y": 4.5},
|
||||
{"matrix": [4, 5], "x": 5.25, "y": 4.5},
|
||||
{"matrix": [4, 6], "x": 6.25, "y": 4.5},
|
||||
{"matrix": [4, 7], "x": 7.25, "y": 4.5},
|
||||
{"matrix": [4, 8], "x": 8.25, "y": 4.5},
|
||||
{"matrix": [4, 9], "x": 9.25, "y": 4.5},
|
||||
{"matrix": [4, 10], "x": 10.25, "y": 4.5},
|
||||
{"matrix": [4, 11], "x": 11.25, "y": 4.5},
|
||||
{"matrix": [4, 12], "x": 12.25, "y": 4.5, "w": 1.75},
|
||||
{"matrix": [4, 13], "x": 14, "y": 4.5},
|
||||
{"matrix": [4, 14], "x": 16.25, "y": 4.5},
|
||||
{"matrix": [5, 0], "x": 0, "y": 5.5, "w": 1.25},
|
||||
{"matrix": [5, 1], "x": 1.25, "y": 5.5, "w": 1.25},
|
||||
{"matrix": [5, 2], "x": 2.5, "y": 5.5, "w": 1.25},
|
||||
{"matrix": [5, 6], "x": 3.75, "y": 5.5, "w": 6.25},
|
||||
{"matrix": [5, 9], "x": 10, "y": 5.5, "w": 1.25},
|
||||
{"matrix": [5, 10], "x": 11.25, "y": 5.5, "w": 1.25},
|
||||
{"matrix": [5, 11], "x": 12.5, "y": 5.5, "w": 1.25},
|
||||
{"matrix": [5, 12], "x": 13.75, "y": 5.5, "w": 1.25},
|
||||
{"matrix": [5, 13], "x": 15.25, "y": 5.5},
|
||||
{"matrix": [5, 14], "x": 16.25, "y": 5.5},
|
||||
{"matrix": [5, 15], "x": 17.25, "y": 5.5}
|
||||
]
|
||||
},
|
||||
"LAYOUT_tkl_ansi": {
|
||||
"layout": [
|
||||
{"matrix": [0, 0], "x": 0, "y": 0},
|
||||
{"matrix": [0, 1], "x": 2, "y": 0},
|
||||
{"matrix": [0, 2], "x": 3, "y": 0},
|
||||
{"matrix": [0, 3], "x": 4, "y": 0},
|
||||
{"matrix": [0, 4], "x": 5, "y": 0},
|
||||
{"matrix": [0, 5], "x": 6.5, "y": 0},
|
||||
{"matrix": [0, 6], "x": 7.5, "y": 0},
|
||||
{"matrix": [0, 7], "x": 8.5, "y": 0},
|
||||
{"matrix": [0, 8], "x": 9.5, "y": 0},
|
||||
{"matrix": [0, 9], "x": 11, "y": 0},
|
||||
{"matrix": [0, 10], "x": 12, "y": 0},
|
||||
{"matrix": [0, 11], "x": 13, "y": 0},
|
||||
{"matrix": [0, 12], "x": 14, "y": 0},
|
||||
{"matrix": [0, 13], "x": 15.25, "y": 0},
|
||||
{"matrix": [0, 14], "x": 16.25, "y": 0},
|
||||
{"matrix": [0, 15], "x": 17.25, "y": 0},
|
||||
{"matrix": [1, 0], "x": 0, "y": 1.5},
|
||||
{"matrix": [1, 1], "x": 1, "y": 1.5},
|
||||
{"matrix": [1, 2], "x": 2, "y": 1.5},
|
||||
{"matrix": [1, 3], "x": 3, "y": 1.5},
|
||||
{"matrix": [1, 4], "x": 4, "y": 1.5},
|
||||
{"matrix": [1, 5], "x": 5, "y": 1.5},
|
||||
{"matrix": [1, 6], "x": 6, "y": 1.5},
|
||||
{"matrix": [1, 7], "x": 7, "y": 1.5},
|
||||
{"matrix": [1, 8], "x": 8, "y": 1.5},
|
||||
{"matrix": [1, 9], "x": 9, "y": 1.5},
|
||||
{"matrix": [1, 10], "x": 10, "y": 1.5},
|
||||
{"matrix": [1, 11], "x": 11, "y": 1.5},
|
||||
{"matrix": [1, 12], "x": 12, "y": 1.5},
|
||||
{"matrix": [1, 13], "x": 13, "y": 1.5, "w": 2},
|
||||
{"matrix": [1, 15], "x": 15.25, "y": 1.5},
|
||||
{"matrix": [3, 13], "x": 16.25, "y": 1.5},
|
||||
{"matrix": [3, 14], "x": 17.25, "y": 1.5},
|
||||
{"matrix": [2, 0], "x": 0, "y": 2.5, "w": 1.5},
|
||||
{"matrix": [2, 1], "x": 1.5, "y": 2.5},
|
||||
{"matrix": [2, 2], "x": 2.5, "y": 2.5},
|
||||
{"matrix": [2, 3], "x": 3.5, "y": 2.5},
|
||||
{"matrix": [2, 4], "x": 4.5, "y": 2.5},
|
||||
{"matrix": [2, 5], "x": 5.5, "y": 2.5},
|
||||
{"matrix": [2, 6], "x": 6.5, "y": 2.5},
|
||||
{"matrix": [2, 7], "x": 7.5, "y": 2.5},
|
||||
{"matrix": [2, 8], "x": 8.5, "y": 2.5},
|
||||
{"matrix": [2, 9], "x": 9.5, "y": 2.5},
|
||||
{"matrix": [2, 10], "x": 10.5, "y": 2.5},
|
||||
{"matrix": [2, 11], "x": 11.5, "y": 2.5},
|
||||
{"matrix": [2, 12], "x": 12.5, "y": 2.5},
|
||||
{"matrix": [2, 13], "x": 13.5, "y": 2.5, "w": 1.5},
|
||||
{"matrix": [2, 14], "x": 15.25, "y": 2.5},
|
||||
{"matrix": [2, 15], "x": 16.25, "y": 2.5},
|
||||
{"matrix": [3, 15], "x": 17.25, "y": 2.5},
|
||||
{"matrix": [3, 0], "x": 0, "y": 3.5, "w": 1.75},
|
||||
{"matrix": [3, 1], "x": 1.75, "y": 3.5},
|
||||
{"matrix": [3, 2], "x": 2.75, "y": 3.5},
|
||||
{"matrix": [3, 3], "x": 3.75, "y": 3.5},
|
||||
{"matrix": [3, 4], "x": 4.75, "y": 3.5},
|
||||
{"matrix": [3, 5], "x": 5.75, "y": 3.5},
|
||||
{"matrix": [3, 6], "x": 6.75, "y": 3.5},
|
||||
{"matrix": [3, 7], "x": 7.75, "y": 3.5},
|
||||
{"matrix": [3, 8], "x": 8.75, "y": 3.5},
|
||||
{"matrix": [3, 9], "x": 9.75, "y": 3.5},
|
||||
{"matrix": [3, 10], "x": 10.75, "y": 3.5},
|
||||
{"matrix": [3, 11], "x": 11.75, "y": 3.5},
|
||||
{"matrix": [3, 12], "x": 12.75, "y": 3.5, "w": 2.25},
|
||||
{"matrix": [4, 0], "x": 0, "y": 4.5, "w": 2.25},
|
||||
{"matrix": [4, 2], "x": 2.25, "y": 4.5},
|
||||
{"matrix": [4, 3], "x": 3.25, "y": 4.5},
|
||||
{"matrix": [4, 4], "x": 4.25, "y": 4.5},
|
||||
{"matrix": [4, 5], "x": 5.25, "y": 4.5},
|
||||
{"matrix": [4, 6], "x": 6.25, "y": 4.5},
|
||||
{"matrix": [4, 7], "x": 7.25, "y": 4.5},
|
||||
{"matrix": [4, 8], "x": 8.25, "y": 4.5},
|
||||
{"matrix": [4, 9], "x": 9.25, "y": 4.5},
|
||||
{"matrix": [4, 10], "x": 10.25, "y": 4.5},
|
||||
{"matrix": [4, 11], "x": 11.25, "y": 4.5},
|
||||
{"matrix": [4, 12], "x": 12.25, "y": 4.5, "w": 2.75},
|
||||
{"matrix": [4, 14], "x": 16.25, "y": 4.5},
|
||||
{"matrix": [5, 0], "x": 0, "y": 5.5, "w": 1.25},
|
||||
{"matrix": [5, 1], "x": 1.25, "y": 5.5, "w": 1.25},
|
||||
{"matrix": [5, 2], "x": 2.5, "y": 5.5, "w": 1.25},
|
||||
{"matrix": [5, 6], "x": 3.75, "y": 5.5, "w": 6.25},
|
||||
{"matrix": [5, 9], "x": 10, "y": 5.5, "w": 1.25},
|
||||
{"matrix": [5, 10], "x": 11.25, "y": 5.5, "w": 1.25},
|
||||
{"matrix": [5, 11], "x": 12.5, "y": 5.5, "w": 1.25},
|
||||
{"matrix": [5, 12], "x": 13.75, "y": 5.5, "w": 1.25},
|
||||
{"matrix": [5, 13], "x": 15.25, "y": 5.5},
|
||||
{"matrix": [5, 14], "x": 16.25, "y": 5.5},
|
||||
{"matrix": [5, 15], "x": 17.25, "y": 5.5}
|
||||
]
|
||||
},
|
||||
"LAYOUT_tkl_iso_split_bs_rshift": {
|
||||
"layout": [
|
||||
{"matrix": [0, 0], "x": 0, "y": 0},
|
||||
{"matrix": [0, 1], "x": 2, "y": 0},
|
||||
{"matrix": [0, 2], "x": 3, "y": 0},
|
||||
{"matrix": [0, 3], "x": 4, "y": 0},
|
||||
{"matrix": [0, 4], "x": 5, "y": 0},
|
||||
{"matrix": [0, 5], "x": 6.5, "y": 0},
|
||||
{"matrix": [0, 6], "x": 7.5, "y": 0},
|
||||
{"matrix": [0, 7], "x": 8.5, "y": 0},
|
||||
{"matrix": [0, 8], "x": 9.5, "y": 0},
|
||||
{"matrix": [0, 9], "x": 11, "y": 0},
|
||||
{"matrix": [0, 10], "x": 12, "y": 0},
|
||||
{"matrix": [0, 11], "x": 13, "y": 0},
|
||||
{"matrix": [0, 12], "x": 14, "y": 0},
|
||||
{"matrix": [0, 13], "x": 15.25, "y": 0},
|
||||
{"matrix": [0, 14], "x": 16.25, "y": 0},
|
||||
{"matrix": [0, 15], "x": 17.25, "y": 0},
|
||||
{"matrix": [1, 0], "x": 0, "y": 1.5},
|
||||
{"matrix": [1, 1], "x": 1, "y": 1.5},
|
||||
{"matrix": [1, 2], "x": 2, "y": 1.5},
|
||||
{"matrix": [1, 3], "x": 3, "y": 1.5},
|
||||
{"matrix": [1, 4], "x": 4, "y": 1.5},
|
||||
{"matrix": [1, 5], "x": 5, "y": 1.5},
|
||||
{"matrix": [1, 6], "x": 6, "y": 1.5},
|
||||
{"matrix": [1, 7], "x": 7, "y": 1.5},
|
||||
{"matrix": [1, 8], "x": 8, "y": 1.5},
|
||||
{"matrix": [1, 9], "x": 9, "y": 1.5},
|
||||
{"matrix": [1, 10], "x": 10, "y": 1.5},
|
||||
{"matrix": [1, 11], "x": 11, "y": 1.5},
|
||||
{"matrix": [1, 12], "x": 12, "y": 1.5},
|
||||
{"matrix": [1, 13], "x": 13, "y": 1.5},
|
||||
{"matrix": [1, 14], "x": 14, "y": 1.5},
|
||||
{"matrix": [1, 15], "x": 15.25, "y": 1.5},
|
||||
{"matrix": [3, 13], "x": 16.25, "y": 1.5},
|
||||
{"matrix": [3, 14], "x": 17.25, "y": 1.5},
|
||||
{"matrix": [2, 0], "x": 0, "y": 2.5, "w": 1.5},
|
||||
{"matrix": [2, 1], "x": 1.5, "y": 2.5},
|
||||
{"matrix": [2, 2], "x": 2.5, "y": 2.5},
|
||||
{"matrix": [2, 3], "x": 3.5, "y": 2.5},
|
||||
{"matrix": [2, 4], "x": 4.5, "y": 2.5},
|
||||
{"matrix": [2, 5], "x": 5.5, "y": 2.5},
|
||||
{"matrix": [2, 6], "x": 6.5, "y": 2.5},
|
||||
{"matrix": [2, 7], "x": 7.5, "y": 2.5},
|
||||
{"matrix": [2, 8], "x": 8.5, "y": 2.5},
|
||||
{"matrix": [2, 9], "x": 9.5, "y": 2.5},
|
||||
{"matrix": [2, 10], "x": 10.5, "y": 2.5},
|
||||
{"matrix": [2, 11], "x": 11.5, "y": 2.5},
|
||||
{"matrix": [2, 12], "x": 12.5, "y": 2.5},
|
||||
{"matrix": [3, 12], "x": 13.75, "y": 2.5, "w": 1.25, "h": 2},
|
||||
{"matrix": [2, 14], "x": 15.25, "y": 2.5},
|
||||
{"matrix": [2, 15], "x": 16.25, "y": 2.5},
|
||||
{"matrix": [3, 15], "x": 17.25, "y": 2.5},
|
||||
{"matrix": [3, 0], "x": 0, "y": 3.5, "w": 1.75},
|
||||
{"matrix": [3, 1], "x": 1.75, "y": 3.5},
|
||||
{"matrix": [3, 2], "x": 2.75, "y": 3.5},
|
||||
{"matrix": [3, 3], "x": 3.75, "y": 3.5},
|
||||
{"matrix": [3, 4], "x": 4.75, "y": 3.5},
|
||||
{"matrix": [3, 5], "x": 5.75, "y": 3.5},
|
||||
{"matrix": [3, 6], "x": 6.75, "y": 3.5},
|
||||
{"matrix": [3, 7], "x": 7.75, "y": 3.5},
|
||||
{"matrix": [3, 8], "x": 8.75, "y": 3.5},
|
||||
{"matrix": [3, 9], "x": 9.75, "y": 3.5},
|
||||
{"matrix": [3, 10], "x": 10.75, "y": 3.5},
|
||||
{"matrix": [3, 11], "x": 11.75, "y": 3.5},
|
||||
{"matrix": [2, 13], "x": 12.75, "y": 3.5},
|
||||
{"matrix": [4, 0], "x": 0, "y": 4.5, "w": 1.25},
|
||||
{"matrix": [4, 1], "x": 1.25, "y": 4.5},
|
||||
{"matrix": [4, 2], "x": 2.25, "y": 4.5},
|
||||
{"matrix": [4, 3], "x": 3.25, "y": 4.5},
|
||||
{"matrix": [4, 4], "x": 4.25, "y": 4.5},
|
||||
{"matrix": [4, 5], "x": 5.25, "y": 4.5},
|
||||
{"matrix": [4, 6], "x": 6.25, "y": 4.5},
|
||||
{"matrix": [4, 7], "x": 7.25, "y": 4.5},
|
||||
{"matrix": [4, 8], "x": 8.25, "y": 4.5},
|
||||
{"matrix": [4, 9], "x": 9.25, "y": 4.5},
|
||||
{"matrix": [4, 10], "x": 10.25, "y": 4.5},
|
||||
{"matrix": [4, 11], "x": 11.25, "y": 4.5},
|
||||
{"matrix": [4, 12], "x": 12.25, "y": 4.5, "w": 1.75},
|
||||
{"matrix": [4, 13], "x": 14, "y": 4.5},
|
||||
{"matrix": [4, 14], "x": 16.25, "y": 4.5},
|
||||
{"matrix": [5, 0], "x": 0, "y": 5.5, "w": 1.25},
|
||||
{"matrix": [5, 1], "x": 1.25, "y": 5.5, "w": 1.25},
|
||||
{"matrix": [5, 3], "x": 2.5, "y": 5.5, "w": 1.25},
|
||||
{"matrix": [5, 6], "x": 3.75, "y": 5.5, "w": 6.25},
|
||||
{"matrix": [5, 9], "x": 10, "y": 5.5, "w": 1.25},
|
||||
{"matrix": [5, 10], "x": 11.25, "y": 5.5, "w": 1.25},
|
||||
{"matrix": [5, 11], "x": 12.5, "y": 5.5, "w": 1.25},
|
||||
{"matrix": [5, 12], "x": 13.75, "y": 5.5, "w": 1.25},
|
||||
{"matrix": [5, 13], "x": 15.25, "y": 5.5},
|
||||
{"matrix": [5, 14], "x": 16.25, "y": 5.5},
|
||||
{"matrix": [5, 15], "x": 17.25, "y": 5.5}
|
||||
]
|
||||
},
|
||||
"LAYOUT_tkl_iso": {
|
||||
"layout": [
|
||||
{"matrix": [0, 0], "x": 0, "y": 0},
|
||||
{"matrix": [0, 1], "x": 2, "y": 0},
|
||||
{"matrix": [0, 2], "x": 3, "y": 0},
|
||||
{"matrix": [0, 3], "x": 4, "y": 0},
|
||||
{"matrix": [0, 4], "x": 5, "y": 0},
|
||||
{"matrix": [0, 5], "x": 6.5, "y": 0},
|
||||
{"matrix": [0, 6], "x": 7.5, "y": 0},
|
||||
{"matrix": [0, 7], "x": 8.5, "y": 0},
|
||||
{"matrix": [0, 8], "x": 9.5, "y": 0},
|
||||
{"matrix": [0, 9], "x": 11, "y": 0},
|
||||
{"matrix": [0, 10], "x": 12, "y": 0},
|
||||
{"matrix": [0, 11], "x": 13, "y": 0},
|
||||
{"matrix": [0, 12], "x": 14, "y": 0},
|
||||
{"matrix": [0, 13], "x": 15.25, "y": 0},
|
||||
{"matrix": [0, 14], "x": 16.25, "y": 0},
|
||||
{"matrix": [0, 15], "x": 17.25, "y": 0},
|
||||
{"matrix": [1, 0], "x": 0, "y": 1.5},
|
||||
{"matrix": [1, 1], "x": 1, "y": 1.5},
|
||||
{"matrix": [1, 2], "x": 2, "y": 1.5},
|
||||
{"matrix": [1, 3], "x": 3, "y": 1.5},
|
||||
{"matrix": [1, 4], "x": 4, "y": 1.5},
|
||||
{"matrix": [1, 5], "x": 5, "y": 1.5},
|
||||
{"matrix": [1, 6], "x": 6, "y": 1.5},
|
||||
{"matrix": [1, 7], "x": 7, "y": 1.5},
|
||||
{"matrix": [1, 8], "x": 8, "y": 1.5},
|
||||
{"matrix": [1, 9], "x": 9, "y": 1.5},
|
||||
{"matrix": [1, 10], "x": 10, "y": 1.5},
|
||||
{"matrix": [1, 11], "x": 11, "y": 1.5},
|
||||
{"matrix": [1, 12], "x": 12, "y": 1.5},
|
||||
{"matrix": [1, 13], "x": 13, "y": 1.5, "w": 2},
|
||||
{"matrix": [1, 15], "x": 15.25, "y": 1.5},
|
||||
{"matrix": [3, 13], "x": 16.25, "y": 1.5},
|
||||
{"matrix": [3, 14], "x": 17.25, "y": 1.5},
|
||||
{"matrix": [2, 0], "x": 0, "y": 2.5, "w": 1.5},
|
||||
{"matrix": [2, 1], "x": 1.5, "y": 2.5},
|
||||
{"matrix": [2, 2], "x": 2.5, "y": 2.5},
|
||||
{"matrix": [2, 3], "x": 3.5, "y": 2.5},
|
||||
{"matrix": [2, 4], "x": 4.5, "y": 2.5},
|
||||
{"matrix": [2, 5], "x": 5.5, "y": 2.5},
|
||||
{"matrix": [2, 6], "x": 6.5, "y": 2.5},
|
||||
{"matrix": [2, 7], "x": 7.5, "y": 2.5},
|
||||
{"matrix": [2, 8], "x": 8.5, "y": 2.5},
|
||||
{"matrix": [2, 9], "x": 9.5, "y": 2.5},
|
||||
{"matrix": [2, 10], "x": 10.5, "y": 2.5},
|
||||
{"matrix": [2, 11], "x": 11.5, "y": 2.5},
|
||||
{"matrix": [2, 12], "x": 12.5, "y": 2.5},
|
||||
{"matrix": [3, 12], "x": 13.75, "y": 2.5, "w": 1.25, "h": 2},
|
||||
{"matrix": [2, 14], "x": 15.25, "y": 2.5},
|
||||
{"matrix": [2, 15], "x": 16.25, "y": 2.5},
|
||||
{"matrix": [3, 15], "x": 17.25, "y": 2.5},
|
||||
{"matrix": [3, 0], "x": 0, "y": 3.5, "w": 1.75},
|
||||
{"matrix": [3, 1], "x": 1.75, "y": 3.5},
|
||||
{"matrix": [3, 2], "x": 2.75, "y": 3.5},
|
||||
{"matrix": [3, 3], "x": 3.75, "y": 3.5},
|
||||
{"matrix": [3, 4], "x": 4.75, "y": 3.5},
|
||||
{"matrix": [3, 5], "x": 5.75, "y": 3.5},
|
||||
{"matrix": [3, 6], "x": 6.75, "y": 3.5},
|
||||
{"matrix": [3, 7], "x": 7.75, "y": 3.5},
|
||||
{"matrix": [3, 8], "x": 8.75, "y": 3.5},
|
||||
{"matrix": [3, 9], "x": 9.75, "y": 3.5},
|
||||
{"matrix": [3, 10], "x": 10.75, "y": 3.5},
|
||||
{"matrix": [3, 11], "x": 11.75, "y": 3.5},
|
||||
{"matrix": [2, 13], "x": 12.75, "y": 3.5},
|
||||
{"matrix": [4, 0], "x": 0, "y": 4.5, "w": 1.25},
|
||||
{"matrix": [4, 1], "x": 1.25, "y": 4.5},
|
||||
{"matrix": [4, 2], "x": 2.25, "y": 4.5},
|
||||
{"matrix": [4, 3], "x": 3.25, "y": 4.5},
|
||||
{"matrix": [4, 4], "x": 4.25, "y": 4.5},
|
||||
{"matrix": [4, 5], "x": 5.25, "y": 4.5},
|
||||
{"matrix": [4, 6], "x": 6.25, "y": 4.5},
|
||||
{"matrix": [4, 7], "x": 7.25, "y": 4.5},
|
||||
{"matrix": [4, 8], "x": 8.25, "y": 4.5},
|
||||
{"matrix": [4, 9], "x": 9.25, "y": 4.5},
|
||||
{"matrix": [4, 10], "x": 10.25, "y": 4.5},
|
||||
{"matrix": [4, 11], "x": 11.25, "y": 4.5},
|
||||
{"matrix": [4, 12], "x": 12.25, "y": 4.5, "w": 2.75},
|
||||
{"matrix": [4, 14], "x": 16.25, "y": 4.5},
|
||||
{"matrix": [5, 0], "x": 0, "y": 5.5, "w": 1.25},
|
||||
{"matrix": [5, 1], "x": 1.25, "y": 5.5, "w": 1.25},
|
||||
{"matrix": [5, 2], "x": 2.5, "y": 5.5, "w": 1.25},
|
||||
{"matrix": [5, 6], "x": 3.75, "y": 5.5, "w": 6.25},
|
||||
{"matrix": [5, 9], "x": 10, "y": 5.5, "w": 1.25},
|
||||
{"matrix": [5, 10], "x": 11.25, "y": 5.5, "w": 1.25},
|
||||
{"matrix": [5, 11], "x": 12.5, "y": 5.5, "w": 1.25},
|
||||
{"matrix": [5, 12], "x": 13.75, "y": 5.5, "w": 1.25},
|
||||
{"matrix": [5, 13], "x": 15.25, "y": 5.5},
|
||||
{"matrix": [5, 14], "x": 16.25, "y": 5.5},
|
||||
{"matrix": [5, 15], "x": 17.25, "y": 5.5}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
16
keyboards/vertex/cycle8/keymaps/default/keymap.c
Normal file
16
keyboards/vertex/cycle8/keymaps/default/keymap.c
Normal file
@ -0,0 +1,16 @@
|
||||
// Copyright 2022 Eason
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
||||
#include QMK_KEYBOARD_H
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
|
||||
[0] = LAYOUT_all(
|
||||
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_DEL, 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_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_1, KC_RSFT, KC_UP,
|
||||
KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_LALT, KC_LGUI, KC_MENU, KC_LCTL, KC_LEFT, KC_DOWN, KC_RGHT
|
||||
)
|
||||
};
|
16
keyboards/vertex/cycle8/keymaps/via/keymap.c
Normal file
16
keyboards/vertex/cycle8/keymaps/via/keymap.c
Normal file
@ -0,0 +1,16 @@
|
||||
// Copyright 2022 Eason
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
||||
#include QMK_KEYBOARD_H
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
|
||||
[0] = LAYOUT_all(
|
||||
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_DEL, 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_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_1, KC_RSFT, KC_UP,
|
||||
KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_LALT, KC_LGUI, KC_MENU, KC_LCTL, KC_LEFT, KC_DOWN, KC_RGHT
|
||||
)
|
||||
};
|
2
keyboards/vertex/cycle8/keymaps/via/rules.mk
Normal file
2
keyboards/vertex/cycle8/keymaps/via/rules.mk
Normal file
@ -0,0 +1,2 @@
|
||||
VIA_ENABLE = yes
|
||||
LTO_ENABLE = yes
|
9
keyboards/vertex/cycle8/mcuconf.h
Normal file
9
keyboards/vertex/cycle8/mcuconf.h
Normal file
@ -0,0 +1,9 @@
|
||||
// Copyright 2022 Eason
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
||||
#pragma once
|
||||
|
||||
#include_next <mcuconf.h>
|
||||
|
||||
#undef STM32_SPI_USE_SPI2
|
||||
#define STM32_SPI_USE_SPI2 TRUE
|
27
keyboards/vertex/cycle8/readme.md
Normal file
27
keyboards/vertex/cycle8/readme.md
Normal file
@ -0,0 +1,27 @@
|
||||
# cycle8
|
||||
|
||||
![Cycle8](https://i.imgur.com/gCExreih.png)
|
||||
|
||||
A customizable soldered TKL/80% keyboard.
|
||||
|
||||
* Keyboard Maintainer: [EASON](https://github.com/EasonQian1)
|
||||
* Hardware Supported: Cycle8 PCB
|
||||
* Hardware Availability: [EASON](https://github.com/EasonQian1)
|
||||
|
||||
Make example for this keyboard (after setting up your build environment):
|
||||
|
||||
make vertex/cycle8:default
|
||||
|
||||
Flashing example for this keyboard:
|
||||
|
||||
make vertex/cycle8: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 Esc in the keyboard then replug
|
||||
* **Physical reset button**: Briefly press the button on the back of the PCB
|
||||
* **Keycode in layout**: Press the key mapped to `QK_BOOT`
|
1
keyboards/vertex/cycle8/rules.mk
Normal file
1
keyboards/vertex/cycle8/rules.mk
Normal file
@ -0,0 +1 @@
|
||||
# This file intentionally left blank
|
80
keyboards/wilba_tech/wt20_h1/info.json
Normal file
80
keyboards/wilba_tech/wt20_h1/info.json
Normal file
@ -0,0 +1,80 @@
|
||||
{
|
||||
"manufacturer": "wilba.tech",
|
||||
"keyboard_name": "WT20-H1",
|
||||
"maintainer": "Wilba",
|
||||
"bootloader": "atmel-dfu",
|
||||
"build": {
|
||||
"lto": true
|
||||
},
|
||||
"diode_direction": "COL2ROW",
|
||||
"features": {
|
||||
"bootmagic": true,
|
||||
"extrakey": true,
|
||||
"mousekey": true,
|
||||
"nkro": true
|
||||
},
|
||||
"matrix_pins": {
|
||||
"cols": ["F4", "F0", "B2", "B1"],
|
||||
"rows": ["B3", "F1", "F5", "F6", "F7"]
|
||||
},
|
||||
"processor": "atmega32u4",
|
||||
"qmk": {
|
||||
"locking": {
|
||||
"enabled": true,
|
||||
"resync": true
|
||||
}
|
||||
},
|
||||
"usb": {
|
||||
"device_version": "0.0.1",
|
||||
"pid": "0x0041",
|
||||
"vid": "0x6582"
|
||||
},
|
||||
"community_layouts": ["ortho_5x4", "numpad_5x4"],
|
||||
"layouts": {
|
||||
"LAYOUT_numpad_5x4": {
|
||||
"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": [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, "h": 2},
|
||||
{"matrix": [2, 0], "x": 0, "y": 2},
|
||||
{"matrix": [2, 1], "x": 1, "y": 2},
|
||||
{"matrix": [2, 2], "x": 2, "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, "h": 2},
|
||||
{"matrix": [4, 0], "x": 0, "y": 4, "w": 2},
|
||||
{"matrix": [4, 2], "x": 2, "y": 4}
|
||||
]
|
||||
},
|
||||
"LAYOUT_ortho_5x4": {
|
||||
"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": [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": [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": [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": [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}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
14
keyboards/wilba_tech/wt20_h1/keymaps/default/keymap.c
Normal file
14
keyboards/wilba_tech/wt20_h1/keymaps/default/keymap.c
Normal file
@ -0,0 +1,14 @@
|
||||
// Copyright 2024 Jason Williams (@wilba)
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
||||
#include QMK_KEYBOARD_H
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
[0] = LAYOUT_ortho_5x4(
|
||||
KC_NUM, KC_PSLS, KC_PAST, KC_PMNS,
|
||||
KC_P7, KC_P8, KC_P9, KC_PPLS,
|
||||
KC_P4, KC_P5, KC_P6, KC_PPLS,
|
||||
KC_P1, KC_P2, KC_P3, KC_PENT,
|
||||
KC_P0, KC_P0, KC_PDOT, KC_PENT
|
||||
),
|
||||
};
|
4
keyboards/wilba_tech/wt20_h1/keymaps/via/keymap.c
Normal file
4
keyboards/wilba_tech/wt20_h1/keymaps/via/keymap.c
Normal file
@ -0,0 +1,4 @@
|
||||
// Copyright 2024 Jason Williams (@wilba)
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
||||
#include "../default/keymap.c"
|
1
keyboards/wilba_tech/wt20_h1/keymaps/via/rules.mk
Normal file
1
keyboards/wilba_tech/wt20_h1/keymaps/via/rules.mk
Normal file
@ -0,0 +1 @@
|
||||
VIA_ENABLE = yes
|
19
keyboards/wilba_tech/wt20_h1/readme.md
Normal file
19
keyboards/wilba_tech/wt20_h1/readme.md
Normal file
@ -0,0 +1,19 @@
|
||||
# wilba.tech WT20-H1
|
||||
|
||||
WT20-H1 is a hotswap numpad PCB supporting split plus, enter and zero keys (i.e. 5x4 ortho).
|
||||
|
||||
Initially designed for the [HIBI JUNIOR](https://hibi.mx/products/junior-r1)
|
||||
|
||||
- Keyboard Maintainer: [wilba](https://github.com/wilba)
|
||||
- Hardware Supported: wilba.tech WT20-H1-HIBI
|
||||
- Hardware Availability: [HIBI](https://hibi.mx/products/junior-r1)
|
||||
|
||||
Make example for this keyboard (after setting up your build environment):
|
||||
|
||||
make wilba_tech/wt20_h1:default
|
||||
|
||||
Flashing example for this keyboard:
|
||||
|
||||
make wilba_tech/wt20_h1: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).
|
1
keyboards/wilba_tech/wt20_h1/rules.mk
Normal file
1
keyboards/wilba_tech/wt20_h1/rules.mk
Normal file
@ -0,0 +1 @@
|
||||
# This file is intentionally blank
|
24
keyboards/ziptyze/lets_split_v3/config.h
Normal file
24
keyboards/ziptyze/lets_split_v3/config.h
Normal file
@ -0,0 +1,24 @@
|
||||
/*
|
||||
Copyright 2023 ziptyze
|
||||
|
||||
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 <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
#define SERIAL_USART_FULL_DUPLEX
|
||||
#define SERIAL_USART_TX_PIN GP16
|
||||
#define SERIAL_USART_RX_PIN GP17
|
||||
#define SERIAL_USART_PIN_SWAP
|
||||
|
305
keyboards/ziptyze/lets_split_v3/info.json
Normal file
305
keyboards/ziptyze/lets_split_v3/info.json
Normal file
@ -0,0 +1,305 @@
|
||||
{
|
||||
"manufacturer": "ziptyze",
|
||||
"keyboard_name": "Let's Split v3",
|
||||
"maintainer": "ziptyze",
|
||||
"board": "GENERIC_RP_RP2040",
|
||||
"bootloader": "rp2040",
|
||||
"processor": "RP2040",
|
||||
"features": {
|
||||
"bootmagic": true,
|
||||
"command": false,
|
||||
"console": false,
|
||||
"extrakey": true,
|
||||
"mousekey": true,
|
||||
"rgb_matrix": true
|
||||
},
|
||||
"dynamic_keymap": {
|
||||
"layer_count": 10
|
||||
},
|
||||
"usb": {
|
||||
"device_version": "1.0.0",
|
||||
"pid": "0x6900",
|
||||
"vid": "0x6F75"
|
||||
},
|
||||
"split": {
|
||||
"transport": {
|
||||
"sync": {
|
||||
"matrix_state": true
|
||||
}
|
||||
},
|
||||
"enabled": true
|
||||
},
|
||||
"matrix_pins": {
|
||||
"direct": [
|
||||
["GP25", "GP27", "GP28", "GP4", "GP5", "GP8"],
|
||||
["GP24", "GP26", "GP29", "GP3", "GP6", "GP9"],
|
||||
["GP23", "GP21", "GP18", "GP15", "GP12", "GP10"],
|
||||
["GP22", "GP20", "GP19", "GP14", "GP13", "GP11"]
|
||||
]
|
||||
},
|
||||
"ws2812": {
|
||||
"driver": "vendor",
|
||||
"pin": "GP1"
|
||||
},
|
||||
"community_layouts": ["ortho_4x12"],
|
||||
"layouts": {
|
||||
"LAYOUT_ortho_4x12": {
|
||||
"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, 0], "x": 7, "y": 0},
|
||||
{"matrix": [4, 1], "x": 8, "y": 0},
|
||||
{"matrix": [4, 2], "x": 9, "y": 0},
|
||||
{"matrix": [4, 3], "x": 10, "y": 0},
|
||||
{"matrix": [4, 4], "x": 11, "y": 0},
|
||||
{"matrix": [4, 5], "x": 12, "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, 0], "x": 7, "y": 1},
|
||||
{"matrix": [5, 1], "x": 8, "y": 1},
|
||||
{"matrix": [5, 2], "x": 9, "y": 1},
|
||||
{"matrix": [5, 3], "x": 10, "y": 1},
|
||||
{"matrix": [5, 4], "x": 11, "y": 1},
|
||||
{"matrix": [5, 5], "x": 12, "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": [6, 0], "x": 7, "y": 2},
|
||||
{"matrix": [6, 1], "x": 8, "y": 2},
|
||||
{"matrix": [6, 2], "x": 9, "y": 2},
|
||||
{"matrix": [6, 3], "x": 10, "y": 2},
|
||||
{"matrix": [6, 4], "x": 11, "y": 2},
|
||||
{"matrix": [6, 5], "x": 12, "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": [7, 0], "x": 7, "y": 3},
|
||||
{"matrix": [7, 1], "x": 8, "y": 3},
|
||||
{"matrix": [7, 2], "x": 9, "y": 3},
|
||||
{"matrix": [7, 3], "x": 10, "y": 3},
|
||||
{"matrix": [7, 4], "x": 11, "y": 3},
|
||||
{"matrix": [7, 5], "x": 12, "y": 3}
|
||||
]
|
||||
}
|
||||
},
|
||||
"rgb_matrix": {
|
||||
"driver": "ws2812",
|
||||
"split_count": [63, 63],
|
||||
"max_brightness": 200,
|
||||
"sleep": true,
|
||||
"animations": {
|
||||
"alphas_mods": true,
|
||||
"gradient_up_down": true,
|
||||
"gradient_left_right": true,
|
||||
"breathing": true,
|
||||
"band_sat": true,
|
||||
"band_val": true,
|
||||
"band_pinwheel_sat": true,
|
||||
"band_pinwheel_val": true,
|
||||
"band_spiral_sat": true,
|
||||
"band_spiral_val": true,
|
||||
"cycle_all": true,
|
||||
"cycle_left_right": true,
|
||||
"cycle_up_down": true,
|
||||
"cycle_out_in": true,
|
||||
"cycle_out_in_dual": true,
|
||||
"rainbow_moving_chevron": true,
|
||||
"cycle_pinwheel": true,
|
||||
"cycle_spiral": true,
|
||||
"dual_beacon": true,
|
||||
"rainbow_beacon": true,
|
||||
"rainbow_pinwheels": true,
|
||||
"raindrops": true,
|
||||
"jellybean_raindrops": true,
|
||||
"hue_breathing": true,
|
||||
"hue_pendulum": true,
|
||||
"hue_wave": true,
|
||||
"pixel_fractal": true,
|
||||
"pixel_flow": true,
|
||||
"pixel_rain": true,
|
||||
"typing_heatmap": true,
|
||||
"digital_rain": true,
|
||||
"solid_reactive_simple": true,
|
||||
"solid_reactive": true,
|
||||
"solid_reactive_wide": true,
|
||||
"solid_reactive_multiwide": true,
|
||||
"solid_reactive_cross": true,
|
||||
"solid_reactive_multicross": true,
|
||||
"solid_reactive_nexus": true,
|
||||
"solid_reactive_multinexus": true,
|
||||
"splash": true,
|
||||
"multisplash": true,
|
||||
"solid_splash": true,
|
||||
"solid_multisplash": true
|
||||
},
|
||||
"layout": [
|
||||
{ "flags": 2, "x": 62, "y": 1 },
|
||||
{ "flags": 2, "x": 70, "y": 1 },
|
||||
{ "flags": 2, "x": 79, "y": 1 },
|
||||
{ "flags": 2, "x": 88, "y": 1 },
|
||||
{ "flags": 2, "x": 98, "y": 1 },
|
||||
{ "flags": 2, "x": 107, "y": 1 },
|
||||
{ "flags": 2, "x": 111, "y": 4 },
|
||||
{ "flags": 2, "x": 111, "y": 12 },
|
||||
|
||||
{ "flags": 4, "matrix": [0, 5], "x": 103, "y": 8 },
|
||||
{ "flags": 4, "matrix": [0, 4], "x": 84, "y": 8 },
|
||||
{ "flags": 4, "matrix": [0, 3], "x": 65, "y": 8 },
|
||||
{ "flags": 4, "matrix": [1, 3], "x": 65, "y": 24 },
|
||||
{ "flags": 4, "matrix": [1, 4], "x": 84, "y": 24 },
|
||||
{ "flags": 4, "matrix": [1, 5], "x": 103, "y": 24 },
|
||||
|
||||
{ "flags": 2, "x": 111, "y": 20 },
|
||||
{ "flags": 2, "x": 111, "y": 28 },
|
||||
{ "flags": 2, "x": 111, "y": 36 },
|
||||
{ "flags": 2, "x": 111, "y": 44 },
|
||||
|
||||
{ "flags": 4, "matrix": [2, 5], "x": 103, "y": 40 },
|
||||
{ "flags": 4, "matrix": [2, 4], "x": 84, "y": 40 },
|
||||
{ "flags": 4, "matrix": [2, 3], "x": 65, "y": 40 },
|
||||
{ "flags": 1, "matrix": [3, 3], "x": 65, "y": 56 },
|
||||
{ "flags": 1, "matrix": [3, 4], "x": 84, "y": 56 },
|
||||
{ "flags": 1, "matrix": [3, 5], "x": 103, "y": 56 },
|
||||
|
||||
{ "flags": 2, "x": 111, "y": 52 },
|
||||
{ "flags": 2, "x": 111, "y": 60 },
|
||||
{ "flags": 2, "x": 107, "y": 63 },
|
||||
{ "flags": 2, "x": 98, "y": 63 },
|
||||
{ "flags": 2, "x": 88, "y": 63 },
|
||||
{ "flags": 2, "x": 79, "y": 63 },
|
||||
{ "flags": 2, "x": 70, "y": 63 },
|
||||
{ "flags": 2, "x": 61, "y": 63 },
|
||||
{ "flags": 2, "x": 51, "y": 63 },
|
||||
{ "flags": 2, "x": 42, "y": 63 },
|
||||
{ "flags": 2, "x": 33, "y": 63 },
|
||||
{ "flags": 2, "x": 23, "y": 63 },
|
||||
{ "flags": 2, "x": 14, "y": 63 },
|
||||
{ "flags": 2, "x": 5, "y": 63 },
|
||||
{ "flags": 2, "x": 1, "y": 60 },
|
||||
{ "flags": 2, "x": 1, "y": 52 },
|
||||
|
||||
{ "flags": 1, "matrix": [3, 0], "x": 9, "y": 56 },
|
||||
{ "flags": 1, "matrix": [3, 1], "x": 28, "y": 56 },
|
||||
{ "flags": 1, "matrix": [3, 2], "x": 47, "y": 56 },
|
||||
{ "flags": 4, "matrix": [2, 2], "x": 47, "y": 40 },
|
||||
{ "flags": 4, "matrix": [2, 1], "x": 28, "y": 40 },
|
||||
{ "flags": 1, "matrix": [2, 0], "x": 9, "y": 40 },
|
||||
|
||||
{ "flags": 2, "x": 1, "y": 44 },
|
||||
{ "flags": 2, "x": 1, "y": 36 },
|
||||
{ "flags": 2, "x": 1, "y": 28 },
|
||||
{ "flags": 2, "x": 1, "y": 20 },
|
||||
|
||||
{ "flags": 1, "matrix": [1, 0], "x": 9, "y": 24 },
|
||||
{ "flags": 4, "matrix": [1, 1], "x": 28, "y": 24 },
|
||||
{ "flags": 4, "matrix": [1, 2], "x": 47, "y": 24 },
|
||||
{ "flags": 4, "matrix": [0, 2], "x": 47, "y": 8 },
|
||||
{ "flags": 4, "matrix": [0, 1], "x": 28, "y": 8 },
|
||||
{ "flags": 1, "matrix": [0, 0], "x": 9, "y": 8 },
|
||||
|
||||
{ "flags": 2, "x": 1, "y": 12 },
|
||||
{ "flags": 2, "x": 1, "y": 4 },
|
||||
{ "flags": 2, "x": 5, "y": 1 },
|
||||
{ "flags": 2, "x": 13, "y": 1 },
|
||||
{ "flags": 2, "x": 28, "y": 1 },
|
||||
{ "flags": 2, "x": 37, "y": 1 },
|
||||
{ "flags": 2, "x": 47, "y": 1 },
|
||||
|
||||
|
||||
|
||||
|
||||
{ "flags": 2, "x": 174, "y": 1 },
|
||||
{ "flags": 2, "x": 182, "y": 1 },
|
||||
{ "flags": 2, "x": 191, "y": 1 },
|
||||
{ "flags": 2, "x": 200, "y": 1 },
|
||||
{ "flags": 2, "x": 210, "y": 1 },
|
||||
{ "flags": 2, "x": 219, "y": 1 },
|
||||
{ "flags": 2, "x": 223, "y": 4 },
|
||||
{ "flags": 2, "x": 223, "y": 12 },
|
||||
|
||||
{ "flags": 1, "matrix": [4, 5], "x": 215, "y": 8 },
|
||||
{ "flags": 4, "matrix": [4, 4], "x": 196, "y": 8 },
|
||||
{ "flags": 4, "matrix": [4, 3], "x": 177, "y": 8 },
|
||||
{ "flags": 4, "matrix": [5, 3], "x": 177, "y": 24 },
|
||||
{ "flags": 4, "matrix": [5, 4], "x": 196, "y": 24 },
|
||||
{ "flags": 1, "matrix": [5, 5], "x": 215, "y": 24 },
|
||||
|
||||
{ "flags": 2, "x": 223, "y": 20 },
|
||||
{ "flags": 2, "x": 223, "y": 28 },
|
||||
{ "flags": 2, "x": 223, "y": 36 },
|
||||
{ "flags": 2, "x": 223, "y": 44 },
|
||||
|
||||
{ "flags": 1, "matrix": [6, 5], "x": 215, "y": 40 },
|
||||
{ "flags": 4, "matrix": [6, 4], "x": 196, "y": 40 },
|
||||
{ "flags": 4, "matrix": [6, 3], "x": 177, "y": 40 },
|
||||
{ "flags": 1, "matrix": [7, 3], "x": 177, "y": 56 },
|
||||
{ "flags": 1, "matrix": [7, 4], "x": 196, "y": 56 },
|
||||
{ "flags": 1, "matrix": [7, 5], "x": 215, "y": 56 },
|
||||
|
||||
{ "flags": 2, "x": 223, "y": 52 },
|
||||
{ "flags": 2, "x": 223, "y": 60 },
|
||||
{ "flags": 2, "x": 219, "y": 63 },
|
||||
{ "flags": 2, "x": 210, "y": 63 },
|
||||
{ "flags": 2, "x": 200, "y": 63 },
|
||||
{ "flags": 2, "x": 191, "y": 63 },
|
||||
{ "flags": 2, "x": 182, "y": 63 },
|
||||
{ "flags": 2, "x": 173, "y": 63 },
|
||||
{ "flags": 2, "x": 163, "y": 63 },
|
||||
{ "flags": 2, "x": 154, "y": 63 },
|
||||
{ "flags": 2, "x": 145, "y": 63 },
|
||||
{ "flags": 2, "x": 135, "y": 63 },
|
||||
{ "flags": 2, "x": 126, "y": 63 },
|
||||
{ "flags": 2, "x": 117, "y": 63 },
|
||||
{ "flags": 2, "x": 113, "y": 60 },
|
||||
{ "flags": 2, "x": 113, "y": 52 },
|
||||
|
||||
{ "flags": 1, "matrix": [7, 0], "x": 121, "y": 56 },
|
||||
{ "flags": 1, "matrix": [7, 1], "x": 140, "y": 56 },
|
||||
{ "flags": 1, "matrix": [7, 2], "x": 159, "y": 56 },
|
||||
{ "flags": 4, "matrix": [6, 2], "x": 159, "y": 40 },
|
||||
{ "flags": 4, "matrix": [6, 1], "x": 140, "y": 40 },
|
||||
{ "flags": 4, "matrix": [6, 0], "x": 121, "y": 40 },
|
||||
|
||||
{ "flags": 2, "x": 113, "y": 44 },
|
||||
{ "flags": 2, "x": 113, "y": 36 },
|
||||
{ "flags": 2, "x": 113, "y": 28 },
|
||||
{ "flags": 2, "x": 113, "y": 20 },
|
||||
|
||||
{ "flags": 4, "matrix": [5, 0], "x": 121, "y": 24 },
|
||||
{ "flags": 4, "matrix": [5, 1], "x": 148, "y": 24 },
|
||||
{ "flags": 4, "matrix": [5, 2], "x": 159, "y": 24 },
|
||||
{ "flags": 4, "matrix": [4, 2], "x": 159, "y": 8 },
|
||||
{ "flags": 4, "matrix": [4, 1], "x": 148, "y": 8 },
|
||||
{ "flags": 4, "matrix": [4, 0], "x": 121, "y": 8 },
|
||||
|
||||
{ "flags": 2, "x": 113, "y": 12 },
|
||||
{ "flags": 2, "x": 113, "y": 4 },
|
||||
{ "flags": 2, "x": 117, "y": 1 },
|
||||
{ "flags": 2, "x": 140, "y": 1 },
|
||||
{ "flags": 2, "x": 149, "y": 1 },
|
||||
{ "flags": 2, "x": 159, "y": 1 },
|
||||
{ "flags": 2, "x": 169, "y": 1 }
|
||||
]
|
||||
}
|
||||
}
|
45
keyboards/ziptyze/lets_split_v3/keymaps/default/keymap.c
Normal file
45
keyboards/ziptyze/lets_split_v3/keymaps/default/keymap.c
Normal file
@ -0,0 +1,45 @@
|
||||
/*
|
||||
Copyright 2020 Danny Nguyen <danny@keeb.io>
|
||||
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 <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include QMK_KEYBOARD_H
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
[0] = LAYOUT_ortho_4x12(
|
||||
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 ,
|
||||
KC_GRV, KC_LCTL, KC_LALT, KC_LGUI, TL_LOWR, KC_SPC, KC_SPC, TL_UPPR, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT
|
||||
),
|
||||
|
||||
[1] = LAYOUT_ortho_4x12(
|
||||
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,
|
||||
BL_STEP, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12,S(KC_NUHS),S(KC_NUBS),KC_HOME, KC_END, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY
|
||||
),
|
||||
|
||||
[2] = LAYOUT_ortho_4x12(
|
||||
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_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS,
|
||||
_______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_NUHS, KC_NUBS, KC_PGUP, KC_PGDN, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY
|
||||
),
|
||||
|
||||
[3] = LAYOUT_ortho_4x12(
|
||||
_______, QK_BOOT, DB_TOGG, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_DEL ,
|
||||
_______, _______, _______, AU_ON, AU_OFF, AG_NORM, AG_SWAP, _______, _______, _______, _______, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
|
||||
)
|
||||
};
|
45
keyboards/ziptyze/lets_split_v3/keymaps/via/keymap.c
Normal file
45
keyboards/ziptyze/lets_split_v3/keymaps/via/keymap.c
Normal file
@ -0,0 +1,45 @@
|
||||
/*
|
||||
Copyright 2020 Danny Nguyen <danny@keeb.io>
|
||||
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 <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include QMK_KEYBOARD_H
|
||||
|
||||
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
||||
[0] = LAYOUT_ortho_4x12(
|
||||
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 ,
|
||||
KC_GRV, KC_LCTL, KC_LALT, KC_LGUI, TL_LOWR, KC_SPC, KC_SPC, TL_UPPR, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT
|
||||
),
|
||||
|
||||
[1] = LAYOUT_ortho_4x12(
|
||||
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,
|
||||
BL_STEP, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12,S(KC_NUHS),S(KC_NUBS),KC_HOME, KC_END, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY
|
||||
),
|
||||
|
||||
[2] = LAYOUT_ortho_4x12(
|
||||
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_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS,
|
||||
_______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_NUHS, KC_NUBS, KC_PGUP, KC_PGDN, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY
|
||||
),
|
||||
|
||||
[3] = LAYOUT_ortho_4x12(
|
||||
_______, QK_BOOT, DB_TOGG, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_DEL ,
|
||||
_______, _______, _______, AU_ON, AU_OFF, AG_NORM, AG_SWAP, _______, _______, _______, _______, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
|
||||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
|
||||
)
|
||||
};
|
1
keyboards/ziptyze/lets_split_v3/keymaps/via/rules.mk
Normal file
1
keyboards/ziptyze/lets_split_v3/keymaps/via/rules.mk
Normal file
@ -0,0 +1 @@
|
||||
VIA_ENABLE = yes
|
26
keyboards/ziptyze/lets_split_v3/readme.md
Normal file
26
keyboards/ziptyze/lets_split_v3/readme.md
Normal file
@ -0,0 +1,26 @@
|
||||
# Let's Split v3
|
||||
|
||||
![Let's Split v3](https://i.imgur.com/ksZ64dKh.jpg)
|
||||
|
||||
Version 3 of the Let's Split keyboard, originally designed by Wootapatoot. This version features identical PCBs for both halves powered by an RP2040 controller. Each half features full hot swap capability as well as in-switch addressable LEDs and 39 1mm underglow LEDs.
|
||||
|
||||
* Keyboard Maintainer: [ziptyze](https://github.com/ziptyze)
|
||||
* Hardware Supported: Let's Split v3 PCB
|
||||
* Hardware Availability: [1upkeyboards](https://1upkeyboards.com/shop/keyboard-kits/diy-40-kits/lets-split-v3/#choose-your-kit)
|
||||
|
||||
Make example for this keyboard (after setting up your build environment):
|
||||
|
||||
make ziptyze/lets_split_v3:default
|
||||
|
||||
Flashing example for this keyboard:
|
||||
|
||||
make ziptyze/lets_split_v3: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 2 ways:
|
||||
|
||||
* **Bootmagic reset**: Hold down the key at (0,0) in the matrix, the top left key, and plug in the keyboard
|
||||
* **BOOTSEL button**: Hold down the reset button on the PCB, and plug in the keyboard
|
1
keyboards/ziptyze/lets_split_v3/rules.mk
Normal file
1
keyboards/ziptyze/lets_split_v3/rules.mk
Normal file
@ -0,0 +1 @@
|
||||
SERIAL_DRIVER = vendor
|
Loading…
Reference in New Issue
Block a user