[Keyboard] Add Saevus Cor TKL (#18369)

This commit is contained in:
Ramon Imbao 2022-09-24 23:36:19 +08:00 committed by GitHub
parent 3072feb8ed
commit 5ff2d93582
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
13 changed files with 910 additions and 0 deletions

View file

@ -0,0 +1,26 @@
/*
Copyright 2022 Ramon Imbao
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
#include "config_common.h"
/* RGB Matrix setup */
#define RGB_DI_PIN GP19
#define DRIVER_LED_TOTAL 2
#define RGBLED_NUM 2
#define WS2812_PIO_USE_PIO1 // Force the usage of PIO1 peripheral, by default the WS2812 implementation uses the PIO0 peripheral

View file

@ -0,0 +1,44 @@
/* Copyright 2022 Ramon Imbao
*
* 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 "cor_tkl.h"
led_config_t g_led_config = {{
// Key Matrix to LED Index
{ NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, 1, NO_LED },
{ NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED },
{ NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED },
{ 0, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED },
{ NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED },
{ NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED }
}, {
// LED Index to Physical Position
{ 5, 40 }, { 211, 0 }
}, {
// LED Index to Flag
LED_FLAG_INDICATOR, LED_FLAG_INDICATOR
}};
void rgb_matrix_indicators_advanced_kb(uint8_t led_min, uint8_t led_max) {
if (!host_keyboard_led_state().caps_lock) {
RGB_MATRIX_INDICATOR_SET_COLOR(0, 0, 0, 0);
}
if (!host_keyboard_led_state().scroll_lock) {
RGB_MATRIX_INDICATOR_SET_COLOR(1, 0, 0, 0);
}
rgb_matrix_indicators_advanced_user(led_min, led_max);
}

View file

@ -0,0 +1,121 @@
/* Copyright 2022 Ramon Imbao
*
* 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
#include "quantum.h"
#define ___ KC_NO
// ANSI layout
// Full backspace
// Full right shift
// Full left shift
#define LAYOUT_tkl_f13_ansi( \
k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0d, k0e, k0f, k0g, \
k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, k1d, k1e, k1f, k1g, \
k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2c, k2d, k2e, k2f, k2g, \
k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, \
k40, k42, k43, k44, k45, k46, k47, k48, k49, k4a, k4b, k4c, k4f, \
k50, k51, k52, k57, k5a, k5b, k5c, k5d, k5e, k5f, k5g \
) { \
{ k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0d, k0e, k0f, k0g }, \
{ k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, k1d, k1e, k1f, k1g }, \
{ k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2c, k2d, k2e, k2f, k2g }, \
{ k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, ___, ___, ___, ___ }, \
{ k40, ___, k42, k43, k44, k45, k46, k47, k48, k49, k4a, k4b, k4c, ___, ___, k4f, ___ }, \
{ k50, k51, k52, ___, ___, ___, ___, k57, ___, ___, k5a, k5b, k5c, k5d, k5e, k5f, k5g }, \
}
// ANSI layout
// Split backspace
// Split right shift
// Full left shift
#define LAYOUT_tkl_f13_ansi_split_bs_rshift( \
k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0d, k0e, k0f, k0g, \
k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, k1d, k3d, k1e, k1f, k1g, \
k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2c, k2d, k2e, k2f, k2g, \
k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, \
k40, k42, k43, k44, k45, k46, k47, k48, k49, k4a, k4b, k4c, k4d, k4f, \
k50, k51, k52, k57, k5a, k5b, k5c, k5d, k5e, k5f, k5g \
) { \
{ k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0d, k0e, k0f, k0g }, \
{ k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, k1d, k1e, k1f, k1g }, \
{ k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2c, k2d, k2e, k2f, k2g }, \
{ k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, k3d, ___, ___, ___ }, \
{ k40, ___, k42, k43, k44, k45, k46, k47, k48, k49, k4a, k4b, k4c, k4d, ___, k4f, ___ }, \
{ k50, k51, k52, ___, ___, ___, ___, k57, ___, ___, k5a, k5b, k5c, k5d, k5e, k5f, k5g }, \
}
// ISO layout
// Full backspace
// Full right shift
// Split left shift
#define LAYOUT_tkl_f13_iso( \
k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0d, k0e, k0f, k0g, \
k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, k1d, k1e, k1f, k1g, \
k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2c, k2e, k2f, k2g, \
k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, k2d, \
k40, k41, k42, k43, k44, k45, k46, k47, k48, k49, k4a, k4b, k4c, k4f, \
k50, k51, k52, k57, k5a, k5b, k5c, k5d, k5e, k5f, k5g \
) { \
{ k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0d, k0e, k0f, k0g }, \
{ k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, k1d, k1e, k1f, k1g }, \
{ k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2c, k2d, k2e, k2f, k2g }, \
{ k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, ___, ___, ___, ___ }, \
{ k40, k41, k42, k43, k44, k45, k46, k47, k48, k49, k4a, k4b, k4c, ___, ___, k4f, ___ }, \
{ k50, k51, k52, ___, ___, ___, ___, k57, ___, ___, k5a, k5b, k5c, k5d, k5e, k5f, k5g }, \
}
// ISO layout
// Split backspace
// Split right shift
// Split left shift
#define LAYOUT_tkl_f13_iso_split_bs_rshift( \
k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0d, k0e, k0f, k0g, \
k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, k1d, k3d, k1e, k1f, k1g, \
k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2c, k2e, k2f, k2g, \
k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, k2d, \
k40, k41, k42, k43, k44, k45, k46, k47, k48, k49, k4a, k4b, k4c, k4d, k4f, \
k50, k51, k52, k57, k5a, k5b, k5c, k5d, k5e, k5f, k5g \
) { \
{ k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0d, k0e, k0f, k0g }, \
{ k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, k1d, k1e, k1f, k1g }, \
{ k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2c, k2d, k2e, k2f, k2g }, \
{ k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, k3d, ___, ___, ___ }, \
{ k40, k41, k42, k43, k44, k45, k46, k47, k48, k49, k4a, k4b, k4c, k4d, ___, k4f, ___ }, \
{ k50, k51, k52, ___, ___, ___, ___, k57, ___, ___, k5a, k5b, k5c, k5d, k5e, k5f, k5g }, \
}
// Layout for VIA
// Split backspace
// Split left shift
// Split right shift
#define LAYOUT_all( \
k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0d, k0e, k0f, k0g, \
k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, k1d, k3d, k1e, k1f, k1g, \
k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2c, k2d, k2e, k2f, k2g, \
k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, \
k40, k41, k42, k43, k44, k45, k46, k47, k48, k49, k4a, k4b, k4c, k4d, k4f, \
k50, k51, k52, k57, k5a, k5b, k5c, k5d, k5e, k5f, k5g \
) { \
{ k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0d, k0e, k0f, k0g }, \
{ k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, k1d, k1e, k1f, k1g }, \
{ k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2c, k2d, k2e, k2f, k2g }, \
{ k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, k3d, ___, ___, ___ }, \
{ k40, k41, k42, k43, k44, k45, k46, k47, k48, k49, k4a, k4b, k4c, k4d, ___, k4f, ___ }, \
{ k50, k51, k52, ___, ___, ___, ___, k57, ___, ___, k5a, k5b, k5c, k5d, k5e, k5f, k5g } \
}

View file

@ -0,0 +1,524 @@
{
"keyboard_name": "Cor TKL",
"manufacturer": "saevus",
"url": "",
"maintainer": "ramonimbao",
"layout_aliases": {
"LAYOUT_ansi": "LAYOUT_tkl_f13_ansi",
"LAYOUT_iso": "LAYOUT_tkl_f13_iso"
},
"features": {
"bootmagic": true,
"mousekey": true,
"extrakey": true,
"console": false,
"command": false,
"nkro": false
},
"usb": {
"vid": "0x5001",
"pid": "0x0003",
"device_version": "1.0.0"
},
"diode_direction": "COL2ROW",
"matrix_pins": {
"cols": ["GP29", "GP28", "GP27", "GP26", "GP25", "GP24", "GP23", "GP22", "GP18", "GP17", "GP16", "GP15", "GP14", "GP13", "GP12", "GP11", "GP5"],
"rows": ["GP0", "GP1", "GP2", "GP21", "GP3", "GP4"]
},
"layouts": {
"LAYOUT_tkl_f13_ansi": {
"layout": [
{"x":0, "y":0},
{"x":1.25, "y":0},
{"x":2.25, "y":0},
{"x":3.25, "y":0},
{"x":4.25, "y":0},
{"x":5.5, "y":0},
{"x":6.5, "y":0},
{"x":7.5, "y":0},
{"x":8.5, "y":0},
{"x":9.75, "y":0},
{"x":10.75, "y":0},
{"x":11.75, "y":0},
{"x":12.75, "y":0},
{"x":14, "y":0},
{"x":15.25, "y":0},
{"x":16.25, "y":0},
{"x":17.25, "y":0},
{"x":0, "y":1.25},
{"x":1, "y":1.25},
{"x":2, "y":1.25},
{"x":3, "y":1.25},
{"x":4, "y":1.25},
{"x":5, "y":1.25},
{"x":6, "y":1.25},
{"x":7, "y":1.25},
{"x":8, "y":1.25},
{"x":9, "y":1.25},
{"x":10, "y":1.25},
{"x":11, "y":1.25},
{"x":12, "y":1.25},
{"x":13, "y":1.25, "w":2},
{"x":15.25, "y":1.25},
{"x":16.25, "y":1.25},
{"x":17.25, "y":1.25},
{"x":0, "y":2.25, "w":1.5},
{"x":1.5, "y":2.25},
{"x":2.5, "y":2.25},
{"x":3.5, "y":2.25},
{"x":4.5, "y":2.25},
{"x":5.5, "y":2.25},
{"x":6.5, "y":2.25},
{"x":7.5, "y":2.25},
{"x":8.5, "y":2.25},
{"x":9.5, "y":2.25},
{"x":10.5, "y":2.25},
{"x":11.5, "y":2.25},
{"x":12.5, "y":2.25},
{"x":13.5, "y":2.25, "w":1.5},
{"x":15.25, "y":2.25},
{"x":16.25, "y":2.25},
{"x":17.25, "y":2.25},
{"x":0, "y":3.25, "w":1.75},
{"x":1.75, "y":3.25},
{"x":2.75, "y":3.25},
{"x":3.75, "y":3.25},
{"x":4.75, "y":3.25},
{"x":5.75, "y":3.25},
{"x":6.75, "y":3.25},
{"x":7.75, "y":3.25},
{"x":8.75, "y":3.25},
{"x":9.75, "y":3.25},
{"x":10.75, "y":3.25},
{"x":11.75, "y":3.25},
{"x":12.75, "y":3.25, "w":2.25},
{"x":0, "y":4.25, "w":2.25},
{"x":2.25, "y":4.25},
{"x":3.25, "y":4.25},
{"x":4.25, "y":4.25},
{"x":5.25, "y":4.25},
{"x":6.25, "y":4.25},
{"x":7.25, "y":4.25},
{"x":8.25, "y":4.25},
{"x":9.25, "y":4.25},
{"x":10.25, "y":4.25},
{"x":11.25, "y":4.25},
{"x":12.25, "y":4.25, "w":2.75},
{"x":16.25, "y":4.25},
{"x":0, "y":5.25, "w":1.25},
{"x":1.25, "y":5.25, "w":1.25},
{"x":2.5, "y":5.25, "w":1.25},
{"x":3.75, "y":5.25, "w":6.25},
{"x":10, "y":5.25, "w":1.25},
{"x":11.25, "y":5.25, "w":1.25},
{"x":12.5, "y":5.25, "w":1.25},
{"x":13.75, "y":5.25, "w":1.25},
{"x":15.25, "y":5.25},
{"x":16.25, "y":5.25},
{"x":17.25, "y":5.25}
]
},
"LAYOUT_tkl_f13_ansi_split_bs_rshift": {
"layout": [
{"x":0, "y":0},
{"x":1.25, "y":0},
{"x":2.25, "y":0},
{"x":3.25, "y":0},
{"x":4.25, "y":0},
{"x":5.5, "y":0},
{"x":6.5, "y":0},
{"x":7.5, "y":0},
{"x":8.5, "y":0},
{"x":9.75, "y":0},
{"x":10.75, "y":0},
{"x":11.75, "y":0},
{"x":12.75, "y":0},
{"x":14, "y":0},
{"x":15.25, "y":0},
{"x":16.25, "y":0},
{"x":17.25, "y":0},
{"x":0, "y":1.25},
{"x":1, "y":1.25},
{"x":2, "y":1.25},
{"x":3, "y":1.25},
{"x":4, "y":1.25},
{"x":5, "y":1.25},
{"x":6, "y":1.25},
{"x":7, "y":1.25},
{"x":8, "y":1.25},
{"x":9, "y":1.25},
{"x":10, "y":1.25},
{"x":11, "y":1.25},
{"x":12, "y":1.25},
{"x":13, "y":1.25},
{"x":14, "y":1.25},
{"x":15.25, "y":1.25},
{"x":16.25, "y":1.25},
{"x":17.25, "y":1.25},
{"x":0, "y":2.25, "w":1.5},
{"x":1.5, "y":2.25},
{"x":2.5, "y":2.25},
{"x":3.5, "y":2.25},
{"x":4.5, "y":2.25},
{"x":5.5, "y":2.25},
{"x":6.5, "y":2.25},
{"x":7.5, "y":2.25},
{"x":8.5, "y":2.25},
{"x":9.5, "y":2.25},
{"x":10.5, "y":2.25},
{"x":11.5, "y":2.25},
{"x":12.5, "y":2.25},
{"x":13.5, "y":2.25, "w":1.5},
{"x":15.25, "y":2.25},
{"x":16.25, "y":2.25},
{"x":17.25, "y":2.25},
{"x":0, "y":3.25, "w":1.75},
{"x":1.75, "y":3.25},
{"x":2.75, "y":3.25},
{"x":3.75, "y":3.25},
{"x":4.75, "y":3.25},
{"x":5.75, "y":3.25},
{"x":6.75, "y":3.25},
{"x":7.75, "y":3.25},
{"x":8.75, "y":3.25},
{"x":9.75, "y":3.25},
{"x":10.75, "y":3.25},
{"x":11.75, "y":3.25},
{"x":12.75, "y":3.25, "w":2.25},
{"x":0, "y":4.25, "w":2.25},
{"x":2.25, "y":4.25},
{"x":3.25, "y":4.25},
{"x":4.25, "y":4.25},
{"x":5.25, "y":4.25},
{"x":6.25, "y":4.25},
{"x":7.25, "y":4.25},
{"x":8.25, "y":4.25},
{"x":9.25, "y":4.25},
{"x":10.25, "y":4.25},
{"x":11.25, "y":4.25},
{"x":12.25, "y":4.25, "w":1.75},
{"x":14, "y":4.25},
{"x":16.25, "y":4.25},
{"x":0, "y":5.25, "w":1.25},
{"x":1.25, "y":5.25, "w":1.25},
{"x":2.5, "y":5.25, "w":1.25},
{"x":3.75, "y":5.25, "w":6.25},
{"x":10, "y":5.25, "w":1.25},
{"x":11.25, "y":5.25, "w":1.25},
{"x":12.5, "y":5.25, "w":1.25},
{"x":13.75, "y":5.25, "w":1.25},
{"x":15.25, "y":5.25},
{"x":16.25, "y":5.25},
{"x":17.25, "y":5.25}
]
},
"LAYOUT_tkl_f13_iso": {
"layout": [
{"x":0, "y":0},
{"x":1.25, "y":0},
{"x":2.25, "y":0},
{"x":3.25, "y":0},
{"x":4.25, "y":0},
{"x":5.5, "y":0},
{"x":6.5, "y":0},
{"x":7.5, "y":0},
{"x":8.5, "y":0},
{"x":9.75, "y":0},
{"x":10.75, "y":0},
{"x":11.75, "y":0},
{"x":12.75, "y":0},
{"x":14, "y":0},
{"x":15.25, "y":0},
{"x":16.25, "y":0},
{"x":17.25, "y":0},
{"x":0, "y":1.25},
{"x":1, "y":1.25},
{"x":2, "y":1.25},
{"x":3, "y":1.25},
{"x":4, "y":1.25},
{"x":5, "y":1.25},
{"x":6, "y":1.25},
{"x":7, "y":1.25},
{"x":8, "y":1.25},
{"x":9, "y":1.25},
{"x":10, "y":1.25},
{"x":11, "y":1.25},
{"x":12, "y":1.25},
{"x":13, "y":1.25, "w":2},
{"x":15.25, "y":1.25},
{"x":16.25, "y":1.25},
{"x":17.25, "y":1.25},
{"x":0, "y":2.25, "w":1.5},
{"x":1.5, "y":2.25},
{"x":2.5, "y":2.25},
{"x":3.5, "y":2.25},
{"x":4.5, "y":2.25},
{"x":5.5, "y":2.25},
{"x":6.5, "y":2.25},
{"x":7.5, "y":2.25},
{"x":8.5, "y":2.25},
{"x":9.5, "y":2.25},
{"x":10.5, "y":2.25},
{"x":11.5, "y":2.25},
{"x":12.5, "y":2.25},
{"x":15.25, "y":2.25},
{"x":16.25, "y":2.25},
{"x":17.25, "y":2.25},
{"x":0, "y":3.25, "w":1.75},
{"x":1.75, "y":3.25},
{"x":2.75, "y":3.25},
{"x":3.75, "y":3.25},
{"x":4.75, "y":3.25},
{"x":5.75, "y":3.25},
{"x":6.75, "y":3.25},
{"x":7.75, "y":3.25},
{"x":8.75, "y":3.25},
{"x":9.75, "y":3.25},
{"x":10.75, "y":3.25},
{"x":11.75, "y":3.25},
{"x":12.75, "y":3.25},
{"x":13.75, "y":2.25, "w":1.25, "h":2},
{"x":0, "y":4.25, "w":1.25},
{"x":1.25, "y":4.25},
{"x":2.25, "y":4.25},
{"x":3.25, "y":4.25},
{"x":4.25, "y":4.25},
{"x":5.25, "y":4.25},
{"x":6.25, "y":4.25},
{"x":7.25, "y":4.25},
{"x":8.25, "y":4.25},
{"x":9.25, "y":4.25},
{"x":10.25, "y":4.25},
{"x":11.25, "y":4.25},
{"x":12.25, "y":4.25, "w":2.75},
{"x":16.25, "y":4.25},
{"x":0, "y":5.25, "w":1.25},
{"x":1.25, "y":5.25, "w":1.25},
{"x":2.5, "y":5.25, "w":1.25},
{"x":3.75, "y":5.25, "w":6.25},
{"x":10, "y":5.25, "w":1.25},
{"x":11.25, "y":5.25, "w":1.25},
{"x":12.5, "y":5.25, "w":1.25},
{"x":13.75, "y":5.25, "w":1.25},
{"x":15.25, "y":5.25},
{"x":16.25, "y":5.25},
{"x":17.25, "y":5.25}
]
},
"LAYOUT_tkl_f13_iso_split_bs_rshift": {
"layout": [
{"x":0, "y":0},
{"x":1.25, "y":0},
{"x":2.25, "y":0},
{"x":3.25, "y":0},
{"x":4.25, "y":0},
{"x":5.5, "y":0},
{"x":6.5, "y":0},
{"x":7.5, "y":0},
{"x":8.5, "y":0},
{"x":9.75, "y":0},
{"x":10.75, "y":0},
{"x":11.75, "y":0},
{"x":12.75, "y":0},
{"x":14, "y":0},
{"x":15.25, "y":0},
{"x":16.25, "y":0},
{"x":17.25, "y":0},
{"x":0, "y":1.25},
{"x":1, "y":1.25},
{"x":2, "y":1.25},
{"x":3, "y":1.25},
{"x":4, "y":1.25},
{"x":5, "y":1.25},
{"x":6, "y":1.25},
{"x":7, "y":1.25},
{"x":8, "y":1.25},
{"x":9, "y":1.25},
{"x":10, "y":1.25},
{"x":11, "y":1.25},
{"x":12, "y":1.25},
{"x":13, "y":1.25},
{"x":14, "y":1.25},
{"x":15.25, "y":1.25},
{"x":16.25, "y":1.25},
{"x":17.25, "y":1.25},
{"x":0, "y":2.25, "w":1.5},
{"x":1.5, "y":2.25},
{"x":2.5, "y":2.25},
{"x":3.5, "y":2.25},
{"x":4.5, "y":2.25},
{"x":5.5, "y":2.25},
{"x":6.5, "y":2.25},
{"x":7.5, "y":2.25},
{"x":8.5, "y":2.25},
{"x":9.5, "y":2.25},
{"x":10.5, "y":2.25},
{"x":11.5, "y":2.25},
{"x":12.5, "y":2.25},
{"x":15.25, "y":2.25},
{"x":16.25, "y":2.25},
{"x":17.25, "y":2.25},
{"x":0, "y":3.25, "w":1.75},
{"x":1.75, "y":3.25},
{"x":2.75, "y":3.25},
{"x":3.75, "y":3.25},
{"x":4.75, "y":3.25},
{"x":5.75, "y":3.25},
{"x":6.75, "y":3.25},
{"x":7.75, "y":3.25},
{"x":8.75, "y":3.25},
{"x":9.75, "y":3.25},
{"x":10.75, "y":3.25},
{"x":11.75, "y":3.25},
{"x":12.75, "y":3.25},
{"x":13.75, "y":2.25, "w":1.25, "h":2},
{"x":0, "y":4.25, "w":1.25},
{"x":1.25, "y":4.25},
{"x":2.25, "y":4.25},
{"x":3.25, "y":4.25},
{"x":4.25, "y":4.25},
{"x":5.25, "y":4.25},
{"x":6.25, "y":4.25},
{"x":7.25, "y":4.25},
{"x":8.25, "y":4.25},
{"x":9.25, "y":4.25},
{"x":10.25, "y":4.25},
{"x":11.25, "y":4.25},
{"x":12.25, "y":4.25, "w":1.75},
{"x":14, "y":4.25},
{"x":16.25, "y":4.25},
{"x":0, "y":5.25, "w":1.25},
{"x":1.25, "y":5.25, "w":1.25},
{"x":2.5, "y":5.25, "w":1.25},
{"x":3.75, "y":5.25, "w":6.25},
{"x":10, "y":5.25, "w":1.25},
{"x":11.25, "y":5.25, "w":1.25},
{"x":12.5, "y":5.25, "w":1.25},
{"x":13.75, "y":5.25, "w":1.25},
{"x":15.25, "y":5.25},
{"x":16.25, "y":5.25},
{"x":17.25, "y":5.25}
]
},
"LAYOUT_all": {
"layout": [
{"x":0, "y":0},
{"x":1.25, "y":0},
{"x":2.25, "y":0},
{"x":3.25, "y":0},
{"x":4.25, "y":0},
{"x":5.5, "y":0},
{"x":6.5, "y":0},
{"x":7.5, "y":0},
{"x":8.5, "y":0},
{"x":9.75, "y":0},
{"x":10.75, "y":0},
{"x":11.75, "y":0},
{"x":12.75, "y":0},
{"x":14, "y":0},
{"x":15.25, "y":0},
{"x":16.25, "y":0},
{"x":17.25, "y":0},
{"x":0, "y":1.25},
{"x":1, "y":1.25},
{"x":2, "y":1.25},
{"x":3, "y":1.25},
{"x":4, "y":1.25},
{"x":5, "y":1.25},
{"x":6, "y":1.25},
{"x":7, "y":1.25},
{"x":8, "y":1.25},
{"x":9, "y":1.25},
{"x":10, "y":1.25},
{"x":11, "y":1.25},
{"x":12, "y":1.25},
{"x":13, "y":1.25},
{"x":14, "y":1.25},
{"x":15.25, "y":1.25},
{"x":16.25, "y":1.25},
{"x":17.25, "y":1.25},
{"x":0, "y":2.25, "w":1.5},
{"x":1.5, "y":2.25},
{"x":2.5, "y":2.25},
{"x":3.5, "y":2.25},
{"x":4.5, "y":2.25},
{"x":5.5, "y":2.25},
{"x":6.5, "y":2.25},
{"x":7.5, "y":2.25},
{"x":8.5, "y":2.25},
{"x":9.5, "y":2.25},
{"x":10.5, "y":2.25},
{"x":11.5, "y":2.25},
{"x":12.5, "y":2.25},
{"x":13.5, "y":2.25, "w":1.5},
{"x":15.25, "y":2.25},
{"x":16.25, "y":2.25},
{"x":17.25, "y":2.25},
{"x":0, "y":3.25, "w":1.75},
{"x":1.75, "y":3.25},
{"x":2.75, "y":3.25},
{"x":3.75, "y":3.25},
{"x":4.75, "y":3.25},
{"x":5.75, "y":3.25},
{"x":6.75, "y":3.25},
{"x":7.75, "y":3.25},
{"x":8.75, "y":3.25},
{"x":9.75, "y":3.25},
{"x":10.75, "y":3.25},
{"x":11.75, "y":3.25},
{"x":12.75, "y":3.25, "w":2.25},
{"x":0, "y":4.25, "w":1.25},
{"x":1.25, "y":4.25},
{"x":2.25, "y":4.25},
{"x":3.25, "y":4.25},
{"x":4.25, "y":4.25},
{"x":5.25, "y":4.25},
{"x":6.25, "y":4.25},
{"x":7.25, "y":4.25},
{"x":8.25, "y":4.25},
{"x":9.25, "y":4.25},
{"x":10.25, "y":4.25},
{"x":11.25, "y":4.25},
{"x":12.25, "y":4.25, "w":1.75},
{"x":14, "y":4.25},
{"x":16.25, "y":4.25},
{"x":0, "y":5.25, "w":1.25},
{"x":1.25, "y":5.25, "w":1.25},
{"x":2.5, "y":5.25, "w":1.25},
{"x":3.75, "y":5.25, "w":6.25},
{"x":10, "y":5.25, "w":1.25},
{"x":11.25, "y":5.25, "w":1.25},
{"x":12.5, "y":5.25, "w":1.25},
{"x":13.75, "y":5.25, "w":1.25},
{"x":15.25, "y":5.25},
{"x":16.25, "y":5.25},
{"x":17.25, "y":5.25}
]
}
}
}

View file

@ -0,0 +1,20 @@
/* Copyright 2022 Ramon Imbao
*
* 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 RGBLIGHT_LAYERS
#define RGBLIGHT_LAYERS_OVERRIDE_RGB_OFF

View file

@ -0,0 +1,27 @@
/* Copyright 2022 Ramon Imbao
*
* 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_tkl_f13_ansi_tsangan(
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_F13, KC_PSCR, KC_SLCK, KC_PAUS,
KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_INS, KC_HOME, KC_PGUP,
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_DEL, KC_END, KC_PGDN,
KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP,
KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_MENU, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT
)
};

View file

@ -0,0 +1,19 @@
/* Copyright 2022 Ramon Imbao
*
* 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 RGBLIGHT_LAYERS
#define RGBLIGHT_LAYERS_OVERRIDE_RGB_OFF

View file

@ -0,0 +1,27 @@
/* Copyright 2022 Ramon Imbao
*
* 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_tkl_f13_iso_tsangan(
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_F13, KC_PSCR, KC_SLCK, KC_PAUS,
KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_INS, KC_HOME, KC_PGUP,
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_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_NUHS, 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_RSFT, KC_UP,
KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_MENU, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT
)
};

View file

@ -0,0 +1,19 @@
/* Copyright 2022 Ramon Imbao
*
* 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 RGBLIGHT_LAYERS
#define RGBLIGHT_LAYERS_OVERRIDE_RGB_OFF

View file

@ -0,0 +1,51 @@
/* Copyright 2022 Ramon Imbao
*
* 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_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_F13, KC_PSCR, KC_SLCK, KC_PAUS,
KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_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_NO, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_NO, KC_UP,
KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_MENU, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT
),
[1] = LAYOUT_all(
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
),
[2] = LAYOUT_all(
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
),
[3] = LAYOUT_all(
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
)
};

View file

@ -0,0 +1 @@
VIA_ENABLE = yes

View file

@ -0,0 +1,18 @@
# saevus cor TKL
![Cor TKL](https://i.imgur.com/RGctsaVl.png)
* Keyboard Maintainer: [Ramon Imbao](https://github.com/ramonimbao)
* Hardware Supported: RP2040
Make example for this keyboard (after setting up your build environment):
make saevus/cor_tkl:via
To get to the bootloader, simply press the reset button located at the back of the PCB. You can then flash new firmware onto it.
Flashing example for this keyboard:
make saevus/cor_tkl:via: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).

View file

@ -0,0 +1,13 @@
# MCU name
MCU = RP2040
# Bootloader selection
BOOTLOADER = rp2040
# RGB Matrix
RGB_MATRIX_ENABLE = yes
RGB_MATRIX_DRIVER = WS2812
WS2812_DRIVER = vendor
LAYOUTS = tkl_f13_ansi tkl_f13_ansi_split_bs_rshift tkl_f13_iso tkl_f13_iso_split_bs_rshift