diff --git a/keyboards/aeternus/omnibus/config.h b/keyboards/aeternus/omnibus/config.h new file mode 100644 index 0000000000..0a7d501827 --- /dev/null +++ b/keyboards/aeternus/omnibus/config.h @@ -0,0 +1,23 @@ +/* +Copyright 2021 KnoblesseOblige + +This program is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program. If not, see . +*/ + +#pragma once + +#define RGBLED_NUM 22 + +#define LOCKING_SUPPORT_ENABLE +#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/aeternus/omnibus/info.json b/keyboards/aeternus/omnibus/info.json new file mode 100644 index 0000000000..5fa0b4f152 --- /dev/null +++ b/keyboards/aeternus/omnibus/info.json @@ -0,0 +1,148 @@ +{ + "manufacturer": "Aeternus", + "keyboard_name": "Omnibus", + "maintainer": "KnoblesseOblige", + "bootloader": "atmel-dfu", + "diode_direction": "COL2ROW", + "encoder": { + "rotary": [ + {"pin_a": "B2", "pin_b": "B3"} + ] + }, + "features": { + "bootmagic": true, + "encoder": true, + "extrakey": true, + "mousekey": true, + "nkro": false, + "rgblight": true + }, + "matrix_pins": { + "cols": ["B4", "B5", "B6", "C6", "C7", "F7", "F6", "F5", "F4", "F1", "F0", "D7"], + "rows": ["B1", "B0", "D6", "D4"] + }, + "processor": "atmega32u4", + "rgblight": { + "animations": { + "alternating": true, + "breathing": true, + "knight": true, + "rainbow_mood": true, + "rainbow_swirl": true, + "rgb_test": true, + "snake": true, + "static_gradient": true, + "twinkle": true + }, + "pin": "B7" + }, + "url": "", + "usb": { + "device_version": "0.0.1", + "pid": "0x4F42", + "vid": "0xAE7E" + }, + "layouts": { + "LAYOUT_all": { + "layout": [ + { "label": "1u", "matrix": [0, 0], "w": 1, "x": 0, "y": 0 }, + { "label": "1u", "matrix": [0, 1], "w": 1, "x": 1, "y": 0 }, + { "label": "1u", "matrix": [0, 2], "w": 1, "x": 2, "y": 0 }, + { "label": "1u", "matrix": [0, 3], "w": 1, "x": 3, "y": 0 }, + { "label": "1u", "matrix": [0, 4], "w": 1, "x": 4, "y": 0 }, + { "label": "1u", "matrix": [0, 5], "w": 1, "x": 5, "y": 0 }, + { "label": "1u", "matrix": [0, 6], "w": 1, "x": 6, "y": 0 }, + { "label": "1u", "matrix": [0, 7], "w": 1, "x": 7, "y": 0 }, + { "label": "1u", "matrix": [0, 8], "w": 1, "x": 8, "y": 0 }, + { "label": "1u", "matrix": [0, 9], "w": 1, "x": 9, "y": 0 }, + { "label": "1u", "matrix": [0, 10], "w": 1, "x": 10, "y": 0 }, + { "label": "nono", "matrix": [0, 11], "w": 1, "x": 11, "y": 0 }, + { "label": "enc", "matrix": [3, 7], "w": 0.75, "x": 12, "y": 0 }, + { "label": "1.25u", "matrix": [1, 0], "w": 1.25, "x": 0, "y": 1 }, + { "label": "1u", "matrix": [1, 1], "w": 1, "x": 1.25, "y": 1 }, + { "label": "1u", "matrix": [1, 2], "w": 1, "x": 2.25, "y": 1 }, + { "label": "1u", "matrix": [1, 3], "w": 1, "x": 3.25, "y": 1 }, + { "label": "1u", "matrix": [1, 4], "w": 1, "x": 4.25, "y": 1 }, + { "label": "1u", "matrix": [1, 5], "w": 1, "x": 5.25, "y": 1 }, + { "label": "1u", "matrix": [1, 6], "w": 1, "x": 6.25, "y": 1 }, + { "label": "1u", "matrix": [1, 7], "w": 1, "x": 7.25, "y": 1 }, + { "label": "1u", "matrix": [1, 8], "w": 1, "x": 8.25, "y": 1 }, + { "label": "1u", "matrix": [1, 9], "w": 1, "x": 9.25, "y": 1 }, + { "label": "1u", "matrix": [1, 10], "w": 1, "x": 10.25, "y": 1 }, + { "label": "1.5u", "matrix": [1, 11], "w": 1.5, "x": 11.25, "y": 1 }, + { "label": "1.75u", "matrix": [2, 0], "w": 1.75, "x": 0, "y": 2 }, + { "label": "1u", "matrix": [2, 1], "w": 1, "x": 1.75, "y": 2 }, + { "label": "1u", "matrix": [2, 2], "w": 1, "x": 2.75, "y": 2 }, + { "label": "1u", "matrix": [2, 3], "w": 1, "x": 3.75, "y": 2 }, + { "label": "1u", "matrix": [2, 4], "w": 1, "x": 4.75, "y": 2 }, + { "label": "1u", "matrix": [2, 5], "w": 1, "x": 5.75, "y": 2 }, + { "label": "1u", "matrix": [2, 6], "w": 1, "x": 6.75, "y": 2 }, + { "label": "1u", "matrix": [2, 7], "w": 1, "x": 7.75, "y": 2 }, + { "label": "1u", "matrix": [2, 8], "w": 1, "x": 8.75, "y": 2 }, + { "label": "1u", "matrix": [2, 9], "w": 1, "x": 9.75, "y": 2 }, + { "label": "1u", "matrix": [2, 10], "w": 1, "x": 10.75, "y": 2 }, + { "label": "1u", "matrix": [2, 11], "w": 1, "x": 11.75, "y": 2 }, + { "label": "1u", "matrix": [3, 0], "w": 1, "x": 0, "y": 3 }, + { "label": "1u", "matrix": [3, 1], "w": 1, "x": 1, "y": 3 }, + { "label": "1u", "matrix": [3, 2], "w": 1, "x": 2, "y": 3 }, + { "label": "1u", "matrix": [3, 3], "w": 1, "x": 3, "y": 3 }, + { "label": "2.25u", "matrix": [3, 4], "w": 2.25, "x": 4, "y": 3 }, + { "label": "2u", "matrix": [3, 6], "w": 2, "x": 6.25, "y": 3 }, + { "label": "1.5u", "matrix": [3, 8], "w": 1.5, "x": 8.25, "y": 3 }, + { "label": "1u", "matrix": [3, 9], "w": 1, "x": 9.75, "y": 3 }, + { "label": "1u", "matrix": [3, 10], "w": 1, "x": 10.75, "y": 3 }, + { "label": "1u", "matrix": [3, 11], "w": 1, "x": 11.75, "y": 3 } + ] + }, + "LAYOUT_southpaw": { + "layout": [ + { "label": "1u", "matrix": [0, 0], "w": 1, "x": 0, "y": 0 }, + { "label": "1u", "matrix": [0, 1], "w": 1, "x": 1, "y": 0 }, + { "label": "1u", "matrix": [0, 2], "w": 1, "x": 2, "y": 0 }, + { "label": "1u", "matrix": [0, 3], "w": 1, "x": 3, "y": 0 }, + { "label": "1u", "matrix": [0, 4], "w": 1, "x": 4, "y": 0 }, + { "label": "1u", "matrix": [0, 5], "w": 1, "x": 5, "y": 0 }, + { "label": "1u", "matrix": [0, 6], "w": 1, "x": 6, "y": 0 }, + { "label": "1u", "matrix": [0, 7], "w": 1, "x": 7, "y": 0 }, + { "label": "1u", "matrix": [0, 8], "w": 1, "x": 8, "y": 0 }, + { "label": "1u", "matrix": [0, 9], "w": 1, "x": 9, "y": 0 }, + { "label": "1u", "matrix": [0, 10], "w": 1, "x": 10, "y": 0 }, + { "label": "nono", "matrix": [0, 11], "w": 1.75, "x": 11, "y": 0 }, + { "label": "1.25u", "matrix": [1, 0], "w": 1.25, "x": 0, "y": 1 }, + { "label": "1u", "matrix": [1, 1], "w": 1, "x": 1.25, "y": 1 }, + { "label": "1u", "matrix": [1, 2], "w": 1, "x": 2.25, "y": 1 }, + { "label": "1u", "matrix": [1, 3], "w": 1, "x": 3.25, "y": 1 }, + { "label": "1u", "matrix": [1, 4], "w": 1, "x": 4.25, "y": 1 }, + { "label": "1u", "matrix": [1, 5], "w": 1, "x": 5.25, "y": 1 }, + { "label": "1u", "matrix": [1, 6], "w": 1, "x": 6.25, "y": 1 }, + { "label": "1u", "matrix": [1, 7], "w": 1, "x": 7.25, "y": 1 }, + { "label": "1u", "matrix": [1, 8], "w": 1, "x": 8.25, "y": 1 }, + { "label": "1u", "matrix": [1, 9], "w": 1, "x": 9.25, "y": 1 }, + { "label": "1u", "matrix": [1, 10], "w": 1, "x": 10.25, "y": 1 }, + { "label": "1.5u", "matrix": [1, 11], "w": 1.5, "x": 11.25, "y": 1 }, + { "label": "1.75u", "matrix": [2, 0], "w": 1.75, "x": 0, "y": 2 }, + { "label": "1u", "matrix": [2, 1], "w": 1, "x": 1.75, "y": 2 }, + { "label": "1u", "matrix": [2, 2], "w": 1, "x": 2.75, "y": 2 }, + { "label": "1u", "matrix": [2, 3], "w": 1, "x": 3.75, "y": 2 }, + { "label": "1u", "matrix": [2, 4], "w": 1, "x": 4.75, "y": 2 }, + { "label": "1u", "matrix": [2, 5], "w": 1, "x": 5.75, "y": 2 }, + { "label": "1u", "matrix": [2, 6], "w": 1, "x": 6.75, "y": 2 }, + { "label": "1u", "matrix": [2, 7], "w": 1, "x": 7.75, "y": 2 }, + { "label": "1u", "matrix": [2, 8], "w": 1, "x": 8.75, "y": 2 }, + { "label": "1u", "matrix": [2, 9], "w": 1, "x": 9.75, "y": 2 }, + { "label": "1u", "matrix": [2, 10], "w": 1, "x": 10.75, "y": 2 }, + { "label": "1u", "matrix": [2, 11], "w": 1, "x": 11.75, "y": 2 }, + { "label": "1u", "matrix": [3, 0], "w": 1, "x": 0, "y": 3 }, + { "label": "1u", "matrix": [3, 1], "w": 1, "x": 1, "y": 3 }, + { "label": "1u", "matrix": [3, 2], "w": 1, "x": 2, "y": 3 }, + { "label": "1u", "matrix": [3, 3], "w": 1, "x": 3, "y": 3 }, + { "label": "2.25u", "matrix": [3, 4], "w": 2.25, "x": 4, "y": 3 }, + { "label": "2u", "matrix": [3, 6], "w": 2, "x": 6.25, "y": 3 }, + { "label": "1.5u", "matrix": [3, 8], "w": 1.5, "x": 8.25, "y": 3 }, + { "label": "1u", "matrix": [3, 9], "w": 1, "x": 9.75, "y": 3 }, + { "label": "1u", "matrix": [3, 10], "w": 1, "x": 10.75, "y": 3 }, + { "label": "1u", "matrix": [3, 11], "w": 1, "x": 11.75, "y": 3 } + ] + } + } +} diff --git a/keyboards/aeternus/omnibus/keymaps/default/keymap.c b/keyboards/aeternus/omnibus/keymaps/default/keymap.c new file mode 100644 index 0000000000..15c9c378b3 --- /dev/null +++ b/keyboards/aeternus/omnibus/keymaps/default/keymap.c @@ -0,0 +1,44 @@ +/* Copyright 2021 KnoblesseOblige + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + /* Base */ + [0] = LAYOUT_all( + QK_GESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, KC_DEL, + LCTL_T(KC_TAB), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT, + MO(1), KC_LALT, KC_LGUI, MO(2), KC_SPC, KC_SPC, MO(3), MO(1), TT(2), MO(2) + ), + [1] = LAYOUT_all( + KC_GRAVE, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS, + 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 + ), + [2] = LAYOUT_all( + 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_UP, 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_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ), + [3] = LAYOUT_all( + KC_GRAVE, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ) +}; diff --git a/keyboards/aeternus/omnibus/keymaps/vial/config.h b/keyboards/aeternus/omnibus/keymaps/vial/config.h new file mode 100644 index 0000000000..cb66b49ee5 --- /dev/null +++ b/keyboards/aeternus/omnibus/keymaps/vial/config.h @@ -0,0 +1,7 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ + +#pragma once + +#define VIAL_KEYBOARD_UID {0x61, 0x6F, 0x6D, 0x6E, 0x69, 0x62, 0x75, 0x73} +#define VIAL_UNLOCK_COMBO_ROWS { 0, 1 } +#define VIAL_UNLOCK_COMBO_COLS { 0, 11 } diff --git a/keyboards/aeternus/omnibus/keymaps/vial/keymap.c b/keyboards/aeternus/omnibus/keymaps/vial/keymap.c new file mode 100644 index 0000000000..bca595dde1 --- /dev/null +++ b/keyboards/aeternus/omnibus/keymaps/vial/keymap.c @@ -0,0 +1,53 @@ +/* Copyright 2021 KnoblesseOblige + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ +#include QMK_KEYBOARD_H + +#if defined(ENCODER_MAP_ENABLE) +const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { + [0] = { ENCODER_CCW_CW(KC_MS_WH_UP, KC_MS_WH_DOWN) }, + [1] = { ENCODER_CCW_CW(RGB_HUD, RGB_HUI) }, + [2] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI) }, + [3] = { ENCODER_CCW_CW(RGB_RMOD, RGB_MOD) }, +}; +#endif + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + /* Base */ + [0] = LAYOUT_all( + QK_GESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, KC_DEL, + LCTL_T(KC_TAB), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT, + MO(1), KC_LALT, KC_LGUI, MO(2), KC_SPC, KC_SPC, MO(3), MO(1), TT(2), MO(2) + ), + [1] = LAYOUT_all( + KC_GRAVE, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS, + 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 + ), + [2] = LAYOUT_all( + 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_UP, 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_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ), + [3] = LAYOUT_all( + KC_GRAVE, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ) +}; diff --git a/keyboards/aeternus/omnibus/keymaps/vial/rules.mk b/keyboards/aeternus/omnibus/keymaps/vial/rules.mk new file mode 100644 index 0000000000..3e91f08bde --- /dev/null +++ b/keyboards/aeternus/omnibus/keymaps/vial/rules.mk @@ -0,0 +1,7 @@ +VIA_ENABLE = yes +VIAL_ENABLE = yes +LTO_ENABLE = yes +ENCODER_MAP_ENABLE = yes + +QMK_SETTINGS = no +TAP_DANCE_ENABLE = no diff --git a/keyboards/aeternus/omnibus/keymaps/vial/vial.json b/keyboards/aeternus/omnibus/keymaps/vial/vial.json new file mode 100644 index 0000000000..d6e99b1bad --- /dev/null +++ b/keyboards/aeternus/omnibus/keymaps/vial/vial.json @@ -0,0 +1,401 @@ +{ + "name": "Omnibus", + "vendorId": "AE7E", + "productId": "4F42", + "lighting": "qmk_rgblight", + "matrix": { + "rows": 4, + "cols": 12 + }, + "layouts": { + "labels": [ + [ + "Bottom Row", + "Standard / Standard", + "Southpaw / Arrows", + "3u/3u (m3n3van)", + "2.75u/2.25u (Minisub)", + "1.5u/1.5u S-Class", + "2.25u/2u (0.75u HHKB)", + "4.25u", + "6u (m3n3van)", + "Jetvan", + "6.25u HHKB/WKL", + "Offset 7u", + "Offset 9u", + "Big Boi", + "9.75u (0.25u WKL)", + "Behemoth", + "Centered 9u", + "Nixdorf", + "6.25u (0.75u HHKB)", + "7u (1.25u/2u HHKB)", + "7u (1u/1.75u HHKB)", + "10u HHKB (1u/1.75u HHKB)", + "6.25u (MB44)", + "2.25/1/2.75 (MB44)", + "2.75u/2.25u/1u (MB44)", + "6.25u (0.75u WKL) (Pegasus)" + ], + "Split Backspace", + "JIS Enter" + ], + "keymap": [ + [ + "0,0", + "0,1", + "0,2", + "0,3", + "0,4", + "0,5", + "0,6", + "0,7", + "0,8", + "0,9", + "0,10", + { + "w": 1.75 + }, + "0,11\n\n\n1,0", + { + "x": 0.25 + }, + "0,11\n\n\n1,1", + { + "w": 0.75 + }, + "3,7\n\n\n1,1", + { + "x": 0.25 + }, + "0,0\n\n\n1,1\n\n\n\n\n\ne", + "0,1\n\n\n1,1\n\n\n\n\n\ne" + ], + [ + { "w": 1.25 }, + "1,0", + "1,1", + "1,2", + "1,3", + "1,4", + "1,5", + "1,6", + "1,7", + "1,8", + "1,9", + "1,10", + { "w": 1.5 }, + "1,11\n\n\n2,0", + { "x": 1, "h": 2, "w2": 1.5, "h2": 1, "x2": -0.5 }, + "1,11\n\n\n2,1" + ], + [ + { "w": 1.75 }, + "2,0", + "2,1", + "2,2", + "2,3", + "2,4", + "2,5", + "2,6", + "2,7", + "2,8", + "2,9", + "2,10", + "2,11\n\n\n2,0" + ], + [ + { "w": 1.25 }, + "3,0\n\n\n0,0", + { "w": 1.5 }, + "3,1\n\n\n0,0", + { "w": 1.25 }, + "3,3\n\n\n0,0", + { "w": 2.25 }, + "3,4\n\n\n0,0", + { "w": 2 }, + "3,6\n\n\n0,0", + { "w": 1.25 }, + "3,8\n\n\n0,0", + { "w": 1.5 }, + "3,9\n\n\n0,0", + { "w": 1.75 }, + "3,11\n\n\n0,0" + ], + [ + { "y": 1 }, + "3,0\n\n\n0,1", + "3,1\n\n\n0,1", + "3,2\n\n\n0,1", + "3,3\n\n\n0,1", + { "w": 2.25 }, + "3,4\n\n\n0,1", + { "w": 2 }, + "3,6\n\n\n0,1", + { "w": 1.5 }, + "3,8\n\n\n0,1", + "3,9\n\n\n0,1", + "3,10\n\n\n0,1", + "3,11\n\n\n0,1" + ], + [ + "3,0\n\n\n0,2", + { "w": 1.25 }, + "3,1\n\n\n0,2", + "3,2\n\n\n0,2", + { "w": 3 }, + "3,4\n\n\n0,2", + { "w": 3 }, + "3,6\n\n\n0,2", + { "w": 1.25 }, + "3,9\n\n\n0,2", + "3,10\n\n\n0,2", + { "w": 1.25 }, + "3,11\n\n\n0,2" + ], + [ + { "w": 1.25 }, + "3,0\n\n\n0,3", + "3,1\n\n\n0,3", + { "w": 1.25 }, + "3,2\n\n\n0,3", + { "w": 2.75 }, + "3,4\n\n\n0,3", + { "w": 2.25 }, + "3,6\n\n\n0,3", + { "w": 1.25 }, + "3,8\n\n\n0,3", + "3,9\n\n\n0,3", + "3,10\n\n\n0,3", + "3,11\n\n\n0,3" + ], + [ + { "w": 1.5 }, + "3,0\n\n\n0,4", + { "w": 1.5 }, + "3,1\n\n\n0,4", + { "x": 1, "w": 2.25 }, + "3,4\n\n\n0,4", + { "w": 2 }, + "3,6\n\n\n0,4", + { "w": 1.5 }, + "3,8\n\n\n0,4", + "3,9\n\n\n0,4", + "3,10\n\n\n0,4", + "3,11\n\n\n0,4" + ], + [ + { "y": 1, "w": 0.75, "d": true }, + "\n\n\n0,5", + { "w": 1.25 }, + "3,1\n\n\n0,5", + "3,2\n\n\n0,5", + "3,3\n\n\n0,5", + { "w": 2.25 }, + "3,4\n\n\n0,5", + { "w": 2 }, + "3,6\n\n\n0,5", + { "w": 1.25 }, + "3,8\n\n\n0,5", + { "w": 1.25 }, + "3,9\n\n\n0,5", + { "w": 1.25 }, + "3,10\n\n\n0,5", + { "w": 0.75, "d": true }, + "\n\n\n0,5" + ], + [ + { "y": 1 }, + "3,0\n\n\n0,6", + "3,1\n\n\n0,6", + "3,2\n\n\n0,6", + "3,3\n\n\n0,6", + { "w": 4.25 }, + "3,4\n\n\n0,6", + { "w": 1.5 }, + "3,8\n\n\n0,6", + "3,9\n\n\n0,6", + "3,10\n\n\n0,6", + "3,11\n\n\n0,6" + ], + [ + "3,0\n\n\n0,7", + { "w": 1.25 }, + "3,1\n\n\n0,7", + "3,2\n\n\n0,7", + { "w": 6 }, + "3,4\n\n\n0,7", + { "w": 1.25 }, + "3,9\n\n\n0,7", + "3,10\n\n\n0,7", + { "w": 1.25 }, + "3,11\n\n\n0,7" + ], + [ + { "w": 1.25 }, + "3,0\n\n\n0,8", + "3,1\n\n\n0,8", + { "w": 1.25 }, + "3,2\n\n\n0,8", + { "w": 6.25 }, + "3,4\n\n\n0,8", + "3,9\n\n\n0,8", + "3,10\n\n\n0,8", + "3,11\n\n\n0,8" + ], + [ + { "w": 1.25 }, + "3,0\n\n\n0,9", + "3,1\n\n\n0,9", + "3,2\n\n\n0,9", + { "w": 6.25 }, + "3,4\n\n\n0,9", + "3,9\n\n\n0,9", + "3,10\n\n\n0,9", + { "w": 1.25 }, + "3,11\n\n\n0,9" + ], + [ + { "w": 1.25 }, + "3,0\n\n\n0,10", + { "w": 1.5 }, + "3,1\n\n\n0,10", + "3,3\n\n\n0,10", + { "w": 7 }, + "3,6\n\n\n0,10", + "3,10\n\n\n0,10", + "3,11\n\n\n0,10" + ], + [ + { "w": 1.25 }, + "3,0\n\n\n0,11", + { "w": 1.5 }, + "3,1\n\n\n0,11", + { "w": 9 }, + "3,6\n\n\n0,11", + "3,11\n\n\n0,11" + ], + [ + "3,0\n\n\n0,12", + "3,1\n\n\n0,12", + { "w": 9.75 }, + "3,6\n\n\n0,12", + "3,11\n\n\n0,12" + ], + [ + { "w": 1.25 }, + "3,0\n\n\n0,13", + { "x": 0.25, "w": 9.75 }, + "3,4\n\n\n0,13", + { "x": 0.25, "w": 1.25 }, + "3,11\n\n\n0,13" + ], + [ + { "w": 12.75 }, + "3,4\n\n\n0,14" + ], + [ + { "w": 1.25 }, + "3,0\n\n\n0,15", + { "w": 1.25 }, + "3,1\n\n\n0,15", + { "w": 9 }, + "3,4\n\n\n0,15", + { "w": 1.25 }, + "3,11\n\n\n0,15" + ], + [ + "3,0\n\n\n0,16", + "3,1\n\n\n0,16", + "3,2\n\n\n0,16", + { "w": 8 }, + "3,4\n\n\n0,16", + { "w": 1.75 }, + "3,11\n\n\n0,16" + ], + [ + { "y": 1, "x": 0.75, "w": 1.25 }, + "3,1\n\n\n0,17", + { "w": 1.25 }, + "3,2\n\n\n0,17", + { "w": 6.25 }, + "3,4\n\n\n0,17", + { "w": 1.25 }, + "3,9\n\n\n0,17", + { "w": 1.25 }, + "3,10\n\n\n0,17" + ], + [ + { "x": 1.25, "w": 1.25 }, + "3,1\n\n\n0,18", + { "w": 7 }, + "3,4\n\n\n0,18", + { "w": 1.25 }, + "3,9\n\n\n0,18" + ], + [ + { "x": 1, "w": 1.5 }, + "3,1\n\n\n0,19", + { "w": 7 }, + "3,4\n\n\n0,19", + { "w": 1.5 }, + "3,9\n\n\n0,19" + ], + [{ "x": 1, "w": 10 }, "3,4\n\n\n0,20"], + [ + { "y": 1 }, + "3,0\n\n\n0,21", + "3,1\n\n\n0,21", + "3,2\n\n\n0,21", + { "w": 6.25 }, + "3,4\n\n\n0,21", + { "x": 0.5 }, + "3,9\n\n\n0,21", + "3,10\n\n\n0,21", + "3,11\n\n\n0,21" + ], + [ + "3,0\n\n\n0,22", + { "w": 1.25 }, + "3,1\n\n\n0,22", + "3,2\n\n\n0,22", + { "w": 2.25 }, + "3,3\n\n\n0,22", + "3,4\n\n\n0,22", + { "w": 2.75 }, + "3,6\n\n\n0,22", + { "x": 0.5 }, + "3,9\n\n\n0,22", + "3,10\n\n\n0,22", + "3,11\n\n\n0,22" + ], + [ + "3,0\n\n\n0,23", + { "w": 1.25 }, + "3,1\n\n\n0,23", + "3,2\n\n\n0,23", + { "w": 2.75 }, + "3,4\n\n\n0,23", + { "w": 2.25 }, + "3,6\n\n\n0,23", + "3,8\n\n\n0,23", + { "x": 0.5 }, + "3,9\n\n\n0,23", + "3,10\n\n\n0,23", + "3,11\n\n\n0,23" + ], + [ + { "y": 1, "w": 1.25 }, + "3,0\n\n\n0,24", + { "x": 0.75, "w": 1.25 }, + "3,2\n\n\n0,24", + { "w": 6.25 }, + "3,4\n\n\n0,24", + { "w": 1.25 }, + "3,9\n\n\n0,24", + { "x": 0.75, "w": 1.25 }, + "3,11\n\n\n0,24" + ] + ] + } +} diff --git a/keyboards/aeternus/omnibus/readme.md b/keyboards/aeternus/omnibus/readme.md new file mode 100644 index 0000000000..afbbb3edd2 --- /dev/null +++ b/keyboards/aeternus/omnibus/readme.md @@ -0,0 +1,27 @@ +# Omnibus + +![Omnibus](https://cdn.shopify.com/s/files/1/0501/5080/1588/products/IMG_9986_1024x1024@2x.jpg?v=1629070461) + +A drop-in replacement PCB for most Minivan cases. Also supports every known bottom row layout. + +* Keyboard Maintainer: [Aeternus](https://github.com/AeternusCo) +* Hardware Supported: Most Minivan cases +* Hardware Availability: https://store.aeternus.co/products/omnibus-pcb + +Make example for this keyboard (after setting up your build environment): + + make aeternus/omnibus:default + +Flashing example for this keyboard: + + make aeternus/omnibus: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 Escape key and plug in the keyboard +* **Physical reset button**: Briefly press the button on the back of the PCB +* **Keycode in layout**: Press the key mapped to `RESET` if it is available \ No newline at end of file diff --git a/keyboards/aeternus/omnibus/rules.mk b/keyboards/aeternus/omnibus/rules.mk new file mode 100644 index 0000000000..6e7633bfe0 --- /dev/null +++ b/keyboards/aeternus/omnibus/rules.mk @@ -0,0 +1 @@ +# This file intentionally left blank diff --git a/keyboards/akb/ogr/keymaps/vial/config.h b/keyboards/akb/ogr/keymaps/vial/config.h new file mode 100644 index 0000000000..3b431b5265 --- /dev/null +++ b/keyboards/akb/ogr/keymaps/vial/config.h @@ -0,0 +1,9 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ + +#pragma once + +#define VIAL_KEYBOARD_UID {0xC9, 0x7A, 0x7F, 0x35, 0xB7, 0x59, 0x23, 0xDE} +#define VIAL_UNLOCK_COMBO_ROWS { 1, 4 } +#define VIAL_UNLOCK_COMBO_COLS { 2, 16 } + +#define DYNAMIC_KEYMAP_LAYER_COUNT 3 diff --git a/keyboards/akb/ogr/keymaps/vial/keymap.c b/keyboards/akb/ogr/keymaps/vial/keymap.c new file mode 100644 index 0000000000..69d32bff75 --- /dev/null +++ b/keyboards/akb/ogr/keymaps/vial/keymap.c @@ -0,0 +1,51 @@ +/* Copyright 2023 Gabriel Levrel + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + /* + * ┌───┬───┐ ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┬───┐ + * │ F1│ F2│ │Esc│ 1 │ 2 │ 3 │ 4 │ 5 │ 6 │ 7 │ 8 │ 9 │ 0 │ - │ = │ Backsp│Hom│ + * ├───┼───┤ ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┼───┤ + * | F3| F4| │ Tab │ Q │ W │ E │ R │ T │ Y │ U │ I │ O │ P │ [ │ ] │ \ │PgU│ + * ├───┼───┤ ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┤ + * | F5| F6| │ Caps │ A │ S │ D │ F │ G │ H │ J │ K │ L │ ; │ ' │ Enter │PgD│ + * ├───┼───┤ ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┼───┤ + * | F7| F8| │ Shift │ Z │ X │ C │ V │ B │ N │ M │ , │ . │ / │ Shift│ ↑ │End│ + * ├───┼───┤ ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴──┬┴──┬┴──┬───┼───┼───┤ + * | F9|F10| │Ctrl│GUI │Alt │ │Alt│Ctl│ │ ← │ ↓ │ → │ + * └───┴───┘ └────┴────┴────┴────────────────────────┴───┴───┴───┴───┴───┴───┘ + */ + [0] = LAYOUT_all( + + KC_F1, KC_F2, 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_HOME, + KC_F3, KC_F4, 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_F5, KC_F6, 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_F7, KC_F8, 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_END, + KC_F9, KC_F10, 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, KC_DEL, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, KC_INS, _______, _______, _______, _______, KC_PSCR, KC_SCRL, KC_PAUS, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), + +}; diff --git a/keyboards/akb/ogr/keymaps/vial/rules.mk b/keyboards/akb/ogr/keymaps/vial/rules.mk new file mode 100644 index 0000000000..46f9f1360f --- /dev/null +++ b/keyboards/akb/ogr/keymaps/vial/rules.mk @@ -0,0 +1,3 @@ +VIA_ENABLE = yes +VIAL_ENABLE = yes +LTO_ENABLE = yes diff --git a/keyboards/akb/ogr/keymaps/vial/vial.json b/keyboards/akb/ogr/keymaps/vial/vial.json new file mode 100644 index 0000000000..4c36527664 --- /dev/null +++ b/keyboards/akb/ogr/keymaps/vial/vial.json @@ -0,0 +1,141 @@ +{ + "lighting": "none", + "matrix": {"rows": 5, "cols": 18}, + "layouts": { + "labels": [ + "Split Backspace", + "ISO Enter", + "Split Left Shift", + "WK Bottom Row" + ], + "keymap": [ + [ + {"x": 2.75}, + "0,0", + "0,1", + {"x": 0.5}, + "0,2", + "0,3", + "0,4", + "0,5", + "0,6", + "0,7", + "0,8", + "0,9", + "0,10", + "0,11", + "0,12", + "0,13", + "0,14", + {"w": 2}, + "0,15\n\n\n0,0", + "0,17", + {"x": 0.75}, + "0,15\n\n\n0,1", + "0,16\n\n\n0,1" + ], + [ + {"x": 2.75}, + "1,0", + "1,1", + {"x": 0.5, "w": 1.5}, + "1,2", + "1,3", + "1,4", + "1,5", + "1,6", + "1,7", + "1,8", + "1,9", + "1,10", + "1,11", + "1,12", + "1,13", + "1,14", + {"w": 1.5}, + "1,15\n\n\n1,0", + "1,16", + {"x": 1.5, "w": 1.25, "h": 2, "w2": 1.5, "h2": 1, "x2": -0.25}, + "2,15\n\n\n1,1" + ], + [ + {"x": 2.75}, + "2,0", + "2,1", + {"x": 0.5, "w": 1.75}, + "2,2", + "2,3", + "2,4", + "2,5", + "2,6", + "2,7", + "2,8", + "2,9", + "2,10", + "2,11", + "2,12", + "2,13", + {"w": 2.25}, + "2,15\n\n\n1,0", + "2,16", + {"x": 0.5}, + "2,14\n\n\n1,1" + ], + [ + {"w": 1.25}, + "3,2\n\n\n2,1", + "3,3\n\n\n2,1", + {"x": 0.5}, + "3,0", + "3,1", + {"x": 0.5, "w": 2.25}, + "3,2\n\n\n2,0", + "3,4", + "3,5", + "3,6", + "3,7", + "3,8", + "3,9", + "3,10", + "3,11", + "3,12", + "3,13", + {"w": 1.75}, + "3,14", + "3,15", + "3,16" + ], + [ + {"x": 2.75}, + "4,0", + "4,1", + {"x": 0.5, "w": 1.5}, + "4,2\n\n\n3,0", + {"x": 0.75, "w": 1.5}, + "4,4\n\n\n3,0", + {"w": 7}, + "4,9\n\n\n3,0", + {"w": 1.5}, + "4,13\n\n\n3,0", + {"x": 0.75}, + "4,14", + "4,15", + "4,16" + ], + [ + {"x": 5.25, "w": 1.25}, + "4,2\n\n\n3,1", + {"w": 1.25}, + "4,3\n\n\n3,1", + {"w": 1.25}, + "4,4\n\n\n3,1", + {"w": 6.25}, + "4,9\n\n\n3,1", + {"w": 1.25}, + "4,12\n\n\n3,1", + {"w": 1.25}, + "4,13\n\n\n3,1" + ] + ] + } +} diff --git a/keyboards/akb/vero/keymaps/vial/keymap.c b/keyboards/akb/vero/keymaps/vial/keymap.c index d73d4085a7..d5ae16ef9c 100644 --- a/keyboards/akb/vero/keymaps/vial/keymap.c +++ b/keyboards/akb/vero/keymaps/vial/keymap.c @@ -8,18 +8,18 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * │Esc│ 1 │ 2 │ 3 │ 4 │ 5 │ 6 │ 7 │ 8 │ 9 │ 0 │ - │ = │ \ │ ` │ * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┤ * │ Tab │ Q │ W │ E │ R │ T │ Y │ U │ I │ O │ P │ [ │ ] │ Bspc│ - * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤ - * │ Ctrl │ A │ S │ D │ F │ G │ H │ J │ K │ L │ ; │ ' │ Enter │ - * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┤ + * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬────┤ + * │ Ctrl │ A │ S │ D │ F │ G │ H │ J │ K │ L │ ; │ ' │ # │Ent │ + * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┴┬───┤ * │ Shift │ Z │ X │ C │ V │ B │ N │ M │ , │ . │ / │ Shift│MO1│ - * └─────┬──┴┬──┴──┬┴───┴───┴───┴───┴───┴───┴──┬┴───┴┬───┬─┴───┘ - * │Alt│ GUI │ │ GUI │Alt│ - * └───┴─────┴───────────────────────────┴─────┴───┘ + * └─────┬──┴┬──┴──┬┴───┴───┴──┬┴───┴───┴──┬┴───┴┬──┴┬─────┴───┘ + * │Alt│ GUI │Space │Space │ GUI │Alt│ + * └───┴─────┴───────────┴───────────┴─────┴───┘ */ [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_BSLS, KC_GRV, 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_BSPC, - KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, + KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_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, MO(1), KC_LALT, KC_LGUI, KC_SPC, KC_SPC, KC_RGUI, KC_RALT ), @@ -27,21 +27,21 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐ * │Pwr│F1 │F2 │F3 │F4 │F5 │F6 │F7 │F8 │F9 │F10│F11│F12│Ins│Del│ - * ├───┴─┬─┴───┴───┴───┴───┴───┴───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┴───┘ + * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┤ * │Caps │ Q │ W │ E │ R │ T │ Y │ U │PSc│Scr│Pse│ ↑ │ ] │ Bspc│ - * └─────┘┌───┬───┬───┐──┴┬──┴┌───┬──┴┬──┴┬──┴┬──┴┬──┴┬────────┐ - * │ Ctrl │Vl-│Vl+│Mut│ F │ G │ * │ / │Hom│PgU│ ← │ → │ Enter │ - * ├──────└───┴───┴───┘─┬─┴─┬─└─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────────┘ + * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬────┤ + * │ Ctrl │Vl-│Vl+│Mut│ F │ G │ * │ / │Hom│PgU│ ← │ → │ # │Ent │ + * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┴┬───┤ * │ Shift │ Z │ X │ C │ V │ B │ + │ - │End│PgD│ ↓ │ Shift│MO1│ - * └─────┬──┴┬──┴──┬┴───┴───┴───└───┴───┴───┴───┴───┘┬───┬─┴───┘ - * │Alt│ GUI │ │ GUI │Alt│ - * └───┴─────┴───────────────────────────┴─────┴───┘ + * └─────┬──┴┬──┴──┬┴───┴───┴──┬┴───┴───┴──┬┴───┴┬──┴┬─────┴───┘ + * │Alt│ GUI │Space │Space │ GUI │Alt│ + * └───┴─────┴───────────┴───────────┴─────┴───┘ */ [1] = LAYOUT_all( KC_PWR, 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_INS, KC_DEL, KC_CAPS, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, KC_SCRL, KC_PAUS, KC_UP, _______, _______, - _______, KC_VOLD, KC_VOLU, KC_MUTE, _______, _______, KC_PAST, KC_PSLS, KC_HOME, KC_PGUP, KC_LEFT, KC_RGHT, KC_PENT, - _______, _______,_______, _______, _______, _______, _______, KC_PPLS, KC_PMNS, KC_END, KC_PGDN, KC_DOWN, _______, _______, + _______, KC_VOLD, KC_VOLU, KC_MUTE, _______, _______, KC_PAST, KC_PSLS, KC_HOME, KC_PGUP, KC_LEFT, KC_RGHT, _______, KC_PENT, + _______, _______, _______, _______, _______, _______, _______, KC_PPLS, KC_PMNS, KC_END, KC_PGDN, KC_DOWN, _______, _______, _______, _______, _______, _______, _______, _______ ) }; diff --git a/keyboards/akb/vero/keymaps/vial/vial.json b/keyboards/akb/vero/keymaps/vial/vial.json index 3994ac8c39..5b68b30072 100644 --- a/keyboards/akb/vero/keymaps/vial/vial.json +++ b/keyboards/akb/vero/keymaps/vial/vial.json @@ -1,170 +1,170 @@ { - "name": "akb/vero", - "vendorId": "0x4150", - "productId": "0x5645", - "lighting": "none", - "matrix": { - "rows": 5, - "cols": 15 - }, - "layouts": { - "labels": [ - "Long Backspace", - "ISO", - "Long Right Shift", - "Split Left Shift", - "Split Spacebar" + "name": "akb/vero", + "vendorId": "0x4150", + "productId": "0x5645", + "lighting": "none", + "matrix": { + "rows": 5, + "cols": 15 + }, + "layouts": { + "labels": [ + "Long Backspace", + "ISO", + "Long Right Shift", + "Split Left Shift", + "Split Spacebar" + ], + "keymap": [ + [ + { + "x": 15.5, + "w": 2 + }, + "0,13\n\n\n0,1" ], - "keymap": [ - [ - { - "x": 15.5, - "w": 2 - }, - "0,13\n\n\n0,1" - ], - [ - { - "y": 0.25, - "x": 2.5 - }, - "0,0", - "0,1", - "0,2", - "0,3", - "0,4", - "0,5", - "0,6", - "0,7", - "0,8", - "0,9", - "0,10", - "0,11", - "0,12", - "0,13\n\n\n0,0", - "0,14\n\n\n0,0" - ], - [ - { - "x": 2.5, - "w": 1.5 - }, - "1,0", - "1,1", - "1,2", - "1,3", - "1,4", - "1,5", - "1,6", - "1,7", - "1,8", - "1,9", - "1,10", - "1,11", - "1,12", - { - "w": 1.5 - }, - "1,13\n\n\n1,0", - { - "x": 1.25, - "w": 1.25, - "h": 2, - "w2": 1.5, - "h2": 1, - "x2": -0.25 - }, - "2,13\n\n\n1,1" - ], - [ - { - "x": 2.5, - "w": 1.75 - }, - "2,0", - "2,1", - "2,2", - "2,3", - "2,4", - "2,5", - "2,6", - "2,7", - "2,8", - "2,9", - "2,10", - "2,11", - { - "w": 2.25 - }, - "2,13\n\n\n1,0", - { - "x": 0.25 - }, - "2,12\n\n\n1,1" - ], - [ - { - "w": 1.25 - }, - "3,0\n\n\n3,1", - "3,1\n\n\n3,1", - { - "x": 0.25, - "w": 2.25 - }, - "3,0\n\n\n3,0", - "3,2", - "3,3", - "3,4", - "3,5", - "3,6", - "3,7", - "3,8", - "3,9", - "3,10", - "3,11", - { - "w": 1.75 - }, - "3,12\n\n\n2,0", - "3,13\n\n\n2,0", - { - "x": 0.25, - "w": 2.75 - }, - "3,12\n\n\n2,1" - ], - [ - { - "x": 4 - }, - "4,1", - { - "w": 1.5 - }, - "4,2", - { - "w": 6 - }, - "4,7\n\n\n4,0", - { - "w": 1.5 - }, - "4,10", - "4,11" - ], - [ - { - "y": 0.25, - "x": 6.5, - "w": 3 - }, - "4,5\n\n\n4,1", - { - "w": 3 - }, - "4,7\n\n\n4,1" - ] + [ + { + "y": 0.25, + "x": 2.5 + }, + "0,0", + "0,1", + "0,2", + "0,3", + "0,4", + "0,5", + "0,6", + "0,7", + "0,8", + "0,9", + "0,10", + "0,11", + "0,12", + "0,13\n\n\n0,0", + "0,14\n\n\n0,0" + ], + [ + { + "x": 2.5, + "w": 1.5 + }, + "1,0", + "1,1", + "1,2", + "1,3", + "1,4", + "1,5", + "1,6", + "1,7", + "1,8", + "1,9", + "1,10", + "1,11", + "1,12", + { + "w": 1.5 + }, + "1,13\n\n\n1,0", + { + "x": 1.25, + "w": 1.25, + "h": 2, + "w2": 1.5, + "h2": 1, + "x2": -0.25 + }, + "2,13\n\n\n1,1" + ], + [ + { + "x": 2.5, + "w": 1.75 + }, + "2,0", + "2,1", + "2,2", + "2,3", + "2,4", + "2,5", + "2,6", + "2,7", + "2,8", + "2,9", + "2,10", + "2,11", + { + "w": 2.25 + }, + "2,13\n\n\n1,0", + { + "x": 0.25 + }, + "2,12\n\n\n1,1" + ], + [ + { + "w": 1.25 + }, + "3,0\n\n\n3,1", + "3,1\n\n\n3,1", + { + "x": 0.25, + "w": 2.25 + }, + "3,0\n\n\n3,0", + "3,2", + "3,3", + "3,4", + "3,5", + "3,6", + "3,7", + "3,8", + "3,9", + "3,10", + "3,11", + { + "w": 1.75 + }, + "3,12\n\n\n2,0", + "3,13\n\n\n2,0", + { + "x": 0.25, + "w": 2.75 + }, + "3,12\n\n\n2,1" + ], + [ + { + "x": 4 + }, + "4,1", + { + "w": 1.5 + }, + "4,2", + { + "w": 6 + }, + "4,7\n\n\n4,0", + { + "w": 1.5 + }, + "4,10", + "4,11" + ], + [ + { + "y": 0.25, + "x": 6.5, + "w": 3 + }, + "4,5\n\n\n4,1", + { + "w": 3 + }, + "4,7\n\n\n4,1" ] - } - } \ No newline at end of file + ] + } +} diff --git a/keyboards/alps64/keymaps/vial/config.h b/keyboards/alps64/keymaps/vial/config.h new file mode 100644 index 0000000000..8f2f00c0f7 --- /dev/null +++ b/keyboards/alps64/keymaps/vial/config.h @@ -0,0 +1,9 @@ + +/* SPDX-License-Identifier: GPL-2.0-or-later */ + +#pragma once + +#define VIAL_KEYBOARD_UID {0xBD, 0x15, 0x93, 0x37, 0x7A, 0x35, 0x29, 0x02} +#define VIAL_UNLOCK_COMBO_ROWS { 3, 2 } +#define VIAL_UNLOCK_COMBO_COLS { 6, 3 } + diff --git a/keyboards/alps64/keymaps/vial/keymap.c b/keyboards/alps64/keymaps/vial/keymap.c new file mode 100644 index 0000000000..aef6995a10 --- /dev/null +++ b/keyboards/alps64/keymaps/vial/keymap.c @@ -0,0 +1,37 @@ +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + /* 0: qwerty */ + [0] = LAYOUT_all( + 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_NUHS, 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_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_ESC, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_APP, KC_RALT, KC_RGUI, KC_RCTL + ), + + [1] = 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_TRNS, KC_DEL, + 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, 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 + ), + + [2] = LAYOUT_all( + 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, 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, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ), + + [3] = LAYOUT_all( + 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, 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, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ), + +}; diff --git a/keyboards/alps64/keymaps/vial/rules.mk b/keyboards/alps64/keymaps/vial/rules.mk new file mode 100644 index 0000000000..c96b352451 --- /dev/null +++ b/keyboards/alps64/keymaps/vial/rules.mk @@ -0,0 +1,8 @@ +VIA_ENABLE = yes +VIAL_ENABLE = yes +LTO_ENABLE = yes +CONSOLE_ENABLE = no +COMMAND_ENABLE = no +TAP_DANCE_ENABLE = no +MIDI_ENABLE = no + diff --git a/keyboards/alps64/keymaps/vial/vial.json b/keyboards/alps64/keymaps/vial/vial.json new file mode 100644 index 0000000000..a0efe975fb --- /dev/null +++ b/keyboards/alps64/keymaps/vial/vial.json @@ -0,0 +1,216 @@ +{ + "name": "Hasu Alps64", + "lighting" : "none", + "matrix": {"rows": 8, "cols": 8}, + "layouts": { + "labels": [ + ["Enter Key", "ANSI", "ISO", "BAE"], + "Split Left Shift", + "Split Right Shift", + "Split Backspace", + ["Bottom row", "104", "101/103", "101/103 WKL", "Infinity", "AEK", "HHKB"] + ], + "keymap": [ + [ + {"x": 2.75}, + "3,6", + "3,7", + "4,6", + "4,7", + "5,6", + "5,7", + "6,6", + "6,7", + "7,6", + "7,7", + "0,6", + "0,7", + "1,7", + {"c": "#aaaaaa", "w": 2}, + "2,7\n\n\n3,0", + {"x": 0.5, "c": "#cccccc"}, + "2,6\n\n\n3,1", + {"c": "#aaaaaa"}, + "2,7\n\n\n3,1" + ], + [ + {"x": 2.75, "w": 1.5}, + "3,4", + {"c": "#cccccc"}, + "3,5", + "4,4", + "4,5", + "5,4", + "5,5", + "6,4", + "6,5", + "7,5", + "0,5", + "1,5", + "1,6", + "2,5", + {"w": 1.5}, + "2,4\n\n\n0,0", + { + "x": 1.5, + "c": "#777777", + "w": 1.25, + "h": 2, + "w2": 1.5, + "h2": 1, + "x2": -0.25 + }, + "2,3\n\n\n0,1", + { + "x": 0.75, + "w": 1.5, + "h": 2, + "w2": 2.25, + "h2": 1, + "x2": -0.75, + "y2": 1 + }, + "2,3\n\n\n0,2" + ], + [ + {"x": 2.75, "c": "#aaaaaa", "w": 1.75}, + "3,2", + {"c": "#cccccc"}, + "3,3", + "4,3", + "5,2", + "5,3", + "6,3", + "7,3", + "7,4", + "0,3", + "0,4", + "1,3", + "1,4", + {"c": "#777777", "w": 2.25}, + "2,3\n\n\n0,0", + {"x": 0.5, "c": "#cccccc"}, + "2,4\n\n\n0,1" + ], + [ + {"c": "#aaaaaa", "w": 1.25}, + "3,1\n\n\n1,1", + {"c": "#cccccc"}, + "4,1\n\n\n1,1", + {"x": 0.5, "c": "#aaaaaa", "w": 2.25}, + "3,1\n\n\n1,0", + {"c": "#cccccc"}, + "4,2", + "5,1", + "6,1", + "6,2", + "7,1", + "7,2", + "0,1", + "0,2", + "1,1", + "1,2", + {"c": "#aaaaaa", "w": 2.75}, + "2,1\n\n\n2,0", + {"x": 0.5, "w": 1.75}, + "2,1\n\n\n2,1", + "2,2\n\n\n2,1" + ], + [ + {"x": 2.75, "w": 1.25}, + "3,0\n\n\n4,0", + {"w": 1.25}, + "4,0\n\n\n4,0", + {"w": 1.25}, + "5,0\n\n\n4,0", + {"c": "#cccccc", "w": 6.25}, + "6,0\n\n\n4,0", + {"c": "#aaaaaa", "w": 1.25}, + "7,0\n\n\n4,0", + {"w": 1.25}, + "0,0\n\n\n4,0", + {"w": 1.25}, + "1,0\n\n\n4,0", + {"w": 1.25}, + "2,0\n\n\n4,0" + ], + [ + {"y": 0.25, "x": 2.75, "w": 1.5}, + "3,0\n\n\n4,1", + "4,0\n\n\n4,1", + {"w": 1.5}, + "5,0\n\n\n4,1", + {"c": "#cccccc", "w": 7}, + "6,0\n\n\n4,1", + {"c": "#aaaaaa", "w": 1.5}, + "0,0\n\n\n4,1", + "1,0\n\n\n4,1", + {"w": 1.5}, + "2,0\n\n\n4,1" + ], + [ + {"x": 2.75, "w": 1.5}, + "3,0\n\n\n4,2", + {"d": true}, + "\n\n\n4,2", + {"w": 1.5}, + "5,0\n\n\n4,2", + {"c": "#cccccc", "w": 7}, + "6,0\n\n\n4,2", + {"c": "#aaaaaa", "w": 1.5}, + "0,0\n\n\n4,2", + {"d": true}, + "\n\n\n4,2", + {"w": 1.5}, + "2,0\n\n\n4,2" + ], + [ + {"x": 2.75, "w": 1.5}, + "3,0\n\n\n4,3", + "4,0\n\n\n4,3", + {"w": 1.5}, + "5,0\n\n\n4,3", + {"c": "#cccccc", "w": 6}, + "6,0\n\n\n4,3", + {"c": "#aaaaaa", "w": 1.5}, + "7,0\n\n\n4,3", + "0,0\n\n\n4,3", + "1,0\n\n\n4,3", + {"w": 1.5}, + "2,0\n\n\n4,3" + ], + [ + {"x": 2.75, "w": 1.5}, + "3,0\n\n\n4,4", + {"w": 1.25}, + "4,0\n\n\n4,4", + {"w": 1.5}, + "5,0\n\n\n4,4", + {"c": "#cccccc", "w": 6.5}, + "6,0\n\n\n4,4", + {"c": "#aaaaaa", "w": 1.5}, + "0,0\n\n\n4,4", + {"w": 1.25}, + "1,0\n\n\n4,4", + {"w": 1.5}, + "2,0\n\n\n4,4" + ], + [ + {"x": 2.75, "w": 1.5, "d": true}, + "\n\n\n4,5", + "4,0\n\n\n4,5", + {"w": 1.5}, + "5,0\n\n\n4,5", + {"c": "#cccccc", "w": 6}, + "6,0\n\n\n4,5", + {"c": "#aaaaaa", "w": 1.5}, + "7,0\n\n\n4,5", + "0,0\n\n\n4,5", + "1,0\n\n\n4,5", + {"w": 1.5, "d": true}, + "\n\n\n4,5" + ] + ] + } +} + diff --git a/keyboards/amjkeyboard/amj40/keymaps/vial/config.h b/keyboards/amjkeyboard/amj40/keymaps/vial/config.h new file mode 100644 index 0000000000..bd0321e6e9 --- /dev/null +++ b/keyboards/amjkeyboard/amj40/keymaps/vial/config.h @@ -0,0 +1,8 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ + +#pragma once + +#define VIAL_KEYBOARD_UID {0x78, 0x0D, 0x83, 0xE1, 0xB1, 0x93, 0x37, 0x62} + +#define VIAL_UNLOCK_COMBO_ROWS { 0, 0 } +#define VIAL_UNLOCK_COMBO_COLS { 0, 11 } diff --git a/keyboards/amjkeyboard/amj40/keymaps/vial/keymap.c b/keyboards/amjkeyboard/amj40/keymaps/vial/keymap.c new file mode 100644 index 0000000000..8cc9b1bece --- /dev/null +++ b/keyboards/amjkeyboard/amj40/keymaps/vial/keymap.c @@ -0,0 +1,143 @@ +/* Copyright 2017 Fabian Topfstedt + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +#include QMK_KEYBOARD_H + +enum layer_names { + _QWERTY, + _LOWER, + _RAISE, + _ADJUST, +}; + +enum custom_keycodes { + QWERTY = SAFE_RANGE, + LOWER, + RAISE, + ADJUST, +}; + +#define LT1_SPC LT(_LOWER,KC_SPC) +#define LT2_SPC LT(_RAISE,KC_SPC) +#define LT3_LGU LT(_ADJUST,KC_LGUI) + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + /* Default Layer + * ,-----------------------------------------------. + * |Esc| Q | W | E | R | T | Y | U | I | O | P |BS | + * |-----------------------------------------------| + * |Tab | A | S | D | F | G | H | J | K | L |Enter | + * |-----------------------------------------------| + * | LSft | Z | X | C | V | B | N | M | , | . |/? | + * |-----------------------------------------------| + * |LCtl|GUI|LAlt|Spc/Fn0 | Spc/Fn1 |Fn2 |Alt|RCtl| + * `-----------------------------------------------' + */ + [_QWERTY] = LAYOUT( + KC_ESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, + KC_TAB, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, 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_LCTL, KC_LGUI, KC_LALT, LT1_SPC, LT2_SPC, LT3_LGU, KC_RALT, KC_RCTL + ), + + /* Function Layer 1 HHKB style + * ,-----------------------------------------------. + * | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) |BS | + * |-----------------------------------------------| + * | F1 |F2 |F3 |F4 |F5 |F6 | _ | + | { | } | Pipe | + * |-----------------------------------------------| + * | F7 |F8 |F9 |F10|F11|F12| : | " |BL±|BL+ |BL-| + * |-----------------------------------------------| + * | | | | | Left |Down|Up |Rght| + * `-----------------------------------------------' + */ + [_LOWER] = LAYOUT( + 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_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, + KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_COLN, KC_DQT, BL_TOGG, BL_INC, BL_DEC, + _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT + ), + + /* Function Layer 1 HHKB style + * ,-----------------------------------------------. + * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 |BS | + * |-----------------------------------------------| + * | F1 |F2 |F3 |F4 |F5 |F6 | - | = | [ | ] | \ | + * |-----------------------------------------------| + * | F7 |F8 |F9 |F10|F11|F12| ; | ' | | |Del| + * |-----------------------------------------------| + * | | | | | | | |RGB±| + * `-----------------------------------------------' + */ + [_RAISE] = LAYOUT( + KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, + KC_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_SCLN, KC_QUOT, _______, _______, KC_DEL, + _______, _______, _______, _______, _______, _______, _______, RGB_TOG + ), + + /* Function Layer 1 HHKB style + * ,-----------------------------------------------. + * | |RST| | | | | | | | | |Del| + * |-----------------------------------------------| + * | | | |Au1|Au0|AGN|AGS| | | | | + * |-----------------------------------------------| + * | | | |RTg|RMd|RH+|RH-|RS+|RS-|RV+ |RV-| + * |-----------------------------------------------| + * |SLP | | | | | | |RTg | + * `-----------------------------------------------' + */ + [_ADJUST] = LAYOUT( + _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, + _______, _______, _______, AU_ON, AU_OFF, AG_NORM, AG_SWAP, _______, _______, _______, _______, + _______, _______, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, + KC_SLEP, _______, _______, _______, _______, _______, _______, _______ + ), +}; + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + switch (keycode) { + case LOWER: + if (record->event.pressed) { + layer_on(_LOWER); + update_tri_layer(_LOWER, _RAISE, _ADJUST); + } else { + layer_off(_LOWER); + update_tri_layer(_LOWER, _RAISE, _ADJUST); + } + return false; + break; + case RAISE: + if (record->event.pressed) { + layer_on(_RAISE); + update_tri_layer(_LOWER, _RAISE, _ADJUST); + } else { + layer_off(_RAISE); + update_tri_layer(_LOWER, _RAISE, _ADJUST); + } + return false; + break; + case ADJUST: + if (record->event.pressed) { + layer_on(_ADJUST); + } else { + layer_off(_ADJUST); + } + return false; + break; + } + return true; +} diff --git a/keyboards/amjkeyboard/amj40/keymaps/vial/readme.md b/keyboards/amjkeyboard/amj40/keymaps/vial/readme.md new file mode 100644 index 0000000000..2659292ae5 --- /dev/null +++ b/keyboards/amjkeyboard/amj40/keymaps/vial/readme.md @@ -0,0 +1,11 @@ +AMJ40 Default Layout +===================== + +##Quantum MK Firmware +For the full Quantum feature list, see the parent readme.md. + +# Features +* Based on a combination of the original AMJ40 keymap from the TMK firmware as well as the Planck Ortholinear keyboard's "Lower," "Raise," and "Adjust" layers. +* View the keymap.c file to understand they layout of the keymap. +* Has keys to toggle both the switch LEDs and underglow LEDs. + diff --git a/keyboards/amjkeyboard/amj40/keymaps/vial/rules.mk b/keyboards/amjkeyboard/amj40/keymaps/vial/rules.mk new file mode 100644 index 0000000000..e3c7b6e47b --- /dev/null +++ b/keyboards/amjkeyboard/amj40/keymaps/vial/rules.mk @@ -0,0 +1,11 @@ +VIA_ENABLE = yes +VIAL_ENABLE = yes +LTO_ENABLE = yes +# disable unused QMK features to reduce firmware size +BACKLIGHT_ENABLE = no +RGBLIGHT_ENABLE = no +# disable unused Vial features to reduce firmware size +QMK_SETTINGS = yes +TAP_DANCE_ENABLE = yes +COMBO_ENABLE = yes +KEY_OVERRIDE_ENABLE = no diff --git a/keyboards/amjkeyboard/amj40/keymaps/vial/vial.json b/keyboards/amjkeyboard/amj40/keymaps/vial/vial.json new file mode 100644 index 0000000000..9388901d5d --- /dev/null +++ b/keyboards/amjkeyboard/amj40/keymaps/vial/vial.json @@ -0,0 +1,34 @@ +{ + "lighting": "none", + "matrix": { + "rows": 4, + "cols": 12 + }, + "layouts": { + "labels": [ + [ + "Layout", + "Staggered", + "Ortholinear" + ], + [ + "Bottom Row", + "Layout 1", + "Layout 2", + "Layout 3", + "Layout 4", + "Ortholinear 2.75u Spacebar", + "Ortholinear 6u Spacebar" + ] + ], + "keymap": [ + ["0,0","0,1","0,2","0,3","0,4","0,5","0,6","0,7","0,8","0,9","0,10","0,11"], + [{"w":1.25},"1,0\n\n\n0,0","1,1\n\n\n0,0","1,2\n\n\n0,0","1,3\n\n\n0,0","1,4\n\n\n0,0","1,5\n\n\n0,0","1,6\n\n\n0,0","1,7\n\n\n0,0","1,8\n\n\n0,0","1,9\n\n\n0,0",{"w":1.75},"1,11\n\n\n0,0",{"x":0.25},"1,0\n\n\n0,1","1,1\n\n\n0,1","1,2\n\n\n0,1","1,3\n\n\n0,1","1,4\n\n\n0,1","1,5\n\n\n0,1","1,6\n\n\n0,1","1,7\n\n\n0,1","1,8\n\n\n0,1","1,9\n\n\n0,1","1,10\n\n\n0,1","1,11\n\n\n0,1"], + [{"w":1.75},"2,0\n\n\n0,0","2,2\n\n\n0,0","2,3\n\n\n0,0","2,4\n\n\n0,0","2,5\n\n\n0,0","2,6\n\n\n0,0","2,7\n\n\n0,0","2,8\n\n\n0,0","2,9\n\n\n0,0",{"w":1.25},"2,10\n\n\n0,0","2,11\n\n\n0,0",{"x":0.25},"2,0\n\n\n0,1","2,1\n\n\n0,1","2,2\n\n\n0,1","2,3\n\n\n0,1","2,4\n\n\n0,1","2,5\n\n\n0,1","2,6\n\n\n0,1","2,7\n\n\n0,1","2,8\n\n\n0,1","2,9\n\n\n0,1","2,10\n\n\n0,1","2,11\n\n\n0,1"], + [{"w":1.25},"3,0\n\n\n1,0","3,1\n\n\n1,0",{"w":1.25},"3,2\n\n\n1,0",{"w":2.25},"3,4\n\n\n1,0",{"w":2.75},"3,5\n\n\n1,0",{"w":1.25},"3,9\n\n\n1,0","3,10\n\n\n1,0",{"w":1.25},"3,11\n\n\n1,0"], + [{"y":0.25,"w":1.25},"3,0\n\n\n1,1","3,1\n\n\n1,1","3,2\n\n\n1,1",{"w":6.25},"3,5\n\n\n1,1",{"w":1.25},"3,10\n\n\n1,1",{"w":1.25},"3,11\n\n\n1,1",{"x":0.25},"3,0\n\n\n1,4","3,1\n\n\n1,4","3,2\n\n\n1,4","3,3\n\n\n1,4","3,4\n\n\n1,4",{"w":2.75},"3,5\n\n\n1,4",{"w":1.25},"3,8\n\n\n1,4","3,9\n\n\n1,4","3,10\n\n\n1,4","3,11\n\n\n1,4"], + [{"y":0.25,"w":1.5},"3,0\n\n\n1,2","3,1\n\n\n1,2",{"w":1.5},"3,2\n\n\n1,2",{"w":2.25},"3,5\n\n\n1,2",{"w":2.75},"3,5\n\n\n1,2","3,9\n\n\n1,2","3,10\n\n\n1,2","3,11\n\n\n1,2",{"x":0.25},"3,0\n\n\n1,5","3,1\n\n\n1,5","3,2\n\n\n1,5",{"w":6},"3,5\n\n\n1,5","3,9\n\n\n1,5","3,10\n\n\n1,5","3,11\n\n\n1,5"], + [{"y":0.25,"w":1.25},"3,0\n\n\n1,3","3,1\n\n\n1,3",{"w":1.25},"3,2\n\n\n1,3",{"w":6.25},"3,5\n\n\n1,3","3,10\n\n\n1,3",{"w":1.25},"3,11\n\n\n1,3"] + ] + } +} diff --git a/keyboards/ashpil/modelm_usbc/keymaps/vial/config.h b/keyboards/ashpil/modelm_usbc/keymaps/vial/config.h new file mode 100644 index 0000000000..6ce9be782c --- /dev/null +++ b/keyboards/ashpil/modelm_usbc/keymaps/vial/config.h @@ -0,0 +1,8 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ + +#pragma once + +#define VIAL_KEYBOARD_UID {0x0A, 0x52, 0x03, 0xC4, 0xD6, 0x2F, 0xA3, 0x5D} + +#define VIAL_UNLOCK_COMBO_ROWS { 0, 6 } +#define VIAL_UNLOCK_COMBO_COLS { 2, 6 } diff --git a/keyboards/ashpil/modelm_usbc/keymaps/vial/keymap.c b/keyboards/ashpil/modelm_usbc/keymaps/vial/keymap.c new file mode 100644 index 0000000000..10402ed070 --- /dev/null +++ b/keyboards/ashpil/modelm_usbc/keymaps/vial/keymap.c @@ -0,0 +1,51 @@ +/* Copyright 2019 ashpil + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT_fullsize_iso_wkl( + KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_PSCR, KC_SCRL, KC_PAUS, + KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, + 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_P7, KC_P8, KC_P9, KC_PPLS, + 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_BSLS, KC_ENT, KC_P4, KC_P5, KC_P6, + 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_P1, KC_P2, KC_P3, KC_PENT, + KC_LCTL, KC_LALT, KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT + ), + [1] = LAYOUT_fullsize_iso_wkl( + 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, 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, 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, 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 + ), + [2] = LAYOUT_fullsize_iso_wkl( + 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, 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, 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, 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 + ), + [3] = LAYOUT_fullsize_iso_wkl( + 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, 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, 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, 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 + ) +}; diff --git a/keyboards/ashpil/modelm_usbc/keymaps/vial/rules.mk b/keyboards/ashpil/modelm_usbc/keymaps/vial/rules.mk new file mode 100644 index 0000000000..4f7618e9b2 --- /dev/null +++ b/keyboards/ashpil/modelm_usbc/keymaps/vial/rules.mk @@ -0,0 +1,2 @@ +VIA_ENABLE = yes +VIAL_ENABLE = yes diff --git a/keyboards/ashpil/modelm_usbc/keymaps/vial/vial.json b/keyboards/ashpil/modelm_usbc/keymaps/vial/vial.json new file mode 100644 index 0000000000..d6a2049554 --- /dev/null +++ b/keyboards/ashpil/modelm_usbc/keymaps/vial/vial.json @@ -0,0 +1,239 @@ +{ + "name": "IBM Model M 101 ANSI/102 ISO", + "vendorId": "0xFEED", + "productId": "0x0000", + "matrix": { + "rows": 8, + "cols": 16 + }, + "layouts": { + "labels": ["ISO"], + "keymap": [ + [ + "0,2", + { + "x": 1 + }, + "2,3", + "2,4", + "1,4", + "0,4", + { + "x": 0.5 + }, + "0,6", + "0,8", + "1,9", + "2,9", + { + "x": 0.5 + }, + "2,6", + "3,6", + "3,11", + "3,12", + { + "x": 0.5 + }, + "3,15", + "4,15", + "6,14" + ], + [ + { + "y": 0.25 + }, + "2,2", + "3,2", + "3,3", + "3,4", + "3,5", + "2,5", + "2,7", + "3,7", + "3,8", + "3,9", + "3,10", + "2,10", + "2,8", + { + "w": 2 + }, + "1,6", + { + "x": 0.5 + }, + "2,12", + "2,14", + "2,13", + { + "x": 0.5 + }, + "6,11", + "6,12", + "6,13", + "7,13" + ], + [ + { + "w": 1.5 + }, + "1,2", + "4,2", + "4,3", + "4,4", + "4,5", + "1,5", + "1,7", + "4,7", + "4,8", + "4,9", + "4,10", + "1,10", + "1,8", + { + "w": 1.5 + }, + "6,10\n\n\n0,0", + { + "x": 0.5 + }, + "2,11", + "3,14", + "3,13", + { + "x": 0.5 + }, + "4,11", + "4,12", + "4,13", + { + "h": 2 + }, + "4,14" + ], + [ + { + "w": 1.75 + }, + "1,3", + "5,2", + "5,3", + "5,4", + "5,5", + "0,5", + "0,7", + "5,7", + "5,8", + "5,9", + "5,10", + "0,10", + { + "w": 2.25 + }, + "6,6\n\n\n0,0", + { + "x": 4 + }, + "1,11", + "1,12", + "1,13" + ], + [ + { + "w": 2.25 + }, + "1,1\n\n\n0,0", + "6,2", + "6,3", + "6,4", + "6,5", + "7,5", + "7,7", + "6,7", + "6,8", + "6,9", + "7,10", + { + "w": 2.75 + }, + "6,1", + { + "x": 1.5 + }, + "0,14", + { + "x": 1.5 + }, + "5,11", + "5,12", + "5,13", + { + "h": 2 + }, + "5,14" + ], + [ + { + "w": 1.5 + }, + "2,0", + { + "x": 1, + "w": 1.5 + }, + "0,15", + { + "w": 7 + }, + "7,6", + { + "w": 1.5 + }, + "7,15", + { + "x": 1, + "w": 1.5 + }, + "6,0", + { + "x": 0.5 + }, + "7,14", + "7,11", + "7,12", + { + "x": 0.5, + "w": 2 + }, + "0,12", + "0,13" + ], + [ + { + "y": 0.75, + "x": 13.75, + "w": 1.25, + "h": 2, + "w2": 1.5, + "h2": 1, + "x2": -0.25 + }, + "6,6\n\n\n0,1" + ], + [ + { + "x": 12.75 + }, + "6,10\n\n\n0,1" + ], + [ + { + "w": 1.25 + }, + "1,1\n\n\n0,1", + "0,3\n\n\n0,1" + ] + ] + } +} diff --git a/keyboards/boardsource/lulu/keymaps/vial/config.h b/keyboards/boardsource/lulu/keymaps/vial/config.h new file mode 100644 index 0000000000..3ce29e5a53 --- /dev/null +++ b/keyboards/boardsource/lulu/keymaps/vial/config.h @@ -0,0 +1,12 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ + +#pragma once + +#define VIAL_KEYBOARD_UID {0xAB, 0x22, 0x68, 0x8B, 0x59, 0xD0, 0x81, 0x11} +#define VIAL_UNLOCK_COMBO_ROWS { 0, 0 } +#define VIAL_UNLOCK_COMBO_COLS { 0, 1 } + +#if defined(__AVR_ATmega32U4__) + #undef ENABLE_RGB_MATRIX_BAND_SAT + #undef ENABLE_RGB_MATRIX_BAND_VAL +#endif diff --git a/keyboards/boardsource/lulu/keymaps/vial/keymap.c b/keyboards/boardsource/lulu/keymaps/vial/keymap.c new file mode 100644 index 0000000000..4a969d4963 --- /dev/null +++ b/keyboards/boardsource/lulu/keymaps/vial/keymap.c @@ -0,0 +1,104 @@ +// Copyright 2022 Cole Smith +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H + +enum layers { + _QWERTY, + _RAISE, + _LOWER, + _ADJUST +}; + +#define RAISE MO(_RAISE) +#define LOWER MO(_LOWER) + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + +/* QWERTY + * ,-----------------------------------------. ,-----------------------------------------. + * | ESC | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | ` | + * |------+------+------+------+------+------| |------+------+------+------+------+------| + * | Tab | Q | W | E | R | T | | Y | U | I | O | P | - | + * |------+------+------+------+------+------| |------+------+------+------+------+------| + * |LCTRL | A | S | D | F | G |-------. ,-------| H | J | K | L | ; | ' | + * |------+------+------+------+------+------| [ | | ] |------+------+------+------+------+------| + * |LShift| Z | X | C | V | B |-------| |-------| N | M | , | . | / |RShift| + * `-----------------------------------------/ / \ \-----------------------------------------' + * | LAlt | LGUI |LOWER | /Space / \Enter \ |RAISE |BackSP| RGUI | + * | | | |/ / \ \ | | | | + * `----------------------------' '------''--------------------' + */ + + [_QWERTY] = LAYOUT( + KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, 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_Y, KC_U, KC_I, KC_O, KC_P, KC_MINS, + KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_LBRC, KC_RBRC, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, + KC_LALT, KC_LGUI, LOWER, KC_SPC, KC_ENT, RAISE, KC_BSPC, KC_RGUI +), +/* LOWER + * ,-----------------------------------------. ,-----------------------------------------. + * | | | | | | | | | | | | | | + * |------+------+------+------+------+------| |------+------+------+------+------+------| + * | F1 | F2 | F3 | F4 | F5 | F6 | | F7 | F8 | F9 | F10 | F11 | F12 | + * |------+------+------+------+------+------| |------+------+------+------+------+------| + * | ` | ! | @ | # | $ | % |-------. ,-------| ^ | & | * | ( | ) | - | + * |------+------+------+------+------+------| [ | | ] |------+------+------+------+------+------| + * | | | | | | |-------| |-------| | _ | + | { | } | | | + * `-----------------------------------------/ / \ \-----------------------------------------' + * | LAlt | LGUI |LOWER | /Space / \Enter \ |RAISE |BackSP| RGUI | + * | | | |/ / \ \ | | | | + * `----------------------------' '------''--------------------' + */ +[_LOWER] = LAYOUT( + _______, _______, _______, _______, _______, _______, _______, _______, _______,_______, _______, _______, + 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_GRV, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_TILD, + _______, _______, _______, _______, _______, _______, _______, _______, XXXXXXX, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, + _______, _______, _______, _______, _______, _______, _______, _______ +), +/* RAISE + * ,-----------------------------------------. ,-----------------------------------------. + * |MOD | MODR | S+ | S- | B+ | B- | | | | | | | | + * |------+------+------+------+------+------| |------+------+------+------+------+------| + * | ` | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | | + * |------+------+------+------+------+------| |------+------+------+------+------+------| + * | F1 | F2 | F3 | F4 | F5 | F6 |-------. ,-------| | Left | Down | Up |Right | | + * |------+------+------+------+------+------|RGB_TOG| | ] |------+------+------+------+------+------| + * | F7 | F8 | F9 | F10 | F11 | F12 |-------| |-------| + | - | = | [ | ] | \ | + * `-----------------------------------------/ / \ \-----------------------------------------' + * | LAlt | LGUI |LOWER | /Space / \Enter \ |RAISE |BackSP| RGUI | + * | | | |/ / \ \ | | | | + * `----------------------------' '------''--------------------' + */ + +[_RAISE] = LAYOUT( + RGB_MOD, RGB_RMOD,RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, + KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, _______, + KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, XXXXXXX, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, XXXXXXX, + KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, RGB_TOG, _______, KC_PLUS, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS, + _______, _______, _______, _______, _______, _______, _______, _______ +), +/* ADJUST + * ,-----------------------------------------. ,-----------------------------------------. + * | | | | | | | | | | | | | | + * |------+------+------+------+------+------| |------+------+------+------+------+------| + * | | | | | | | | | | | | | | + * |------+------+------+------+------+------| |------+------+------+------+------+------| + * | | | | | | |-------. ,-------| | |RGB ON| HUE+ | SAT+ | VAL+ | + * |------+------+------+------+------+------| | | |------+------+------+------+------+------| + * | | | | | | |-------| |-------| | | MODE | HUE- | SAT- | VAL- | + * `-----------------------------------------/ / \ \-----------------------------------------' + * | LAlt | LGUI |LOWER | /Space / \Enter \ |RAISE |BackSP| RGUI | + * | | | |/ / \ \ | | | | + * `----------------------------' '------''--------------------' + */ + [_ADJUST] = LAYOUT( + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + _______, _______, _______, _______, _______, _______, _______, _______ + ) +}; diff --git a/keyboards/boardsource/lulu/keymaps/vial/rules.mk b/keyboards/boardsource/lulu/keymaps/vial/rules.mk new file mode 100644 index 0000000000..51fa8e5556 --- /dev/null +++ b/keyboards/boardsource/lulu/keymaps/vial/rules.mk @@ -0,0 +1,15 @@ +VIA_ENABLE = yes +VIAL_ENABLE = yes + +VIALRGB_ENABLE = yes + +ifeq ($(strip $(MCU)), atmega32u4) + QMK_SETTINGS = no + COMBO_ENABLE = no + MOUSEKEY_ENABLE = no + TAP_DANCE_ENABLE = no + SPACE_CADET_ENABLE = no + GRAVE_ESC_ENABLE = no + KEY_OVERRIDE_ENABLE = no + MAGIC_ENABLE = no +endif diff --git a/keyboards/boardsource/lulu/keymaps/vial/vial.json b/keyboards/boardsource/lulu/keymaps/vial/vial.json new file mode 100644 index 0000000000..1a6f114d24 --- /dev/null +++ b/keyboards/boardsource/lulu/keymaps/vial/vial.json @@ -0,0 +1,354 @@ +{ + "name": "Boardsource Lulu", + "vendorId": "0x4273", + "productId": "0x7685", + "firmwareVersion": 0, + "keycodes": [ + "via/keycodes", + "via/qmk_lighting" + ], + "lighting": "vialrgb", + "menus": [ + "via/keymap", + "via/layouts", + "via/macros", + "via/save_load", + "core/qmk_rgblight" + ], + "matrix": { + "rows": 10, + "cols": 6 + }, + "layouts": { + "labels": ["encoders"], + "keymap": [ + { + "name": "lulu-via-vial" + }, + [ + { + "x": 6 + }, + "4,5\n\n\n0,1", + "0,0\n\n\n0,1\n\n\n\n\n\ne", + "1,0\n\n\n0,1\n\n\n\n\n\ne", + "9,5\n\n\n0,1" + ], + [ + { + "x": 7 + }, + "0,1\n\n\n0,1\n\n\n\n\n\ne", + "1,1\n\n\n0,1\n\n\n\n\n\ne" + ], + [ + { + "y": 0.25, + "x": 3 + }, + "0,3", + { + "x": 8 + }, + "5,3" + ], + [ + { + "y": -0.8700000000000001, + "x": 2 + }, + "0,2", + { + "x": 1 + }, + "0,4", + { + "x": 6 + }, + "5,4", + { + "x": 1 + }, + "5,2" + ], + [ + { + "y": -0.8799999999999999, + "x": 5 + }, + "0,5", + { + "x": 4 + }, + "5,5" + ], + [ + { + "y": -0.8700000000000001, + "x": 1 + }, + "0,1", + { + "x": 12 + }, + "5,1" + ], + [ + { + "y": -0.8799999999999999, + "c": "#777777" + }, + "0,0", + { + "x": 14, + "c": "#cccccc" + }, + "5,0" + ], + [ + { + "y": -0.5, + "x": 3 + }, + "1,3", + { + "x": 8 + }, + "6,3" + ], + [ + { + "y": -0.8700000000000001, + "x": 2 + }, + "1,2", + { + "x": 1 + }, + "1,4", + { + "x": 6 + }, + "6,4", + { + "x": 1 + }, + "6,2" + ], + [ + { + "y": -0.8799999999999999, + "x": 5 + }, + "1,5", + { + "x": 4 + }, + "6,5" + ], + [ + { + "y": -0.8700000000000001, + "x": 1 + }, + "1,1", + { + "x": 12 + }, + "6,1" + ], + [ + { + "y": -0.8799999999999999, + "c": "#aaaaaa" + }, + "1,0", + { + "x": 14, + "c": "#cccccc" + }, + "6,0" + ], + [ + { + "y": -0.5, + "x": 3 + }, + "2,3", + { + "x": 8 + }, + "7,3" + ], + [ + { + "y": -0.8700000000000001, + "x": 2 + }, + "2,2", + { + "x": 1 + }, + "2,4", + { + "x": 6 + }, + "7,4", + { + "x": 1 + }, + "7,2" + ], + [ + { + "y": -0.8799999999999999, + "x": 5 + }, + "2,5", + { + "x": 4 + }, + "7,5" + ], + [ + { + "y": -0.8700000000000001, + "x": 1 + }, + "2,1", + { + "x": 12 + }, + "7,1" + ], + [ + { + "y": -0.8799999999999999, + "c": "#aaaaaa" + }, + "2,0", + { + "x": 14, + "c": "#cccccc" + }, + "7,0" + ], + [ + { + "y": -0.75, + "x": 6 + }, + "4,5\n\n\n0,0", + { + "x": 2 + }, + "9,5\n\n\n0,0" + ], + [ + { + "y": -0.75, + "x": 3 + }, + "3,3", + { + "x": 8 + }, + "8,3" + ], + [ + { + "y": -0.8700000000000001, + "x": 2 + }, + "3,2", + { + "x": 1 + }, + "3,4", + { + "x": 6 + }, + "8,4", + { + "x": 1 + }, + "8,2" + ], + [ + { + "y": -0.8799999999999999, + "x": 5 + }, + "3,5", + { + "x": 4 + }, + "8,5" + ], + [ + { + "y": -0.8700000000000001, + "x": 1 + }, + "3,1", + { + "x": 12 + }, + "8,1" + ], + [ + { + "y": -0.8799999999999999, + "c": "#aaaaaa" + }, + "3,0", + { + "x": 14 + }, + "8,0" + ], + [ + { + "y": -0.3700000000000001, + "x": 2.5 + }, + "4,1" + ], + [ + { + "y": -0.9799999999999995, + "x": 3.5 + }, + "4,2", + { + "x": 7 + }, + "9,2", + "9,1" + ], + [ + { + "y": -0.9000000000000004, + "x": 4.5 + }, + "4,3", + { + "x": 0.5, + "c": "#777777", + "h": 1.5 + }, + "4,4", + { + "x": 2, + "h": 1.5 + }, + "9,4", + { + "x": 0.5, + "c": "#aaaaaa" + }, + "9,3" + ] + ] + } +} diff --git a/keyboards/dm9records/plaid/keymaps/vial/config.h b/keyboards/dm9records/plaid/keymaps/vial/config.h new file mode 100644 index 0000000000..a45879476d --- /dev/null +++ b/keyboards/dm9records/plaid/keymaps/vial/config.h @@ -0,0 +1,8 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ + +#pragma once + +#define VIAL_KEYBOARD_UID {0x19, 0x4E, 0xD1, 0x59, 0x72, 0x00, 0x2E, 0x42} + +#define VIAL_UNLOCK_COMBO_ROWS { 0, 2 } +#define VIAL_UNLOCK_COMBO_COLS { 0, 11 } diff --git a/keyboards/dm9records/plaid/keymaps/vial/keymap.c b/keyboards/dm9records/plaid/keymaps/vial/keymap.c new file mode 100644 index 0000000000..c0aff7dc89 --- /dev/null +++ b/keyboards/dm9records/plaid/keymaps/vial/keymap.c @@ -0,0 +1,109 @@ +/* Copyright 2019 Takuya Urakawa (dm9records.com) + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +#include QMK_KEYBOARD_H + +enum plaid_layers { + _QWERTY, + _LOWER, + _RAISE, + _ADJUST +}; + +#define LOWER FN_MO13 +#define RAISE FN_MO23 + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + +/* Qwerty + * ,-----------------------------------------------------------------------------------. + * | Tab | Q | W | E | R | T | Y | U | I | O | P | Bksp | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * | Esc | A | S | D | F | G | H | J | K | L | ; | " | + * |------+------+------+------+------+------|------+------+------+------+------+------| + * | Shift| Z | X | C | V | B | N | M | , | . | / |Enter | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | Ctrl | RAlt | Alt | GUI |Lower | Space |Raise | Left | Down | Up |Right | + * `-----------------------------------------------------------------------------------' + */ +[_QWERTY] = LAYOUT_plaid_grid( + 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_LCTL, KC_RALT, KC_LALT, KC_LGUI, LOWER, KC_SPC, KC_SPC, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT +), + +/* Lower + * ,-----------------------------------------------------------------------------------. + * | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | Bksp | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * | Del | F1 | F2 | F3 | F4 | F5 | F6 | _ | + | { | } | | | + * |------+------+------+------+------+------|------+------+------+------+------+------| + * | | F7 | F8 | F9 | F10 | F11 | F12 |ISO ~ |ISO | | Home | End | | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | | | | | | | Next | Vol- | Vol+ | Play | + * `-----------------------------------------------------------------------------------' + */ +[_LOWER] = LAYOUT_plaid_grid( + KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC, + KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, + _______, KC_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 +), + +/* Raise + * ,-----------------------------------------------------------------------------------. + * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * | Del | F1 | F2 | F3 | F4 | F5 | F6 | - | = | [ | ] | \ | + * |------+------+------+------+------+------|------+------+------+------+------+------| + * | | F7 | F8 | F9 | F10 | F11 | F12 |ISO # |ISO / |Pg Up |Pg Dn | | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | | | | | | | Next | Vol- | Vol+ | Play | + * `-----------------------------------------------------------------------------------' + */ +[_RAISE] = LAYOUT_plaid_grid( + 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 +), + +/* Adjust (Lower + Raise) + * ,-----------------------------------------------------------------------------------. + * |Reset | | | | | | | | | | | Del | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * | | |MusCyc|Aud on|Audoff|AGnorm|AGswap| | | | | | + * |------+------+------+------+------+------|------+------+------+------+------+------| + * | | | |Mus on|Musoff| | | | | | | | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | | | | | | | | | | | + * `-----------------------------------------------------------------------------------' + */ +[_ADJUST] = LAYOUT_plaid_grid( + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, + _______, _______, MU_MOD, AU_ON, AU_OFF, AG_NORM, AG_SWAP, _______, _______, _______, _______, _______, + _______, _______, _______, MU_ON, MU_OFF, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ +) + +}; + +bool led_update_user(led_t led_state) { + writePin(LED_RED, led_state.caps_lock); + writePin(LED_GREEN, led_state.scroll_lock); + return false; +} diff --git a/keyboards/dm9records/plaid/keymaps/vial/readme.md b/keyboards/dm9records/plaid/keymaps/vial/readme.md new file mode 100644 index 0000000000..80a89a715d --- /dev/null +++ b/keyboards/dm9records/plaid/keymaps/vial/readme.md @@ -0,0 +1,7 @@ +# Vial keymap for Plaid + +This layout is based on the default layout, and includes an adjust layer (4), +accessible by holding the lower and raise modifiers together. + +RED LED : Caps Lock +GREEN LED : Scroll Lock diff --git a/keyboards/dm9records/plaid/keymaps/vial/rules.mk b/keyboards/dm9records/plaid/keymaps/vial/rules.mk new file mode 100644 index 0000000000..46f9f1360f --- /dev/null +++ b/keyboards/dm9records/plaid/keymaps/vial/rules.mk @@ -0,0 +1,3 @@ +VIA_ENABLE = yes +VIAL_ENABLE = yes +LTO_ENABLE = yes diff --git a/keyboards/dm9records/plaid/keymaps/vial/vial.json b/keyboards/dm9records/plaid/keymaps/vial/vial.json new file mode 100644 index 0000000000..e33ee4de72 --- /dev/null +++ b/keyboards/dm9records/plaid/keymaps/vial/vial.json @@ -0,0 +1,71 @@ +{ + "name": "Plaid", + "vendorId": "0x16C0", + "productId": "0x27DB", + "lighting": "none", + "matrix": { "rows": 4, "cols": 12 }, + "layouts": { + "labels": [["Bottom Row", "Grid", "MIT"]], + "keymap": [ + [ + "0,0", + "0,1", + "0,2", + "0,3", + "0,4", + "0,5", + "0,6", + "0,7", + "0,8", + "0,9", + "0,10", + "0,11" + ], + [ + "1,0", + "1,1", + "1,2", + "1,3", + "1,4", + "1,5", + "1,6", + "1,7", + "1,8", + "1,9", + "1,10", + "1,11" + ], + [ + "2,0", + "2,1", + "2,2", + "2,3", + "2,4", + "2,5", + "2,6", + "2,7", + "2,8", + "2,9", + "2,10", + "2,11" + ], + [ + "3,0", + "3,1", + "3,2", + "3,3", + "3,4", + { "c": "#777777" }, + "3,5\n\n\n0,0", + "3,6\n\n\n0,0", + { "c": "#cccccc" }, + "3,7", + "3,8", + "3,9", + "3,10", + "3,11" + ], + [{ "x": 5, "c": "#777777", "w": 2 }, "3,5\n\n\n0,1"] + ] + } +} diff --git a/keyboards/donutcables/budget96/keymaps/vial/config.h b/keyboards/donutcables/budget96/keymaps/vial/config.h new file mode 100644 index 0000000000..4f99c69ff4 --- /dev/null +++ b/keyboards/donutcables/budget96/keymaps/vial/config.h @@ -0,0 +1,14 @@ +/* SPDX-Licanse-Identifier: GPL-2.0-or-later */ + +#pragma once + +#define VIAL_KEYBOARD_UID {0x2F, 0xE9, 0x9C, 0x35, 0xA0, 0x07, 0xEA, 0x2B} +#define VIAL_UNLOCK_COMBO_ROWS { 0,3 } +#define VIAL_UNLOCK_COMBO_COLS { 6,2 } +#define DYNAMIC_KEYMAP_LAYER_COUNT 3 +#undef LOCKING_SUPPORT_ENABLE +#undef LOCKING_RESYNC_ENABLE +#define NO_ACTION_ONESHOT +#define LAYER_STATE_8BIT + + diff --git a/keyboards/donutcables/budget96/keymaps/vial/keymap.c b/keyboards/donutcables/budget96/keymaps/vial/keymap.c new file mode 100644 index 0000000000..e9d28a8bc8 --- /dev/null +++ b/keyboards/donutcables/budget96/keymaps/vial/keymap.c @@ -0,0 +1,45 @@ +/* Copyright 2021 MechMerlin + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +[0] = LAYOUT_96_ansi( + KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_PSCR, KC_NUM, KC_INS, KC_HOME, KC_PGUP, KC_PSLS, + 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_END, KC_PGDN, KC_PSLS, KC_PAST, + 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_P7, KC_P8, KC_P9, KC_PMNS, + 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_P4, KC_P5, KC_P6, KC_PPLS, + 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_P1, KC_P2, KC_P3, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_LEFT, KC_DOWN, KC_RIGHT, KC_P0, KC_PDOT, KC_PENT), + +[1] = LAYOUT_96_ansi( + QK_BOOT, EE_CLR, 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, 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, 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_RMOD, RGB_HUD, RGB_SAD, RGB_VAD, RGB_SPD, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), + +[2] = LAYOUT_96_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, 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, 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, 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), +}; + + + diff --git a/keyboards/donutcables/budget96/keymaps/vial/readme.md b/keyboards/donutcables/budget96/keymaps/vial/readme.md new file mode 100644 index 0000000000..78e8e89b1c --- /dev/null +++ b/keyboards/donutcables/budget96/keymaps/vial/readme.md @@ -0,0 +1 @@ +# Vial-enabled default keymap for budget96 diff --git a/keyboards/donutcables/budget96/keymaps/vial/rules.mk b/keyboards/donutcables/budget96/keymaps/vial/rules.mk new file mode 100644 index 0000000000..6b19afe8a8 --- /dev/null +++ b/keyboards/donutcables/budget96/keymaps/vial/rules.mk @@ -0,0 +1,18 @@ +VIA_ENABLE = yes +VIAL_ENABLE = yes +LTO_ENABLE = yes +QMK_SETTINGS = no + +MAGIC_ENABLE = no +MOUSEKEY_ENABLE = no +CONSOLE_ENABLE = no +COMMAND_ENABLE = no +COMBO_ENABLE = no +NKRO_ENABLE = no +KEY_OVERRIDE_ENABLE = no +VIRTSER_ENABLE = no + +TAP_DANCE_ENABLE = no +SPACE_CADET_ENABLE = no +GRAVE_ESC_ENABLE = no +BACKLIGHT_ENABLE = no diff --git a/keyboards/donutcables/budget96/keymaps/vial/vial.json b/keyboards/donutcables/budget96/keymaps/vial/vial.json new file mode 100644 index 0000000000..5c9ec5817b --- /dev/null +++ b/keyboards/donutcables/budget96/keymaps/vial/vial.json @@ -0,0 +1,317 @@ +{ + "lighting": "none", + "matrix":{ + "rows":8, + "cols":15 + }, + "layouts":{ + "labels":[ + "Split Backspace", + "ISO Enter", + "Split LShift", + "Split RShift", + [ + "Bottom Row", + "Default", + "All" + ], + "Split Numpad +", + "Split Numpad Enter", + "Split Numpad 0" + ], + "keymap":[ + + [ + { + "x": 2.5 + }, + "5,0", + "5,2", + "5,3", + "5,4", + "5,5", + "6,0", + "6,10", + "7,10", + "7,0", + "5,11", + "5,12", + "5,13", + "5,14", + "1,13", + "2,14", + "0,13", + "7,6", + "7,8", + "7,9" + ], + [ + { + "x": 2.5 + }, + "4,0", + "4,1", + "4,2", + "4,3", + "4,4", + "4,5", + "6,1", + "6,11", + "7,11", + "7,1", + "4,10", + "4,11", + "4,12", + { + "c": "#00773a", + "w": 2 + }, + "4,13\n\n\n0,0", + { + "c": "#cccccc" + }, + "4,6", + "4,7", + "4,8", + "4,9", + { + "x": 2.25, + "c": "#00773a" + }, + "4,13\n\n\n0,1", + "4,14\n\n\n0,1" + ], + [ + { + "x": 2.5, + "c": "#cccccc", + "w": 1.5 + }, + "3,0", + "3,1", + "3,2", + "3,3", + "3,4", + "3,5", + "6,2", + "6,12", + "7,12", + "7,2", + "3,10", + "3,11", + "3,12", + { + "c": "#5d437e", + "w": 1.5 + }, + "3,13\n\n\n1,0", + { + "c": "#cccccc" + }, + "3,6", + "3,7", + "3,8", + { + "c": "#00589f", + "h": 2 + }, + "3,9\n\n\n5,0", + { + "x": 0.25 + }, + "3,9\n\n\n5,1", + { + "x": 1.75, + "c": "#5d437e", + "w": 1.25, + "h": 2, + "w2": 1.5, + "h2": 1, + "x2": -0.25 + }, + "2,13\n\n\n1,1" + ], + [ + { + "x": 2.5, + "c": "#67635b", + "w": 1.25, + "w2": 1.75, + "l": true + }, + "2,0", + { + "x": 0.5, + "c": "#cccccc" + }, + "2,1", + "2,2", + "2,3", + "2,4", + "2,5", + "6,3", + "6,13", + "7,13", + "7,3", + "2,10", + "2,11", + { + "c": "#5d437e", + "w": 2.25 + }, + "2,12\n\n\n1,0", + { + "c": "#cccccc" + }, + "2,6", + "2,7", + "2,8", + { + "x": 1.25, + "c": "#00589f" + }, + "2,9\n\n\n5,1", + { + "x": 0.75, + "c": "#5d437e" + }, + "2,12\n\n\n1,1" + ], + [ + { + "c": "#cb3d6e", + "w": 1.25 + }, + "1,0\n\n\n2,1", + "0,3\n\n\n2,1", + { + "x": 0.25, + "w": 2.25 + }, + "1,0\n\n\n2,0", + { + "c": "#cccccc" + }, + "1,1", + "1,2", + "1,3", + "1,4", + "1,5", + "6,4", + "6,14", + "7,14", + "7,4", + "1,10", + { + "c": "#8d242f", + "w": 1.75 + }, + "1,11\n\n\n3,0", + "6,8\n\n\n3,0", + { + "c": "#cccccc" + }, + "1,6", + "1,7", + "1,8", + { + "c": "#00589f", + "h": 2 + }, + "1,9\n\n\n6,0", + { + "x": 0.25 + }, + "1,9\n\n\n6,1", + { + "x": 0.25, + "c": "#8d242f", + "w": 2.75 + }, + "1,11\n\n\n3,1" + ], + [ + { + "x": 2.5, + "c": "#ee6d00", + "w": 1.25 + }, + "0,0\n\n\n4,0", + { + "w": 1.25 + }, + "0,1\n\n\n4,0", + { + "w": 1.25 + }, + "0,2\n\n\n4,0", + { + "c": "#dd1126", + "w": 6.25 + }, + "6,5\n\n\n4,0", + { + "c": "#f8c200", + "w": 1.5 + }, + "7,5\n\n\n4,0", + { + "w": 1.5 + }, + "0,11\n\n\n4,0", + "6,6\n\n\n4,0", + "6,7\n\n\n4,0", + { + "c": "#00589f" + }, + "6,9\n\n\n7,0", + "0,6\n\n\n7,0", + { + "c": "#cccccc" + }, + "0,8", + { + "x": 1.25, + "c": "#00589f" + }, + "0,9\n\n\n6,1" + ], + [ + { + "y": 0.25, + "x": 2.5, + "c": "#ee6d00", + "w": 1.25 + }, + "0,0\n\n\n4,1", + { + "w": 1.25 + }, + "0,1\n\n\n4,1", + { + "w": 1.25 + }, + "0,2\n\n\n4,1", + { + "c": "#dd1126", + "w": 6.25 + }, + "6,5\n\n\n4,1", + { + "c": "#f8c200" + }, + "7,5\n\n\n4,1", + "0,10\n\n\n4,1", + "0,11\n\n\n4,1", + "6,6\n\n\n4,1", + "6,7\n\n\n4,1", + { + "c": "#00589f", + "w": 2 + }, + "0,6\n\n\n7,1" + ] +] + + } +} \ No newline at end of file diff --git a/keyboards/fc660c/keymaps/vial/config.h b/keyboards/fc660c/keymaps/vial/config.h index 00131ba0e2..f997e418ee 100644 --- a/keyboards/fc660c/keymaps/vial/config.h +++ b/keyboards/fc660c/keymaps/vial/config.h @@ -4,4 +4,5 @@ #define VIAL_KEYBOARD_UID {0x86, 0xDA, 0x85, 0x0E, 0x54, 0x70, 0xA0, 0xA2} #define VIAL_UNLOCK_COMBO_ROWS { 1, 4 } -#define VIAL_UNLOCK_COMBO_COLS { 3, 14 } \ No newline at end of file +#define VIAL_UNLOCK_COMBO_COLS { 3, 14 } +#define VIAL_TAP_DANCE_ENTRIES 4 diff --git a/keyboards/fc660c/keymaps/vial/rules.mk b/keyboards/fc660c/keymaps/vial/rules.mk index 79f95e7425..11b616c0c5 100644 --- a/keyboards/fc660c/keymaps/vial/rules.mk +++ b/keyboards/fc660c/keymaps/vial/rules.mk @@ -1,5 +1,7 @@ VIA_ENABLE = yes VIAL_ENABLE = yes LTO_ENABLE = yes -QMK_SETTINGS = no -TAP_DANCE_ENABLE = no \ No newline at end of file +QMK_SETTINGS = yes +TAP_DANCE_ENABLE = yes +CONSOLE_ENABLE = no +EXTRALDFLAGS = -Wl,--relax diff --git a/keyboards/fc980c/keymaps/vial/config.h b/keyboards/fc980c/keymaps/vial/config.h new file mode 100644 index 0000000000..048729e65f --- /dev/null +++ b/keyboards/fc980c/keymaps/vial/config.h @@ -0,0 +1,7 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ + +#pragma once + +#define VIAL_KEYBOARD_UID {0x3F, 0x7E, 0x77, 0x9B, 0x2F, 0x52, 0x81, 0xF9} +#define VIAL_UNLOCK_COMBO_ROWS { 0, 6 } +#define VIAL_UNLOCK_COMBO_COLS { 13, 3 } \ No newline at end of file diff --git a/keyboards/fc980c/keymaps/vial/keymap.c b/keyboards/fc980c/keymaps/vial/keymap.c new file mode 100644 index 0000000000..88762c7a86 --- /dev/null +++ b/keyboards/fc980c/keymaps/vial/keymap.c @@ -0,0 +1,39 @@ +/* +Copyright 2017 Balz Guenat + +This program is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program. If not, see . +*/ +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT( + 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_DEL, KC_INS, KC_PGUP, KC_PGDN, + 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_NUM, KC_PSLS, KC_PAST, KC_PMNS, + 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_P7, KC_P8, KC_P9, KC_PPLS, + 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_P4, KC_P5, KC_P6, + 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_P1, KC_P2, KC_P3, KC_PENT, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RCTL, MO(1), KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT), + [1] = LAYOUT( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, KC_END, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, KC_SCRL, KC_PAUS, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PGUP, _______, _______, _______, _______, + _______, _______, _______, _______, _______, KC_APP, _______, KC_HOME, KC_PGDN, KC_END, _______, _______), +}; + +bool matrix_is_on(uint8_t row, uint8_t col) +{ + return (matrix_get_row(row) & (1<. + */ + +#include QMK_KEYBOARD_H + +enum layers { + _QWERTY, + _LOWER, + _RAISE, +}; + +#define LOWER MO(_LOWER) +#define RAISE MO(_RAISE) + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + +/* Qwerty + * ,-----------------------------------------------------------------------------------. + * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | / | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | Tab | Q | W | E | R | T | Y | U | I | O | P | Del | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * | CTRL | A | S | D | F | G | H | J | K | L | ; | ' | + * |------+------+------+------+------+------|------+------+------+------+------+------| + * | Shift| Z | X | C | V | B | N | M | , | . | Up |Enter | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | Esc | GUI | Alt |Lower | Backspace | Space |Raise | Left | Down |Right | + * `-----------------------------------------------------------------------------------' + */ +[_QWERTY] = LAYOUT_gk6_2x2u( + KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_SLSH, + KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_DEL, + KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_UP, KC_ENT, + KC_LCTL, KC_LGUI, KC_LALT, LOWER, KC_BSPC, KC_SPC, RAISE, KC_LEFT, KC_DOWN, KC_RGHT +), + +/* Raise + * ,-----------------------------------------------------------------------------------. + * | | | | | | | | | | | | | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * | | | | | | | | _ | + | { | } | | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * | | | | | | | | - | = | [ | ] | | + * |------+------+------+------+------+------|------+------+------+------+------+------| + * | |RGB_TG|RGB_M |RGB_HU|RGB_SI|RGB_VI|RGB_SP| | | | | | \ | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * |Debug | | | | | | | | |R Alt | + * `-----------------------------------------------------------------------------------' + */ +[_RAISE] = LAYOUT_gk6_2x2u( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, _______, + _______, _______, _______, _______, _______, _______, _______, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, _______, + _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, RGB_SPI, _______, _______, _______, KC_PIPE, KC_BSLS, + DB_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, KC_RALT +), + +/* Lower + * ,-----------------------------------------------------------------------------------. + * | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | CAPS | PSCR | | | | | | | | | | | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * | | Home | End | Ins | Play | | | | | | | | + * |------+------+------+------+------+------|------+------+------+------+------+------| + * | | << | >> | Mute | Vol- | Vol+ | | | | | PgUp | | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | | | | | | | | PgDn | | + * `-----------------------------------------------------------------------------------' + */ +[_LOWER] = LAYOUT_gk6_2x2u( + 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_CAPS, KC_PSCR, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, KC_HOME, KC_END, KC_INS, KC_MPLY, _______, _______, _______, _______, _______, _______, _______, + _______, KC_MPRV, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, _______, _______, KC_PGUP, _______, + _______, _______, _______, _______, _______, _______, _______, _______, KC_PGDN, _______ +), + +}; + +#ifdef RGB_MATRIX_ENABLE +void rgb_matrix_indicators_user(void) +{ + rgb_matrix_set_color(24, 0, 0, 0); + rgb_matrix_set_color(30, 0, 0, 0); + rgb_matrix_set_color(35, 0, 0, 0); + rgb_matrix_set_color(36, 0, 0, 0); + rgb_matrix_set_color(41, 0, 0, 0); +} +#endif diff --git a/keyboards/gizmo_engineering/gk6/keymaps/vial/rules.mk b/keyboards/gizmo_engineering/gk6/keymaps/vial/rules.mk new file mode 100644 index 0000000000..a4ef3930cb --- /dev/null +++ b/keyboards/gizmo_engineering/gk6/keymaps/vial/rules.mk @@ -0,0 +1,32 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +BOOTLOADER = atmel-dfu + +# Build Options +# change yes to no to disable + +VIA_ENABLE = yes +VIAL_ENABLE = yes + +# reduce size +LTO_ENABLE = yes +QMK_SETTINGS = no +TAP_DANCE_ENABLE = yes +COMBO_ENABLE = yes +KEY_OVERRIDE_ENABLE = no + +# +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = no # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = no # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output + +RGB_MATRIX_ENABLE = yes +RGB_MATRIX_DRIVER = IS31FL3731 diff --git a/keyboards/gizmo_engineering/gk6/keymaps/vial/vial.json b/keyboards/gizmo_engineering/gk6/keymaps/vial/vial.json new file mode 100644 index 0000000000..f274cd4ced --- /dev/null +++ b/keyboards/gizmo_engineering/gk6/keymaps/vial/vial.json @@ -0,0 +1,177 @@ +{ + "name": "Gizmo Engineering GK6", + "vendorId": "0x6532", + "productId": "0x0001", + "lighting": "none", + "matrix": { + "rows": 5, + "cols": 12 + }, + "layouts": { + "labels": [["Bottom Row", "Default", "1x2U", "5x12 1U"]], + "keymap": [ + [ + "0,0", + "0,1", + "0,2", + "0,3", + "0,4", + "0,5", + "0,6", + "0,7", + "0,8", + "0,9", + "0,10", + "0,11" + ], + [ + { + "c": "#777777" + }, + "1,0", + { + "c": "#cccccc" + }, + "1,1", + "1,2", + "1,3", + "1,4", + "1,5", + "1,6", + "1,7", + "1,8", + "1,9", + "1,10", + { + "c": "#777777" + }, + "1,11" + ], + [ + { + "c": "#aaaaaa" + }, + "2,0", + { + "c": "#cccccc" + }, + "2,1", + "2,2", + "2,3", + "2,4", + "2,5", + "2,6", + "2,7", + "2,8", + "2,9", + "2,10", + "2,11" + ], + [ + { + "c": "#aaaaaa" + }, + "3,0", + { + "c": "#cccccc" + }, + "3,1", + "3,2", + "3,3", + "3,4", + "3,5", + "3,6", + "3,7", + "3,8", + "3,9", + { + "c": "#777777" + }, + "3,10", + "3,11" + ], + [ + "4,0\n\n\n0,0", + { + "c": "#aaaaaa" + }, + "4,1\n\n\n0,0", + "4,2\n\n\n0,0", + "4,3\n\n\n0,0", + { + "c": "#777777", + "w": 2 + }, + "4,4\n\n\n0,0", + { + "w": 2 + }, + "4,7\n\n\n0,0", + { + "c": "#aaaaaa" + }, + "4,8\n\n\n0,0", + { + "c": "#777777" + }, + "4,9\n\n\n0,0", + "4,10\n\n\n0,0", + "4,11\n\n\n0,0" + ], + [ + "4,0\n\n\n0,1", + { + "c": "#aaaaaa" + }, + "4,1\n\n\n0,1", + "4,2\n\n\n0,1", + "4,3\n\n\n0,1", + { + "c": "#777777" + }, + "4,4\n\n\n0,1", + { + "w": 2 + }, + "4,5\n\n\n0,1", + { + "c": "#aaaaaa" + }, + "4,7\n\n\n0,1", + "4,8\n\n\n0,1", + { + "c": "#777777" + }, + "4,9\n\n\n0,1", + "4,10\n\n\n0,1", + "4,11\n\n\n0,1" + ], + [ + "4,0\n\n\n0,2", + { + "c": "#aaaaaa" + }, + "4,1\n\n\n0,2", + "4,2\n\n\n0,2", + "4,3\n\n\n0,2", + { + "c": "#777777" + }, + "4,4\n\n\n0,2", + "4,5\n\n\n0,2", + "4,6\n\n\n0,2", + { + "c": "#aaaaaa" + }, + "4,7\n\n\n0,2", + "4,8\n\n\n0,2", + { + "c": "#777777" + }, + "4,9\n\n\n0,2", + "4,10\n\n\n0,2", + "4,11\n\n\n0,2" + ] + ] + } +} diff --git a/keyboards/handwired/prkl30/keymaps/vial/config.h b/keyboards/handwired/prkl30/keymaps/vial/config.h index 506c1725be..d484c59291 100644 --- a/keyboards/handwired/prkl30/keymaps/vial/config.h +++ b/keyboards/handwired/prkl30/keymaps/vial/config.h @@ -6,4 +6,4 @@ #define VIAL_UNLOCK_COMBO_ROWS { 0, 0 } -#define VIAL_UNLOCK_COMBO_COLS { 0, 1 } \ No newline at end of file +#define VIAL_UNLOCK_COMBO_COLS { 0, 1 } diff --git a/keyboards/handwired/prkl30/keymaps/vial/rules.mk b/keyboards/handwired/prkl30/keymaps/vial/rules.mk index 4e13a6c067..c852abf313 100644 --- a/keyboards/handwired/prkl30/keymaps/vial/rules.mk +++ b/keyboards/handwired/prkl30/keymaps/vial/rules.mk @@ -4,4 +4,10 @@ LTO_ENABLE = yes ENCODER_ENABLE = yes ENCODER_MAP_ENABLE = yes EXTRAKEY_ENABLE = yes -QMK_SETTINGS = no \ No newline at end of file + +CONSOLE_ENABLE = no +COMMAND_ENABLE = no + +ifeq ($(strip $(MCU)), atmega32u4) + QMK_SETTINGS = no +endif diff --git a/keyboards/handwired/prkl30/keymaps/vial/vial.json b/keyboards/handwired/prkl30/keymaps/vial/vial.json new file mode 100644 index 0000000000..d3e7048f47 --- /dev/null +++ b/keyboards/handwired/prkl30/keymaps/vial/vial.json @@ -0,0 +1,20 @@ +{ + "name": "PRKL30", + "vendorId": "0xE0E0", + "productId": "0x0030", + "lighting": "qmk_rgblight", + "matrix": {"rows": 4, "cols": 10}, + "layouts": { + "labels": [ + "Encoder", + "Split space" + ], + "keymap": [ + ["0,0\n\n\n0,1\n\n\n\n\n\ne","0,1\n\n\n0,1\n\n\n\n\n\ne",{"d":true},"\n\n\n0,0\n\n\n\n\n\n",{"d":true},"\n\n\n0,0\n\n\n\n\n\n"], + [{"y":0.25,"x":2.5},"0,0","0,1","0,2","0,3","0,4","0,5","0,6","0,7","0,8","0,9","3,0","3,1",{"w":1.5},"3,2"], + [{"x":2.5},"1,0","1,1","1,2","1,3","1,4","1,5","1,6","1,7","1,8","1,9","3,3","3,4",{"x":0.25,"w":1.25,"h":2,"w2":1.5,"h2":1,"x2":-0.25},"3,5"], + [{"x":2.5},"2,0","2,1","2,2","2,3","2,4",{"w":2},"2,5\n\n\n1,0","2,7","2,8","2,9","3,6",{"w":1.25},"3,7"], + [{"y":0.25,"x":7.5},"2,5\n\n\n1,1","2,6\n\n\n1,1"] + ] + } +} \ No newline at end of file diff --git a/keyboards/handwired/steamvan/keymaps/vial/config.h b/keyboards/handwired/steamvan/keymaps/vial/config.h new file mode 100644 index 0000000000..2ae2574576 --- /dev/null +++ b/keyboards/handwired/steamvan/keymaps/vial/config.h @@ -0,0 +1,7 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ + +#pragma once + +#define VIAL_KEYBOARD_UID {0x7B, 0x61, 0xAC, 0x64, 0xC9, 0x02, 0x6D, 0x1A} +#define VIAL_UNLOCK_COMBO_ROWS { 0, 2 } +#define VIAL_UNLOCK_COMBO_COLS { 0, 11 } diff --git a/keyboards/handwired/steamvan/keymaps/vial/keymap.c b/keyboards/handwired/steamvan/keymaps/vial/keymap.c new file mode 100644 index 0000000000..e612a7a6f5 --- /dev/null +++ b/keyboards/handwired/steamvan/keymaps/vial/keymap.c @@ -0,0 +1,60 @@ +/* Copyright 2019 John M Daly + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ +#include QMK_KEYBOARD_H + +// This file is based on the default keymap of the MiniVan. + +enum layer_names { + _QW, + _L1, + _L2, + _L3, +}; + +// Curly braces have their own keys. These are defined to make them not mess up +// the grid in layer 2. +#define L_CURBR LSFT(KC_LBRC) +#define R_CURBR LSFT(KC_RBRC) + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_QW] = LAYOUT_standard( /* QWERTY */ + KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, + MO(_L1), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, MO(_L1), + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, MO(_L2), + KC_LCTL, MO(_L2), KC_LGUI, KC_ENT, KC_SPC, KC_RALT, KC_ESC, TG(_L3) + ), + + [_L1] = LAYOUT_standard( /* LAYER 1 */ + KC_GRV, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_DEL, + _______, KC_BSLS, KC_QUOT, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_DOWN, KC_UP, KC_LEFT, KC_RGHT, _______, + _______, KC_ESC, _______, KC_PSCR, _______, _______, _______, KC_MSTP, KC_MPLY, KC_MPRV, KC_MNXT, KC_RSFT, + _______, KC_LGUI, _______, _______, _______, _______, _______, _______ + ), + + [_L2] = LAYOUT_standard( /* LAYER 2 */ + _______, _______, _______, _______, _______, _______, _______, KC_7, KC_8, KC_9, KC_0, _______, + KC_ESC, KC_PIPE, KC_DQUO, KC_UNDS, KC_PLUS, L_CURBR, R_CURBR, KC_4, KC_5, KC_6, KC_VOLU, KC_ENT, + _______, _______, _______, _______, _______, _______, KC_0, KC_1, KC_2, KC_3, KC_VOLD, _______, + _______, _______, _______, _______, _______, _______, _______, _______ + ), + + [_L3] = LAYOUT_standard( /* LAYER 3 */ + _______, _______, _______, _______, _______, _______, _______, KC_F1, KC_F2, KC_F3, KC_F4, _______, + KC_ESC, _______, _______, _______, _______, _______, _______, KC_F5, KC_F6, KC_F7, KC_F8, _______, + KC_LSFT, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_F9, KC_F10, KC_F11, KC_F12, _______, + _______, KC_LSFT, KC_B, KC_SPC, KC_C, _______, _______, _______ + ) +}; diff --git a/keyboards/handwired/steamvan/keymaps/vial/readme.md b/keyboards/handwired/steamvan/keymaps/vial/readme.md new file mode 100644 index 0000000000..9bb3f35c29 --- /dev/null +++ b/keyboards/handwired/steamvan/keymaps/vial/readme.md @@ -0,0 +1,2 @@ +# SteamVan rev1 Vial +Based on the default SteamVan layout diff --git a/keyboards/handwired/steamvan/keymaps/vial/rules.mk b/keyboards/handwired/steamvan/keymaps/vial/rules.mk new file mode 100644 index 0000000000..4f7618e9b2 --- /dev/null +++ b/keyboards/handwired/steamvan/keymaps/vial/rules.mk @@ -0,0 +1,2 @@ +VIA_ENABLE = yes +VIAL_ENABLE = yes diff --git a/keyboards/handwired/steamvan/keymaps/vial/vial.json b/keyboards/handwired/steamvan/keymaps/vial/vial.json new file mode 100644 index 0000000000..87eee470d7 --- /dev/null +++ b/keyboards/handwired/steamvan/keymaps/vial/vial.json @@ -0,0 +1,153 @@ +{ + "name": "SteamVan", + "vendorId": "0xFEED", + "productId": "0x0001", + "lighting": "qmk_rgblight", + "matrix": { + "rows": 4, + "cols": 12 + }, + "layouts": { + "labels": [ + "Arrows", + "Command" + ], + "keymap": [ + [ + { + "c": "#777777" + }, + "0,0", + { + "c": "#cccccc" + }, + "0,1", + "0,2", + "0,3", + "0,4", + "0,5", + "0,6", + "0,7", + "0,8", + "0,9", + "0,10", + { + "c": "#aaaaaa", + "w": 1.75 + }, + "0,11" + ], + [ + { + "w": 1.25 + }, + "1,0", + { + "c": "#cccccc" + }, + "1,1", + "1,2", + "1,3", + "1,4", + "1,5", + "1,6", + "1,7", + "1,8", + "1,9", + "1,10", + { + "c": "#aaaaaa", + "w": 1.5 + }, + "1,11" + ], + [ + { + "w": 1.75 + }, + "2,0", + { + "c": "#cccccc" + }, + "2,1", + "2,2", + "2,3", + "2,4", + "2,5", + "2,6", + "2,7", + "2,8", + "2,9", + "2,10\n\n\n0,0", + { + "c": "#aaaaaa" + }, + "2,11" + ], + [ + { + "w": 1.25 + }, + "3,0\n\n\n1,0", + { + "w": 1.5 + }, + "3,1\n\n\n1,0", + { + "w": 1.25 + }, + "3,3\n\n\n1,0", + { + "c": "#777777", + "w": 2.25 + }, + "3,4", + { + "c": "#aaaaaa", + "w": 2 + }, + "3,6", + { + "w": 1.25 + }, + "3,8\n\n\n0,0", + { + "w": 1.5 + }, + "3,9\n\n\n0,0", + { + "w": 1.75 + }, + "3,11\n\n\n0,0" + ], + [ + { + "y": 0.25, + "x": 10.75, + "c": "#777777" + }, + "2,10\n\n\n0,1" + ], + [ + { + "c": "#aaaaaa" + }, + "3,0\n\n\n1,1", + "3,1\n\n\n1,1", + "3,2\n\n\n1,1", + "3,3\n\n\n1,1", + { + "x": 4.25, + "w": 1.5 + }, + "3,8\n\n\n0,1", + { + "c": "#777777" + }, + "3,9\n\n\n0,1", + "3,10\n\n\n0,1", + "3,11\n\n\n0,1" + ] + ] + } +} diff --git a/keyboards/horizon/keymaps/vial/config.h b/keyboards/horizon/keymaps/vial/config.h new file mode 100644 index 0000000000..3cbf8c719e --- /dev/null +++ b/keyboards/horizon/keymaps/vial/config.h @@ -0,0 +1,8 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ + +#pragma once + +#define VIAL_KEYBOARD_UID {0x56, 0x0E, 0x81, 0x4F, 0x0A, 0x75, 0xE8, 0xDD} + +#define VIAL_UNLOCK_COMBO_ROWS { 0, 0 } +#define VIAL_UNLOCK_COMBO_COLS { 0, 13 } diff --git a/keyboards/horizon/keymaps/vial/keymap.c b/keyboards/horizon/keymaps/vial/keymap.c new file mode 100644 index 0000000000..bdb03bd081 --- /dev/null +++ b/keyboards/horizon/keymaps/vial/keymap.c @@ -0,0 +1,47 @@ +/* Copyright 2021 Steven Karrmann + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +#include QMK_KEYBOARD_H + +enum layer_names { + _BASE, + _SYMBOL, + _FUNCTION +}; + +#define MO_SYMB MO(_SYMBOL) +#define MO_FUNC MO(_FUNCTION) + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_BASE] = LAYOUT( + KC_GRV , KC_Q , KC_W , KC_E , KC_R , KC_T , KC_Y , KC_U , KC_I , KC_O , KC_P , KC_MINS, + KC_EQL , 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_ESC , KC_ENT , KC_N , KC_M , KC_COMM, KC_DOT , KC_SLSH, KC_RSFT, + KC_LCTL, KC_LALT, KC_LGUI, KC_APP , KC_DEL , KC_TAB , MO_SYMB, MO_FUNC, KC_SPC , KC_BSPC, KC_APP , KC_RGUI, KC_RALT, KC_RCTL + ), + [_SYMBOL] = LAYOUT( + KC_TILD, KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , KC_6 , KC_7 , KC_8 , KC_9 , KC_0 , KC_UNDS, + KC_PLUS, KC_EXLM, KC_LPRN, KC_RPRN, KC_DLR , KC_AMPR, KC_PIPE, KC_HASH, KC_LCBR, KC_RCBR, KC_COLN, KC_DQUO, + _______, KC_AT , KC_LBRC, KC_RBRC, KC_BSLS, KC_PERC, _______, _______, KC_CIRC, KC_ASTR, KC_LABK, KC_RABK, KC_QUES, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), + [_FUNCTION] = LAYOUT( + _______, KC_F1 , KC_F2 , KC_F3 , KC_F4 , KC_PSCR, KC_SCRL, KC_HOME, KC_PGDN, KC_PGUP, KC_END , _______, + _______, KC_F5 , KC_F6 , KC_F7 , KC_F8 , KC_INS , KC_CAPS, KC_LEFT, KC_DOWN, KC_UP , KC_RGHT, _______, + _______, KC_F9 , KC_F10 , KC_F11 , KC_F12 , _______, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, KC_PAUS, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ) +}; \ No newline at end of file diff --git a/keyboards/horizon/keymaps/vial/rules.mk b/keyboards/horizon/keymaps/vial/rules.mk new file mode 100644 index 0000000000..2da603f8f6 --- /dev/null +++ b/keyboards/horizon/keymaps/vial/rules.mk @@ -0,0 +1,5 @@ +VIA_ENABLE = yes +VIAL_ENABLE = yes +LTO_ENABLE = yes +NKRO_ENABLE = yes +CONSOLE_ENABLE = no diff --git a/keyboards/horizon/keymaps/vial/vial.json b/keyboards/horizon/keymaps/vial/vial.json new file mode 100644 index 0000000000..f456cc90ba --- /dev/null +++ b/keyboards/horizon/keymaps/vial/vial.json @@ -0,0 +1,15 @@ +{ + "lighting": "none", + "matrix": { + "rows": 4, + "cols": 14 + }, + "layouts": { + "keymap": [ + ["0,0","0,1","0,2","0,3","0,4","0,5",{"x":2},"0,8","0,9","0,10","0,11","0,12","0,13"], + ["1,0","1,1","1,2","1,3","1,4","1,5",{"x":2},"1,8","1,9","1,10","1,11","1,12","1,13"], + ["2,0","2,1","2,2","2,3","2,4","2,5","2,6","2,7","2,8","2,9","2,10","2,11","2,12","2,13"], + ["3,0","3,1","3,2","3,3","3,4","3,5","3,6","3,7","3,8","3,9","3,10","3,11","3,12","3,13"] + ] + } +} diff --git a/keyboards/ibm/modelh/chconf.h b/keyboards/ibm/modelh/chconf.h new file mode 100644 index 0000000000..413fb8d69c --- /dev/null +++ b/keyboards/ibm/modelh/chconf.h @@ -0,0 +1,31 @@ +/* Copyright 2020 QMK + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +#pragma once + +#define CH_CFG_ST_TIMEDELTA 0 +#define CH_CFG_USE_TM TRUE +#define CH_CFG_USE_REGISTRY TRUE +#define CH_CFG_USE_WAITEXIT TRUE +#define CH_CFG_USE_CONDVARS TRUE +#define CH_CFG_USE_CONDVARS_TIMEOUT FALSE +#define CH_CFG_USE_MESSAGES TRUE +#define CH_CFG_USE_MAILBOXES TRUE +#define CH_CFG_USE_HEAP TRUE +#define CH_CFG_USE_OBJ_CACHES TRUE +#define CH_CFG_USE_DELEGATES TRUE + +#include_next diff --git a/keyboards/ibm/modelh/config.h b/keyboards/ibm/modelh/config.h new file mode 100644 index 0000000000..ac95ccfe66 --- /dev/null +++ b/keyboards/ibm/modelh/config.h @@ -0,0 +1,45 @@ +/* +Copyright 2020 John Hawthorn + +This program is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program. If not, see . +*/ + +#pragma once + + +/* Model H customizations */ + +#define MODELH_STATUS_LED C13 + +/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ +#define LOCKING_SUPPORT_ENABLE +/* Locking resynchronize hack */ +#define LOCKING_RESYNC_ENABLE + + +/* + * Feature disable options + * These options are also useful to firmware size reduction. + */ + +/* disable debug print */ +//#define NO_DEBUG + +/* disable print */ +//#define NO_PRINT + +/* disable action features */ +//#define NO_ACTION_LAYER +//#define NO_ACTION_TAPPING +//#define NO_ACTION_ONESHOT diff --git a/keyboards/keychron/q0/q0.h b/keyboards/ibm/modelh/halconf.h similarity index 81% rename from keyboards/keychron/q0/q0.h rename to keyboards/ibm/modelh/halconf.h index 6eaa41e87c..8e3ad48ffc 100644 --- a/keyboards/keychron/q0/q0.h +++ b/keyboards/ibm/modelh/halconf.h @@ -1,4 +1,4 @@ -/* Copyright 2022 @ Keychron (https://www.keychron.com) +/* Copyright 2020 QMK * * 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 @@ -16,8 +16,8 @@ #pragma once -#include "quantum.h" -#if defined(KEYBOARD_keychron_q0_rev_0130) -# include "rev_0130.h" -#endif +#define HAL_USE_PWM TRUE +#define SERIAL_BUFFERS_SIZE 16 + +#include_next diff --git a/keyboards/ibm/modelh/info.json b/keyboards/ibm/modelh/info.json new file mode 100644 index 0000000000..cceb12a31c --- /dev/null +++ b/keyboards/ibm/modelh/info.json @@ -0,0 +1,283 @@ +{ + "manufacturer": "IBM", + "keyboard_name": "Model M", + "maintainer": "jhawthorn", + "bootloader": "stm32duino", + "diode_direction": "COL2ROW", + "features": { + "bootmagic": false, + "command": false, + "console": false, + "extrakey": true, + "mousekey": false, + "nkro": false, + "sleep_led": false + }, + "indicators": { + "caps_lock": "B8", + "num_lock": "B7", + "scroll_lock": "B9", + "on_state": 0 + }, + "matrix_pins": { + "cols": ["A10", "A9", "A8", "B15", "B14", "B13", "B12", "B11", "B10", "B1", "B0", "A7", "A6", "A5", "A4", "A3"], + "rows": ["B6", "B5", "B4", "A15", "B3", "A0", "A2", "A1"] + }, + "processor": "STM32F103", + "url": "modelh.club", + "usb": { + "device_version": "1.0.0", + "max_power": 100, + "pid": "0xB155", + "vid": "0xFEED" + }, + "layouts": { + "LAYOUT_fullsize_ansi_wkl": { + "layout": [ + {"matrix": [0, 2], "x": 0, "y": 0}, + + {"matrix": [2, 3], "x": 2, "y": 0}, + {"matrix": [2, 4], "x": 3, "y": 0}, + {"matrix": [1, 4], "x": 4, "y": 0}, + {"matrix": [0, 4], "x": 5, "y": 0}, + + {"matrix": [0, 6], "x": 6.5, "y": 0}, + {"matrix": [0, 8], "x": 7.5, "y": 0}, + {"matrix": [1, 9], "x": 8.5, "y": 0}, + {"matrix": [2, 9], "x": 9.5, "y": 0}, + + {"matrix": [2, 6], "x": 11, "y": 0}, + {"matrix": [3, 6], "x": 12, "y": 0}, + {"matrix": [3, 11], "x": 13, "y": 0}, + {"matrix": [3, 12], "x": 14, "y": 0}, + + {"matrix": [3, 15], "x": 15.25, "y": 0}, + {"matrix": [4, 15], "x": 16.25, "y": 0}, + {"matrix": [6, 14], "x": 17.25, "y": 0}, + + {"matrix": [2, 2], "x": 0, "y": 1.5}, + {"matrix": [3, 2], "x": 1, "y": 1.5}, + {"matrix": [3, 3], "x": 2, "y": 1.5}, + {"matrix": [3, 4], "x": 3, "y": 1.5}, + {"matrix": [3, 5], "x": 4, "y": 1.5}, + {"matrix": [2, 5], "x": 5, "y": 1.5}, + {"matrix": [2, 7], "x": 6, "y": 1.5}, + {"matrix": [3, 7], "x": 7, "y": 1.5}, + {"matrix": [3, 8], "x": 8, "y": 1.5}, + {"matrix": [3, 9], "x": 9, "y": 1.5}, + {"matrix": [3, 10], "x": 10, "y": 1.5}, + {"matrix": [2, 10], "x": 11, "y": 1.5}, + {"matrix": [2, 8], "x": 12, "y": 1.5}, + {"matrix": [1, 6], "x": 13, "y": 1.5, "w": 2}, + + {"matrix": [2, 12], "x": 15.25, "y": 1.5}, + {"matrix": [2, 14], "x": 16.25, "y": 1.5}, + {"matrix": [2, 13], "x": 17.25, "y": 1.5}, + + {"matrix": [6, 11], "x": 18.5, "y": 1.5}, + {"matrix": [6, 12], "x": 19.5, "y": 1.5}, + {"matrix": [6, 13], "x": 20.5, "y": 1.5}, + {"matrix": [7, 13], "x": 21.5, "y": 1.5}, + + {"matrix": [1, 2], "x": 0, "y": 2.5, "w": 1.5}, + {"matrix": [4, 2], "x": 1.5, "y": 2.5}, + {"matrix": [4, 3], "x": 2.5, "y": 2.5}, + {"matrix": [4, 4], "x": 3.5, "y": 2.5}, + {"matrix": [4, 5], "x": 4.5, "y": 2.5}, + {"matrix": [1, 5], "x": 5.5, "y": 2.5}, + {"matrix": [1, 7], "x": 6.5, "y": 2.5}, + {"matrix": [4, 7], "x": 7.5, "y": 2.5}, + {"matrix": [4, 8], "x": 8.5, "y": 2.5}, + {"matrix": [4, 9], "x": 9.5, "y": 2.5}, + {"matrix": [4, 10], "x": 10.5, "y": 2.5}, + {"matrix": [1, 10], "x": 11.5, "y": 2.5}, + {"matrix": [1, 8], "x": 12.5, "y": 2.5}, + {"matrix": [5, 6], "x": 13.5, "y": 2.5, "w": 1.5}, + + {"matrix": [2, 11], "x": 15.25, "y": 2.5}, + {"matrix": [3, 14], "x": 16.25, "y": 2.5}, + {"matrix": [3, 13], "x": 17.25, "y": 2.5}, + + {"matrix": [4, 11], "x": 18.5, "y": 2.5}, + {"matrix": [4, 12], "x": 19.5, "y": 2.5}, + {"matrix": [4, 13], "x": 20.5, "y": 2.5}, + {"matrix": [4, 14], "x": 21.5, "y": 2.5, "h": 2}, + + {"matrix": [1, 3], "x": 0, "y": 3.5, "w": 1.5}, + {"matrix": [5, 2], "x": 1.75, "y": 3.5}, + {"matrix": [5, 3], "x": 2.75, "y": 3.5}, + {"matrix": [5, 4], "x": 3.75, "y": 3.5}, + {"matrix": [5, 5], "x": 4.75, "y": 3.5}, + {"matrix": [0, 5], "x": 5.75, "y": 3.5}, + {"matrix": [0, 7], "x": 6.75, "y": 3.5}, + {"matrix": [5, 7], "x": 7.75, "y": 3.5}, + {"matrix": [5, 8], "x": 8.75, "y": 3.5}, + {"matrix": [5, 9], "x": 9.75, "y": 3.5}, + {"matrix": [5, 10], "x": 10.75, "y": 3.5}, + {"matrix": [0, 10], "x": 11.75, "y": 3.5}, + {"matrix": [6, 6], "x": 12.75, "y": 3.5, "w": 2.25}, + + {"matrix": [1, 11], "x": 18.5, "y": 3.5}, + {"matrix": [1, 12], "x": 19.5, "y": 3.5}, + {"matrix": [1, 13], "x": 20.5, "y": 3.5}, + + {"matrix": [1, 1], "x": 0, "y": 4.5, "w": 2.25}, + {"matrix": [6, 2], "x": 2.25, "y": 4.5}, + {"matrix": [6, 3], "x": 3.25, "y": 4.5}, + {"matrix": [6, 4], "x": 4.25, "y": 4.5}, + {"matrix": [6, 5], "x": 5.25, "y": 4.5}, + {"matrix": [7, 5], "x": 6.25, "y": 4.5}, + {"matrix": [7, 7], "x": 7.25, "y": 4.5}, + {"matrix": [6, 7], "x": 8.25, "y": 4.5}, + {"matrix": [6, 8], "x": 9.25, "y": 4.5}, + {"matrix": [6, 9], "x": 10.25, "y": 4.5}, + {"matrix": [7, 10], "x": 11.25, "y": 4.5}, + {"matrix": [6, 1], "x": 12.25, "y": 4.5, "w": 2.75}, + + {"matrix": [0, 14], "x": 16.25, "y": 4.5}, + + {"matrix": [5, 11], "x": 18.5, "y": 4.5}, + {"matrix": [5, 12], "x": 19.5, "y": 4.5}, + {"matrix": [5, 13], "x": 20.5, "y": 4.5}, + {"matrix": [5, 14], "x": 21.5, "y": 4.5, "h": 2}, + + {"matrix": [2, 0], "x": 0, "y": 5.5, "w": 1.5}, + {"matrix": [0, 15], "x": 2.5, "y": 5.5, "w": 1.5}, + {"matrix": [7, 6], "x": 4, "y": 5.5, "w": 7}, + {"matrix": [7, 15], "x": 11, "y": 5.5, "w": 1.5}, + {"matrix": [6, 0], "x": 13.5, "y": 5.5, "w": 1.5}, + + {"matrix": [7, 14], "x": 15.25, "y": 5.5}, + {"matrix": [7, 11], "x": 16.25, "y": 5.5}, + {"matrix": [7, 12], "x": 17.25, "y": 5.5}, + + {"matrix": [0, 12], "x": 18.5, "y": 5.5, "w": 2}, + {"matrix": [0, 13], "x": 20.5, "y": 5.5} + ] + }, + "LAYOUT_fullsize_iso_wkl": { + "layout": [ + {"matrix": [0, 2], "x": 0, "y": 0}, + + {"matrix": [2, 3], "x": 2, "y": 0}, + {"matrix": [2, 4], "x": 3, "y": 0}, + {"matrix": [1, 4], "x": 4, "y": 0}, + {"matrix": [0, 4], "x": 5, "y": 0}, + + {"matrix": [0, 6], "x": 6.5, "y": 0}, + {"matrix": [0, 8], "x": 7.5, "y": 0}, + {"matrix": [1, 9], "x": 8.5, "y": 0}, + {"matrix": [2, 9], "x": 9.5, "y": 0}, + + {"matrix": [2, 6], "x": 11, "y": 0}, + {"matrix": [3, 6], "x": 12, "y": 0}, + {"matrix": [3, 11], "x": 13, "y": 0}, + {"matrix": [3, 12], "x": 14, "y": 0}, + + {"matrix": [3, 15], "x": 15.25, "y": 0}, + {"matrix": [4, 15], "x": 16.25, "y": 0}, + {"matrix": [6, 14], "x": 17.25, "y": 0}, + + {"matrix": [2, 2], "x": 0, "y": 1.5}, + {"matrix": [3, 2], "x": 1, "y": 1.5}, + {"matrix": [3, 3], "x": 2, "y": 1.5}, + {"matrix": [3, 4], "x": 3, "y": 1.5}, + {"matrix": [3, 5], "x": 4, "y": 1.5}, + {"matrix": [2, 5], "x": 5, "y": 1.5}, + {"matrix": [2, 7], "x": 6, "y": 1.5}, + {"matrix": [3, 7], "x": 7, "y": 1.5}, + {"matrix": [3, 8], "x": 8, "y": 1.5}, + {"matrix": [3, 9], "x": 9, "y": 1.5}, + {"matrix": [3, 10], "x": 10, "y": 1.5}, + {"matrix": [2, 10], "x": 11, "y": 1.5}, + {"matrix": [2, 8], "x": 12, "y": 1.5}, + {"matrix": [1, 6], "x": 13, "y": 1.5, "w": 2}, + + {"matrix": [2, 12], "x": 15.25, "y": 1.5}, + {"matrix": [2, 14], "x": 16.25, "y": 1.5}, + {"matrix": [2, 13], "x": 17.25, "y": 1.5}, + + {"matrix": [6, 11], "x": 18.5, "y": 1.5}, + {"matrix": [6, 12], "x": 19.5, "y": 1.5}, + {"matrix": [6, 13], "x": 20.5, "y": 1.5}, + {"matrix": [7, 13], "x": 21.5, "y": 1.5}, + + {"matrix": [1, 2], "x": 0, "y": 2.5, "w": 1.5}, + {"matrix": [4, 2], "x": 1.5, "y": 2.5}, + {"matrix": [4, 3], "x": 2.5, "y": 2.5}, + {"matrix": [4, 4], "x": 3.5, "y": 2.5}, + {"matrix": [4, 5], "x": 4.5, "y": 2.5}, + {"matrix": [1, 5], "x": 5.5, "y": 2.5}, + {"matrix": [1, 7], "x": 6.5, "y": 2.5}, + {"matrix": [4, 7], "x": 7.5, "y": 2.5}, + {"matrix": [4, 8], "x": 8.5, "y": 2.5}, + {"matrix": [4, 9], "x": 9.5, "y": 2.5}, + {"matrix": [4, 10], "x": 10.5, "y": 2.5}, + {"matrix": [1, 10], "x": 11.5, "y": 2.5}, + {"matrix": [1, 8], "x": 12.5, "y": 2.5}, + + {"matrix": [2, 11], "x": 15.25, "y": 2.5}, + {"matrix": [3, 14], "x": 16.25, "y": 2.5}, + {"matrix": [3, 13], "x": 17.25, "y": 2.5}, + + {"matrix": [4, 11], "x": 18.5, "y": 2.5}, + {"matrix": [4, 12], "x": 19.5, "y": 2.5}, + {"matrix": [4, 13], "x": 20.5, "y": 2.5}, + {"matrix": [4, 14], "x": 21.5, "y": 2.5, "h": 2}, + + {"matrix": [1, 3], "x": 0, "y": 3.5, "w": 1.5}, + {"matrix": [5, 2], "x": 1.75, "y": 3.5}, + {"matrix": [5, 3], "x": 2.75, "y": 3.5}, + {"matrix": [5, 4], "x": 3.75, "y": 3.5}, + {"matrix": [5, 5], "x": 4.75, "y": 3.5}, + {"matrix": [0, 5], "x": 5.75, "y": 3.5}, + {"matrix": [0, 7], "x": 6.75, "y": 3.5}, + {"matrix": [5, 7], "x": 7.75, "y": 3.5}, + {"matrix": [5, 8], "x": 8.75, "y": 3.5}, + {"matrix": [5, 9], "x": 9.75, "y": 3.5}, + {"matrix": [5, 10], "x": 10.75, "y": 3.5}, + {"matrix": [0, 10], "x": 11.75, "y": 3.5}, + {"matrix": [6, 10], "x": 12.75, "y": 3.5}, + {"matrix": [6, 6], "x": 13.75, "y": 2.5, "w": 1.25, "h": 2}, + + {"matrix": [1, 11], "x": 18.5, "y": 3.5}, + {"matrix": [1, 12], "x": 19.5, "y": 3.5}, + {"matrix": [1, 13], "x": 20.5, "y": 3.5}, + + {"matrix": [1, 1], "x": 0, "y": 4.5, "w": 1.25}, + {"matrix": [0, 3], "x": 1.25, "y": 4.5}, + {"matrix": [6, 2], "x": 2.25, "y": 4.5}, + {"matrix": [6, 3], "x": 3.25, "y": 4.5}, + {"matrix": [6, 4], "x": 4.25, "y": 4.5}, + {"matrix": [6, 5], "x": 5.25, "y": 4.5}, + {"matrix": [7, 5], "x": 6.25, "y": 4.5}, + {"matrix": [7, 7], "x": 7.25, "y": 4.5}, + {"matrix": [6, 7], "x": 8.25, "y": 4.5}, + {"matrix": [6, 8], "x": 9.25, "y": 4.5}, + {"matrix": [6, 9], "x": 10.25, "y": 4.5}, + {"matrix": [7, 10], "x": 11.25, "y": 4.5}, + {"matrix": [6, 1], "x": 12.25, "y": 4.5, "w": 2.75}, + + {"matrix": [0, 14], "x": 16.25, "y": 4.5}, + + {"matrix": [5, 11], "x": 18.5, "y": 4.5}, + {"matrix": [5, 12], "x": 19.5, "y": 4.5}, + {"matrix": [5, 13], "x": 20.5, "y": 4.5}, + {"matrix": [5, 14], "x": 21.5, "y": 4.5, "h": 2}, + + {"matrix": [2, 0], "x": 0, "y": 5.5, "w": 1.5}, + {"matrix": [0, 15], "x": 2.5, "y": 5.5, "w": 1.5}, + {"matrix": [7, 6], "x": 4, "y": 5.5, "w": 7}, + {"matrix": [7, 15], "x": 11, "y": 5.5, "w": 1.5}, + {"matrix": [6, 0], "x": 13.5, "y": 5.5, "w": 1.5}, + + {"matrix": [7, 14], "x": 15.25, "y": 5.5}, + {"matrix": [7, 11], "x": 16.25, "y": 5.5}, + {"matrix": [7, 12], "x": 17.25, "y": 5.5}, + + {"matrix": [0, 12], "x": 18.5, "y": 5.5, "w": 2}, + {"matrix": [0, 13], "x": 20.5, "y": 5.5} + ] + } + } +} diff --git a/keyboards/ibm/modelh/keymaps/default/keymap.c b/keyboards/ibm/modelh/keymaps/default/keymap.c new file mode 100644 index 0000000000..9098b869b3 --- /dev/null +++ b/keyboards/ibm/modelh/keymaps/default/keymap.c @@ -0,0 +1,27 @@ +/* Copyright 2020 John Hawthorn + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT_fullsize_ansi_wkl( /* Base layer */ + KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_PSCR, KC_SCRL, KC_PAUS, + KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, + 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_P7, KC_P8, KC_P9, KC_PPLS, + 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_P4, KC_P5, KC_P6, + 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_P1, KC_P2, KC_P3, KC_PENT, + KC_LCTL, KC_LALT, KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT + ), +}; diff --git a/keyboards/ibm/modelh/keymaps/vial/config.h b/keyboards/ibm/modelh/keymaps/vial/config.h new file mode 100644 index 0000000000..6497949e94 --- /dev/null +++ b/keyboards/ibm/modelh/keymaps/vial/config.h @@ -0,0 +1,8 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ + +#pragma once + +#define VIAL_KEYBOARD_UID {0xBC, 0x8E, 0x44, 0xF1, 0x5C, 0x16, 0xD6, 0x38} + +#define VIAL_UNLOCK_COMBO_ROWS { 0, 6, 7 } +#define VIAL_UNLOCK_COMBO_COLS { 2, 6, 15 } diff --git a/keyboards/ibm/modelh/keymaps/vial/keymap.c b/keyboards/ibm/modelh/keymaps/vial/keymap.c new file mode 100644 index 0000000000..9098b869b3 --- /dev/null +++ b/keyboards/ibm/modelh/keymaps/vial/keymap.c @@ -0,0 +1,27 @@ +/* Copyright 2020 John Hawthorn + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT_fullsize_ansi_wkl( /* Base layer */ + KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_PSCR, KC_SCRL, KC_PAUS, + KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_INS, KC_HOME, KC_PGUP, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, + 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_P7, KC_P8, KC_P9, KC_PPLS, + 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_P4, KC_P5, KC_P6, + 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_P1, KC_P2, KC_P3, KC_PENT, + KC_LCTL, KC_LALT, KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT + ), +}; diff --git a/keyboards/ibm/modelh/keymaps/vial/rules.mk b/keyboards/ibm/modelh/keymaps/vial/rules.mk new file mode 100644 index 0000000000..4f7618e9b2 --- /dev/null +++ b/keyboards/ibm/modelh/keymaps/vial/rules.mk @@ -0,0 +1,2 @@ +VIA_ENABLE = yes +VIAL_ENABLE = yes diff --git a/keyboards/ibm/modelh/keymaps/vial/vial.json b/keyboards/ibm/modelh/keymaps/vial/vial.json new file mode 100644 index 0000000000..5f744bd59c --- /dev/null +++ b/keyboards/ibm/modelh/keymaps/vial/vial.json @@ -0,0 +1,212 @@ +{ + "lighting": "none", + "matrix": { + "rows": 8, + "cols": 16 + }, + "layouts": { + "labels": "iso", + "keymap": [ + [ + "0,2", + { + "x": 1 + }, + "2,3", + "2,4", + "1,4", + "0,4", + { + "x": 0.5 + }, + "0,6", + "0,8", + "1,9", + "2,9", + { + "x": 0.5 + }, + "2,6", + "3,6", + "3,11", + "3,12", + { + "x": 0.25 + }, + "3,15", + "4,15", + "6,14" + ], + [ + { + "y": 0.5 + }, + "2,2", + "3,2", + "3,3", + "3,4", + "3,5", + "2,5", + "2,7", + "3,7", + "3,8", + "3,9", + "3,10", + "2,10", + "2,8", + { + "w": 2 + }, + "1,6", + { + "x": 0.25 + }, + "2,12", + "2,14", + "2,13", + { + "x": 0.25 + }, + "6,11", + "6,12", + "6,13", + "7,13" + ], + [ + { + "w": 1.5 + }, + "1,2", + "4,2", + "4,3", + "4,4", + "4,5", + "1,5", + "1,7", + "4,7", + "4,8", + "4,9", + "4,10", + "1,10", + "1,8", + { + "w": 1.5 + }, + "5,6", + { + "x": 0.25 + }, + "2,11", + "3,14", + "3,13", + { + "x": 0.25 + }, + "4,11", + "4,12", + "4,13", + { + "h": 2 + }, + "4,14" + ], + [ + { + "w": 1.75 + }, + "1,3", + "5,2", + "5,3", + "5,4", + "5,5", + "0,5", + "0,7", + "5,7", + "5,8", + "5,9", + "5,10", + "0,10", + { + "w": 2.25 + }, + "6,6", + { + "x": 3.5 + }, + "1,11", + "1,12", + "1,13" + ], + [ + { + "w": 2.25 + }, + "1,1", + "6,2", + "6,3", + "6,4", + "6,5", + "7,5", + "7,7", + "6,7", + "6,8", + "6,9", + "7,10", + { + "w": 2.75 + }, + "6,1", + { + "x": 1.25 + }, + "0,14", + { + "x": 1.25 + }, + "5,11", + "5,12", + "5,13", + { + "h": 2 + }, + "5,14" + ], + [ + { + "w": 1.5 + }, + "2,0", + { + "x": 1, + "w": 1.5 + }, + "0,15", + { + "w": 7 + }, + "7,6", + { + "w": 1.5 + }, + "7,15", + { + "x": 1, + "w": 1.5 + }, + "6,0", + { + "x": 0.25 + }, + "7,14", + "7,11", + "7,12", + { + "x": 0.25, + "w": 2 + }, + "0,12", + "0,13" + ] + ] + } +} diff --git a/keyboards/ibm/modelh/mcuconf.h b/keyboards/ibm/modelh/mcuconf.h new file mode 100644 index 0000000000..7d3d6e143a --- /dev/null +++ b/keyboards/ibm/modelh/mcuconf.h @@ -0,0 +1,25 @@ +/* Copyright 2020 QMK + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +#pragma once + +#include_next + +#undef STM32_PWM_USE_TIM2 +#undef STM32_SPI_USE_SPI2 + +#define STM32_PWM_USE_TIM2 TRUE +#define STM32_SPI_USE_SPI2 FALSE diff --git a/keyboards/keychron/q0/rev_0130/rev_0130.h b/keyboards/ibm/modelh/modelh.c similarity index 58% rename from keyboards/keychron/q0/rev_0130/rev_0130.h rename to keyboards/ibm/modelh/modelh.c index d66c880aa9..5384b37338 100644 --- a/keyboards/keychron/q0/rev_0130/rev_0130.h +++ b/keyboards/ibm/modelh/modelh.c @@ -1,4 +1,4 @@ -/* Copyright 2022 @ Keychron (https://www.keychron.com) +/* Copyright 2020 John Hawthorn * * 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 @@ -14,25 +14,12 @@ * along with this program. If not, see . */ -#pragma once - #include "quantum.h" -#define XXX KC_NO -#define LAYOUT_numpad_6x4( \ - K00, K01, K02, K03, \ - K10, K11, K12, K13, \ - K20, K21, K22, \ - K30, K31, K32, K23, \ - K40, K41, K42, \ - K50, K52, K43 \ -) \ -{ \ - { K00, K01, K02, K03 }, \ - { K10, K11, K12, K13 }, \ - { K20, K21, K22, K23 }, \ - { K30, K31, K32, XXX }, \ - { K40, K41, K42, K43 }, \ - { K50, XXX, K52, XXX }, \ +void keyboard_pre_init_kb(void) { + setPinOutput(MODELH_STATUS_LED); + writePin(MODELH_STATUS_LED, 0); + + keyboard_pre_init_user(); } diff --git a/keyboards/ibm/modelh/readme.md b/keyboards/ibm/modelh/readme.md new file mode 100644 index 0000000000..0bbed03d1f --- /dev/null +++ b/keyboards/ibm/modelh/readme.md @@ -0,0 +1,20 @@ +# Model H - A USB capable PCB for the IBM Model M keyboard + +![modelh](https://modelh.club/modelh_assembled.jpg) + +This conversion kit allows you to replace your IBM Model M's original internal controller board with a modern USB board. This aims to match the footprint of the original controller and plugs into the original keyboard matrix, but exposes a USB port through the original SDL connector. + +* Keyboard Maintainer: [John Hawthorn](https://github.com/jhawthorn) +* Hardware Supported: IBM Model M, Generations 1-3 +* Hardware Availability: [www.modelh.club](www.modelh.club) +* How to [build your own controller](https://github.com/jberclaz/modelh) + +Make example for this keyboard (after setting up your build environment): + + make ibm/modelh:vial + +Flashing example for this keyboard: + + make ibm/modelh:vial:flash + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). diff --git a/keyboards/ibm/modelh/rules.mk b/keyboards/ibm/modelh/rules.mk new file mode 100644 index 0000000000..a92b099328 --- /dev/null +++ b/keyboards/ibm/modelh/rules.mk @@ -0,0 +1,2 @@ +# Enter lower-power sleep mode when on the ChibiOS idle thread +OPT_DEFS += -DCORTEX_ENABLE_WFI_IDLE=TRUE diff --git a/keyboards/kbdcraft/adam64/keymaps/vial/config.h b/keyboards/kbdcraft/adam64/keymaps/vial/config.h new file mode 100644 index 0000000000..a098acc7af --- /dev/null +++ b/keyboards/kbdcraft/adam64/keymaps/vial/config.h @@ -0,0 +1,9 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ + +#pragma once + +#define VIAL_KEYBOARD_UID {0x68, 0x15, 0xE0, 0x6E, 0xF2, 0x8C, 0x40, 0x6A} + +#define VIAL_UNLOCK_COMBO_ROWS { 0, 2 } +#define VIAL_UNLOCK_COMBO_COLS { 0, 13 } + diff --git a/keyboards/kbdcraft/adam64/keymaps/vial/keymap.c b/keyboards/kbdcraft/adam64/keymaps/vial/keymap.c new file mode 100644 index 0000000000..4ff28d4978 --- /dev/null +++ b/keyboards/kbdcraft/adam64/keymaps/vial/keymap.c @@ -0,0 +1,37 @@ +/* + * Copyright 2023 KBDCraft + * Copyright 2023 Adophoxia + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT_64_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_UP, KC_DEL, + KC_LCTL, KC_LOPT, KC_LCMD, KC_SPC, KC_RALT, MO(1), KC_LEFT, KC_DOWN, KC_RGHT + ), + + [1] = LAYOUT_64_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, + _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, RGB_MOD, KC_PSCR, KC_SCRL, KC_PAUS, _______, + _______, _______, _______, _______, _______, _______, _______, _______, RGB_SPI, RGB_SPD, KC_HOME, KC_PGUP, EE_CLR, + _______, _______, _______, _______, _______, _______, NK_TOGG, _______, _______, KC_INS, KC_END, KC_PGDN, KC_VOLU, KC_MUTE, + _______, _______, _______, _______, _______, _______, RGB_MOD, KC_VOLD, RGB_TOG + ) +}; diff --git a/keyboards/kbdcraft/adam64/keymaps/vial/rules.mk b/keyboards/kbdcraft/adam64/keymaps/vial/rules.mk new file mode 100644 index 0000000000..31bb6d699f --- /dev/null +++ b/keyboards/kbdcraft/adam64/keymaps/vial/rules.mk @@ -0,0 +1,3 @@ +VIA_ENABLE = yes +VIAL_ENABLE = yes +VIALRGB_ENABLE = yes \ No newline at end of file diff --git a/keyboards/kbdcraft/adam64/keymaps/vial/vial.json b/keyboards/kbdcraft/adam64/keymaps/vial/vial.json new file mode 100644 index 0000000000..48862c7443 --- /dev/null +++ b/keyboards/kbdcraft/adam64/keymaps/vial/vial.json @@ -0,0 +1,115 @@ +{ + "name": "Adam64", + "vendorId": "0x586A", + "productId": "0xB001", + "lighting": "vialrgb", + "matrix": { "rows": 5, "cols": 14 }, + "layouts": { + "keymap": [ + [ + "0,0", + "0,1", + "0,2", + "0,3", + "0,4", + "0,5", + "0,6", + "0,7", + "0,8", + "0,9", + "0,10", + "0,11", + "0,12", + { + "w": 2 + }, + "0,13" + ], + [ + { + "w": 1.5 + }, + "1,0", + "1,1", + "1,2", + "1,3", + "1,4", + "1,5", + "1,6", + "1,7", + "1,8", + "1,9", + "1,10", + "1,11", + "1,12", + { + "w": 1.5 + }, + "1,13" + ], + [ + { + "w": 1.75 + }, + "2,0", + "2,1", + "2,2", + "2,3", + "2,4", + "2,5", + "2,6", + "2,7", + "2,8", + "2,9", + "2,10", + "2,11", + { + "w": 2.25 + }, + "2,13" + ], + [ + { + "w": 2 + }, + "3,0", + "3,1", + "3,2", + "3,3", + "3,4", + "3,5", + "3,6", + "3,7", + "3,8", + "3,9", + "3,10", + "3,11", + "3,12", + "3,13" + ], + [ + { + "w": 1.25 + }, + "4,0", + { + "w": 1.25 + }, + "4,1", + { + "w": 1.25 + }, + "4,2", + { + "w": 6.25 + }, + "4,5", + "4,9", + "4,10", + "4,11", + "4,12", + "4,13" + ] + ] + } +} diff --git a/keyboards/kbdfans/d45/keymaps/vial/config.h b/keyboards/kbdfans/d45/keymaps/vial/config.h new file mode 100644 index 0000000000..07c7e30159 --- /dev/null +++ b/keyboards/kbdfans/d45/keymaps/vial/config.h @@ -0,0 +1,7 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ + +#pragma once + +#define VIAL_KEYBOARD_UID {0xC0, 0x17, 0xF0, 0x89, 0xD6, 0x68, 0xC4, 0xEA} +#define VIAL_UNLOCK_COMBO_ROWS { 0, 0 } +#define VIAL_UNLOCK_COMBO_COLS { 0, 1 } diff --git a/keyboards/kbdfans/d45/keymaps/vial/keymap.c b/keyboards/kbdfans/d45/keymaps/vial/keymap.c new file mode 100644 index 0000000000..9ca23d5fa8 --- /dev/null +++ b/keyboards/kbdfans/d45/keymaps/vial/keymap.c @@ -0,0 +1,62 @@ +/* Copyright 2022 dztech kbdfans + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . */ + +#include QMK_KEYBOARD_H + +enum layer_names { + _BASE, + _LOWER, + _RAISE, + _ADJUST +}; + +#define LOWER MO(_LOWER) +#define RAISE MO(_RAISE) +#define ADJUST MO(_ADJUST) + +#define SF_SS RSFT_T(KC_SLSH) +#define SP_LO LT(LOWER, KC_SPC) +#define SP_RA LT(RAISE, KC_SPC) + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_BASE] = LAYOUT( /* Base */ + KC_ESC, 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_F2, 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_HOME, + KC_F3, 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_END, + KC_F4, KC_LCTL, KC_LALT, KC_SPC, KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RIGHT + ), + [_LOWER] = LAYOUT( /* FN */ + KC_ESC, 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_F2, 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_HOME, + KC_F3, 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_END, + KC_F4, KC_LCTL, KC_LALT, KC_SPC, KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RIGHT + ), + [_RAISE] = LAYOUT( /* FN */ + KC_ESC, 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_F2, 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_HOME, + KC_F3, 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_END, + KC_F4, KC_LCTL, KC_LALT, KC_SPC, KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RIGHT + ), + [_ADJUST] = LAYOUT( /* FN */ + KC_ESC, 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_F2, 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_HOME, + KC_F3, 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_END, + KC_F4, KC_LCTL, KC_LALT, KC_SPC, KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RIGHT + ), + }; + + layer_state_t layer_state_set_user(layer_state_t state) { + return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST); +} diff --git a/keyboards/kbdfans/d45/keymaps/vial/rules.mk b/keyboards/kbdfans/d45/keymaps/vial/rules.mk new file mode 100644 index 0000000000..46f9f1360f --- /dev/null +++ b/keyboards/kbdfans/d45/keymaps/vial/rules.mk @@ -0,0 +1,3 @@ +VIA_ENABLE = yes +VIAL_ENABLE = yes +LTO_ENABLE = yes diff --git a/keyboards/kbdfans/d45/keymaps/vial/vial.json b/keyboards/kbdfans/d45/keymaps/vial/vial.json new file mode 100644 index 0000000000..2e515eea12 --- /dev/null +++ b/keyboards/kbdfans/d45/keymaps/vial/vial.json @@ -0,0 +1,138 @@ +{ + "name": "D45", + "vendorId": "0x4B42", + "productId": "0x0010", + "lighting": "qmk_backlight", + "matrix": { + "rows": 4, + "cols": 16 + }, + "layouts": { + "keymap": [ + [ + "0,0", + { + "x": 0.25, + "w": 1.5 + }, + "0,1", + "0,2", + "0,3", + "0,4", + "0,5", + "0,6", + "0,7", + "0,8", + "0,9", + "0,10", + "0,11", + "0,12", + "0,13", + { + "w": 1.5 + }, + "0,14", + { + "x": 0.5 + }, + "0,15" + ], + [ + "1,0", + { + "x": 0.25, + "w": 1.75 + }, + "1,1", + "1,2", + "1,3", + "1,4", + "1,5", + "1,6", + "1,7", + "1,8", + "1,9", + "1,10", + "1,11", + "1,12", + { + "w": 2.25 + }, + "1,14", + { + "x": 0.5 + }, + "1,15" + ], + [ + "2,0", + { + "x": 0.25, + "w": 2.25 + }, + "2,1", + "2,2", + "2,3", + "2,4", + "2,5", + "2,6", + "2,7", + "2,8", + "2,9", + "2,10", + "2,11", + { + "w": 1.75 + }, + "2,13", + { + "x": 1.5 + }, + "2,15" + ], + [ + { + "y": -0.75, + "x": 15.5 + }, + "2,14" + ], + [ + { + "y": -0.25 + }, + "3,0", + { + "x": 1.75 + }, + "3,2", + { + "w": 1.5 + }, + "3,3", + { + "w": 2.75 + }, + "3,5", + { + "w": 2.25 + }, + "3,7", + { + "w": 1.5 + }, + "3,9", + "3,10" + ], + [ + { + "y": -0.75, + "x": 14.5 + }, + "3,13", + "3,14", + "3,15" + ] + ] + } + } diff --git a/keyboards/kbdfans/d45/v1/config.h b/keyboards/kbdfans/d45/v1/config.h new file mode 100755 index 0000000000..fa9a83d08e --- /dev/null +++ b/keyboards/kbdfans/d45/v1/config.h @@ -0,0 +1,6 @@ +#pragma once + +/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ +#define LOCKING_SUPPORT_ENABLE +/* Locking resynchronize hack */ +#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/kbdfans/d45/v1/info.json b/keyboards/kbdfans/d45/v1/info.json new file mode 100644 index 0000000000..bf2dab87d9 --- /dev/null +++ b/keyboards/kbdfans/d45/v1/info.json @@ -0,0 +1,151 @@ +{ + "manufacturer": "kbdfans", + "keyboard_name": "D45", + "maintainer": "moyi4681", + "bootloader": "atmel-dfu", + "build": { + "lto": true + }, + "config_h_features": { + "audio": false, + "backlight": false, + "bluetooth": false, + "bootmagic": true, + "command": false, + "console": false, + "extrakey": true, + "lto": true, + "mousekey": true, + "nkro": false, + "rgb_matrix": false, + "rgblight": false, + "sleep_led": false + }, + "debounce": 5, + "diode_direction": "COL2ROW", + "features": { + "audio": false, + "backlight": false, + "bluetooth": false, + "bootmagic": true, + "command": false, + "console": false, + "extrakey": true, + "lto": true, + "mousekey": true, + "nkro": false, + "rgb_matrix": false, + "rgblight": false, + "sleep_led": false + }, + "keyboard_folder": "kbdfans/d45/v1", + "keymaps": {}, + "matrix_pins": { + "cols": ["D7", "F7", "F6", "F5", "F4", "F1", "F0", "E6", "B0", "B1", "B2", "B3", "B7", "D2", "D3", "D5"], + "rows": ["B5", "B4", "D6", "D4"] + }, + "matrix_size": { + "cols": 16, + "rows": 4 + }, + "mouse_key": { + "enabled": true + }, + "parse_errors": [], + "parse_warnings": [], + "platform": "unknown", + "processor": "atmega32u4", + "processor_type": "avr", + "protocol": "LUFA", + "rgb_matrix": { + "driver": "WS2812" + }, + "rgblight": { + "animations": { + "breathing": false, + "christmas": false, + "knight": false, + "rainbow_mood": false, + "rainbow_swirl": false, + "rgb_test": false, + "snake": false, + "static_gradient": false + }, + "brightness_steps": 16, + "hue_steps": 16, + "led_count": 72, + "max_brightness": 255, + "pin": "B6", + "saturation_steps": 16, + "sleep": false + }, + "usb": { + "device_ver": "0x0100", + "device_version": "1.0.0", + "pid": "0x0006", + "vid": "0x4B42" + }, + "layouts": { + "LAYOUT": { + "c_macro": false, + "layout": [ + { "matrix": [0, 0], "x": 0, "y": 0 }, + { "matrix": [0, 1], "w": 1.5, "x": 1.25, "y": 0 }, + { "matrix": [0, 2], "x": 2.75, "y": 0 }, + { "matrix": [0, 3], "x": 3.75, "y": 0 }, + { "matrix": [0, 4], "x": 4.75, "y": 0 }, + { "matrix": [0, 5], "x": 5.75, "y": 0 }, + { "matrix": [0, 6], "x": 6.75, "y": 0 }, + { "matrix": [0, 7], "x": 7.75, "y": 0 }, + { "matrix": [0, 8], "x": 8.75, "y": 0 }, + { "matrix": [0, 9], "x": 9.75, "y": 0 }, + { "matrix": [0, 10], "x": 10.75, "y": 0 }, + { "matrix": [0, 11], "x": 11.75, "y": 0 }, + { "matrix": [0, 12], "x": 12.75, "y": 0 }, + { "matrix": [0, 13], "x": 13.75, "y": 0 }, + { "matrix": [3, 13], "w": 1.5, "x": 14.75, "y": 0 }, + { "matrix": [0, 14], "x": 16.75, "y": 0 }, + { "matrix": [1, 0], "x": 0, "y": 1 }, + { "matrix": [1, 1], "w": 1.75, "x": 1.25, "y": 1 }, + { "matrix": [1, 2], "x": 3, "y": 1 }, + { "matrix": [1, 3], "x": 4, "y": 1 }, + { "matrix": [1, 4], "x": 5, "y": 1 }, + { "matrix": [1, 5], "x": 6, "y": 1 }, + { "matrix": [1, 6], "x": 7, "y": 1 }, + { "matrix": [1, 7], "x": 8, "y": 1 }, + { "matrix": [1, 8], "x": 9, "y": 1 }, + { "matrix": [1, 9], "x": 10, "y": 1 }, + { "matrix": [1, 10], "x": 11, "y": 1 }, + { "matrix": [1, 11], "x": 12, "y": 1 }, + { "matrix": [1, 12], "x": 13, "y": 1 }, + { "matrix": [1, 13], "w": 2.25, "x": 14, "y": 1 }, + { "matrix": [1, 14], "x": 16.75, "y": 1 }, + { "matrix": [2, 0], "x": 0, "y": 2 }, + { "matrix": [2, 1], "w": 2.25, "x": 1.25, "y": 2 }, + { "matrix": [2, 2], "x": 3.5, "y": 2 }, + { "matrix": [2, 3], "x": 4.5, "y": 2 }, + { "matrix": [2, 4], "x": 5.5, "y": 2 }, + { "matrix": [2, 5], "x": 6.5, "y": 2 }, + { "matrix": [2, 6], "x": 7.5, "y": 2 }, + { "matrix": [2, 7], "x": 8.5, "y": 2 }, + { "matrix": [2, 8], "x": 9.5, "y": 2 }, + { "matrix": [2, 9], "x": 10.5, "y": 2 }, + { "matrix": [2, 10], "x": 11.5, "y": 2 }, + { "matrix": [2, 11], "x": 12.5, "y": 2 }, + { "matrix": [2, 12], "w": 1.75, "x": 13.5, "y": 2 }, + { "matrix": [2, 13], "x": 15.5, "y": 2.25 }, + { "matrix": [2, 14], "x": 16.75, "y": 2 }, + { "matrix": [3, 0], "x": 0, "y": 3 }, + { "matrix": [3, 1], "x": 2.75, "y": 3 }, + { "matrix": [3, 2], "w": 1.5, "x": 3.75, "y": 3 }, + { "matrix": [3, 5], "w": 2.75, "x": 5.25, "y": 3 }, + { "matrix": [3, 8], "w": 2.25, "x": 8, "y": 3 }, + { "matrix": [3, 9], "w": 1.5, "x": 10.25, "y": 3 }, + { "matrix": [3, 10], "x": 11.75, "y": 3 }, + { "matrix": [3, 11], "x": 14.5, "y": 3.25 }, + { "matrix": [3, 12], "x": 15.5, "y": 3.25 }, + { "matrix": [3, 14], "x": 16.5, "y": 3.25 } + ] + } + } +} \ No newline at end of file diff --git a/keyboards/kbdfans/d45/v1/readme.md b/keyboards/kbdfans/d45/v1/readme.md new file mode 100644 index 0000000000..768decc17a --- /dev/null +++ b/keyboards/kbdfans/d45/v1/readme.md @@ -0,0 +1,20 @@ +# d45 + +* Keyboard Maintainer: [moyi4681](https://github.com/moyi4681) +* Hardware Supported: KBDFANS +* Hardware Availability: [kbdfans](https://kbdfans.myshopify.com/) + +Make example for this keyboard (after setting up your build environment): + + make kbdfans/d45: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 + +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**: Double tap the reset button on the back of the PCB +* **Keycode in layout**: Press the key mapped to `QK_BOOT` if it is available diff --git a/keyboards/kbdfans/d45/v1/rules.mk b/keyboards/kbdfans/d45/v1/rules.mk new file mode 100644 index 0000000000..7ff128fa69 --- /dev/null +++ b/keyboards/kbdfans/d45/v1/rules.mk @@ -0,0 +1 @@ +# This file intentionally left blank \ No newline at end of file diff --git a/keyboards/keebio/bfo9000/keymaps/vial/config.h b/keyboards/keebio/bfo9000/keymaps/vial/config.h new file mode 100644 index 0000000000..c461f0e599 --- /dev/null +++ b/keyboards/keebio/bfo9000/keymaps/vial/config.h @@ -0,0 +1,32 @@ +/* +This is the c configuration file for the keymap + +Copyright 2012 Jun Wako +Copyright 2015 Jack Humbert + +This program is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program. If not, see . +*/ + +#pragma once +#define VIAL_KEYBOARD_UID {0xCA, 0x43, 0x6E, 0xF3, 0x4D, 0x91, 0x78, 0x1F} +#define VIAL_UNLOCK_COMBO_ROWS { 0, 2 } +#define VIAL_UNLOCK_COMBO_COLS { 0, 5 } + + +//#define USE_I2C + +/* Select hand configuration */ +// #define MASTER_RIGHT +// #define EE_HANDS +#define DYNAMIC_KEYMAP_LAYER_COUNT 2 diff --git a/keyboards/keebio/bfo9000/keymaps/vial/keymap.c b/keyboards/keebio/bfo9000/keymaps/vial/keymap.c new file mode 100644 index 0000000000..f37ea79c40 --- /dev/null +++ b/keyboards/keebio/bfo9000/keymaps/vial/keymap.c @@ -0,0 +1,15 @@ +#include QMK_KEYBOARD_H + +#define _BASE 0 + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + +[_BASE] = LAYOUT( + KC_ESC, KC_VOLU, KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_DEL, + KC_HOME, KC_VOLD, KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, + KC_END, KC_TAB, KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, + KC_PGUP, KC_CAPS, KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, KC_ENT, + KC_PGDN, KC_UP, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, XXXXXXX, + KC_LEFT, KC_DOWN, KC_RGHT, KC_LCTL, KC_LALT, KC_LGUI, KC_SPC, KC_SPC, KC_ENT, KC_BSPC, KC_SPC, KC_SPC, KC_RGUI, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT +) +}; diff --git a/keyboards/keebio/bfo9000/keymaps/vial/rules.mk b/keyboards/keebio/bfo9000/keymaps/vial/rules.mk new file mode 100644 index 0000000000..6c6095dc89 --- /dev/null +++ b/keyboards/keebio/bfo9000/keymaps/vial/rules.mk @@ -0,0 +1,5 @@ +VIA_ENABLE = yes +VIAL_ENABLE = yes +LTO_ENABLE = yes +COMMAND_ENABLE = no +KEY_OVERRIDE_ENABLE = no \ No newline at end of file diff --git a/keyboards/keebio/bfo9000/keymaps/vial/vial.json b/keyboards/keebio/bfo9000/keymaps/vial/vial.json new file mode 100644 index 0000000000..dd1cb17f81 --- /dev/null +++ b/keyboards/keebio/bfo9000/keymaps/vial/vial.json @@ -0,0 +1,152 @@ +{ + "name": "Keeb.io BFO-9000", + "vendorId": "0xCB10", + "productId": "0x1169", + "lighting": "qmk_rgblight", + "matrix": { + "rows": 12, + "cols": 9 + }, + "layouts": { + "keymap": [ + [ + "0,0", + "0,1", + "0,2", + "0,3", + "0,4", + "0,5", + "0,6", + "0,7", + "0,8", + { + "x": 5 + }, + "6,0", + "6,1", + "6,2", + "6,3", + "6,4", + "6,5", + "6,6", + "6,7", + "6,8" + ], + [ + "1,0", + "1,1", + "1,2", + "1,3", + "1,4", + "1,5", + "1,6", + "1,7", + "1,8", + { + "x": 5 + }, + "7,0", + "7,1", + "7,2", + "7,3", + "7,4", + "7,5", + "7,6", + "7,7", + "7,8" + ], + [ + "2,0", + "2,1", + "2,2", + "2,3", + "2,4", + "2,5", + "2,6", + "2,7", + "2,8", + { + "x": 5 + }, + "8,0", + "8,1", + "8,2", + "8,3", + "8,4", + "8,5", + "8,6", + "8,7", + "8,8" + ], + [ + "3,0", + "3,1", + "3,2", + "3,3", + "3,4", + "3,5", + "3,6", + "3,7", + "3,8", + { + "x": 5 + }, + "9,0", + "9,1", + "9,2", + "9,3", + "9,4", + "9,5", + "9,6", + "9,7", + "9,8" + ], + [ + "4,0", + "4,1", + "4,2", + "4,3", + "4,4", + "4,5", + "4,6", + "4,7", + "4,8", + { + "x": 5 + }, + "10,0", + "10,1", + "10,2", + "10,3", + "10,4", + "10,5", + "10,6", + "10,7", + "10,8" + ], + [ + "5,0", + "5,1", + "5,2", + "5,3", + "5,4", + "5,5", + "5,6", + "5,7", + "5,8", + { + "x": 5 + }, + "11,0", + "11,1", + "11,2", + "11,3", + "11,4", + "11,5", + "11,6", + "11,7", + "11,8" + ] + ] + } +} \ No newline at end of file diff --git a/keyboards/keebio/dsp40/keymaps/vial/config.h b/keyboards/keebio/dsp40/keymaps/vial/config.h new file mode 100644 index 0000000000..bc0a528a19 --- /dev/null +++ b/keyboards/keebio/dsp40/keymaps/vial/config.h @@ -0,0 +1,5 @@ +#pragma once + +#define VIAL_KEYBOARD_UID {0xCE, 0xD3, 0x93, 0xC2, 0x74, 0x75, 0xEA, 0xE7} +#define VIAL_UNLOCK_COMBO_ROWS { 0 , 2 } +#define VIAL_UNLOCK_COMBO_COLS { 0 , 11 } diff --git a/keyboards/keebio/dsp40/keymaps/vial/keymap.c b/keyboards/keebio/dsp40/keymaps/vial/keymap.c new file mode 100755 index 0000000000..2812bf2330 --- /dev/null +++ b/keyboards/keebio/dsp40/keymaps/vial/keymap.c @@ -0,0 +1,75 @@ +/* Copyright 2021 Danny Nguyen + +This program is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program. If not, see . +*/ + +#include QMK_KEYBOARD_H + +enum via_layers { + _MAIN, + _FN1, + _FN2, + _FN3, +}; + +#if defined(ENCODER_MAP_ENABLE) +const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { + [0] = { ENCODER_CCW_CW(KC_MS_WH_UP, KC_MS_WH_DOWN) }, + [1] = { ENCODER_CCW_CW(RGB_HUD, RGB_HUI) }, + [2] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI) }, + [3] = { ENCODER_CCW_CW(RGB_RMOD, RGB_MOD) }, +}; +#endif + + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + /* Default Layer + * ,-----------------------------------------------------------. + * | Esc| Q | W | E | R | T | Y | U | I | O | P | BS | + * |-----------------------------------------------------------| + * | Tab | A | S | D | F | G | H | J | K | L | Ent | + * |-----------------------------------------------------------| + * | LSft | Z | X | C | V | B | N | M | , | . | /? | + * |-----------------------------------------------------------| + * | LCtl | LGui| LAlt| spc fn1 | spc fn2 |fn3|RAlt|RCtl | + * `-----------------------------------------------------------' + */ + [_MAIN] = LAYOUT_ortho_4x12( + KC_ESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, + KC_TAB, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_ENT, + KC_LSFT, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, LT(_FN1, KC_SPC), KC_SPC, KC_SPC, LT(_FN2, KC_SPC), MO(_FN3), LT(_FN3, KC_LGUI), KC_RALT, KC_RCTL + ), + + [_FN1] = 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_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, _______, KC_PIPE, + _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12,S(KC_NUHS),S(KC_NUBS),BL_TOGG,BL_INC, BL_DEC, + _______, _______, _______, _______, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT + ), + + [_FN2] = 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_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_DEL, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), + + [_FN3] = LAYOUT_ortho_4x12( + _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ) +}; diff --git a/keyboards/keebio/dsp40/keymaps/vial/rules.mk b/keyboards/keebio/dsp40/keymaps/vial/rules.mk new file mode 100644 index 0000000000..ab00f5cb34 --- /dev/null +++ b/keyboards/keebio/dsp40/keymaps/vial/rules.mk @@ -0,0 +1,7 @@ +VIA_ENABLE = yes +VIAL_ENABLE = yes +LTO_ENABLE = yes +MOUSEKEY_ENABLE = yes +CONSOLE_ENABLE = yes +COMMAND_ENABLE = no +ENCODER_MAP_ENABLE = yes diff --git a/keyboards/keebio/dsp40/keymaps/vial/vial.json b/keyboards/keebio/dsp40/keymaps/vial/vial.json new file mode 100644 index 0000000000..5c334ba592 --- /dev/null +++ b/keyboards/keebio/dsp40/keymaps/vial/vial.json @@ -0,0 +1,255 @@ +{ + "name": "DSP40 Rev. 1", + "vendorId": "0xCB10", + "productId": "0x144C", + "lighting": "qmk_backlight", + "matrix": { + "rows": 4, + "cols": 12 + }, + "layouts": { + "labels": [ + [ + "Row 2", + "Staggered", + "Ortho" + ], + [ + "Row 3", + "Staggered 1.25-1", + "Staggered 1-1.25", + "Ortho" + ], + [ + "Row 4", + "Staggered 1.25 Mods", + "Staggered 1.5 Mods", + "Ortho" + ] + ], + "keymap": [ + [ + { + "c": "#777777" + }, + "0,0\n\n\n\n\n\n\n\n\ne", + "0,1\n\n\n\n\n\n\n\n\ne", + {"x":0.5},"0,0", + { + "c": "#cccccc" + }, + "0,1", + "0,2", + "0,3", + "0,4", + "0,5", + "0,6", + "0,7", + "0,8", + "0,9", + "0,10", + { + "c": "#aaaaaa" + }, + "0,11" + ], + [ + {"x":2.5}, + { + "w": 1.25 + }, + "1,0\n\n\n0,0", + { + "c": "#cccccc" + }, + "1,1\n\n\n0,0", + "1,2\n\n\n0,0", + "1,3\n\n\n0,0", + "1,4\n\n\n0,0", + "1,5\n\n\n0,0", + "1,6\n\n\n0,0", + "1,7\n\n\n0,0", + "1,8\n\n\n0,0", + "1,9\n\n\n0,0", + { + "c": "#777777", + "w": 1.75 + }, + "1,11\n\n\n0,0", + { + "x": 0.5, + "c": "#aaaaaa" + }, + "1,0\n\n\n0,1", + { + "c": "#cccccc" + }, + "1,1\n\n\n0,1", + "1,2\n\n\n0,1", + "1,3\n\n\n0,1", + "1,4\n\n\n0,1", + "1,5\n\n\n0,1", + "1,6\n\n\n0,1", + "1,7\n\n\n0,1", + "1,8\n\n\n0,1", + "1,9\n\n\n0,1", + "1,10\n\n\n0,1", + { + "c": "#aaaaaa" + }, + "1,11\n\n\n0,1" + ], + [ + {"x":2.5}, + { + "w": 1.75 + }, + "2,1\n\n\n1,0", + { + "c": "#cccccc" + }, + "2,2\n\n\n1,0", + "2,3\n\n\n1,0", + "2,4\n\n\n1,0", + "2,5\n\n\n1,0", + "2,6\n\n\n1,0", + "2,7\n\n\n1,0", + "2,8\n.\n\n1,0", + "2,9\n\n\n1,0", + { + "w": 1.25 + }, + "2,10\n\n\n1,0", + { + "c": "#aaaaaa" + }, + "2,11\n\n\n1,0", + { + "x": 0.5, + "w": 1.75 + }, + "2,1\n\n\n1,1", + { + "c": "#cccccc" + }, + "2,2\n\n\n1,1", + "2,3\n\n\n1,1", + "2,4\n\n\n1,1", + "2,5\n\n\n1,1", + "2,6\n\n\n1,1", + "2,7\n\n\n1,1", + "2,8\n.\n\n1,1", + "2,9\n\n\n1,1", + "2,10\n\n\n1,1", + { + "c": "#aaaaaa", + "w": 1.25 + }, + "2,11\n\n\n1,1" + ], + [ + {"x":2.5}, + { + "w": 1.25 + }, + "3,0\n\n\n2,0", + "3,1\n\n\n2,0", + { + "w": 1.25 + }, + "3,2\n\n\n2,0", + { + "c": "#cccccc", + "w": 2.25 + }, + "3,4\n\n\n2,0", + { + "w": 2.75 + }, + "3,7\n\n\n2,0", + { + "c": "#aaaaaa", + "w": 1.25 + }, + "3,9\n\n\n2,0", + "3,10\n\n\n2,0", + { + "w": 1.25 + }, + "3,11\n\n\n2,0", + { + "x": 0.5 + }, + "2,0\n\n\n1,2", + { + "c": "#cccccc" + }, + "2,1\n\n\n1,2", + "2,2\n\n\n1,2", + "2,3\n\n\n1,2", + "2,4\n\n\n1,2", + "2,5\n\n\n1,2", + "2,6\n\n\n1,2", + "2,7\n\n\n1,2", + "2,8\n\n\n1,2", + "2,9\n\n\n1,2", + "2,10\n\n\n1,2", + { + "c": "#777777" + }, + "2,11\n\n\n1,2" + ], + [ + { + "y": 0.25, + "c": "#aaaaaa", + "w": 1.5 + }, + "3,0\n\n\n2,1", + "3,1\n\n\n2,1", + { + "w": 1.5 + }, + "3,2\n\n\n2,1", + { + "c": "#cccccc", + "w": 2.25 + }, + "3,4\n\n\n2,1", + { + "w": 2.75 + }, + "3,7\n\n\n2,1", + { + "c": "#aaaaaa" + }, + "3,9\n\n\n2,1", + "3,10\n\n\n2,1", + "3,11\n\n\n2,1" + ], + [ + { + "y": 0.25 + }, + "3,0\n\n\n2,2", + "3,1\n\n\n2,2", + "3,2\n\n\n2,2", + "3,3\n\n\n2,2", + "3,4\n\n\n2,2", + { + "c": "#cccccc" + }, + "3,5\n\n\n2,2", + "3,6\n\n\n2,2", + { + "c": "#aaaaaa" + }, + "3,7\n\n\n2,2", + "3,8\n\n\n2,2", + "3,9\n\n\n2,2", + "3,10\n\n\n2,2", + "3,11\n\n\n2,2" + ] + ] + } + } diff --git a/keyboards/keychron/q0/config.h b/keyboards/keychron/q0/config.h index c0366b1ed8..9913191de7 100644 --- a/keyboards/keychron/q0/config.h +++ b/keyboards/keychron/q0/config.h @@ -26,4 +26,4 @@ #define WEAR_LEVELING_BACKING_SIZE (WEAR_LEVELING_LOGICAL_SIZE * 2) #define RGB_MATRIX_KEYPRESSES -#define RGB_MATRIX_FRAMEBUFFER_EFFECTS \ No newline at end of file +#define RGB_MATRIX_FRAMEBUFFER_EFFECTS diff --git a/keyboards/keychron/q0/readme.md b/keyboards/keychron/q0/readme.md index d0180d386e..cab643be3b 100644 --- a/keyboards/keychron/q0/readme.md +++ b/keyboards/keychron/q0/readme.md @@ -7,12 +7,12 @@ A customizable number keypad. * Hardware Availability: [Keychron](https://www.keychron.com) Make example for this keyboard (after setting up your build environment): - - make keychron/q0/rev_0130:default + + make keychron/q0/rev_0131:vial (Keychron Q0 Plus) Flashing example for this keyboard: - - make keychron/q0/rev_0130:default:flash + + make keychron/q0/rev_0131:vial:flash (Keychron Q0 Plus) **Reset Key**: Hold down the key located at *K00*, commonly programmed as *Esc* while plugging in the keyboard. diff --git a/keyboards/keychron/q0/rev_0130/keymaps/vial/config.h b/keyboards/keychron/q0/rev_0130/keymaps/vial/config.h index 5065e78b68..7dab45c639 100644 --- a/keyboards/keychron/q0/rev_0130/keymaps/vial/config.h +++ b/keyboards/keychron/q0/rev_0130/keymaps/vial/config.h @@ -2,7 +2,7 @@ #pragma once -#define VIAL_KEYBOARD_UID {0xCD, 0xB9, 0xD4, 0xC9, 0x53, 0x9A, 0x68, 0xC3} +#define VIAL_KEYBOARD_UID {0xCB, 0x44, 0x98, 0x8F, 0x71, 0xAE, 0x25, 0x99} #define VIAL_UNLOCK_COMBO_ROWS { 0, 4 } #define VIAL_UNLOCK_COMBO_COLS { 0, 3 } diff --git a/keyboards/keychron/q0/rev_0130/keymaps/vial/keymap.c b/keyboards/keychron/q0/rev_0130/keymaps/vial/keymap.c index 82e5cf4bbb..bf0d25d6e7 100644 --- a/keyboards/keychron/q0/rev_0130/keymaps/vial/keymap.c +++ b/keyboards/keychron/q0/rev_0130/keymaps/vial/keymap.c @@ -1,4 +1,4 @@ -/* Copyright 2022 @ Keychron (https://www.keychron.com) +/* Copyright 2023 @ Keychron (https://www.keychron.com) * * 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 @@ -15,6 +15,7 @@ */ #include QMK_KEYBOARD_H +#include "keychron_common.h" enum layers { _BASE, _FN1, _RESERVED1, _RESERVED2 }; @@ -51,3 +52,14 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, _______, _______, _______) }; + +void housekeeping_task_user(void) { + housekeeping_task_keychron(); +} + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + if (!process_record_keychron(keycode, record)) { + return false; + } + return true; +} diff --git a/keyboards/keychron/q0/rev_0130/keymaps/vial/rules.mk b/keyboards/keychron/q0/rev_0130/keymaps/vial/rules.mk index 31bb6d699f..c4077f69ff 100644 --- a/keyboards/keychron/q0/rev_0130/keymaps/vial/rules.mk +++ b/keyboards/keychron/q0/rev_0130/keymaps/vial/rules.mk @@ -1,3 +1,6 @@ VIA_ENABLE = yes VIAL_ENABLE = yes -VIALRGB_ENABLE = yes \ No newline at end of file +VIALRGB_ENABLE = yes + +VPATH += keyboards/keychron/common +SRC += keychron_common.c diff --git a/keyboards/keychron/q0/rev_0130/keymaps/vial/vial.json b/keyboards/keychron/q0/rev_0130/keymaps/vial/vial.json index 4e75265ffa..65216a9750 100644 --- a/keyboards/keychron/q0/rev_0130/keymaps/vial/vial.json +++ b/keyboards/keychron/q0/rev_0130/keymaps/vial/vial.json @@ -1,14 +1,14 @@ { - "name": "Keychron Q0", - "vendorId": "0x3434", - "productId": "0x0130", - "lighting": "vialrgb", - "matrix": { - "rows": 6, - "cols": 4 - }, - "layouts": { - "keymap":[ + "name": "Keychron Q0", + "vendorId": "0x3434", + "productId": "0x0130", + "lighting": "vialrgb", + "matrix": { + "rows": 6, + "cols": 4 + }, + "layouts": { + "keymap":[ [ "0,0", "0,1", diff --git a/keyboards/keychron/q0/rev_0131/keymaps/vial/config.h b/keyboards/keychron/q0/rev_0131/keymaps/vial/config.h new file mode 100644 index 0000000000..15f11cf4df --- /dev/null +++ b/keyboards/keychron/q0/rev_0131/keymaps/vial/config.h @@ -0,0 +1,8 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ + +#pragma once + +#define VIAL_KEYBOARD_UID {0xD2, 0xD3, 0x91, 0xAE, 0xA4, 0x06, 0x6C, 0x30} + +#define VIAL_UNLOCK_COMBO_ROWS { 0, 4 } +#define VIAL_UNLOCK_COMBO_COLS { 1, 4 } diff --git a/keyboards/keychron/q0/rev_0131/keymaps/vial/keymap.c b/keyboards/keychron/q0/rev_0131/keymaps/vial/keymap.c new file mode 100644 index 0000000000..52e1ee2eb2 --- /dev/null +++ b/keyboards/keychron/q0/rev_0131/keymaps/vial/keymap.c @@ -0,0 +1,83 @@ +/* Copyright 2023 @ Keychron (https://www.keychron.com) + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +#include QMK_KEYBOARD_H +#include "keychron_common.h" + +// clang-format off + +enum layers { + BASE, + FUNC, + L2, + L3 +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [BASE] = LAYOUT_numpad_6x5( + KC_MUTE, MO(FUNC), KC_ESC, KC_BSPC, KC_TAB, + MACRO01, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, + MACRO02, KC_P7, KC_P8, KC_P9, KC_PPLS, + MACRO03, KC_P4, KC_P5, KC_P6, + MACRO04, KC_P1, KC_P2, KC_P3, KC_PENT, + MACRO05, KC_P0, KC_PDOT), + + [FUNC] = LAYOUT_numpad_6x5( + RGB_TOG, _______, KC_MUTE, KC_VOLD, KC_VOLU, + MACRO01, RGB_MOD, RGB_VAI, RGB_HUI, KC_DEL, + MACRO02, RGB_RMOD, RGB_VAD, RGB_HUD, _______, + MACRO03, RGB_SAI, RGB_SPI, KC_MPRV, + MACRO04, RGB_SAD, RGB_SPD, KC_MPLY, _______, + MACRO05, RGB_TOG, KC_MNXT), + + [L2] = LAYOUT_numpad_6x5( + _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, + _______, _______, _______, _______, + _______, _______, _______, _______, _______, + _______, _______, _______), + + [L3] = LAYOUT_numpad_6x5( + _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, + _______, _______, _______, _______, + _______, _______, _______, _______, _______, + _______, _______, _______) +}; + +#if defined(ENCODER_MAP_ENABLE) +const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { + [BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU) }, + [FUNC] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI) }, + [L2] = { ENCODER_CCW_CW(_______, _______) }, + [L3] = { ENCODER_CCW_CW(_______, _______) } +}; +#endif // ENCODER_MAP_ENABLE + +// clang-format on + +void housekeeping_task_user(void) { + housekeeping_task_keychron(); +} + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + if (!process_record_keychron(keycode, record)) { + return false; + } + return true; +} diff --git a/keyboards/keychron/q0/rev_0131/keymaps/vial/rules.mk b/keyboards/keychron/q0/rev_0131/keymaps/vial/rules.mk new file mode 100644 index 0000000000..c4ca639d6c --- /dev/null +++ b/keyboards/keychron/q0/rev_0131/keymaps/vial/rules.mk @@ -0,0 +1,7 @@ +VIA_ENABLE = yes +VIAL_ENABLE = yes +VIALRGB_ENABLE = yes +ENCODER_MAP_ENABLE = yes + +VPATH += keyboards/keychron/common +SRC += keychron_common.c diff --git a/keyboards/keychron/q0/rev_0131/keymaps/vial/vial.json b/keyboards/keychron/q0/rev_0131/keymaps/vial/vial.json new file mode 100644 index 0000000000..06922df10d --- /dev/null +++ b/keyboards/keychron/q0/rev_0131/keymaps/vial/vial.json @@ -0,0 +1,157 @@ +{ + "name": "Keychron Q0 Plus", + "vendorId": "0x3434", + "productId": "0x0131", + "lighting": "vialrgb", + "customKeycodes": [ + { + "name": "Mission Control", + "title": "Mission Control in macOS", + "shortName": "MCtrl" + }, + { + "name": "Launch Pad", + "title": "Launch Pad in macOS", + "shortName": "LPad" + }, + { + "name": "Left Option", + "title": "Left Option in macOS", + "shortName": "LOpt" + }, + { + "name": "Right Option", + "title": "Right Option in macOS", + "shortName": "ROpt" + }, + { + "name": "Left Cmd", + "title": "Left Command in macOS", + "shortName": "LCmd" + }, + { + "name": "Right Cmd", + "title": "Right Command in macOS", + "shortName": "RCmd" + }, + { + "name": "Siri", + "title": "Siri in macOS", + "shortName": "Siri" + }, + { + "name": "Task View", + "title": "Task View in windows", + "shortName": "Task" + }, + { + "name": "File Explorer", + "title": "File Explorer in windows", + "shortName": "File" + }, + { + "name": "Screen Shot", + "title": "Screenshot in macOS", + "shortName": "SShot" + }, + { + "name": "Cortana", + "title": "Cortana in windows", + "shortName": "Cortana" + } + ], + "matrix": {"rows": 6, "cols": 5}, + "layouts": { + "keymap": [ + [ + "0,0\n\n\n\n\n\n\n\n\ne", + "0,1\n\n\n\n\n\n\n\n\ne" + ], + [ + { + "x": 0.5 + }, + "0,0", + { + "x": 0.25, + "c": "#aaaaaa" + }, + "0,1", + "0,2", + "0,3", + "0,4" + ], + [ + { + "y": 0.25, + "x": 0.5, + "c": "#cccccc" + }, + "1,0", + { + "x": 0.25 + }, + "1,1", + "1,2", + "1,3", + "1,4" + ], + [ + { + "x": 0.5 + }, + "2,0", + { + "x": 0.25 + }, + "2,1", + "2,2", + "2,3", + { + "h": 2 + }, + "2,4" + ], + [ + { + "x": 0.5 + }, + "3,0", + { + "x": 0.25 + }, + "3,1", + "3,2", + "3,3" + ], + [ + { + "x": 0.5 + }, + "4,0", + { + "x": 0.25 + }, + "4,1", + "4,2", + "4,3", + { + "h": 2 + }, + "4,4" + ], + [ + { + "x": 0.5 + }, + "5,0", + { + "x": 0.25, + "w": 2 + }, + "5,1", + "5,3" + ] + ] + } +} diff --git a/keyboards/keychron/q11/ansi_encoder/info.json b/keyboards/keychron/q11/ansi_encoder/info.json index da10fe5166..01a81619ba 100755 --- a/keyboards/keychron/q11/ansi_encoder/info.json +++ b/keyboards/keychron/q11/ansi_encoder/info.json @@ -1,166 +1,105 @@ { - "keyboard_name": "Keychron Q11", - "manufacturer": "Keychron", - "url": "https://github.com/Keychron", - "maintainer": "lalalademaxiya1", - "bootloader": "stm32-dfu", - "bootmagic": { - "matrix": [0, 1] - }, - "features": { - "audio": false, - "backlight": false, - "bootmagic": true, - "command": false, - "console": false, - "dip_switch": true, - "encoder": true, - "extrakey": true, - "mousekey": true, - "nkro": true, - "rgb_matrix": true, - "rgblight": false - }, - "diode_direction": "ROW2COL", - "encoder": { - "rotary": [ - {"pin_a": "B0", "pin_b": "B1"} - ] - }, - "matrix_pins": { - "cols": ["A7", "A6", "A5", "A4", "A3", "A2", "A1", "C15", null], - "rows": ["A13", "A14", "A15", "B3", "B4", "B5"] - }, - "processor": "STM32L432", - "rgb_matrix": { - "driver": "CKLED2001", - "split_count": [42, 47] - }, - "split": { - "enabled": true, - "encoder": { - "right": { - "rotary": [ - {"pin_a": "C14", "pin_b": "C15"} - ] - } - }, - "matrix_pins": { - "right": { - "cols": ["A8", "A7", "A6", "A5", "A4", "A3", "A2", "A1", "A0"], - "rows": ["B5", "B4", "B3", "A15", "A14", "A13"] - } - }, - "transport": { - "protocol": "serial_usart", - "sync_matrix_state": false - } - }, "usb": { - "vid": "0x3434", "pid": "0x01E0", "device_version": "1.0.0" }, - "layouts": { - "LAYOUT_ansi_91": { - "layout": [ - {"matrix": [0, 0], "x": 0, "y": 0}, - {"matrix": [0, 1], "x": 1.25, "y": 0}, - {"matrix": [0, 2], "x": 2.25, "y": 0}, - {"matrix": [0, 3], "x": 3.25, "y": 0}, - {"matrix": [0, 4], "x": 4.25, "y": 0}, - {"matrix": [0, 5], "x": 5.25, "y": 0}, - {"matrix": [0, 6], "x": 6.25, "y": 0}, - {"matrix": [0, 7], "x": 7.25, "y": 0}, - {"matrix": [6, 0], "x": 8.25, "y": 0}, - {"matrix": [6, 1], "x": 9.25, "y": 0}, - {"matrix": [6, 2], "x": 10.25, "y": 0}, - {"matrix": [6, 3], "x": 11.25, "y": 0}, - {"matrix": [6, 4], "x": 12.25, "y": 0}, - {"matrix": [6, 5], "x": 13.25, "y": 0}, - {"matrix": [6, 6], "x": 14.25, "y": 0}, - {"matrix": [6, 7], "x": 15.25, "y": 0}, - {"matrix": [6, 8], "x": 16.5, "y": 0}, + "rgb_matrix": { + "split_count": [42, 47], + "layout": [ + {"matrix":[0, 1], "flags":1, "x":17, "y":0}, + {"matrix":[0, 2], "flags":1, "x":31, "y":0}, + {"matrix":[0, 3], "flags":1, "x":45, "y":0}, + {"matrix":[0, 4], "flags":1, "x":59, "y":0}, + {"matrix":[0, 5], "flags":1, "x":72, "y":0}, + {"matrix":[0, 6], "flags":1, "x":86, "y":0}, + {"matrix":[0, 7], "flags":1, "x":100, "y":0}, + {"matrix":[1, 0], "flags":1, "x":0, "y":15}, + {"matrix":[1, 1], "flags":1, "x":17, "y":15}, + {"matrix":[1, 2], "flags":4, "x":31, "y":15}, + {"matrix":[1, 3], "flags":4, "x":45, "y":15}, + {"matrix":[1, 4], "flags":4, "x":59, "y":15}, + {"matrix":[1, 5], "flags":4, "x":72, "y":15}, + {"matrix":[1, 6], "flags":4, "x":86, "y":15}, + {"matrix":[1, 7], "flags":4, "x":100, "y":15}, - {"matrix": [1, 0], "x": 0, "y": 1.25}, - {"matrix": [1, 1], "x": 1.25, "y": 1.25}, - {"matrix": [1, 2], "x": 2.25, "y": 1.25}, - {"matrix": [1, 3], "x": 3.25, "y": 1.25}, - {"matrix": [1, 4], "x": 4.25, "y": 1.25}, - {"matrix": [1, 5], "x": 5.25, "y": 1.25}, - {"matrix": [1, 6], "x": 6.25, "y": 1.25}, - {"matrix": [1, 7], "x": 7.25, "y": 1.25}, - {"matrix": [7, 0], "x": 8.25, "y": 1.25}, - {"matrix": [7, 1], "x": 9.25, "y": 1.25}, - {"matrix": [7, 2], "x": 10.25, "y": 1.25}, - {"matrix": [7, 3], "x": 11.25, "y": 1.25}, - {"matrix": [7, 4], "x": 12.25, "y": 1.25}, - {"matrix": [7, 5], "x": 13.25, "y": 1.25}, - {"matrix": [7, 6], "x": 14.25, "y": 1.25, "w": 2}, - {"matrix": [7, 8], "x": 16.5, "y": 1.25}, + {"matrix":[2, 0], "flags":1, "x":0, "y":27}, + {"matrix":[2, 1], "flags":1, "x":21, "y":27}, + {"matrix":[2, 2], "flags":4, "x":38, "y":27}, + {"matrix":[2, 3], "flags":4, "x":52, "y":27}, + {"matrix":[2, 4], "flags":4, "x":66, "y":27}, + {"matrix":[2, 6], "flags":4, "x":79, "y":27}, + {"matrix":[2, 7], "flags":4, "x":93, "y":27}, + {"matrix":[3, 0], "flags":1, "x":0, "y":40}, + {"matrix":[3, 1], "flags":8, "x":22, "y":40}, + {"matrix":[3, 2], "flags":4, "x":41, "y":40}, + {"matrix":[3, 3], "flags":4, "x":55, "y":40}, + {"matrix":[3, 4], "flags":4, "x":69, "y":40}, + {"matrix":[3, 5], "flags":4, "x":83, "y":40}, + {"matrix":[3, 6], "flags":4, "x":97, "y":40}, - {"matrix": [2, 0], "x": 0, "y": 2.25}, - {"matrix": [2, 1], "x": 1.25, "y": 2.25, "w": 1.5}, - {"matrix": [2, 2], "x": 2.75, "y": 2.25}, - {"matrix": [2, 3], "x": 3.75, "y": 2.25}, - {"matrix": [2, 4], "x": 4.75, "y": 2.25}, - {"matrix": [2, 6], "x": 5.75, "y": 2.25}, - {"matrix": [2, 7], "x": 6.75, "y": 2.25}, - {"matrix": [8, 0], "x": 7.75, "y": 2.25}, - {"matrix": [8, 1], "x": 8.75, "y": 2.25}, - {"matrix": [8, 2], "x": 9.75, "y": 2.25}, - {"matrix": [8, 3], "x": 10.75, "y": 2.25}, - {"matrix": [8, 4], "x": 11.75, "y": 2.25}, - {"matrix": [8, 5], "x": 12.75, "y": 2.25}, - {"matrix": [8, 6], "x": 13.75, "y": 2.25}, - {"matrix": [8, 7], "x": 14.75, "y": 2.25, "w": 1.5}, - {"matrix": [8, 8], "x": 16.5, "y": 2.25}, + {"matrix":[4, 0], "flags":1, "x":0, "y":52}, + {"matrix":[4, 2], "flags":1, "x":34, "y":52}, + {"matrix":[4, 3], "flags":4, "x":48, "y":52}, + {"matrix":[4, 4], "flags":4, "x":61, "y":52}, + {"matrix":[4, 5], "flags":4, "x":76, "y":52}, + {"matrix":[4, 6], "flags":4, "x":90, "y":52}, + {"matrix":[4, 7], "flags":4, "x":102, "y":52}, + {"matrix":[5, 0], "flags":1, "x":0, "y":64}, + {"matrix":[5, 1], "flags":1, "x":19, "y":64}, + {"matrix":[5, 2], "flags":1, "x":36, "y":64}, + {"matrix":[5, 3], "flags":1, "x":53, "y":64}, + {"matrix":[5, 4], "flags":1, "x":70, "y":64}, + {"matrix":[5, 6], "flags":4, "x":94, "y":64}, - {"matrix": [3, 0], "x": 0, "y": 3.25}, - {"matrix": [3, 1], "x": 1.25, "y": 3.25, "w": 1.75}, - {"matrix": [3, 2], "x": 3, "y": 3.25}, - {"matrix": [3, 3], "x": 4, "y": 3.25}, - {"matrix": [3, 4], "x": 5, "y": 3.25}, - {"matrix": [3, 5], "x": 6, "y": 3.25}, - {"matrix": [3, 6], "x": 7, "y": 3.25}, - {"matrix": [9, 0], "x": 8, "y": 3.25}, - {"matrix": [9, 1], "x": 9, "y": 3.25}, - {"matrix": [9, 2], "x": 10, "y": 3.25}, - {"matrix": [9, 3], "x": 11, "y": 3.25}, - {"matrix": [9, 4], "x": 12, "y": 3.25}, - {"matrix": [9, 5], "x": 13, "y": 3.25}, - {"matrix": [9, 7], "x": 14, "y": 3.25, "w": 2.25}, - {"matrix": [9, 8], "x": 16.5, "y": 3.25}, + {"matrix":[6, 0], "flags":1, "x":110, "y":0}, + {"matrix":[6, 1], "flags":1, "x":124, "y":0}, + {"matrix":[6, 2], "flags":1, "x":138, "y":0}, + {"matrix":[6, 3], "flags":1, "x":152, "y":0}, + {"matrix":[6, 4], "flags":1, "x":165, "y":0}, + {"matrix":[6, 5], "flags":1, "x":179, "y":0}, + {"matrix":[6, 6], "flags":1, "x":193, "y":0}, + {"matrix":[6, 7], "flags":1, "x":207, "y":0}, + {"matrix":[7, 0], "flags":4, "x":110, "y":15}, + {"matrix":[7, 1], "flags":4, "x":124, "y":15}, + {"matrix":[7, 2], "flags":4, "x":138, "y":15}, + {"matrix":[7, 3], "flags":4, "x":152, "y":15}, + {"matrix":[7, 4], "flags":4, "x":165, "y":15}, + {"matrix":[7, 5], "flags":4, "x":179, "y":15}, + {"matrix":[7, 6], "flags":1, "x":200, "y":15}, + {"matrix":[7, 8], "flags":1, "x":224, "y":15}, - {"matrix": [4, 0], "x": 0, "y": 4.25}, - {"matrix": [4, 2], "x": 1.25, "y": 4.25, "w": 2.25}, - {"matrix": [4, 3], "x": 3.5, "y": 4.25}, - {"matrix": [4, 4], "x": 4.5, "y": 4.25}, - {"matrix": [4, 5], "x": 5.5, "y": 4.25}, - {"matrix": [4, 6], "x": 6.5, "y": 4.25}, - {"matrix": [4, 7], "x": 7.5, "y": 4.25}, - {"matrix": [10, 0], "x": 8.5, "y": 4.25}, - {"matrix": [10, 1], "x": 9.5, "y": 4.25}, - {"matrix": [10, 2], "x": 10.5, "y": 4.25}, - {"matrix": [10, 3], "x": 11.5, "y": 4.25}, - {"matrix": [10, 4], "x": 12.5, "y": 4.25}, - {"matrix": [10, 5], "x": 13.5, "y": 4.25, "w": 1.75}, - {"matrix": [10, 7], "x": 15.5, "y": 4.25}, + {"matrix":[8, 0], "flags":4, "x":104, "y":27}, + {"matrix":[8, 1], "flags":4, "x":117, "y":27}, + {"matrix":[8, 2], "flags":4, "x":131, "y":27}, + {"matrix":[8, 3], "flags":4, "x":145, "y":27}, + {"matrix":[8, 4], "flags":4, "x":158, "y":27}, + {"matrix":[8, 5], "flags":4, "x":172, "y":27}, + {"matrix":[8, 6], "flags":4, "x":186, "y":27}, + {"matrix":[8, 7], "flags":4, "x":203, "y":27}, + {"matrix":[8, 8], "flags":1, "x":224, "y":27}, + {"matrix":[9, 0], "flags":4, "x":107, "y":40}, + {"matrix":[9, 1], "flags":4, "x":121, "y":40}, + {"matrix":[9, 2], "flags":4, "x":134, "y":40}, + {"matrix":[9, 3], "flags":4, "x":148, "y":40}, + {"matrix":[9, 4], "flags":4, "x":162, "y":40}, + {"matrix":[9, 5], "flags":4, "x":176, "y":40}, + {"matrix":[9, 7], "flags":1, "x":198, "y":40}, + {"matrix":[9, 8], "flags":1, "x":224, "y":40}, - {"matrix": [5, 0], "x": 0, "y": 5.25}, - {"matrix": [5, 1], "x": 1.25, "y": 5.25, "w": 1.25}, - {"matrix": [5, 2], "x": 2.5, "y": 5.25, "w": 1.25}, - {"matrix": [5, 3], "x": 3.75, "y": 5.25, "w": 1.25}, - {"matrix": [5, 4], "x": 5, "y": 5.25, "w": 1.25}, - {"matrix": [5, 6], "x": 6.25, "y": 5.25, "w": 2.25}, - {"matrix": [11, 1], "x": 8.5, "y": 5.25, "w": 2.75}, - {"matrix": [11, 2], "x": 11.25, "y": 5.25}, - {"matrix": [11, 3], "x": 12.25, "y": 5.25}, - {"matrix": [11, 4], "x": 13.25, "y": 5.25}, - {"matrix": [11, 6], "x": 14.5, "y": 5.25}, - {"matrix": [11, 7], "x": 15.5, "y": 5.25}, - {"matrix": [11, 8], "x": 16.5, "y": 5.25} - ] - } + {"matrix":[10, 0], "flags":4, "x":114, "y":52}, + {"matrix":[10, 1], "flags":4, "x":127, "y":52}, + {"matrix":[10, 2], "flags":4, "x":141, "y":52}, + {"matrix":[10, 3], "flags":4, "x":155, "y":52}, + {"matrix":[10, 4], "flags":4, "x":169, "y":52}, + {"matrix":[10, 5], "flags":1, "x":188, "y":52}, + {"matrix":[10, 7], "flags":1, "x":210, "y":52}, + {"matrix":[11, 1], "flags":4, "x":126, "y":64}, + {"matrix":[11, 2], "flags":1, "x":152, "y":64}, + {"matrix":[11, 3], "flags":1, "x":166, "y":64}, + {"matrix":[11, 4], "flags":1, "x":180, "y":64}, + {"matrix":[11, 6], "flags":1, "x":196, "y":64}, + {"matrix":[11, 7], "flags":1, "x":210, "y":64}, + {"matrix":[11, 8], "flags":1, "x":224, "y":64} + ] } } diff --git a/keyboards/keychron/q11/ansi_encoder/keymaps/vial/config.h b/keyboards/keychron/q11/ansi_encoder/keymaps/vial/config.h new file mode 100644 index 0000000000..17d97b7433 --- /dev/null +++ b/keyboards/keychron/q11/ansi_encoder/keymaps/vial/config.h @@ -0,0 +1,8 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ + +#pragma once + +#define VIAL_KEYBOARD_UID {0x63, 0x39, 0x38, 0xEA, 0x3A, 0x46, 0x3E, 0x9F} + +#define VIAL_UNLOCK_COMBO_ROWS { 0, 9 } +#define VIAL_UNLOCK_COMBO_COLS { 1, 7 } \ No newline at end of file diff --git a/keyboards/keychron/q11/ansi_encoder/keymaps/vial/keymap.c b/keyboards/keychron/q11/ansi_encoder/keymaps/vial/keymap.c new file mode 100755 index 0000000000..02883cd89a --- /dev/null +++ b/keyboards/keychron/q11/ansi_encoder/keymaps/vial/keymap.c @@ -0,0 +1,84 @@ +/* Copyright 2023 @ Keychron (https://www.keychron.com) + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +#include QMK_KEYBOARD_H +#include "keychron_common.h" + +// clang-format off + +enum layers{ + MAC_BASE, + MAC_FN, + WIN_BASE, + WIN_FN +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [MAC_BASE] = LAYOUT_ansi_91( + KC_MUTE, KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_INS, KC_DEL, KC_MUTE, + MACRO01, 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_PGUP, + MACRO02, 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_PGDN, + MACRO03, 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_HOME, + MACRO04, 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, + MACRO05, KC_LCTL, KC_LOPTN, KC_LCMMD, MO(MAC_FN), KC_SPC, KC_SPC, KC_RCMMD, MO(MAC_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), + + [MAC_FN] = LAYOUT_ansi_91( + RGB_TOG, _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, RGB_TOG, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), + + [WIN_BASE] = LAYOUT_ansi_91( + KC_MUTE, 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_INS, KC_DEL, KC_MUTE, + MACRO01, 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_PGUP, + MACRO02, 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_PGDN, + MACRO03, 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_HOME, + MACRO04, 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, + MACRO05, KC_LCTL, KC_LWIN, KC_LALT, MO(WIN_FN), KC_SPC, KC_SPC, KC_RALT, MO(WIN_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), + + [WIN_FN] = LAYOUT_ansi_91( + RGB_TOG, _______, KC_BRID, KC_BRIU, KC_TASK, KC_FLXP, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, RGB_TOG, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), +}; + +#if defined(ENCODER_ENABLE) && defined(ENCODER_MAP_ENABLE) +const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { + [MAC_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU), ENCODER_CCW_CW(KC_VOLD, KC_VOLU) }, + [MAC_FN] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI), ENCODER_CCW_CW(RGB_VAD, RGB_VAI)}, + [WIN_BASE] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU), ENCODER_CCW_CW(KC_VOLD, KC_VOLU)}, + [WIN_FN] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI), ENCODER_CCW_CW(RGB_VAD, RGB_VAI)} +}; +#endif // ENCODER_MAP_ENABLE + +// clang-format on + +void housekeeping_task_user(void) { + housekeeping_task_keychron(); +} + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + if (!process_record_keychron(keycode, record)) { + return false; + } + + return true; +} diff --git a/keyboards/keychron/q11/ansi_encoder/keymaps/vial/rules.mk b/keyboards/keychron/q11/ansi_encoder/keymaps/vial/rules.mk new file mode 100755 index 0000000000..c4ca639d6c --- /dev/null +++ b/keyboards/keychron/q11/ansi_encoder/keymaps/vial/rules.mk @@ -0,0 +1,7 @@ +VIA_ENABLE = yes +VIAL_ENABLE = yes +VIALRGB_ENABLE = yes +ENCODER_MAP_ENABLE = yes + +VPATH += keyboards/keychron/common +SRC += keychron_common.c diff --git a/keyboards/keychron/q11/ansi_encoder/keymaps/vial/vial.json b/keyboards/keychron/q11/ansi_encoder/keymaps/vial/vial.json new file mode 100644 index 0000000000..6897d36068 --- /dev/null +++ b/keyboards/keychron/q11/ansi_encoder/keymaps/vial/vial.json @@ -0,0 +1,268 @@ +{ + "name": "Keychron Q11", + "vendorId": "0x3434", + "productId": "0x01E0", + "lighting": "vialrgb", + "customKeycodes": [ + {"name": "Mission Control", "title": "Mission Control in macOS", "shortName": "MCtrl"}, + {"name": "Launch Pad", "title": "Launch Pad in macOS", "shortName": "LPad"}, + {"name": "Left Option", "title": "Left Option in macOS", "shortName": "LOpt"}, + {"name": "Right Option", "title": "Right Option in macOS", "shortName": "ROpt"}, + {"name": "Left Cmd", "title": "Left Command in macOS", "shortName": "LCmd"}, + {"name": "Right Cmd", "title": "Right Command in macOS", "shortName": "RCmd"}, + {"name": "Siri", "title": "Siri in macOS", "shortName": "Siri"}, + {"name": "Task View", "title": "Task View in windows", "shortName": "Task"}, + {"name": "File Explorer", "title": "File Explorer in windows", "shortName": "File"}, + {"name": "Screen Shot", "title": "Screenshot in macOS", "shortName": "SShot"}, + {"name": "Cortana", "title": "Cortana in windows", "shortName": "Cortana"} + ], + "matrix": {"rows": 12, "cols": 9}, + "layouts": { + "keymap": [ + [ + { + "x": 0.25 + }, + "0,0\n\n\n\n\n\n\n\n\ne", + "0,1\n\n\n\n\n\n\n\n\ne", + { + "x": 14.5 + }, + "1,0\n\n\n\n\n\n\n\n\ne", + "1,1\n\n\n\n\n\n\n\n\ne" + ], + [ + { + "x": 0.75 + }, + "0,0", + { + "x": 0.25, + "c": "#777777" + }, + "0,1\nESC", + { + "c": "#cccccc" + }, + "0,2", + "0,3", + "0,4", + "0,5", + { + "c": "#aaaaaa" + }, + "0,6", + "0,7", + "6,0", + "6,1", + { + "c": "#cccccc" + }, + "6,2", + "6,3", + "6,4", + "6,5", + { + "c": "#aaaaaa" + }, + "6,6", + "6,7", + { + "x": 0.25, + "c": "#cccccc" + }, + "6,8" + ], + [ + { + "y": 0.25, + "x": 0.75 + }, + "1,0", + { + "x": 0.25 + }, + "1,1", + "1,2", + "1,3", + "1,4", + "1,5", + "1,6", + "1,7", + "7,0", + "7,1", + "7,2", + "7,3", + "7,4", + "7,5", + { + "c": "#aaaaaa", + "w": 2 + }, + "7,6", + { + "x": 0.25 + }, + "7,8" + ], + [ + { + "x": 0.75, + "c": "#cccccc" + }, + "2,0", + { + "x": 0.25, + "c": "#aaaaaa", + "w": 1.5 + }, + "2,1", + { + "c": "#cccccc" + }, + "2,2", + "2,3", + "2,4", + "2,6", + "2,7", + "8,0", + "8,1", + "8,2", + "8,3", + "8,4", + "8,5", + "8,6", + { + "w": 1.5 + }, + "8,7", + { + "x": 0.25, + "c": "#aaaaaa" + }, + "8,8" + ], + [ + { + "x": 0.75, + "c": "#cccccc" + }, + "3,0", + { + "x": 0.25, + "c": "#aaaaaa", + "w": 1.75 + }, + "3,1", + { + "c": "#cccccc" + }, + "3,2", + "3,3", + "3,4", + "3,5", + "3,6", + "9,0", + "9,1", + "9,2", + "9,3", + "9,4", + "9,5", + { + "c": "#777777", + "w": 2.25 + }, + "9,7", + { + "x": 0.25, + "c": "#aaaaaa" + }, + "9,8" + ], + [ + { + "x": 0.75, + "c": "#cccccc" + }, + "4,0", + { + "x": 0.25, + "c": "#aaaaaa", + "w": 2.25 + }, + "4,2", + { + "c": "#cccccc" + }, + "4,3", + "4,4", + "4,5", + "4,6", + "4,7", + "10,0", + "10,1", + "10,2", + "10,3", + "10,4", + { + "c": "#aaaaaa", + "w": 1.75 + }, + "10,5", + { + "x": 0.25, + "c": "#777777" + }, + "10,7" + ], + [ + { + "x": 0.75, + "c": "#cccccc" + }, + "5,0", + { + "x": 0.25, + "c": "#aaaaaa", + "w": 1.25 + }, + "5,1", + { + "w": 1.25 + }, + "5,2", + { + "w": 1.25 + }, + "5,3", + { + "w": 1.25 + }, + "5,4", + { + "c": "#cccccc", + "w": 2.25 + }, + "5,6", + { + "w": 2.75 + }, + "11,1", + { + "c": "#aaaaaa" + }, + "11,2", + "11,3", + "11,4", + { + "x": 0.25, + "c": "#777777" + }, + "11,6", + "11,7", + "11,8" + ] + ] + } +} + \ No newline at end of file diff --git a/keyboards/keychron/v2/v2.c b/keyboards/keychron/v2/v2.c index 7703c280df..8d337e2dac 100644 --- a/keyboards/keychron/v2/v2.c +++ b/keyboards/keychron/v2/v2.c @@ -40,7 +40,6 @@ bool dip_switch_update_kb(uint8_t index, bool active) { bool process_record_kb(uint16_t keycode, keyrecord_t *record) { if (!process_record_user(keycode, record)) { return false; } switch (keycode) { -#ifdef RGB_MATRIX_ENABLE case RGB_TOG: if (record->event.pressed) { switch (rgb_matrix_get_flags()) { @@ -58,7 +57,6 @@ bool process_record_kb(uint16_t keycode, keyrecord_t *record) { rgb_matrix_enable(); } return false; -#endif } return true; } diff --git a/keyboards/keyhive/absinthe/keymaps/vial/config.h b/keyboards/keyhive/absinthe/keymaps/vial/config.h new file mode 100644 index 0000000000..83abb2d92f --- /dev/null +++ b/keyboards/keyhive/absinthe/keymaps/vial/config.h @@ -0,0 +1,8 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ + +#pragma once + +#define VIAL_KEYBOARD_UID {0x7C, 0x37, 0x95, 0x7D, 0x34, 0xB0, 0x89, 0x8B} +#define VIAL_UNLOCK_COMBO_ROWS { 0 , 5 } +#define VIAL_UNLOCK_COMBO_COLS { 0 , 6 } +#define VIAL_TAP_DANCE_ENTRIES 4 diff --git a/keyboards/keyhive/absinthe/keymaps/vial/keymap.c b/keyboards/keyhive/absinthe/keymaps/vial/keymap.c new file mode 100644 index 0000000000..c22e351663 --- /dev/null +++ b/keyboards/keyhive/absinthe/keymaps/vial/keymap.c @@ -0,0 +1,56 @@ +/* Copyright 2021 alittlepeace + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT_default( + QK_GESC, 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_BSLS, KC_GRV, 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_BSPC, KC_DEL, KC_END, KC_PGDN, + KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_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, MO(1), KC_UP, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_RCTL, KC_LEFT, KC_DOWN, KC_RIGHT), + + [1] = LAYOUT_default( + _______, 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, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), + + [2] = LAYOUT_default( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), + + [3] = LAYOUT_default( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) + +}; + +#if defined(ENCODER_MAP_ENABLE) +const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { + [0] = { ENCODER_CCW_CW(KC_WH_U, KC_WH_D) }, + [1] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU) }, + [2] = { ENCODER_CCW_CW(KC_WH_U, KC_WH_D) }, + [3] = { ENCODER_CCW_CW(KC_WH_U, KC_WH_D) } +}; +#endif diff --git a/keyboards/keyhive/absinthe/keymaps/vial/rules.mk b/keyboards/keyhive/absinthe/keymaps/vial/rules.mk new file mode 100644 index 0000000000..ec1a82f4eb --- /dev/null +++ b/keyboards/keyhive/absinthe/keymaps/vial/rules.mk @@ -0,0 +1,7 @@ +VIA_ENABLE = yes +MOUSEKEY_ENABLE = yes +VIAL_ENABLE = yes +LTO_ENABLE = yes +QMK_SETTINGS = no + +ENCODER_MAP_ENABLE = yes diff --git a/keyboards/keyhive/absinthe/keymaps/vial/vial.json b/keyboards/keyhive/absinthe/keymaps/vial/vial.json new file mode 100644 index 0000000000..1cba64c32f --- /dev/null +++ b/keyboards/keyhive/absinthe/keymaps/vial/vial.json @@ -0,0 +1,219 @@ +{ + "name": "Absinthe", + "vendorId": "0xB00B", + "productId": "0xFEED", + "lighting": "qmk_backlight", + "matrix": { + "rows": 9, + "cols": 9 + }, + "layouts": { + "labels": [ + "Full Backspace", + "Full Right Shift", + "ANSI" + ], + "keymap": [ + [ + { + "c": "#777777" + }, + "0,0", + { + "c": "#cccccc" + }, + "1,0", + "0,1", + "1,1", + "0,2", + "1,2", + "0,3", + "1,3", + "0,4", + "1,4", + "0,5", + "1,5", + "0,6", + "1,6\n\n\n0,0", + "0,7\n\n\n0,0", + { + "x": 0.5 + }, + "1,7", + "0,8", + "1,8", + { + "x": 0.75, + "c": "#aaaaaa", + "w": 2 + }, + "1,6\n\n\n0,1" + ], + [ + { + "w": 1.5 + }, + "2,0", + { + "c": "#cccccc" + }, + "2,1", + "3,1", + "2,2", + "3,2", + "2,3", + "3,3", + "2,4", + "3,4", + "2,5", + "3,5", + "2,6", + "3,6", + { + "w": 1.5 + }, + "2,7", + { + "x": 0.5 + }, + "3,7", + "2,8", + "3,8" + ], + [ + { + "c": "#aaaaaa", + "w": 1.75 + }, + "4,0", + { + "c": "#cccccc" + }, + "4,1", + "5,1", + "4,2", + "5,2", + "4,3", + "5,3", + "4,4", + "5,4", + "4,5", + "5,5", + "4,6", + { + "c": "#777777", + "w": 2.25 + }, + "5,6" + ], + [ + { + "c": "#aaaaaa", + "w": 2.25 + }, + "6,0", + { + "c": "#cccccc" + }, + "6,1", + "7,1", + "6,2", + "7,2", + "6,3", + "7,3", + "6,4", + "7,4", + "6,5", + "7,5", + { + "c": "#aaaaaa", + "w": 1.75 + }, + "6,6\n\n\n1,0", + "6,7\n\n\n1,0", + { + "x": 1.5, + "c": "#777777" + }, + "6,8", + { + "x": 1.5, + "c": "#aaaaaa", + "w": 2.75 + }, + "6,6\n\n\n1,1" + ], + [ + { + "w": 1.5 + }, + "8,0\n\n\n2,0", + "8,1\n\n\n2,0", + { + "w": 1.5 + }, + "8,2\n\n\n2,0", + { + "c": "#cccccc", + "w": 7 + }, + "8,3\n\n\n2,0", + { + "c": "#aaaaaa", + "w": 1.5 + }, + "7,6\n\n\n2,0", + "8,6\n\n\n2,0", + { + "w": 1.5 + }, + "8,7\n\n\n2,0", + { + "x": 0.5, + "c": "#777777" + }, + "7,7", + "8,8", + "7,8" + ], + [ + { + "y": 0.5, + "c": "#aaaaaa", + "w": 1.25 + }, + "8,0\n\n\n2,1", + { + "w": 1.25 + }, + "8,1\n\n\n2,1", + { + "w": 1.25 + }, + "8,2\n\n\n2,1", + { + "c": "#cccccc", + "w": 6.25 + }, + "8,3\n\n\n2,1", + { + "c": "#aaaaaa", + "w": 1.25 + }, + "8,5\n\n\n2,1", + { + "w": 1.25 + }, + "7,6\n\n\n2,1", + { + "w": 1.25 + }, + "8,6\n\n\n2,1", + { + "w": 1.25 + }, + "8,7\n\n\n2,1" + ] + ] + } + } diff --git a/keyboards/keyten/imi60/info.json b/keyboards/keyten/imi60/info.json new file mode 100644 index 0000000000..f2885bb9db --- /dev/null +++ b/keyboards/keyten/imi60/info.json @@ -0,0 +1,94 @@ +{ + "manufacturer": "keyten", + "keyboard_name": "imi60", + "maintainer": "key10iq", + "processor": "atmega32u4", + "bootloader": "atmel-dfu", + "usb": { + "vid": "0xEB69", + "pid": "0x6002", + "device_version": "0.0.1" + }, + "features": { + "bootmagic": true, + "command": false, + "console": false, + "extrakey": true, + "mousekey": true, + "nkro": true + }, + "diode_direction": "COL2ROW", + "matrix_pins": { + "rows": ["D1", "D0", "D3", "D2", "D5"], + "cols": ["B7", "F1", "F4", "F5", "F6", "F7", "C7", "C6", "B6", "B5", "B4", "D7", "D6", "D4"] + }, + "layouts": { + "LAYOUT": { + "layout": [ + { "matrix": [0, 0], "x": 0, "y": 0 }, + { "matrix": [0, 1], "x": 1, "y": 0 }, + { "matrix": [0, 2], "x": 2, "y": 0 }, + { "matrix": [0, 3], "x": 3, "y": 0 }, + { "matrix": [0, 4], "x": 4, "y": 0 }, + { "matrix": [0, 5], "x": 5, "y": 0 }, + { "matrix": [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": [2, 13], "x": 14, "y": 0 }, + { "matrix": [1, 0], "w": 1.5, "x": 0, "y": 1 }, + { "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], "w": 1.5, "x": 13.5, "y": 1 }, + { "matrix": [2, 0], "w": 1.75, "x": 0, "y": 2 }, + { "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], "w": 2.25, "x": 12.75, "y": 2 }, + { "matrix": [3, 0], "w": 1.25, "x": 0, "y": 3 }, + { "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], "w": 1.75, "x": 12.25, "y": 3 }, + { "matrix": [3, 13], "x": 14, "y": 3 }, + { "matrix": [4, 0], "w": 1.5, "x": 0, "y": 4 }, + { "matrix": [4, 1], "x": 1.5, "y": 4 }, + { "matrix": [4, 3], "w": 1.5, "x": 2.5, "y": 4 }, + { "matrix": [4, 7], "w": 7, "x": 4, "y": 4 }, + { "matrix": [4, 11], "w": 1.5, "x": 11, "y": 4 }, + { "matrix": [4, 12], "x": 12.5, "y": 4 }, + { "matrix": [4, 13], "w": 1.5, "x": 13.5, "y": 4 } + ] + } + } +} diff --git a/keyboards/keyten/imi60/keymaps/default/keymap.c b/keyboards/keyten/imi60/keymaps/default/keymap.c new file mode 100644 index 0000000000..dd11389cef --- /dev/null +++ b/keyboards/keyten/imi60/keymaps/default/keymap.c @@ -0,0 +1,22 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + [0] = LAYOUT( + 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_BSLS, KC_GRV, + 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_BSPC, + KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, + KC_LSFT, KC_TRNS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, MO(1), + KC_CAPS, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_RCTL + ), + + [1] = LAYOUT( + KC_TRNS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_TRNS, KC_TRNS, + KC_CAPS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_UP, KC_INS, KC_DEL, + KC_TRNS, KC_VOLD, KC_VOLU, KC_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PGUP, KC_HOME, KC_LEFT, KC_RGHT, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PGDN, KC_END, KC_DOWN, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS +) +}; diff --git a/keyboards/keyten/imi60/keymaps/vial/config.h b/keyboards/keyten/imi60/keymaps/vial/config.h new file mode 100644 index 0000000000..0984cab61c --- /dev/null +++ b/keyboards/keyten/imi60/keymaps/vial/config.h @@ -0,0 +1,7 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ + +#pragma once + +#define VIAL_KEYBOARD_UID {0x49, 0x3C, 0xCA, 0xFB, 0xB6, 0xD2, 0xF6, 0xD8} +#define VIAL_UNLOCK_COMBO_ROWS { 0, 4 } +#define VIAL_UNLOCK_COMBO_COLS { 0, 13 } diff --git a/keyboards/keyten/imi60/keymaps/vial/keymap.c b/keyboards/keyten/imi60/keymaps/vial/keymap.c new file mode 100644 index 0000000000..dd11389cef --- /dev/null +++ b/keyboards/keyten/imi60/keymaps/vial/keymap.c @@ -0,0 +1,22 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + [0] = LAYOUT( + 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_BSLS, KC_GRV, + 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_BSPC, + KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, + KC_LSFT, KC_TRNS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, MO(1), + KC_CAPS, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_RCTL + ), + + [1] = LAYOUT( + KC_TRNS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_TRNS, KC_TRNS, + KC_CAPS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_UP, KC_INS, KC_DEL, + KC_TRNS, KC_VOLD, KC_VOLU, KC_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PGUP, KC_HOME, KC_LEFT, KC_RGHT, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PGDN, KC_END, KC_DOWN, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS +) +}; diff --git a/keyboards/keyten/imi60/keymaps/vial/rules.mk b/keyboards/keyten/imi60/keymaps/vial/rules.mk new file mode 100644 index 0000000000..96d058b29d --- /dev/null +++ b/keyboards/keyten/imi60/keymaps/vial/rules.mk @@ -0,0 +1,7 @@ +VIA_ENABLE = yes +VIAL_ENABLE = yes + +LTO_ENABLE = yes +TAP_DANCE_ENABLE = no +COMBO_ENABLE = no +KEY_OVERRIDE_ENABLE = no diff --git a/keyboards/keyten/imi60/keymaps/vial/vial.json b/keyboards/keyten/imi60/keymaps/vial/vial.json new file mode 100644 index 0000000000..9f0a714388 --- /dev/null +++ b/keyboards/keyten/imi60/keymaps/vial/vial.json @@ -0,0 +1,162 @@ +{ + "name": "imi60", + "vendorId": "0xEB69", + "productId": "0x6002", + "lighting": "none", + "matrix": { + "rows": 5, + "cols": 14 + }, + "layouts": { + "labels": [ + "Split Backspace", + "ISO Enter", + "Split Left Shift", + "Split Right Shift" + ], + "keymap": [ + [ + { + "x": 2.5 + }, + "0,0", + "0,1", + "0,2", + "0,3", + "0,4", + "0,5", + "0,6", + "0,7", + "0,8", + "0,9", + "0,10", + "0,11", + "0,12", + { + "w": 2 + }, + "0,13\n\n\n0,0", + { + "x": 1 + }, + "0,13\n\n\n0,1", + "2,13\n\n\n0,1" + ], + [ + { + "x": 2.5, + "w": 1.5 + }, + "1,0", + "1,1", + "1,2", + "1,3", + "1,4", + "1,5", + "1,6", + "1,7", + "1,8", + "1,9", + "1,10", + "1,11", + "1,12", + { + "w": 1.5 + }, + "1,13\n\n\n1,0", + { + "x": 1.75, + "w": 1.25, + "h": 2, + "w2": 1.5, + "h2": 1, + "x2": -0.25 + }, + "1,13\n\n\n1,1" + ], + [ + { + "x": 2.5, + "w": 1.75 + }, + "2,0", + "2,1", + "2,2", + "2,3", + "2,4", + "2,5", + "2,6", + "2,7", + "2,8", + "2,9", + "2,10", + "2,11", + { + "w": 2.25 + }, + "2,12\n\n\n1,0", + { + "x": 0.75 + }, + "2,12\n\n\n1,1" + ], + [ + { + "w": 1.25 + }, + "3,0\n\n\n2,1", + "3,1\n\n\n2,1", + { + "x": 0.25, + "w": 2.25 + }, + "3,0\n\n\n2,0", + "3,2", + "3,3", + "3,4", + "3,5", + "3,6", + "3,7", + "3,8", + "3,9", + "3,10", + "3,11", + { + "w": 2.75 + }, + "3,12\n\n\n3,0", + { + "x": 0.25, + "w": 1.75 + }, + "3,12\n\n\n3,1", + "3,13\n\n\n3,1" + ], + [ + { + "x": 2.5, + "w": 1.5 + }, + "4,0", + "4,1", + { + "w": 1.5 + }, + "4,3", + { + "w": 7 + }, + "4,7", + { + "w": 1.5 + }, + "4,11", + "4,12", + { + "w": 1.5 + }, + "4,13" + ] + ] + } +} diff --git a/keyboards/keyten/imi60/rules.mk b/keyboards/keyten/imi60/rules.mk new file mode 100644 index 0000000000..6e7633bfe0 --- /dev/null +++ b/keyboards/keyten/imi60/rules.mk @@ -0,0 +1 @@ +# This file intentionally left blank diff --git a/keyboards/koolertron/amag09/info.json b/keyboards/koolertron/amag09/info.json new file mode 100644 index 0000000000..68d62403b9 --- /dev/null +++ b/keyboards/koolertron/amag09/info.json @@ -0,0 +1,48 @@ +{ + "keyboard_name": "AMAG09", + "manufacturer": "Koolertron", + "url": "http://www.koolertron.com/koolertron-one-handed-macro-mechanical-keyboard-rgb-led-backlit-portable-mini-onehanded-mechanical-gaming-keypad-23-fully-programmable-keys-blue-switches-p-874.html", + "maintainer": "al177", + "usb": { + "vid": "0x4B54", + "pid": "0x2323", + "device_version": "0.0.1" + }, + "bootloader": "bootloadhid", + "processor": "atmega32a", + "features": { + "backlight": true, + "bootmagic": true, + "command": false, + "console": false, + "extrakey": true, + "mousekey": true + }, + "diode_direction": "ROW2COL", + "matrix_size": { + "cols": 3, + "rows": 3 + }, + "matrix_pins": { + "cols": ["B0", "B1", "B2"], + "rows": ["A0", "A1", "A2"] + }, + "backlight": { + "pin": "D4" + }, + "layouts": { + "LAYOUT": { + "layout": [ + {"label":"K00", "matrix": [0, 0], "x":0, "y":0}, + {"label":"K01", "matrix": [0, 1], "x":1, "y":0}, + {"label":"K02", "matrix": [0, 2], "x":2, "y":0}, + {"label":"K10", "matrix": [1, 0], "x":0, "y":1}, + {"label":"K11", "matrix": [1, 1], "x":1, "y":1}, + {"label":"K12", "matrix": [1, 2], "x":2, "y":1}, + {"label":"K20", "matrix": [2, 0], "x":0, "y":2}, + {"label":"K21", "matrix": [2, 1], "x":1, "y":2}, + {"label":"K22", "matrix": [2, 2], "x":2, "y":2} + ] + } + } +} diff --git a/keyboards/koolertron/amag09/keymaps/default/keymap.c b/keyboards/koolertron/amag09/keymaps/default/keymap.c new file mode 100644 index 0000000000..4dcdf5cf8a --- /dev/null +++ b/keyboards/koolertron/amag09/keymaps/default/keymap.c @@ -0,0 +1,49 @@ +/* Copyright 2023 + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ +#include QMK_KEYBOARD_H + +// Defines names for use in layer keycodes and the keymap +enum layer_names { + BASE, + FN1, + FN2, + FN3 +}; + +// clang-format off +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [BASE] = LAYOUT( + KC_KP_7, KC_KP_8, KC_KP_9, + KC_KP_4, KC_KP_5, KC_KP_6, + KC_KP_1, KC_KP_2, KC_KP_3 + ), + [FN1] = LAYOUT( + _______, _______, _______, + _______, _______, _______, + _______, _______, _______ + ), + [FN2] = LAYOUT( + _______, _______, _______, + _______, _______, _______, + _______, _______, _______ + ), + [FN3] = LAYOUT( + _______, _______, _______, + _______, _______, _______, + _______, _______, _______ + ), +}; +// clang-format on diff --git a/keyboards/koolertron/amag09/keymaps/vial/config.h b/keyboards/koolertron/amag09/keymaps/vial/config.h new file mode 100644 index 0000000000..cdd63d48e4 --- /dev/null +++ b/keyboards/koolertron/amag09/keymaps/vial/config.h @@ -0,0 +1,9 @@ +/* Vial configuration */ + +#pragma once + +#define VIAL_KEYBOARD_UID {0x1C, 0xA6, 0x8B, 0xCD, 0xCB, 0x42, 0x5C, 0x6F} + + +#define VIAL_UNLOCK_COMBO_ROWS { 0, 2 } +#define VIAL_UNLOCK_COMBO_COLS { 2, 0 } diff --git a/keyboards/koolertron/amag09/keymaps/vial/keymap.c b/keyboards/koolertron/amag09/keymaps/vial/keymap.c new file mode 100644 index 0000000000..e96512ae23 --- /dev/null +++ b/keyboards/koolertron/amag09/keymaps/vial/keymap.c @@ -0,0 +1,49 @@ +/* Copyright 2023 + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ +#include QMK_KEYBOARD_H + +// Defines names for use in layer keycodes and the keymap +enum layer_names { + BASE, + FN1, + FN2, + FN3 +}; + +// clang-format off +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [BASE] = LAYOUT( + KC_KP_7, KC_KP_8, KC_KP_9, + KC_KP_4, KC_KP_5, KC_KP_6, + MO(FN1), KC_KP_2, KC_KP_3 + ), + [FN1] = LAYOUT( + BL_TOGG, _______, _______, + _______, _______, _______, + _______, _______, _______ + ), + [FN2] = LAYOUT( + _______, _______, _______, + _______, _______, _______, + _______, _______, _______ + ), + [FN3] = LAYOUT( + _______, _______, _______, + _______, _______, _______, + _______, _______, _______ + ), +}; +// clang-format on diff --git a/keyboards/koolertron/amag09/keymaps/vial/rules.mk b/keyboards/koolertron/amag09/keymaps/vial/rules.mk new file mode 100644 index 0000000000..46f9f1360f --- /dev/null +++ b/keyboards/koolertron/amag09/keymaps/vial/rules.mk @@ -0,0 +1,3 @@ +VIA_ENABLE = yes +VIAL_ENABLE = yes +LTO_ENABLE = yes diff --git a/keyboards/koolertron/amag09/keymaps/vial/vial.json b/keyboards/koolertron/amag09/keymaps/vial/vial.json new file mode 100644 index 0000000000..31f380ce89 --- /dev/null +++ b/keyboards/koolertron/amag09/keymaps/vial/vial.json @@ -0,0 +1,29 @@ +{ + "name": "Koolertron AMAG09", + "vendorId": "0x4B54", + "productId": "0x2323", + "lighting": "qmk_backlight", + "matrix" : { + "rows": 3, + "cols": 3 + }, + "layouts" : { + "keymap" : [ + [ + "0,0", + "0,1", + "0,2" + ], + [ + "1,0", + "1,1", + "1,2" + ], + [ + "2,0", + "2,1", + "2,2" + ] + ] + } +} diff --git a/keyboards/koolertron/amag09/readme.md b/keyboards/koolertron/amag09/readme.md new file mode 100644 index 0000000000..07782c496c --- /dev/null +++ b/keyboards/koolertron/amag09/readme.md @@ -0,0 +1,29 @@ +# AMAG09 (Koolertron) + +![Koolertron AMAG09](https://i.imgur.com/mepvkTe.jpg) + +One Handed Macro Mechanical Keyboard, 9 Key with optional RGB backlighting. + +- Keyboard Maintainer: [al177](https://github.com/al177) +- Hardware Supported: AMAG09 (ATmega32A) +- Hardware Availability: + - [Amazon](https://www.amazon.com/Koolertron-Mechanical-Keyboard-One-Handed-Programmable/dp/B0998QM9L2) + +Make example for this keyboard (after setting up your build environment): + + make koolertron/amag09:default + +Flashing example for this keyboard ([after setting up the bootloadHID flashing environment](https://docs.qmk.fm/#/flashing_bootloadhid)) + + make amag09:default:flash + make amag09:vial:flash + +**Reset Key**: Hold down the *upper left* key while plugging in the keyboard. + +**Tips**: +- The keyboard comes with bootloadHID installed from factory. +- The configuration here is for the single color LED keyboard. RGB versions are presumed to be i2c like the amag23 + +Based on keyboards/amag23 by ianmclinden + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). diff --git a/keyboards/koolertron/amag09/rules.mk b/keyboards/koolertron/amag09/rules.mk new file mode 100644 index 0000000000..ad892c12c4 --- /dev/null +++ b/keyboards/koolertron/amag09/rules.mk @@ -0,0 +1 @@ +# Placeholder so this board is recognized as a target diff --git a/keyboards/mechlovin/adelais/rgb_led/rev3/keymaps/vial/config.h b/keyboards/mechlovin/adelais/rgb_led/rev3/keymaps/vial/config.h new file mode 100644 index 0000000000..19115cf3bf --- /dev/null +++ b/keyboards/mechlovin/adelais/rgb_led/rev3/keymaps/vial/config.h @@ -0,0 +1,10 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ + +#pragma once + +#define VIAL_KEYBOARD_UID {0x79, 0x23, 0xBB, 0xEF, 0xD1, 0xA9, 0x46, 0x7B} +#define VIAL_UNLOCK_COMBO_ROWS { 0, 2 } +#define VIAL_UNLOCK_COMBO_COLS { 0, 13 } + +#define RGB_MATRIX_FRAMEBUFFER_EFFECTS +#define RGB_MATRIX_KEYPRESSES \ No newline at end of file diff --git a/keyboards/mechlovin/adelais/rgb_led/rev3/keymaps/vial/keymap.c b/keyboards/mechlovin/adelais/rgb_led/rev3/keymaps/vial/keymap.c new file mode 100644 index 0000000000..fffd6d3b17 --- /dev/null +++ b/keyboards/mechlovin/adelais/rgb_led/rev3/keymaps/vial/keymap.c @@ -0,0 +1,110 @@ +/* Copyright 2020 Team Mechlovin + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ +#include QMK_KEYBOARD_H + +enum my_keycodes { + BL_TOG = USER00, + BL_EFFECT, + BL_ISPD, + BL_DSPD, + BL_IHUE, + BL_DHUE, + BL_ISAT, + BL_DSAT, + BL_IVAL, + BL_DVAL +}; + + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT_all( + KC_SPC, 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_SPC, 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_SLSH, + KC_SPC, 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_BSLS, MO(1), KC_RSFT, KC_UP, + KC_LCTL, KC_LALT, KC_SPC, MO(2), KC_SPC, KC_RALT, KC_RCTL ), + [1] = LAYOUT_all( + 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, 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, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS ), + [2] = LAYOUT_all( + QK_BOOT, KC_TRNS, BL_TOG, BL_EFFECT, BL_ISPD, BL_DSPD, BL_IHUE, BL_DHUE, BL_ISAT, BL_DSAT, BL_IVAL, BL_DVAL, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_P7, KC_P8, KC_P9, KC_PSLS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_P4, KC_P5, KC_P6, KC_PAST, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_P1, KC_P2, KC_P3, KC_PPLS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_P0, KC_PDOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS ), + [3] = LAYOUT_all( + 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, 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, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS ), + +}; + +#if defined(ENCODER_MAP_ENABLE) +const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { + [0] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU) }, + [1] = { ENCODER_CCW_CW(RGB_HUD, RGB_HUI) }, + [2] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI) }, + [3] = { ENCODER_CCW_CW(RGB_RMOD, RGB_MOD)}, + // Encoder 1 +}; +#endif + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + if (record->event.pressed) { + switch (keycode) { +#ifdef RGB_MATRIX_ENABLE + case BL_TOG: // toggle rgb matrix + rgb_matrix_toggle(); + return false; + case BL_EFFECT: + rgb_matrix_step(); + return false; + case BL_ISPD: + rgb_matrix_increase_speed(); + return false; + case BL_DSPD: + rgb_matrix_decrease_speed(); + return false; + case BL_IHUE: + rgb_matrix_increase_hue(); + return false; + case BL_DHUE: + rgb_matrix_decrease_hue(); + return false; + case BL_ISAT: + rgb_matrix_increase_sat(); + return false; + case BL_DSAT: + rgb_matrix_decrease_sat(); + return false; + case BL_IVAL: + rgb_matrix_increase_val(); + return false; + case BL_DVAL: + rgb_matrix_decrease_val(); + return false; +#endif + default: + break; + } + } + return true; +} diff --git a/keyboards/mechlovin/adelais/rgb_led/rev3/keymaps/vial/readme.md b/keyboards/mechlovin/adelais/rgb_led/rev3/keymaps/vial/readme.md new file mode 100644 index 0000000000..2fb9a5a6b5 --- /dev/null +++ b/keyboards/mechlovin/adelais/rgb_led/rev3/keymaps/vial/readme.md @@ -0,0 +1,5 @@ +# The Vial keymap for Adelais en Ciel Rev. 3 + +Make example for this keyboard (after setting up your build environment): + + make mechlovin/adelais/rgb_led/rev3:vial \ No newline at end of file diff --git a/keyboards/mechlovin/adelais/rgb_led/rev3/keymaps/vial/rules.mk b/keyboards/mechlovin/adelais/rgb_led/rev3/keymaps/vial/rules.mk new file mode 100644 index 0000000000..de611a34ff --- /dev/null +++ b/keyboards/mechlovin/adelais/rgb_led/rev3/keymaps/vial/rules.mk @@ -0,0 +1,8 @@ +VIA_ENABLE = yes +VIAL_ENABLE = yes +VIALRGB_ENABLE = yes +LTO_ENABLE = yes +KEY_OVERRIDE_ENABLE = no +COMBO_ENABLE = no +ENCODER_ENABLE = yes +ENCODER_MAP_ENABLE = yes \ No newline at end of file diff --git a/keyboards/mechlovin/adelais/rgb_led/rev3/keymaps/vial/vial.json b/keyboards/mechlovin/adelais/rgb_led/rev3/keymaps/vial/vial.json new file mode 100644 index 0000000000..d163d58253 --- /dev/null +++ b/keyboards/mechlovin/adelais/rgb_led/rev3/keymaps/vial/vial.json @@ -0,0 +1,323 @@ +{ + "name": "Adelais En Ciel Rev.3 DEV", + "vendorId": "0x4D4C", + "productId": "0xAEC4", + "lighting": "vialrgb", + "customKeycodes": [ + {"name": "Backlight Toggle", "title": "Backlight Toggle", "shortName": "BL_TOG"}, + {"name": "Backlight Effect", "title": "Backlight Effect", "shortName": "BL_EFFECT"}, + {"name": "Backlight Increase Speed", "title": "Backlight Increase Speed", "shortName": "BL_ISPD"}, + {"name": "Backlight Decrease Speed", "title": "Backlight Decrease Speed", "shortName": "BL_DSPD"}, + {"name": "Backlight Increase Hue", "title": "Backlight Increase Hue", "shortName": "BL_IHUE"}, + {"name": "Backlight Decrease Hue", "title": "Backlight Decrease Hue", "shortName": "BL_DHUE"}, + {"name": "Backlight Increase Saturation", "title": "Backlight Increase Saturation", "shortName": "BL_ISAT"}, + {"name": "Backlight Decrease Saturation", "title": "Backlight Decrease Saturation", "shortName": "BL_DSAT"}, + {"name": "Backlight Increase Value", "title": "Backlight Increase Value", "shortName": "BL_IVAL"}, + {"name": "Backlight Decrease Value", "title": "Backlight Decrease Value", "shortName": "BL_DVAL"} + ], + "matrix": {"rows": 5, "cols": 15}, + "layouts": { + "labels": [ + "Back Space 2U", + "Right Shift 2.75U", + "Split Space", + "Encoder" + ], + "keymap": [ + [ + { + "x": 0.5, + "c": "#777777" + }, + "3,0\n\n\n\n\n\n\n\n\ne", + "3,1\n\n\n\n\n\n\n\n\ne" + ], + [ + { + "y": -0.85, + "x": 15.15, + "c": "#aaaaaa", + "w": 2 + }, + "0,13\n\n\n0,1" + ], + [ + { + "x": 0.55, + "c": "#777777" + }, + "3,1" + ], + [ + { + "y": -0.95, + "x": 3.7, + "c": "#cccccc" + }, + "0,2", + { + "x": 8.45 + }, + "0,11" + ], + [ + { + "y": -0.95, + "x": 1.7 + }, + "0,0", + "0,1", + { + "x": 10.45 + }, + "0,12", + { + "c": "#aaaaaa" + }, + "0,13\n\n\n0,0", + "0,14\n\n\n0,0" + ], + [ + { + "y": -0.10000000000000009, + "x": 0.35 + }, + "4,1" + ], + [ + { + "y": -0.9499999999999997, + "x": 13, + "c": "#cccccc" + }, + "1,10" + ], + [ + { + "y": -0.9500000000000002, + "x": 1.5, + "c": "#aaaaaa", + "w": 1.5 + }, + "1,0", + { + "c": "#cccccc" + }, + "1,1", + { + "x": 10 + }, + "1,11", + "1,12", + { + "c": "#aaaaaa", + "w": 1.5 + }, + "1,13" + ], + [ + { + "y": -0.10000000000000009, + "x": 0.15 + }, + "4,3" + ], + [ + { + "y": -0.9000000000000004, + "x": 13.4, + "c": "#cccccc" + }, + "2,10", + "2,11", + { + "c": "#777777", + "w": 2.25 + }, + "2,13" + ], + [ + { + "y": -0.9999999999999996, + "x": 1.3, + "c": "#aaaaaa", + "w": 1.75 + }, + "2,0", + { + "c": "#cccccc" + }, + "2,1" + ], + [ + { + "x": 1.05, + "c": "#aaaaaa", + "w": 2.25 + }, + "3,0", + { + "c": "#cccccc" + }, + "3,2", + { + "x": 8.8 + }, + "3,11", + "3,12", + { + "c": "#aaaaaa", + "w": 1.75 + }, + "3,13\n\n\n1,0", + "3,14\n\n\n1,0", + { + "x": 0.3000000000000007, + "w": 2.75 + }, + "3,13\n\n\n1,1" + ], + [ + { + "x": 1.05, + "w": 1.5 + }, + "4,0", + { + "x": 13.45, + "w": 1.5 + }, + "4,14" + ], + [ + { + "r": 12, + "y": -6, + "x": 5.05, + "c": "#cccccc" + }, + "0,3", + "0,4", + "0,5", + "0,6" + ], + [ + { + "x": 4.6 + }, + "1,2", + "1,3", + "1,4", + "1,5" + ], + [ + { + "x": 4.85 + }, + "2,2", + "2,3", + "2,4", + "2,5" + ], + [ + { + "x": 5.3 + }, + "3,3", + "3,4", + "3,5", + "3,6" + ], + [ + { + "x": 6.6, + "c": "#777777", + "w": 2 + }, + "4,4\n\n\n2,0", + { + "c": "#aaaaaa", + "w": 1.25 + }, + "4,6\n\n\n2,0" + ], + [ + { + "y": -0.9500000000000002, + "x": 5.05, + "w": 1.5 + }, + "4,2" + ], + [ + { + "y": 0.25, + "x": 6.5, + "c": "#777777", + "w": 2.25 + }, + "4,4\n\n\n2,1", + { + "c": "#aaaaaa" + }, + "4,6\n\n\n2,1" + ], + [ + { + "r": -12, + "y": -2.7, + "x": 8.45, + "c": "#cccccc" + }, + "0,7", + "0,8", + "0,9", + "0,10" + ], + [ + { + "x": 8.05 + }, + "1,6", + "1,7", + "1,8", + "1,9" + ], + [ + { + "x": 8.2 + }, + "2,6", + "2,7", + "2,8", + "2,9" + ], + [ + { + "x": 7.75 + }, + "3,7", + "3,8", + "3,9", + "3,10" + ], + [ + { + "x": 7.75, + "c": "#777777", + "w": 2.75 + }, + "4,8" + ], + [ + { + "y": -0.9500000000000002, + "x": 10.55, + "c": "#aaaaaa", + "w": 1.5 + }, + "4,10" + ] + ] + } + } diff --git a/keyboards/mechlovin/adelais/standard_led/arm/rev4/keymaps/vial/config.h b/keyboards/mechlovin/adelais/standard_led/arm/rev4/keymaps/vial/config.h new file mode 100644 index 0000000000..fc7d8b8d43 --- /dev/null +++ b/keyboards/mechlovin/adelais/standard_led/arm/rev4/keymaps/vial/config.h @@ -0,0 +1,7 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ + +#pragma once + +#define VIAL_KEYBOARD_UID {0x68, 0x75, 0xF6, 0x35, 0xEF, 0xAB, 0xEF, 0xEA} +#define VIAL_UNLOCK_COMBO_ROWS { 0, 2 } +#define VIAL_UNLOCK_COMBO_COLS { 0, 13 } diff --git a/keyboards/mechlovin/adelais/standard_led/arm/rev4/keymaps/vial/keymap.c b/keyboards/mechlovin/adelais/standard_led/arm/rev4/keymaps/vial/keymap.c new file mode 100644 index 0000000000..f4cf26ab4e --- /dev/null +++ b/keyboards/mechlovin/adelais/standard_led/arm/rev4/keymaps/vial/keymap.c @@ -0,0 +1,119 @@ +/* Copyright 2020 Team Mechlovin + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ +#include QMK_KEYBOARD_H + +enum my_keycodes { + BL_TOG = USER00, + BL_EFFECT, + BL_ISPD, + BL_DSPD, + BL_IHUE, + BL_DHUE, + BL_ISAT, + BL_DSAT, + BL_IVAL, + BL_DVAL +}; + + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT_all( + KC_SPC, 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_SPC, 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_SLSH, + KC_SPC, 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_BSLS, MO(1), KC_RSFT, KC_UP, + KC_LCTL, KC_LALT, KC_SPC, MO(2), KC_SPC, KC_RALT, KC_RCTL ), + [1] = LAYOUT_all( + 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, 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, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS ), + [2] = LAYOUT_all( + QK_BOOT, KC_TRNS, BL_TOG, BL_EFFECT, BL_ISPD, BL_DSPD, BL_IHUE, BL_DHUE, BL_ISAT, BL_DSAT, BL_IVAL, BL_DVAL, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_P7, KC_P8, KC_P9, KC_PSLS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_P4, KC_P5, KC_P6, KC_PAST, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_P1, KC_P2, KC_P3, KC_PPLS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_P0, KC_PDOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS ) +}; + +#ifdef ENCODER_ENABLE +bool encoder_update_user(uint8_t index, bool clockwise) { + if (index == 0) { + if (clockwise) { + tap_code(KC_VOLD); + } else { + tap_code(KC_VOLU); + } + } else if (index == 1) { + if (clockwise) { + tap_code(KC_LEFT); + } else { + tap_code(KC_RGHT); + } + } else if (index == 2) { + if (clockwise) { + tap_code(KC_UP); + } else { + tap_code(KC_DOWN); + } + } + return true; +} + +#endif + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + if (record->event.pressed) { + switch (keycode) { +#ifdef RGB_MATRIX_ENABLE + case BL_TOG: // toggle rgb matrix + rgb_matrix_toggle(); + return false; + case BL_EFFECT: + rgb_matrix_step(); + return false; + case BL_ISPD: + rgb_matrix_increase_speed(); + return false; + case BL_DSPD: + rgb_matrix_decrease_speed(); + return false; + case BL_IHUE: + rgb_matrix_increase_hue(); + return false; + case BL_DHUE: + rgb_matrix_decrease_hue(); + return false; + case BL_ISAT: + rgb_matrix_increase_sat(); + return false; + case BL_DSAT: + rgb_matrix_decrease_sat(); + return false; + case BL_IVAL: + rgb_matrix_increase_val(); + return false; + case BL_DVAL: + rgb_matrix_decrease_val(); + return false; +#endif + default: + break; + } + } + return true; +} diff --git a/keyboards/mechlovin/adelais/standard_led/arm/rev4/keymaps/vial/readme.md b/keyboards/mechlovin/adelais/standard_led/arm/rev4/keymaps/vial/readme.md new file mode 100644 index 0000000000..f26e9b45e6 --- /dev/null +++ b/keyboards/mechlovin/adelais/standard_led/arm/rev4/keymaps/vial/readme.md @@ -0,0 +1,5 @@ +# The Vial keymap for Adelais Rev. 4 + +Make example for this keyboard (after setting up your build environment): + + make mechlovin/adelais/standard_led/arm/rev4:vial \ No newline at end of file diff --git a/keyboards/mechlovin/adelais/standard_led/arm/rev4/keymaps/vial/rules.mk b/keyboards/mechlovin/adelais/standard_led/arm/rev4/keymaps/vial/rules.mk new file mode 100644 index 0000000000..4f7618e9b2 --- /dev/null +++ b/keyboards/mechlovin/adelais/standard_led/arm/rev4/keymaps/vial/rules.mk @@ -0,0 +1,2 @@ +VIA_ENABLE = yes +VIAL_ENABLE = yes diff --git a/keyboards/mechlovin/adelais/standard_led/arm/rev4/keymaps/vial/vial.json b/keyboards/mechlovin/adelais/standard_led/arm/rev4/keymaps/vial/vial.json new file mode 100644 index 0000000000..ea6c36558e --- /dev/null +++ b/keyboards/mechlovin/adelais/standard_led/arm/rev4/keymaps/vial/vial.json @@ -0,0 +1,327 @@ +{ + "name": "Adelais Rev. 4", + "vendorId": "0x4D4C", + "productId": "0xAD03", + "lighting": "qmk_rgblight", + "matrix": {"rows": 5, "cols": 15}, + "layouts": { + "labels": [ + "Split Back Space", + "Split Right Shift", + "2.25u Left Space" + ], + "keymap": [ + [ + { + "x": 15.2, + "c": "#aaaaaa", + "w": 2 + }, + "0,13\n\n\n0,1" + ], + [ + { + "y": -0.10999999999999999, + "x": 0.5, + "c": "#777777" + }, + "1,14", + { + "x": 2.25, + "c": "#cccccc" + }, + "0,2" + ], + [ + { + "y": -0.8900000000000001, + "x": 1.75 + }, + "0,0", + "0,1" + ], + [ + { + "y": -0.8999999999999999, + "x": 13.2 + }, + "0,11" + ], + [ + { + "y": -0.8500000000000001, + "x": 14.2 + }, + "0,12", + { + "c": "#aaaaaa" + }, + "0,13\n\n\n0,0", + "0,14\n\n\n0,0" + ], + [ + { + "y": -0.3600000000000001, + "x": 0.25 + }, + "2,14" + ], + [ + { + "y": -0.8899999999999997, + "x": 1.5, + "w": 1.5 + }, + "1,0", + { + "c": "#cccccc" + }, + "1,1" + ], + [ + { + "y": -0.8999999999999999, + "x": 12.95 + }, + "1,10" + ], + [ + { + "y": -0.8500000000000001, + "x": 13.95 + }, + "1,11", + "1,12", + { + "c": "#aaaaaa", + "w": 1.5 + }, + "1,13" + ], + [ + { + "y": -0.3599999999999999 + }, + "3,14" + ], + [ + { + "y": -0.8900000000000001, + "x": 1.25, + "w": 1.75 + }, + "2,0", + { + "c": "#cccccc" + }, + "2,1" + ], + [ + { + "y": -0.75, + "x": 13.4 + }, + "2,10", + "2,11", + { + "c": "#777777", + "w": 2.25 + }, + "2,13" + ], + [ + { + "y": -0.25, + "x": 1, + "c": "#aaaaaa", + "w": 2.25 + }, + "3,0", + { + "c": "#cccccc" + }, + "3,2" + ], + [ + { + "y": -0.75, + "x": 13.25 + }, + "3,11", + "4,13", + { + "c": "#aaaaaa", + "w": 1.75 + }, + "3,12\n\n\n1,0" + ], + [ + { + "y": -0.25, + "x": 1, + "w": 1.5 + }, + "4,0" + ], + [ + { + "y": -0.75, + "x": 16, + "w": 1.5 + }, + "4,14" + ], + [ + { + "rx": 0.75, + "y": 6.75, + "x": 14.5, + "w": 2.75 + }, + "3,12\n\n\n1,1" + ], + [ + { + "rx": 2.25, + "ry": 0.75, + "y": 3.5, + "x": 14.75 + }, + "3,13\n\n\n1,0" + ], + [ + { + "r": 12, + "rx": 0, + "ry": 0, + "x": 5.1, + "c": "#cccccc" + }, + "0,3", + "0,4", + "0,5", + "0,6" + ], + [ + { + "x": 4.55 + }, + "1,2", + "1,3", + "1,4", + "1,5" + ], + [ + { + "x": 4.75 + }, + "2,2", + "2,3", + "2,4", + "2,5" + ], + [ + { + "x": 5.22 + }, + "3,3", + "3,4", + "3,5", + { + "x": 1.7763568394002505e-15 + }, + "3,6" + ], + [ + { + "x": 6.5, + "c": "#777777", + "w": 2 + }, + "4,4\n\n\n2,0", + { + "c": "#aaaaaa", + "w": 1.25 + }, + "4,6\n\n\n2,0" + ], + [ + { + "y": -0.9000000000000004, + "x": 5, + "w": 1.5 + }, + "4,2" + ], + [ + { + "y": 0.25, + "x": 6.5, + "c": "#777777", + "w": 2.25 + }, + "4,4\n\n\n2,1", + { + "c": "#aaaaaa" + }, + "4,6\n\n\n2,1" + ], + [ + { + "r": -12, + "y": -2.5999999999999996, + "x": 8.5, + "c": "#cccccc" + }, + "0,7", + "0,8", + "0,9", + "0,10" + ], + [ + { + "x": 8 + }, + "1,6", + "1,7", + "1,8", + "1,9" + ], + [ + { + "x": 8.25 + }, + "2,6", + "2,7", + "2,8", + "2,9" + ], + [ + { + "x": 7.75 + }, + "3,7", + "3,8", + "3,9", + "3,10" + ], + [ + { + "x": 7.75, + "c": "#777777", + "w": 2.75 + }, + "4,8" + ], + [ + { + "y": -0.8499999999999996, + "x": 10.5, + "c": "#aaaaaa", + "w": 1.5 + }, + "4,10" + ] + ] + } +} diff --git a/keyboards/mechlovin/infinity87/keymaps/vial/config.h b/keyboards/mechlovin/infinity87/keymaps/vial/config.h new file mode 100644 index 0000000000..9752c87fae --- /dev/null +++ b/keyboards/mechlovin/infinity87/keymaps/vial/config.h @@ -0,0 +1,7 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ + +#pragma once + +#define VIAL_KEYBOARD_UID {0x8D, 0xEE, 0x7B, 0x90, 0x7B, 0x12, 0x87, 0x19} +#define VIAL_UNLOCK_COMBO_ROWS { 0, 0 } +#define VIAL_UNLOCK_COMBO_COLS { 5, 16 } diff --git a/keyboards/mechlovin/infinity87/keymaps/vial/keymap.c b/keyboards/mechlovin/infinity87/keymaps/vial/keymap.c new file mode 100644 index 0000000000..bd15bd1fd9 --- /dev/null +++ b/keyboards/mechlovin/infinity87/keymaps/vial/keymap.c @@ -0,0 +1,52 @@ +/* Copyright 2023 Gabriel Levrel + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ +#include QMK_KEYBOARD_H + +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_BSPC, KC_DEL, 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_HASH, KC_ENT, + KC_LSFT, KC_BSLS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_LSFT, KC_LSFT, KC_UP, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_LALT, KC_LGUI, MO(1), KC_LCTL, KC_LEFT, KC_DOWN, KC_RGHT + ), + [1] = LAYOUT_all( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), + [2] = LAYOUT_all( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), + [3] = LAYOUT_all( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), + +}; diff --git a/keyboards/mechlovin/infinity87/keymaps/vial/rules.mk b/keyboards/mechlovin/infinity87/keymaps/vial/rules.mk new file mode 100644 index 0000000000..7d28ec17d3 --- /dev/null +++ b/keyboards/mechlovin/infinity87/keymaps/vial/rules.mk @@ -0,0 +1,5 @@ +VIA_ENABLE = yes +VIAL_ENABLE = yes + +COMMAND_ENABLE = no +CONSOLE_ENABLE = no diff --git a/keyboards/mechlovin/infinity87/keymaps/vial/vial.json b/keyboards/mechlovin/infinity87/keymaps/vial/vial.json new file mode 100644 index 0000000000..c88526b9b3 --- /dev/null +++ b/keyboards/mechlovin/infinity87/keymaps/vial/vial.json @@ -0,0 +1,203 @@ +{ + "lighting": "qmk_backlight_rgblight", + "matrix": {"rows": 6, "cols": 17}, + "layouts": { + "labels": [ + "Split Backspace", + ["Enter", "ANSI Enter", "ISO Enter", "1.25u Enter"], + "ISO Left Shift", + ["Right Shift", "ANSI Right Shift", "1u - 1.75u", "1.75u - 1u"], + ["Bottom Row", "6.25u", "7u", "6u"] + ], + "keymap": [ + [ + {"x": 2.5}, + "0,0", + {"x": 1}, + "0,1", + "0,2", + "0,3", + "0,4", + {"x": 0.5}, + "0,5", + "0,6", + "0,7", + "0,8", + {"x": 0.5}, + "0,9", + "0,10", + "0,11", + "0,12", + {"x": 0.25}, + "0,14", + "0,15", + "0,16" + ], + [ + {"y": 0.25, "x": 2.5}, + "1,0", + "1,1", + "1,2", + "1,3", + "1,4", + "1,5", + "1,6", + "1,7", + "1,8", + "1,9", + "1,10", + "1,11", + "1,12", + {"w": 2}, + "1,13\n\n\n0,0", + {"x": 0.25}, + "1,14", + "1,15", + "1,16", + {"x": 1}, + "1,13\n\n\n0,1", + "0,13\n\n\n0,1" + ], + [ + {"x": 2.5, "w": 1.5}, + "2,0", + "2,1", + "2,2", + "2,3", + "2,4", + "2,5", + "2,6", + "2,7", + "2,8", + "2,9", + "2,10", + "2,11", + "2,12", + {"w": 1.5}, + "2,13\n\n\n1,0", + {"x": 0.25}, + "2,14", + "2,15", + "2,16", + { + "x": 1.75, + "w": 1.25, + "h": 2, + "w2": 1.5, + "h2": 1, + "x2": -0.25 + }, + "3,13\n\n\n1,1", + {"x": 1.5, "w": 1.5}, + "2,13\n\n\n1,2" + ], + [ + {"x": 2.5, "w": 1.75}, + "3,0", + "3,1", + "3,2", + "3,3", + "3,4", + "3,5", + "3,6", + "3,7", + "3,8", + "3,9", + "3,10", + "3,11", + {"w": 2.25}, + "3,13\n\n\n1,0", + {"x": 4}, + "3,12\n\n\n1,1", + {"x": 2}, + "3,12\n\n\n1,2", + {"w": 1.25}, + "3,13\n\n\n1,2" + ], + [ + {"w": 1.25}, + "4,0\n\n\n2,1", + "4,1\n\n\n2,1", + {"x": 0.25, "w": 2.25}, + "4,0\n\n\n2,0", + "4,2", + "4,3", + "4,4", + "4,5", + "4,6", + "4,7", + "4,8", + "4,9", + "4,10", + "4,11", + {"w": 2.75}, + "4,13\n\n\n3,0", + {"x": 1.25}, + "4,15", + {"x": 1.25}, + "4,12\n\n\n3,1", + {"w": 1.75}, + "4,13\n\n\n3,1", + {"x": 0.25, "w": 1.75}, + "4,12\n\n\n3,2", + "4,13\n\n\n3,2" + ], + [ + {"x": 2.5, "w": 1.25}, + "5,0\n\n\n4,0", + {"w": 1.25}, + "5,1\n\n\n4,0", + {"w": 1.25}, + "5,2\n\n\n4,0", + {"w": 6.25}, + "5,6\n\n\n4,0", + {"w": 1.25}, + "5,10\n\n\n4,0", + {"w": 1.25}, + "5,11\n\n\n4,0", + {"w": 1.25}, + "5,12\n\n\n4,0", + {"w": 1.25}, + "5,13\n\n\n4,0", + {"x": 0.25}, + "5,14", + "5,15", + "5,16" + ], + [ + {"y": 0.25, "x": 2.5, "w": 1.5}, + "5,0\n\n\n4,1", + "5,1\n\n\n4,1", + {"w": 1.5}, + "5,2\n\n\n4,1", + {"w": 7}, + "5,6\n\n\n4,1", + {"w": 1.5}, + "5,11\n\n\n4,1", + "5,12\n\n\n4,1", + {"w": 1.5}, + "5,13\n\n\n4,1" + ], + [ + {"x": 2.5, "w": 1.25}, + "5,0\n\n\n4,2", + {"w": 0.75, "d": true}, + "\n\n\n4,2", + {"w": 1.25}, + "5,1\n\n\n4,2", + {"w": 1.25}, + "5,2\n\n\n4,2", + {"w": 6}, + "5,6\n\n\n4,2", + {"w": 1.25}, + "5,10\n\n\n4,2", + {"w": 1.25}, + "5,11\n\n\n4,2", + {"w": 0.75, "d": true}, + "\n\n\n4,2", + {"w": 1.25}, + "5,13\n\n\n4,2" + ] + ] + } +} diff --git a/keyboards/mechlovin/jay60/keymaps/vial/config.h b/keyboards/mechlovin/jay60/keymaps/vial/config.h new file mode 100644 index 0000000000..a9982c34d5 --- /dev/null +++ b/keyboards/mechlovin/jay60/keymaps/vial/config.h @@ -0,0 +1,7 @@ +#pragma once + +#define VIAL_KEYBOARD_UID {0xED, 0x27, 0xA0, 0x71, 0x36, 0x44, 0x16, 0x13} +#define VIAL_UNLOCK_COMBO_ROWS { 0, 2 } +#define VIAL_UNLOCK_COMBO_COLS { 0, 13 } + +#define DYNAMIC_KEYMAP_LAYER_COUNT 4 diff --git a/keyboards/mechlovin/jay60/keymaps/vial/keymap.c b/keyboards/mechlovin/jay60/keymaps/vial/keymap.c new file mode 100644 index 0000000000..ed73cc5267 --- /dev/null +++ b/keyboards/mechlovin/jay60/keymaps/vial/keymap.c @@ -0,0 +1,36 @@ +#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_BSLS, KC_GRV, + 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_BSPC, + KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_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, MO(1), + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_LALT, KC_RALT, KC_RGUI, KC_RCTL + ), + + [1] = LAYOUT_all( + KC_TRNS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_TRNS, KC_PSCR, + KC_TRNS, 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_BSPC, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PGUP, KC_LEFT, KC_RGHT, KC_TRNS, + KC_TRNS, KC_VOLD, KC_VOLU, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_PGDN, KC_DOWN, KC_END, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ), + + [2] = LAYOUT_all( + 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, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ), + + [3] = LAYOUT_all( + 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, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ), + +}; \ No newline at end of file diff --git a/keyboards/mechlovin/jay60/keymaps/vial/rules.mk b/keyboards/mechlovin/jay60/keymaps/vial/rules.mk new file mode 100644 index 0000000000..d2df3b4b86 --- /dev/null +++ b/keyboards/mechlovin/jay60/keymaps/vial/rules.mk @@ -0,0 +1,8 @@ +VIA_ENABLE = yes +VIAL_ENABLE = yes + +LTO_ENABLE = yes +QMK_SETTINGS = no +TAP_DANCE_ENABLE = no +COMBO_ENABLE = no +KEY_OVERRIDE_ENABLE = no \ No newline at end of file diff --git a/keyboards/mechlovin/jay60/keymaps/vial/vial.json b/keyboards/mechlovin/jay60/keymaps/vial/vial.json new file mode 100644 index 0000000000..33a9c64e1c --- /dev/null +++ b/keyboards/mechlovin/jay60/keymaps/vial/vial.json @@ -0,0 +1,127 @@ +{ + "name": "Jay60 Rev.1", + "vendorId": "0x4D4C", + "productId": "0x0600", + "lighting": "none", + "matrix": {"rows": 5, "cols": 14}, + "layouts": { + "labels": [ + "Split Backspace", + "2.75U Right Shift", + ["Bottom Row", "6.25U", "7U"] + ], + "keymap": [ + [ + {"c": "#777777"}, + "0,0", + {"c": "#cccccc"}, + "0,1", + "0,2", + "0,3", + "0,4", + "0,5", + "0,6", + "0,7", + "0,8", + "0,9", + "0,10", + "0,11", + "0,12", + {"c": "#aaaaaa", "w": 2}, + "0,13\n\n\n0,0", + {"x": 0.25}, + "0,13\n\n\n0,1", + "2,12\n\n\n0,1" + ], + [ + {"w": 1.5}, + "1,0", + {"c": "#cccccc"}, + "1,1", + "1,2", + "1,3", + "1,4", + "1,5", + "1,6", + "1,7", + "1,8", + "1,9", + "1,10", + "1,11", + "1,12", + {"c": "#aaaaaa", "w": 1.5}, + "1,13" + ], + [ + {"w": 1.75}, + "2,0", + {"c": "#cccccc"}, + "2,1", + "2,2", + "2,3", + "2,4", + "2,5", + "2,6", + "2,7", + "2,8", + "2,9", + "2,10", + "2,11", + {"c": "#777777", "w": 2.25}, + "2,13" + ], + [ + {"c": "#aaaaaa", "w": 2.25}, + "3,0", + {"c": "#cccccc"}, + "3,2", + "3,3", + "3,4", + "3,5", + "3,6", + "3,7", + "3,8", + "3,9", + "3,10", + "3,11", + {"c": "#aaaaaa", "w": 1.75}, + "3,12\n\n\n1,0", + "3,13\n\n\n1,0", + {"x": 0.25, "w": 2.75}, + "3,12\n\n\n1,1" + ], + [ + {"w": 1.25}, + "4,0\n\n\n2,0", + {"w": 1.25}, + "4,1\n\n\n2,0", + {"w": 1.25}, + "4,2\n\n\n2,0", + {"c": "#cccccc", "w": 6.25}, + "4,6\n\n\n2,0", + {"c": "#aaaaaa", "w": 1.25}, + "4,10\n\n\n2,0", + {"w": 1.25}, + "4,11\n\n\n2,0", + {"w": 1.25}, + "4,12\n\n\n2,0", + {"w": 1.25}, + "4,13\n\n\n2,0" + ], + [ + {"y": 0.5, "w": 1.5}, + "4,0\n\n\n2,1", + "4,1\n\n\n2,1", + {"w": 1.5}, + "4,2\n\n\n2,1", + {"c": "#cccccc", "w": 7}, + "4,6\n\n\n2,1", + {"c": "#aaaaaa", "w": 1.5}, + "4,11\n\n\n2,1", + "4,12\n\n\n2,1", + {"w": 1.5}, + "4,13\n\n\n2,1" + ] + ] + } +} \ No newline at end of file diff --git a/keyboards/meletrix/zoom65_lite/keymaps/vial/config.h b/keyboards/meletrix/zoom65_lite/keymaps/vial/config.h new file mode 100644 index 0000000000..74bcea52f9 --- /dev/null +++ b/keyboards/meletrix/zoom65_lite/keymaps/vial/config.h @@ -0,0 +1,7 @@ +#pragma once + +#define VIAL_KEYBOARD_UID {0xBB, 0x38, 0x62, 0xAC, 0x5F, 0x1D, 0x0B, 0x91} + +#define VIAL_UNLOCK_COMBO_ROWS { 0, 0 } +#define VIAL_UNLOCK_COMBO_COLS { 0, 13 } +#define DYNAMIC_KEYMAP_LAYER_COUNT 3 diff --git a/keyboards/meletrix/zoom65_lite/keymaps/vial/keymap.c b/keyboards/meletrix/zoom65_lite/keymaps/vial/keymap.c new file mode 100644 index 0000000000..cfd34fe622 --- /dev/null +++ b/keyboards/meletrix/zoom65_lite/keymaps/vial/keymap.c @@ -0,0 +1,49 @@ +/* Copyright 2021 meletrix + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +#include QMK_KEYBOARD_H + +#if defined(ENCODER_MAP_ENABLE) +const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { + [0] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU) }, + [1] = { ENCODER_CCW_CW(KC_MS_WH_DOWN, KC_MS_WH_UP) }, + [2] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS) }, +}; +#endif + +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_BSPC, KC_VOLU, KC_MUTE, KC_VOLD, + 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_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_PGUP, + KC_LSFT, 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_END, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_RALT, MO(1), 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, _______, _______, KC_MNXT, KC_MPLY, KC_MPRV, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), + [2] = LAYOUT_all( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), +}; diff --git a/keyboards/meletrix/zoom65_lite/keymaps/vial/readme.md b/keyboards/meletrix/zoom65_lite/keymaps/vial/readme.md new file mode 100644 index 0000000000..a5eb91374e --- /dev/null +++ b/keyboards/meletrix/zoom65_lite/keymaps/vial/readme.md @@ -0,0 +1,13 @@ +# The Vial keymap for Zoom65 Lite + +This is the Vial keymap for the Zoom65 Lite. + +Several (arbitrary) QMK features have been modified / disabled to reduce the size of the final firmware binary and make it fit in the (otherwise kind of limited) memory of the `atmega32u4` microcontroller. + +These arbitrary configurations are: + +- reduce the number predefined keyboard layouts to 3 +- disable *key override* feature +- disable *combo* feature + +If you any of the above configuration decisions conflicts with your needs, feel free to adjust the configuration as long as the final binary still fits in the microcontroller memory. diff --git a/keyboards/meletrix/zoom65_lite/keymaps/vial/rules.mk b/keyboards/meletrix/zoom65_lite/keymaps/vial/rules.mk new file mode 100644 index 0000000000..90a8b087d0 --- /dev/null +++ b/keyboards/meletrix/zoom65_lite/keymaps/vial/rules.mk @@ -0,0 +1,7 @@ +VIA_ENABLE = yes +VIAL_ENABLE = yes +LTO_ENABLE = yes +ENCODER_MAP_ENABLE = yes + +COMBO_ENABLE = no +KEY_OVERRIDE_ENABLE = no diff --git a/keyboards/meletrix/zoom65_lite/keymaps/vial/vial.json b/keyboards/meletrix/zoom65_lite/keymaps/vial/vial.json new file mode 100644 index 0000000000..e248c37944 --- /dev/null +++ b/keyboards/meletrix/zoom65_lite/keymaps/vial/vial.json @@ -0,0 +1,139 @@ +{ + "name": "Zoom65 Lite", + "vendorId": "0x806C", + "productId": "0x0005", + "lighting": "none", + "matrix": { + "rows": 5, + "cols": 15 + }, + "layouts": { + "labels": [ + "Split Backspace", + "ISO Enter", + "Split Left Shift", + "Split Spacebar" + ], + "keymap": [ + [{ "x": 15.5 }, "1,13\n\n\n0,1", "2,13\n\n\n0,1"], + [ + { "y": 0.25, "x": 2.5 }, + "0,0", + "0,1", + "0,2", + "0,3", + "0,4", + "0,5", + "0,6", + "0,7", + "0,8", + "0,9", + "0,10", + "0,11", + "0,12", + { "w": 2 }, + "0,13\n\n\n0,0", + { "x": 1.25 }, + "0,0\n\n\n\n\n\n\n\n\ne", + "0,1\n\n\n\n\n\n\n\n\ne" + ], + [ + { "x": 2.5, "w": 1.5 }, + "1,0", + "1,1", + "1,2", + "1,3", + "1,4", + "1,5", + "1,6", + "1,7", + "1,8", + "1,9", + "1,10", + "1,11", + "1,12", + { "w": 1.5 }, + "1,13\n\n\n1,0", + "1,14", + { "x": 0.75 }, + "0,14", + { + "x": 1.75, + "w": 1.25, + "h": 2, + "w2": 1.5, + "h2": 1, + "x2": -0.25 + }, + "1,13\n\n\n1,1" + ], + [ + { "x": 2.5, "w": 1.75 }, + "2,0", + "2,1", + "2,2", + "2,3", + "2,4", + "2,5", + "2,6", + "2,7", + "2,8", + "2,9", + "2,10", + "2,11", + { "w": 2.25 }, + "2,12\n\n\n1,0", + "2,14", + { "x": 2.5 }, + "2,12\n\n\n1,1" + ], + [ + { "w": 1.25 }, + "3,0\n\n\n2,1", + "3,1\n\n\n2,1", + { "x": 0.25, "w": 2.25 }, + "3,0\n\n\n2,0", + "3,2", + "3,3", + "3,4", + "3,5", + "3,6", + "3,7", + "3,8", + "3,9", + "3,10", + "3,11", + { "w": 1.75 }, + "3,12", + "3,13", + "3,14" + ], + [ + { "x": 2.5, "w": 1.25 }, + "4,0", + { "w": 1.25 }, + "4,1", + { "w": 1.25 }, + "4,2", + { "w": 6.25 }, + "4,6\n\n\n3,0", + { "w": 1.25 }, + "4,10", + { "w": 1.25 }, + "4,11", + { "x": 0.5 }, + "4,12", + "4,13", + "4,14" + ], + [ + { "y": 0.25, "x": 6.25, "w": 2.25 }, + "4,4\n\n\n3,1", + { "w": 1.25 }, + "4,6\n\n\n3,1", + { "w": 2.75 }, + "4,8\n\n\n3,1" + ] + ] + } +} diff --git a/keyboards/mini49/info.json b/keyboards/mini49/info.json new file mode 100644 index 0000000000..156722ec10 --- /dev/null +++ b/keyboards/mini49/info.json @@ -0,0 +1,81 @@ +{ + "manufacturer": "HSS", + "keyboard_name": "mini49", + "maintainer": "pcs3rd", + "bootloader": "rp2040", + "diode_direction": "COL2ROW", + "features": { + "command": false, + "console": false, + "extrakey": true, + "mousekey": true, + "nkro": true + }, + "matrix_pins": { + "cols": ["GP0", "GP1", "GP2", "GP3", "GP4", "GP5", "GP6", "GP7", "GP8", "GP9"], + "rows": ["GP10", "GP11", "GP12", "GP13", "GP14"] + }, + "processor": "RP2040", + "url": "", + "usb": { + "device_version": "1.0.0", + "pid": "0x0000", + "vid": "0xBEEF" + }, + "layouts": { + "LAYOUT": { + "layout": [ + { "label": "K00", "matrix": [0, 0], "w": 1, "x": 0, "y": 0 }, + { "label": "K01", "matrix": [0, 1], "w": 1, "x": 1, "y": 0 }, + { "label": "K02", "matrix": [0, 2], "w": 1, "x": 2, "y": 0 }, + { "label": "K03", "matrix": [0, 3], "w": 1, "x": 3, "y": 0 }, + { "label": "K04", "matrix": [0, 4], "w": 1, "x": 4, "y": 0 }, + { "label": "K05", "matrix": [0, 5], "w": 1, "x": 5, "y": 0 }, + { "label": "K06", "matrix": [0, 6], "w": 1, "x": 6, "y": 0 }, + { "label": "K07", "matrix": [0, 7], "w": 1, "x": 7, "y": 0 }, + { "label": "K08", "matrix": [0, 8], "w": 1, "x": 8, "y": 0 }, + { "label": "K09", "matrix": [0, 9], "w": 1, "x": 9, "y": 0 }, + { "label": "K10", "matrix": [1, 0], "w": 1, "x": 0, "y": 1 }, + { "label": "K11", "matrix": [1, 1], "w": 1, "x": 1, "y": 1 }, + { "label": "K12", "matrix": [1, 2], "w": 1, "x": 2, "y": 1 }, + { "label": "K13", "matrix": [1, 3], "w": 1, "x": 3, "y": 1 }, + { "label": "K14", "matrix": [1, 4], "w": 1, "x": 4, "y": 1 }, + { "label": "K15", "matrix": [1, 5], "w": 1, "x": 5, "y": 1 }, + { "label": "K16", "matrix": [1, 6], "w": 1, "x": 6, "y": 1 }, + { "label": "K17", "matrix": [1, 7], "w": 1, "x": 7, "y": 1 }, + { "label": "K18", "matrix": [1, 8], "w": 1, "x": 8, "y": 1 }, + { "label": "K19", "matrix": [1, 9], "w": 1, "x": 9, "y": 1 }, + { "label": "K20", "matrix": [2, 0], "w": 1, "x": 0, "y": 2 }, + { "label": "K21", "matrix": [2, 1], "w": 1, "x": 1, "y": 2 }, + { "label": "K22", "matrix": [2, 2], "w": 1, "x": 2, "y": 2 }, + { "label": "K23", "matrix": [2, 3], "w": 1, "x": 3, "y": 2 }, + { "label": "K24", "matrix": [2, 4], "w": 1, "x": 4, "y": 2 }, + { "label": "K25", "matrix": [2, 5], "w": 1, "x": 5, "y": 2 }, + { "label": "K26", "matrix": [2, 6], "w": 1, "x": 6, "y": 2 }, + { "label": "K27", "matrix": [2, 7], "w": 1, "x": 7, "y": 2 }, + { "label": "K28", "matrix": [2, 8], "w": 1, "x": 8, "y": 2 }, + { "label": "K29", "matrix": [2, 9], "w": 1, "x": 9, "y": 2 }, + { "label": "K30", "matrix": [3, 0], "w": 1, "x": 0, "y": 3 }, + { "label": "K31", "matrix": [3, 1], "w": 1, "x": 1, "y": 3 }, + { "label": "K32", "matrix": [3, 2], "w": 1, "x": 2, "y": 3 }, + { "label": "K33", "matrix": [3, 3], "w": 1, "x": 3, "y": 3 }, + { "label": "K34", "matrix": [3, 4], "w": 1, "x": 4, "y": 3 }, + { "label": "K35", "matrix": [3, 5], "w": 1, "x": 5, "y": 3 }, + { "label": "K36", "matrix": [3, 6], "w": 1, "x": 6, "y": 3 }, + { "label": "K37", "matrix": [3, 7], "w": 1, "x": 7, "y": 3 }, + { "label": "K38", "matrix": [3, 8], "w": 1, "x": 8, "y": 3 }, + { "label": "K39", "matrix": [3, 9], "w": 1, "x": 9, "y": 3 }, + { "label": "K40", "matrix": [4, 0], "w": 1, "x": 0, "y": 4 }, + { "label": "K41", "matrix": [4, 1], "w": 1, "x": 1, "y": 4 }, + { "label": "K42", "matrix": [4, 2], "w": 1, "x": 2, "y": 4 }, + { "label": "K43", "matrix": [4, 3], "w": 1, "x": 3, "y": 4 }, + { "label": "K45", "matrix": [4, 5], "w": 1, "x": 4, "y": 4 }, + { "label": "K46", "matrix": [4, 6], "w": 1, "x": 5, "y": 4 }, + { "label": "K47", "matrix": [4, 7], "w": 1, "x": 6, "y": 4 }, + { "label": "K48", "matrix": [4, 8], "w": 1, "x": 7, "y": 4 }, + { "label": "K49", "matrix": [4, 9], "w": 1, "x": 8, "y": 4 } + ] + } + } + +} diff --git a/keyboards/mini49/keymaps/default/keymap.c b/keyboards/mini49/keymaps/default/keymap.c new file mode 100644 index 0000000000..69a9e21a35 --- /dev/null +++ b/keyboards/mini49/keymaps/default/keymap.c @@ -0,0 +1,11 @@ +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT( + KC_ESC, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_BSPC, + KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, + KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_ENT, + KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, + KC_LCTL, KC_LALT, KC_LGUI, KC_LSFT, KC_SPC, KC_NO, KC_NO, KC_NO, KC_NO + ) +}; diff --git a/keyboards/mini49/keymaps/default/rules.mk b/keyboards/mini49/keymaps/default/rules.mk new file mode 100644 index 0000000000..7e4fd5d349 --- /dev/null +++ b/keyboards/mini49/keymaps/default/rules.mk @@ -0,0 +1 @@ +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite diff --git a/keyboards/mini49/keymaps/vial/config.h b/keyboards/mini49/keymaps/vial/config.h new file mode 100644 index 0000000000..2ccfe974e6 --- /dev/null +++ b/keyboards/mini49/keymaps/vial/config.h @@ -0,0 +1,12 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ + +#pragma once + +#define VIAL_KEYBOARD_UID {0x5C, 0x8A, 0x21, 0xB3, 0x82, 0x40, 0xF6, 0x11} + +#define VIAL_UNLOCK_COMBO_ROWS {0, 0} +#define VIAL_UNLOCK_COMBO_COLS {0, 9} + +#define DYNAMIC_KEYMAP_MACRO_COUNT 32 +#define DYNAMIC_KEYMAP_LAYER_COUNT 12 + diff --git a/keyboards/mini49/keymaps/vial/keymap.c b/keyboards/mini49/keymaps/vial/keymap.c new file mode 100644 index 0000000000..a412eeb784 --- /dev/null +++ b/keyboards/mini49/keymaps/vial/keymap.c @@ -0,0 +1,14 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT( + KC_ESC, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_BSPC, + KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, + KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_ENT, + KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, + KC_LCTL, KC_LALT, KC_LGUI, KC_LSFT, KC_SPC, KC_NO, KC_NO, KC_NO, KC_NO + ) +}; + diff --git a/keyboards/mini49/keymaps/vial/rules.mk b/keyboards/mini49/keymaps/vial/rules.mk new file mode 100644 index 0000000000..7e2cda2ab0 --- /dev/null +++ b/keyboards/mini49/keymaps/vial/rules.mk @@ -0,0 +1,3 @@ +VIA_ENABLE = yes +VIAL_ENABLE = yes +MIDI_ENABLE = yes \ No newline at end of file diff --git a/keyboards/mini49/keymaps/vial/vial.json b/keyboards/mini49/keymaps/vial/vial.json new file mode 100644 index 0000000000..40cffe2c13 --- /dev/null +++ b/keyboards/mini49/keymaps/vial/vial.json @@ -0,0 +1,19 @@ +{ + "name": "mini49", + "vendorId": "0xBEEF", + "productId": "0x0000", + "lighting": "none", + "matrix": {"rows": 5, "cols": 10}, + "layouts": { + "keymap": [ + ["0,0","0,1","0,2","0,3","0,4","0,5","0,6","0,7","0,8","0,9"], + ["1,0","1,1","1,2","1,3","1,4","1,5","1,6","1,7","1,8","1,9"], + ["2,0","2,1","2,2","2,3","2,4","2,5","2,6","2,7","2,8","2,9"], + ["3,0","3,1","3,2","3,3","3,4","3,5","3,6","3,7","3,8","3,9"], + ["4,0","4,1","4,2","4,3",{"w": 2 }, "4,5","4,6","4,7","4,8", "4,9"] + ] + }, + "vial": { + "midi": "advanced" + } +} \ No newline at end of file diff --git a/keyboards/mini49/readme.md b/keyboards/mini49/readme.md new file mode 100644 index 0000000000..a68a5ee0fe --- /dev/null +++ b/keyboards/mini49/readme.md @@ -0,0 +1,29 @@ +# mini49 + + +![mini49](https://cloud.stickpile.net/apps/files_sharing/publicpreview/YkYfcoeLRmHpfy2?file=/&fileId=225288&x=1080&y=1920&a=true) + +A sub-60% ortholinear keyboard powered by vial-qmk. + +* Keyboard Maintainer: [Raymond Dean][def] +* Hardware Supported: *RP2040* + +Make example for this keyboard (after setting up your build environment): + + make mini49:vial + +Flashing example for this keyboard: + + make mini49:vial: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. Bootmagic is not enabled in the vial layout. +- Physical reset: Hold the BOOT button down while pressing the RESET button. +- Keycode in layout: Press the key mapped to QK_BOOT if it is available + +[def]: https://github.com/pcs3rd diff --git a/keyboards/mini49/rules.mk b/keyboards/mini49/rules.mk new file mode 100644 index 0000000000..6e7633bfe0 --- /dev/null +++ b/keyboards/mini49/rules.mk @@ -0,0 +1 @@ +# This file intentionally left blank diff --git a/keyboards/mode/m75h/keymaps/vial/config.h b/keyboards/mode/m75h/keymaps/vial/config.h new file mode 100644 index 0000000000..853449a33a --- /dev/null +++ b/keyboards/mode/m75h/keymaps/vial/config.h @@ -0,0 +1,9 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ + +#pragma once + +#define VIAL_KEYBOARD_UID {0xF0, 0x43, 0xB4, 0x31, 0xB5, 0x0C, 0x27, 0x6F} + +/* Unlock with esc / del */ +#define VIAL_UNLOCK_COMBO_ROWS { 0, 0 } +#define VIAL_UNLOCK_COMBO_COLS { 0, 15 } diff --git a/keyboards/mode/m75h/keymaps/vial/keymap.c b/keyboards/mode/m75h/keymaps/vial/keymap.c new file mode 100755 index 0000000000..67acb022d4 --- /dev/null +++ b/keyboards/mode/m75h/keymaps/vial/keymap.c @@ -0,0 +1,53 @@ +/* +Copyright 2020 Álvaro "Gondolindrim" Volpato + +This program is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program. If not, see . +*/ + +#include QMK_KEYBOARD_H + +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_DEL , + 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_HOME, + 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_Z , KC_X , KC_C , KC_V , KC_B, KC_N , KC_M , KC_COMM, KC_DOT , KC_SLSH, KC_RSFT, KC_UP , KC_END , + KC_LCTL , KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1) , KC_LEFT, KC_DOWN, KC_RGHT + ), + [1] = LAYOUT_all( + QK_BOOT, 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_MUTE, + 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_VOLU, + 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_VOLD, + 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_MPLY, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ), + [2] = LAYOUT_all( + 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, 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, 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 + ), + [3] = LAYOUT_all( + 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, 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, 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 + ) +}; diff --git a/keyboards/mode/m75h/keymaps/vial/rules.mk b/keyboards/mode/m75h/keymaps/vial/rules.mk new file mode 100644 index 0000000000..4f7618e9b2 --- /dev/null +++ b/keyboards/mode/m75h/keymaps/vial/rules.mk @@ -0,0 +1,2 @@ +VIA_ENABLE = yes +VIAL_ENABLE = yes diff --git a/keyboards/mode/m75h/keymaps/vial/vial.json b/keyboards/mode/m75h/keymaps/vial/vial.json new file mode 100644 index 0000000000..cc181bbee3 --- /dev/null +++ b/keyboards/mode/m75h/keymaps/vial/vial.json @@ -0,0 +1,224 @@ +{ + "name": "Mode SeventyFive H", + "vendorId": "0x00DE", + "productId": "0x7572", + "lighting": "none", + "matrix": {"rows": 7, "cols": 16}, + "layouts": { + "labels": ["7U Spacebar"], + "keymap": [ + [ + { + "c": "#777777" + }, + "0,0", + { + "x": 0.5, + "c": "#cccccc" + }, + "0,1", + "0,2", + "0,3", + "0,4", + { + "x": 0.5 + }, + "0,6", + "0,7", + "0,8", + "0,9", + { + "x": 0.5 + }, + "0,10", + "0,11", + "0,12", + "0,13", + { + "x": 0.5 + }, + "0,15" + ], + [ + { + "y": 0.5, + "c": "#cccccc" + }, + "1,0", + "1,1", + "1,2", + "1,3", + "1,4", + "1,5", + "1,6", + "1,7", + "1,8", + "1,9", + "1,10", + "1,11", + "1,12", + { + "c": "#aaaaaa", + "w": 2 + }, + "1,13", + { + "c": "#cccccc" + }, + "1,15" + ], + [ + { + "c": "#aaaaaa", + "w": 1.5 + }, + "2,0", + { + "c": "#cccccc" + }, + "2,1", + "2,2", + "2,3", + "2,4", + "2,5", + "2,6", + "2,7", + "2,8", + "2,9", + "2,10", + "2,11", + "2,12", + { + "c": "#aaaaaa", + "w": 1.5 + }, + "2,14", + { + "c": "#cccccc" + }, + "2,15" + ], + [ + { + "c": "#aaaaaa", + "w": 1.75 + }, + "3,0", + { + "c": "#cccccc" + }, + "3,1", + "3,2", + "3,3", + "3,4", + "3,5", + "3,6", + "3,7", + "3,8", + "3,9", + "3,10", + "3,11", + { + "c": "#777777", + "w": 2.25 + }, + "3,14", + { + "c": "#cccccc" + }, + "3,15" + ], + [ + { + "c": "#aaaaaa", + "w": 2.25 + }, + "4,0", + { + "c": "#cccccc" + }, + "4,2", + "4,3", + "4,4", + "4,5", + "4,6", + "4,7", + "4,8", + "4,9", + "4,10", + "4,11", + { + "c": "#aaaaaa", + "w": 1.75 + }, + "4,12", + { + "c": "#777777" + }, + "4,14", + { + "c": "#cccccc" + }, + "4,15" + ], + [ + { + "c": "#aaaaaa", + "w": 1.25 + }, + "5,0\n\n\n0,0", + { + "w": 1.25 + }, + "5,1\n\n\n0,0", + { + "w": 1.25 + }, + "5,2\n\n\n0,0", + { + "c": "#cccccc", + "w": 6.25 + }, + "6,6\n\n\n0,0", + { + "c": "#aaaaaa", + "w": 1.25 + }, + "6,10\n\n\n0,0", + { + "w": 1.25 + }, + "6,11\n\n\n0,0", + { + "x": 0.5, + "c": "#777777" + }, + "6,13", + "6,14", + "6,15" + ], + [ + { + "c": "#aaaaaa", + "w": 1.5 + }, + "5,0\n\n\n0,1", + "5,1\n\n\n0,1", + { + "w": 1.5 + }, + "5,2\n\n\n0,1", + { + "c": "#cccccc", + "w": 7 + }, + "6,6\n\n\n0,1", + { + "c": "#aaaaaa", + "w": 1.5 + }, + "6,11\n\n\n0,1" + ] + ] + } +} diff --git a/keyboards/mode/m75s/keymaps/vial/config.h b/keyboards/mode/m75s/keymaps/vial/config.h new file mode 100644 index 0000000000..c0bc8a51b7 --- /dev/null +++ b/keyboards/mode/m75s/keymaps/vial/config.h @@ -0,0 +1,9 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ + +#pragma once + +#define VIAL_KEYBOARD_UID {0x3D, 0x6C, 0x63, 0x19, 0xA7, 0x1F, 0x0E, 0x59} + +/* Unlock with esc / del */ +#define VIAL_UNLOCK_COMBO_ROWS { 0, 0 } +#define VIAL_UNLOCK_COMBO_COLS { 0, 15 } diff --git a/keyboards/mode/m75s/keymaps/vial/keymap.c b/keyboards/mode/m75s/keymaps/vial/keymap.c new file mode 100755 index 0000000000..fafdb6c136 --- /dev/null +++ b/keyboards/mode/m75s/keymaps/vial/keymap.c @@ -0,0 +1,53 @@ +/* +Copyright 2020 Álvaro "Gondolindrim" Volpato + +This program is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program. If not, see . +*/ + +#include QMK_KEYBOARD_H + +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_DEL , + 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_HOME, + 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_NUBS, KC_ENT , KC_PGDN, + KC_LSFT, KC_NUHS, 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_END , + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC , KC_RALT, MO(1) , KC_LEFT, KC_DOWN, KC_RGHT + ), + [1] = LAYOUT_all( + QK_BOOT , 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, KC_MUTE, + 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_VOLU, + 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_VOLD, + 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_MPLY, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ), + [2] = LAYOUT_all( + 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, 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, 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 + ), + [3] = LAYOUT_all( + 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, 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, 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 + ) +}; diff --git a/keyboards/mode/m75s/keymaps/vial/rules.mk b/keyboards/mode/m75s/keymaps/vial/rules.mk new file mode 100644 index 0000000000..4f7618e9b2 --- /dev/null +++ b/keyboards/mode/m75s/keymaps/vial/rules.mk @@ -0,0 +1,2 @@ +VIA_ENABLE = yes +VIAL_ENABLE = yes diff --git a/keyboards/mode/m75s/keymaps/vial/vial.json b/keyboards/mode/m75s/keymaps/vial/vial.json new file mode 100644 index 0000000000..d34f7c79f4 --- /dev/null +++ b/keyboards/mode/m75s/keymaps/vial/vial.json @@ -0,0 +1,267 @@ +{ + "name": "Mode SeventyFive S", + "vendorId": "0x00DE", + "productId": "0x7583", + "lighting": "none", + "matrix": {"rows": 7, "cols": 16}, + "layouts": { + "labels": [ + "7U Spacebar", + "Split Backspace", + "ISO Enter", + "Split Left Shift" + ], + "keymap": [ + [ + { + "x": 15.75 + }, + "1,13\n\n\n1,1", + "1,14\n\n\n1,1" + ], + [ + { + "y": 0.25, + "x": 2.75, + "c": "#777777" + }, + "0,0", + { + "x": 0.5, + "c": "#cccccc" + }, + "0,1", + "0,2", + "0,3", + "0,4", + { + "x": 0.5 + }, + "0,6", + "0,7", + "0,8", + "0,9", + { + "x": 0.5 + }, + "0,10", + "0,11", + "0,12", + "0,13", + { + "x": 0.5 + }, + "0,15" + ], + [ + { + "y": 0.5, + "x": 2.75, + "c": "#cccccc" + }, + "1,0", + "1,1", + "1,2", + "1,3", + "1,4", + "1,5", + "1,6", + "1,7", + "1,8", + "1,9", + "1,10", + "1,11", + "1,12", + { + "c": "#aaaaaa", + "w": 2 + }, + "1,13\n\n\n1,0", + { + "c": "#cccccc" + }, + "1,15" + ], + [ + { + "x": 2.75, + "c": "#aaaaaa", + "w": 1.5 + }, + "2,0", + { + "c": "#cccccc" + }, + "2,1", + "2,2", + "2,3", + "2,4", + "2,5", + "2,6", + "2,7", + "2,8", + "2,9", + "2,10", + "2,11", + "2,12", + { + "c": "#aaaaaa", + "w": 1.5 + }, + "2,14\n\n\n2,0", + { + "c": "#cccccc" + }, + "2,15", + { + "x": 1.5, + "c": "#777777", + "w": 1.25, + "h": 2, + "w2": 1.5, + "h2": 1, + "x2": -0.25 + }, + "3,14\n\n\n2,1" + ], + [ + { + "x": 2.75, + "c": "#aaaaaa", + "w": 1.75 + }, + "3,0", + { + "c": "#cccccc" + }, + "3,1", + "3,2", + "3,3", + "3,4", + "3,5", + "3,6", + "3,7", + "3,8", + "3,9", + "3,10", + "3,11", + { + "c": "#777777", + "w": 2.25 + }, + "3,14\n\n\n2,0", + { + "c": "#cccccc" + }, + "3,15", + { + "x": 0.5 + }, + "3,13\n\n\n2,1" + ], + [ + { + "c": "#aaaaaa", + "w": 1.25 + }, + "4,0\n\n\n3,1", + { + "c": "#cccccc" + }, + "4,1\n\n\n3,1", + { + "x": 0.5, + "c": "#aaaaaa", + "w": 2.25 + }, + "4,0\n\n\n3,0", + { + "c": "#cccccc" + }, + "4,2", + "4,3", + "4,4", + "4,5", + "4,6", + "4,7", + "4,8", + "4,9", + "4,10", + "4,11", + { + "c": "#aaaaaa", + "w": 1.75 + }, + "4,12", + { + "c": "#777777" + }, + "4,14", + { + "c": "#cccccc" + }, + "4,15" + ], + [ + { + "x": 2.75, + "c": "#aaaaaa", + "w": 1.25 + }, + "5,0\n\n\n0,0", + { + "w": 1.25 + }, + "5,1\n\n\n0,0", + { + "w": 1.25 + }, + "5,2\n\n\n0,0", + { + "c": "#cccccc", + "w": 6.25 + }, + "6,6\n\n\n0,0", + { + "c": "#aaaaaa", + "w": 1.25 + }, + "6,10\n\n\n0,0", + { + "w": 1.25 + }, + "6,11\n\n\n0,0", + { + "x": 0.5, + "c": "#777777" + }, + "6,13", + "6,14", + "6,15" + ], + [ + { + "x": 2.75, + "c": "#aaaaaa", + "w": 1.5 + }, + "5,0\n\n\n0,1", + "5,1\n\n\n0,1", + { + "w": 1.5 + }, + "5,2\n\n\n0,1", + { + "c": "#cccccc", + "w": 7 + }, + "6,6\n\n\n0,1", + { + "c": "#aaaaaa", + "w": 1.5 + }, + "6,11\n\n\n0,1" + ] + ] + } +} diff --git a/keyboards/mode/m80v1/m80s/keymaps/vial/config.h b/keyboards/mode/m80v1/m80s/keymaps/vial/config.h new file mode 100644 index 0000000000..f3a0d8c320 --- /dev/null +++ b/keyboards/mode/m80v1/m80s/keymaps/vial/config.h @@ -0,0 +1,8 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ + +#pragma once + +#define VIAL_KEYBOARD_UID {0xB5, 0x6B, 0xC8, 0x13, 0xD3, 0xF2, 0x3E, 0x53} +/* enter key as unlock */ +#define VIAL_UNLOCK_COMBO_ROWS { 0, 3 } +#define VIAL_UNLOCK_COMBO_COLS { 0, 12 } diff --git a/keyboards/mode/m80v1/m80s/keymaps/vial/keymap.c b/keyboards/mode/m80v1/m80s/keymaps/vial/keymap.c new file mode 100644 index 0000000000..6712f9e1c6 --- /dev/null +++ b/keyboards/mode/m80v1/m80s/keymaps/vial/keymap.c @@ -0,0 +1,42 @@ + /* +Copyright 2012,2013 Jun Wako + +This program is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program. If not, see . +*/ + +#include QMK_KEYBOARD_H +enum layer_names { + _BASE, + _FN1 +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + [_BASE] = LAYOUT_eighty_m80s( + 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_BSPC, KC_MUTE, KC_VOLD, KC_VOLU, + 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, MO(1), KC_UP, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), + + [_FN1] = LAYOUT_eighty_m80s( + QK_BOOT, 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, 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, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), + +}; diff --git a/keyboards/mode/m80v1/m80s/keymaps/vial/rules.mk b/keyboards/mode/m80v1/m80s/keymaps/vial/rules.mk new file mode 100644 index 0000000000..b60410dc1a --- /dev/null +++ b/keyboards/mode/m80v1/m80s/keymaps/vial/rules.mk @@ -0,0 +1,2 @@ +VIA_ENABLE = yes +VIAL_ENABLE = yes diff --git a/keyboards/mode/m80v1/m80s/keymaps/vial/vial.json b/keyboards/mode/m80v1/m80s/keymaps/vial/vial.json new file mode 100644 index 0000000000..d2442e9cc8 --- /dev/null +++ b/keyboards/mode/m80v1/m80s/keymaps/vial/vial.json @@ -0,0 +1,257 @@ +{ + "name": "Mode Eighty M80S", + "vendorId": "0x00DE", + "productId": "0x0080", + "lighting": "none", + "matrix": { + "rows": 6, + "cols": 16 + }, + "layouts": { + "labels": ["Split backspace", "Split Right Shift", "7U bottom row"], + "keymap": [ + [ + { + "c": "#777777" + }, + "0,0", + { + "x": 1, + "c": "#cccccc" + }, + "0,1", + "0,2", + "0,3", + "0,4", + { + "x": 0.5, + "c": "#aaaaaa" + }, + "0,5", + "0,6", + "0,7", + "0,8", + { + "x": 0.5, + "c": "#cccccc" + }, + "0,9", + "0,10", + "0,11", + "0,12", + { + "x": 0.25 + }, + "0,13", + "0,14", + "0,15" + ], + [ + { + "y": 0.5, + "c": "#777777" + }, + "1,0\n`", + { + "c": "#cccccc" + }, + "1,1", + "1,2", + "1,3", + "1,4", + "1,5", + "1,6", + "1,7", + "1,8", + "1,9", + "1,10", + "1,11", + "1,12", + { + "c": "#aaaaaa", + "w": 2 + }, + "3,13\n\n\n0,0", + { + "x": 0.25, + "c": "#cccccc" + }, + "1,13", + "1,14", + "1,15", + { + "x": 1.25 + }, + "3,13\n\n\n0,1", + "3,14\n\n\n0,1" + ], + [ + { + "c": "#aaaaaa", + "w": 1.5 + }, + "2,0", + { + "c": "#cccccc" + }, + "2,1", + "2,2", + "2,3", + "2,4", + "2,5", + "2,6", + "2,7", + "2,8", + "2,9", + "2,10", + "2,11", + "2,12", + { + "c": "#aaaaaa", + "w": 1.5 + }, + "4,13", + { + "x": 0.25, + "c": "#cccccc" + }, + "2,13", + "2,14", + "2,15" + ], + [ + { + "c": "#aaaaaa", + "w": 1.75 + }, + "3,0", + { + "c": "#cccccc" + }, + "3,1", + "3,2", + "3,3", + "3,4", + "3,5", + "3,6", + "3,7", + "3,8", + "3,9", + "3,10", + "3,11", + { + "c": "#777777", + "w": 2.25 + }, + "3,12" + ], + [ + { + "c": "#aaaaaa", + "w": 2.25 + }, + "4,0", + { + "c": "#cccccc" + }, + "4,1", + "4,2", + "4,3", + "4,4", + "4,5", + "4,6", + "4,7", + "4,8", + "4,9", + "4,10", + { + "c": "#aaaaaa", + "w": 2.75 + }, + "4,11\n\n\n1,0", + { + "x": 1.25, + "c": "#777777" + }, + "4,14", + { + "x": 2.25, + "c": "#cccccc", + "w": 1.75 + }, + "4,11\n\n\n1,1", + "4,12\n\n\n1,1" + ], + [ + { + "c": "#aaaaaa", + "w": 1.25 + }, + "5,0\n\n\n2,0", + { + "w": 1.25 + }, + "5,1\n\n\n2,0", + { + "w": 1.25 + }, + "5,2\n\n\n2,0", + { + "c": "#cccccc", + "w": 6.25 + }, + "5,6\n\n\n2,0", + { + "c": "#aaaaaa", + "w": 1.25 + }, + "5,9\n\n\n2,0", + { + "w": 1.25 + }, + "5,10\n\n\n2,0", + { + "w": 1.25 + }, + "5,11\n\n\n2,0", + { + "w": 1.25 + }, + "5,12\n\n\n2,0", + { + "x": 0.25, + "c": "#777777" + }, + "5,13", + "5,14", + "5,15" + ], + [ + { + "y": 0.25, + "c": "#cccccc", + "w": 1.5 + }, + "5,0\n\n\n2,1", + "5,1\n\n\n2,1", + { + "w": 1.5 + }, + "5,2\n\n\n2,1", + { + "w": 7 + }, + "5,6\n\n\n2,1", + { + "w": 1.5 + }, + "5,10\n\n\n2,1", + "5,11\n\n\n2,1", + { + "w": 1.5 + }, + "5,12\n\n\n2,1" + ] + ] + } +} diff --git a/keyboards/moondrop/dash75/keymaps/vial/config.h b/keyboards/moondrop/dash75/keymaps/vial/config.h new file mode 100644 index 0000000000..38194d0836 --- /dev/null +++ b/keyboards/moondrop/dash75/keymaps/vial/config.h @@ -0,0 +1,10 @@ +// Copyright 2023 moondroplab (@moondroplab) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#define DYNAMIC_KEYMAP_LAYER_COUNT 2 + +#define VIAL_KEYBOARD_UID {0xF5, 0xD5, 0x49, 0x62, 0xFE, 0x77, 0x30, 0x64} +#define VIAL_UNLOCK_COMBO_ROWS { 0, 3 } +#define VIAL_UNLOCK_COMBO_COLS { 0, 13 } diff --git a/keyboards/moondrop/dash75/keymaps/vial/keymap.c b/keyboards/moondrop/dash75/keymaps/vial/keymap.c new file mode 100644 index 0000000000..76ad4c55aa --- /dev/null +++ b/keyboards/moondrop/dash75/keymaps/vial/keymap.c @@ -0,0 +1,24 @@ +// Copyright 2023 moondroplab (@moondroplab) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT( + 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_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_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_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_PGUP, + 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_PGDN, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_APP, KC_LEFT, KC_DOWN, KC_RGHT + ), + + [1] = LAYOUT( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______ + ) +}; diff --git a/keyboards/moondrop/dash75/keymaps/vial/rules.mk b/keyboards/moondrop/dash75/keymaps/vial/rules.mk new file mode 100644 index 0000000000..f24b31f0a7 --- /dev/null +++ b/keyboards/moondrop/dash75/keymaps/vial/rules.mk @@ -0,0 +1,3 @@ +# Vial options +VIA_ENABLE = yes +VIAL_ENABLE = yes diff --git a/keyboards/moondrop/dash75/keymaps/vial/vial.json b/keyboards/moondrop/dash75/keymaps/vial/vial.json new file mode 100644 index 0000000000..b609ec4c18 --- /dev/null +++ b/keyboards/moondrop/dash75/keymaps/vial/vial.json @@ -0,0 +1,13 @@ +{ + "matrix": {"rows": 6, "cols": 15}, + "layouts": { + "keymap":[ + [{"c":"#777777"},"0,0",{"x":0.5,"c":"#cccccc"},"0,1","0,2","0,3","0,4",{"x":0.5},"0,6","0,7","0,8","0,9",{"x":0.5},"0,10","0,11","0,12","0,13",{"x":0.5},"0,14"], + [{"y":0.25},"1,0","1,1","1,2","1,3","1,4","1,5","1,6","1,7","1,8","1,9","1,10","1,11","1,12",{"w":2},"1,13","1,14"], + [{"w":1.5},"2,0","2,1","2,2","2,3","2,4","2,5","2,6","2,7","2,8","2,9","2,10","2,11","2,12",{"w":1.5},"2,13","2,14"], + [{"c":"#aaaaaa","w":1.75},"3,0",{"c":"#cccccc"},"3,1","3,2","3,3","3,4","3,5","3,6","3,7","3,8","3,9","3,10","3,11",{"c":"#777777","w":2.25},"3,13",{"c":"#cccccc"},"3,14"], + [{"c":"#aaaaaa","w":2.25},"4,0",{"c":"#cccccc"},"4,1","4,2","4,3","4,4","4,5","4,6","4,7","4,8","4,9","4,10",{"c":"#aaaaaa","w":1.75},"4,12",{"c":"#777777"},"4,13",{"c":"#cccccc"},"4,14"], + [{"c":"#aaaaaa","w":1.25},"5,0",{"w":1.25},"5,1",{"w":1.25},"5,2",{"c":"#cccccc","w":6.25},"5,5",{"c":"#aaaaaa","w":1.25},"5,9",{"w":1.25},"5,10",{"x":0.5,"c":"#777777"},"5,12","5,13","5,14"] + ] + } +} diff --git a/keyboards/moondrop/dash75/r1/config.h b/keyboards/moondrop/dash75/r1/config.h index 16b6125a2d..1fc7844cab 100644 --- a/keyboards/moondrop/dash75/r1/config.h +++ b/keyboards/moondrop/dash75/r1/config.h @@ -3,7 +3,9 @@ #pragma once -#define SERIAL_NUMBER "Dash 75" +#ifndef SERIAL_NUMBER +# define SERIAL_NUMBER "Dash 75" +#endif #define USB_SUSPEND_WAKEUP_DELAY 5000 // wait for USB hub to start diff --git a/keyboards/moondrop/dash75/r1/info.json b/keyboards/moondrop/dash75/r1/info.json index b562070dc9..d908748c6c 100644 --- a/keyboards/moondrop/dash75/r1/info.json +++ b/keyboards/moondrop/dash75/r1/info.json @@ -1,6 +1,6 @@ { "usb": { "pid": "0x7501", - "device_version": "1.5.0" + "device_version": "1.6.0" } } diff --git a/keyboards/mt/ncr80/hotswap/keymaps/vial/config.h b/keyboards/mt/ncr80/hotswap/keymaps/vial/config.h new file mode 100644 index 0000000000..5d5d6511da --- /dev/null +++ b/keyboards/mt/ncr80/hotswap/keymaps/vial/config.h @@ -0,0 +1,8 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ + +#pragma once + +#define VIAL_KEYBOARD_UID {0xF4, 0x0E, 0x00, 0x77, 0xA2, 0x55, 0x5A, 0x3E} +#define VIAL_UNLOCK_COMBO_ROWS { 0, 6 } +#define VIAL_UNLOCK_COMBO_COLS { 0, 3 } +#define DYNAMIC_KEYMAP_LAYER_COUNT 3 diff --git a/keyboards/mt/ncr80/hotswap/keymaps/vial/keymap.c b/keyboards/mt/ncr80/hotswap/keymaps/vial/keymap.c new file mode 100644 index 0000000000..fb95978a30 --- /dev/null +++ b/keyboards/mt/ncr80/hotswap/keymaps/vial/keymap.c @@ -0,0 +1,33 @@ +/* + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT( + 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_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_LALT, KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), + [1] = LAYOUT( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______) +}; diff --git a/keyboards/mt/ncr80/hotswap/keymaps/vial/rules.mk b/keyboards/mt/ncr80/hotswap/keymaps/vial/rules.mk new file mode 100644 index 0000000000..46f9f1360f --- /dev/null +++ b/keyboards/mt/ncr80/hotswap/keymaps/vial/rules.mk @@ -0,0 +1,3 @@ +VIA_ENABLE = yes +VIAL_ENABLE = yes +LTO_ENABLE = yes diff --git a/keyboards/mt/ncr80/hotswap/keymaps/vial/vial.json b/keyboards/mt/ncr80/hotswap/keymaps/vial/vial.json new file mode 100644 index 0000000000..6cc7dbfd70 --- /dev/null +++ b/keyboards/mt/ncr80/hotswap/keymaps/vial/vial.json @@ -0,0 +1,127 @@ +{ + "name": "NCR-80 Hotswap", + "vendorId": "0x4D54", + "productId": "0x2002", + "lighting": "none", + "matrix": { + "rows": 11, + "cols": 9 + }, + "layouts": { + "keymap": [ + [ + "0,0", + { "x": 1 }, + "0,2", + "0,3", + "0,4", + "0,5", + { "x": 0.5 }, + "0,6", + "0,7", + "0,8", + "6,8", + { "x": 0.5 }, + "6,7", + "6,5", + "6,4", + "6,3" + ], + [ + { "y": 0.5 }, + "1,0", + "1,1", + "1,2", + "1,3", + "1,4", + "1,5", + "1,6", + "1,7", + "1,8", + "7,8", + "7,0", + "7,7", + "7,5", + { "w": 2 }, + "7,3", + { "x": 0.25 }, + "7,6", + "7,2", + "7,1" + ], + [ + { "w": 1.5 }, + "2,0", + "2,1", + "2,2", + "2,3", + "2,4", + "2,5", + "2,6", + "2,7", + "2,8", + "8,8", + "8,7", + "8,5", + "8,4", + { "w": 1.5 }, + "8,3", + { "x": 0.25 }, + "8,6", + "8,2", + "8,1" + ], + [ + { "w": 1.75 }, + "3,0", + "3,1", + "3,2", + "3,3", + "3,4", + "3,5", + "3,6", + "3,7", + "3,8", + "9,8", + "9,7", + "9,5", + { "w": 2.25 }, + "9,3" + ], + [ + { "w": 2.25 }, + "4,0", + "4,2", + "4,3", + "4,4", + "4,5", + "4,6", + "4,7", + "4,8", + "10,8", + "10,7", + "10,5", + { "w": 2.75 }, + "10,4", + { "x": 1.25 }, + "9,2" + ], + [ + { "w": 1.5 }, + "5,0", + { "x": 1, "w": 1.5 }, + "5,2", + { "w": 7 }, + "5,6", + { "w": 1.5 }, + "5,7", + { "x": 1, "w": 1.5 }, + "5,3", + { "x": 0.25 }, + "10,6", + "10,2", + "10,1" + ] + ] + } +} diff --git a/keyboards/nack/keymaps/vial/config.h b/keyboards/nack/keymaps/vial/config.h new file mode 100644 index 0000000000..00112646cc --- /dev/null +++ b/keyboards/nack/keymaps/vial/config.h @@ -0,0 +1,8 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ + +#pragma once +#define VIAL_KEYBOARD_UID {0x92, 0x63, 0xA4, 0xD0, 0x7B, 0xD6, 0xE9, 0x86} +#define VIAL_UNLOCK_COMBO_ROWS { 0, 2 } +#define VIAL_UNLOCK_COMBO_COLS { 0, 12 } +#define RGB_MATRIX_FRAMEBUFFER_EFFECTS +#define RGB_MATRIX_KEYPRESSES diff --git a/keyboards/nack/keymaps/vial/keymap.c b/keyboards/nack/keymaps/vial/keymap.c new file mode 100644 index 0000000000..896ddbb755 --- /dev/null +++ b/keyboards/nack/keymaps/vial/keymap.c @@ -0,0 +1,65 @@ +/* Copyright 2020 farfalleflickan + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ +#include QMK_KEYBOARD_H + +// Defines names for use in layer keycodes and the keymap +enum layer_names { + BASE, + NUM, + FN +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [BASE] = LAYOUT( +/* __________________________________________________________________________________________________________________________________________________________________________ + | \ \ \ \ \ \ \ \ \ \ \ \ \ \ */ +// | |----TAB-----|---Q--------|-----W------|-----E------|-----R------|----T-------|-----Y------|-----U------|----I-------|------O-----|----P-------|----Å-------|--( ¨^~ )---| + 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, +// | |----ESC-----|---A--------|---S--------|----D-------|-----F------|-----G------|-----H------|-----J------|-----K------|-----L------|-----Ö------|-----Ä------|--( '* )----| + 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_NUHS, +// | |---SHIFT----|---Z--------|---X--------|----C-------|-----V------|-----B------|-----N------|------M-----|---( ,; )---|---( .: )---|---( -_ )---|----UP------|-BACKSPACE--| + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_UP, KC_BSPC, +// | |---CTRL-----|---ALT------|---META-----|----FN_1----|----------SPACE----------|----FN_2----|----AltGr---|--( <>| )---|---ENETER---|-LEFT-------|---DOWN-----|--RIGHT-----| + KC_LCTL, KC_LALT, KC_LGUI, MO(NUM), KC_SPC, KC_NO, MO(FN), KC_RALT, KC_NUBS, KC_ENT, KC_LEFT, KC_DOWN, KC_RIGHT +// \|____________|____________|____________|____________|____________|____________|____________|____________|____________|____________|____________|____________|____________| + ), + [NUM] = LAYOUT( +/* __________________________________________________________________________________________________________________________________________________________________________ + | \ \ \ \ \ \ \ \ \ \ \ \ \ \ */ +// | |---TAB------|---( 1! )---|--( 2"@ )---|--( 3#£ )---|---( 4¤$ )--|--( 5%€ )---|---( 6& )---|--( 7/{ )---|--( 8([ )---|--( 9)] )---|--( 0=} )---|---( +?\ )--|---( ´` )---| + _______, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, +// | |----ESC-----|-----F1-----|-----F2-----|----F3------|----F4------|----F5------|-----F6-----|-----F7------|----F8-----|-----F9-----|-----F10----|----F11-----|----F12-----| + _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, +// | |---SHIFT----|------------|------------|------------|------------|------------|------------|------------|------------|------------|------------|------------|------------| + _______, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, +// | |---CTRL-----|---ALT------|---META-----|---FN_1-----|------------|------------|----FN_2----|--AltGr-----|---( §½ )---|------------|------------|------------|------------| + _______, _______, _______, KC_TRNS, KC_NO, KC_NO, TO(BASE), _______, KC_GRV, KC_NO, KC_NO, KC_NO, KC_NO +// \|____________|____________|____________|____________|____________|____________|____________|____________|____________|____________|____________|____________|____________| + ), + [FN] = LAYOUT( +/* __________________________________________________________________________________________________________________________________________________________________________ + | \ \ \ \ \ \ \ \ \ \ \ \ \ \ */ +// | |-RGB TOGGLE-|-CHANGE RGB-|-RGB HUE UP-|-RGB SAT UP-|------------|------------|------------|------------|------------|------------|------------|------------|-QK_BOOT KBD--| + RGB_TOG, RGB_MOD, RGB_HUI, RGB_SAI, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, +// | |------------|------------|------------|------------|------------|------------|------------|------------|------------|------------|------------|------------|------------| + MU_TOG, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, +// | |------------|------------|------------|------------|------------|------------|------------|------------|------------|------------|------------|-RGB LIGHT +|------------| + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, RGB_VAI, KC_NO, +// | |------------|------------|------------|---FN_1-----|------------|------------|----FN_2----|------------|------------|------------|------------|-RGB LIGHT -|------------| + KC_NO, KC_NO, KC_NO, KC_TRNS, KC_NO, KC_NO, KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, RGB_VAD, KC_NO +// \|____________|____________|____________|____________|____________|____________|____________|____________|____________|____________|____________|____________|____________| + ) +}; diff --git a/keyboards/nack/keymaps/vial/rules.mk b/keyboards/nack/keymaps/vial/rules.mk new file mode 100644 index 0000000000..d013bc62da --- /dev/null +++ b/keyboards/nack/keymaps/vial/rules.mk @@ -0,0 +1,3 @@ +VIA_ENABLE = yes +VIAL_ENABLE = yes +VIALRGB_ENABLE = yes diff --git a/keyboards/nack/keymaps/vial/vial.json b/keyboards/nack/keymaps/vial/vial.json new file mode 100644 index 0000000000..05fe087a17 --- /dev/null +++ b/keyboards/nack/keymaps/vial/vial.json @@ -0,0 +1,72 @@ +{ + "lighting": "vialrgb", + "matrix": { + "rows": 4, + "cols": 13 + }, + "layouts": { + "keymap":[ + [ + "0,0", + "0,1", + "0,2", + "0,3", + "0,4", + "0,5", + "0,6", + "0,7", + "0,8", + "0,9", + "0,10", + "0,11", + "0,12" + ], + [ + "1,0", + "1,1", + "1,2", + "1,3", + "1,4", + "1,5", + "1,6", + "1,7", + "1,8", + "1,9", + "1,10", + "1,11", + "1,12" + ], + [ + "2,0", + "2,1", + "2,2", + "2,3", + "2,4", + "2,5", + "2,6", + "2,7", + "2,8", + "2,9", + "2,10", + "2,11", + "2,12" + ], + [ + "3,0", + "3,1", + "3,2", + "3,3", + "3,4", + "3,5", + "3,6", + "3,7", + "3,8", + "3,9", + "3,10", + "3,11", + "3,12" + ] +] + } +} + diff --git a/keyboards/pearlboards/pandora/keymaps/vial/config.h b/keyboards/pearlboards/pandora/keymaps/vial/config.h new file mode 100644 index 0000000000..f3c405bcb2 --- /dev/null +++ b/keyboards/pearlboards/pandora/keymaps/vial/config.h @@ -0,0 +1,14 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ + +#pragma once + +#define VIAL_KEYBOARD_UID {0x96, 0xA0, 0x33, 0x0C, 0x28, 0x21, 0x96, 0x63} + +#define VIAL_UNLOCK_COMBO_ROWS { 0, 2 } +#define VIAL_UNLOCK_COMBO_COLS { 0, 13 } + +#undef ENCODER_RESOLUTION +#define ENCODER_RESOLUTION 4 + +// space saving measures +#define VIAL_COMBO_ENTRIES 2 diff --git a/keyboards/pearlboards/pandora/keymaps/vial/keymap.c b/keyboards/pearlboards/pandora/keymaps/vial/keymap.c new file mode 100644 index 0000000000..13a002341a --- /dev/null +++ b/keyboards/pearlboards/pandora/keymaps/vial/keymap.c @@ -0,0 +1,82 @@ +/* +Copyright 2021 Koobaczech + +This program is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program. If not, see . +*/ + +#include QMK_KEYBOARD_H + +enum custom_keycodes { + RGBWINGS = SAFE_RANGE, +}; + +/* Function to only light up winglets RGB. Must be done in static RGB mode */ +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + switch (keycode) { + case RGBWINGS: + if (record->event.pressed) { + /* Blackout these RGB components */ + tap_code16(RGB_MODE_PLAIN); + rgblight_setrgb_at(0, 0, 0, 0); + rgblight_setrgb_at(0, 0, 0, 1); + rgblight_setrgb_at(0, 0, 0, 4); + rgblight_setrgb_at(0, 0, 0, 5); + rgblight_setrgb_at(0, 0, 0, 6); + rgblight_setrgb_at(0, 0, 0, 7); + rgblight_setrgb_at(0, 0, 0, 10); + rgblight_setrgb_at(0, 0, 0, 11); + } + break; + } + return true; +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT_all( + QK_GESC, 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_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_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, MO(1), + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_APP, KC_RCTL), + + [1] = LAYOUT_all( + QK_BOOT, 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_TRNS, KC_DEL, + KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, RGBWINGS, KC_TRNS, KC_LEFT, KC_DOWN, KC_RIGHT), + + [2] = LAYOUT_all( + 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, 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, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), + + [3] = LAYOUT_all( + 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, 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, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS) +}; + +#if defined(ENCODER_MAP_ENABLE) +const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { + [0] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU) }, + [1] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS) }, + [2] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS) }, + [3] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS) }, +}; +#endif diff --git a/keyboards/pearlboards/pandora/keymaps/vial/rules.mk b/keyboards/pearlboards/pandora/keymaps/vial/rules.mk new file mode 100644 index 0000000000..acd7bd5f3f --- /dev/null +++ b/keyboards/pearlboards/pandora/keymaps/vial/rules.mk @@ -0,0 +1,8 @@ +VIA_ENABLE = yes +VIAL_ENABLE = yes +ENCODER_MAP_ENABLE = yes +# space saving measures +LTO_ENABLE = yes +TAP_DANCE_ENABLE = no +KEY_OVERRIDE_ENABLE = no +QMK_SETTINGS = no diff --git a/keyboards/pearlboards/pandora/keymaps/vial/vial.json b/keyboards/pearlboards/pandora/keymaps/vial/vial.json new file mode 100644 index 0000000000..3811c4bc7a --- /dev/null +++ b/keyboards/pearlboards/pandora/keymaps/vial/vial.json @@ -0,0 +1,137 @@ +{ + "name": "Pandora - By Koobaczech", + "vendorId": "0x6963", + "productId": "0x6963", + "lighting": "qmk_rgblight", + "matrix": {"rows": 5, "cols": 15}, + "layouts": { + "labels": [ + ["Backspace", "Split", "Full"], + ["Enter", "ISO", "ANSI"], + ["Left Shift", "Split", "Full"], + ["Right Shift", "Split", "Full"], + ["Bottom Row", "ANSI", "Tsangan"] + ], + "keymap": [ + [ {"x":8.75}, "0,1\n\n\n\n\n\n\n\n\ne", {"x": 1}, "0,0\n\n\n\n\n\n\n\n\ne" ], + [ + { "c": "#777777", "x": 2.75 }, + "0,0", + { "c": "#cccccc" }, + "0,1", + "0,2", + "0,3", + "0,4", + "0,5", + "0,6", + "0,7", + "0,8", + "0,9", + "0,10", + "0,11", + "0,12", + "0,13\n\n\n0,0", + { "c": "#aaaaaa" }, + "0,14\n\n\n0,0", + { "x": 1.25, "w": 2 }, + "0,14\n\n\n0,1" + ], + [ + { "w": 1.5, "x": 2.75 }, + "1,0", + { "c": "#cccccc" }, + "1,1", + "1,2", + "1,3", + "1,4", + "1,5", + "1,6", + "1,7", + "1,8", + "1,9", + "1,10", + "1,11", + "1,12", + { "c": "#aaaaaa", "w": 1.5, "x": 3.25 }, + "1,13\n\n\n1,1" + ], + [ + { "c": "#aaaaaa", "w": 1.75, "x": 2.75 }, + "2,0", + { "c": "#cccccc" }, + "2,1", + "2,2", + "2,3", + "2,4", + "2,5", + "2,6", + "2,7", + "2,8", + "2,9", + "2,10", + "2,11", + { "c": "#cccccc" }, + "2,12\n\n\n1,0", + { "c": "#777777", "y": -1, "w": 1.25, "h": 2, "w2": 1.5, "h2": 1, "x2": -0.25 }, + "2,13\n\n\n1,0", + { "c": "#777777", "w": 2.25, "x": 1, "y": 1 }, + "2,13\n\n\n1,1" + ], + [ + { "c": "#aaaaaa", "w": 2.25 }, + "3,0\n\n\n2,1", + { "c": "#aaaaaa", "w": 1.25, "x": 0.5 }, + "3,0\n\n\n2,0", + { "c": "#cccccc" }, + "3,1\n\n\n2,0", + "3,2", + "3,3", + "3,4", + "3,5", + "3,6", + "3,7", + "3,8", + "3,9", + "3,10", + "3,11", + { "c": "#aaaaaa", "w": 1.75 }, + "3,12\n\n\n3,0", + "3,13\n\n\n3,0", + { "c": "#aaaaaa", "w": 2.75, "x": 0.5 }, + "3,12\n\n\n3,1" + ], + [ + { "w": 1.25, "x": 2.75 }, + "4,0\n\n\n4,0", + { "w": 1.25 }, + "4,1\n\n\n4,0", + { "w": 1.25 }, + "4,2\n\n\n4,0", + { "c": "#cccccc", "w": 6.25 }, + "4,6\n\n\n4,0", + { "c": "#aaaaaa", "w": 1.25 }, + "4,10\n\n\n4,0", + { "w": 1.25 }, + "4,11\n\n\n4,0", + { "w": 1.25 }, + "4,12\n\n\n4,0", + { "w": 1.25 }, + "4,13\n\n\n4,0" + ], + [ + { "w": 1.5, "x": 2.75, "y": 0.5 }, + "4,0\n\n\n4,1", + "4,1\n\n\n4,1", + { "w": 1.5 }, + "4,2\n\n\n4,1", + { "c": "#cccccc", "w": 7 }, + "4,6\n\n\n4,1", + { "w": 1.5 }, + "4,11\n\n\n4,1", + "4,12\n\n\n4,1", + { "w": 1.5 }, + "4,13\n\n\n4,1" + ] + ] + } +} diff --git a/keyboards/planck/rev6_drop/keymaps/vial/rules.mk b/keyboards/planck/rev6_drop/keymaps/vial/rules.mk index 9dbbcc4c49..1ab38db929 100644 --- a/keyboards/planck/rev6_drop/keymaps/vial/rules.mk +++ b/keyboards/planck/rev6_drop/keymaps/vial/rules.mk @@ -1,5 +1,6 @@ VIA_ENABLE = yes VIAL_ENABLE = yes +RGB_MATRIX_ENABLE = yes VIALRGB_ENABLE = yes LTO_ENABLE = yes diff --git a/keyboards/planck/rev6_drop/keymaps/vial/vial.json b/keyboards/planck/rev6_drop/keymaps/vial/vial.json index edf741abc7..5a0f5f9de2 100644 --- a/keyboards/planck/rev6_drop/keymaps/vial/vial.json +++ b/keyboards/planck/rev6_drop/keymaps/vial/vial.json @@ -2,17 +2,8 @@ "name": "OLKB PLANCK REV6.1", "vendorId": "0x03A8", "productId": "0xA4F9", - "firmwareVersion": 0, - "keycodes": ["via/keycodes", "via/qmk_lighting"], - "lighting": "vialrgb", - "menus": [ - "via/keymap", - "via/layouts", - "via/macros", - "via/save_load", - "core/qmk_rgblight" - ], "matrix": {"rows": 8, "cols": 6}, + "lighting": "vialrgb", "layouts": { "labels": [["Layout", "MIT (1x2u)", "Grid (2x1u)", "2x2u", "3x3u"]], "keymap": [ @@ -113,4 +104,4 @@ ] ] } -} \ No newline at end of file +} diff --git a/keyboards/rainkeebs/twoyo/config.h b/keyboards/rainkeebs/twoyo/config.h new file mode 100644 index 0000000000..a14020674f --- /dev/null +++ b/keyboards/rainkeebs/twoyo/config.h @@ -0,0 +1,25 @@ +/* Copyright 2021 Regan Palmer + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ +#pragma once + +/* usb handedness? */ +#define SPLIT_USB_DETECT + +/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ +#define LOCKING_SUPPORT_ENABLE + +/* Locking resynchronize hack */ +#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/rainkeebs/twoyo/info.json b/keyboards/rainkeebs/twoyo/info.json new file mode 100644 index 0000000000..2c8fcd1a4a --- /dev/null +++ b/keyboards/rainkeebs/twoyo/info.json @@ -0,0 +1,97 @@ +{ + "manufacturer": "rainkeebs", + "keyboard_name": "Twoyo", + "maintainer": "rainkeebs", + "development_board": "promicro", + "diode_direction": "COL2ROW", + "encoder": { + "rotary": [ + {"pin_a": "F4", "pin_b": "F5"} + ] + }, + "features": { + "bootmagic": true, + "encoder": true, + "extrakey": true, + "mousekey": true, + "nkro": true + }, + "matrix_pins": { + "cols": ["D1", "B6", "B2", "B3", "B1", "F7"], + "rows": ["F6", "C6", "D4", "D0"] + }, + "split": { + "enabled": true, + "encoder": { + "right": { + "rotary": [ + {"pin_a": "D1", "pin_b": "D0"} + ] + } + }, + "matrix_pins": { + "right": { + "cols": ["D4", "C6", "D7", "E6", "B4", "B5"], + "rows": ["F4", "F7", "F6", "B6"] + } + }, + "soft_serial_pin": "D3", + "transport": { + "protocol": "serial" + } + }, + "url": "https://www.rainkeebs.mx/product/twoyo-keyboard-kit", + "usb": { + "device_version": "0.0.1", + "pid": "0x616B", + "vid": "0x726B" + }, + "layouts": { + "LAYOUT": { + "layout": [ + {"label": "0,0", "matrix": [0, 0], "x": 0, "y": 0, "w": 1}, + {"label": "0,1", "matrix": [0, 1], "x": 1, "y": 0, "w": 1}, + {"label": "0,2", "matrix": [0, 2], "x": 2, "y": 0, "w": 1}, + {"label": "0,3", "matrix": [0, 3], "x": 3, "y": 0, "w": 1}, + {"label": "0,4", "matrix": [0, 4], "x": 4, "y": 0, "w": 1}, + {"label": "0,5", "matrix": [0, 5], "x": 5, "y": 0, "w": 1}, + {"label": "0,6", "matrix": [4, 0], "x": 8, "y": 0, "w": 1}, + {"label": "0,7", "matrix": [4, 1], "x": 9, "y": 0, "w": 1}, + {"label": "0,8", "matrix": [4, 2], "x": 10, "y": 0, "w": 1}, + {"label": "0,9", "matrix": [4, 3], "x": 11, "y": 0, "w": 1}, + {"label": "0,10", "matrix": [4, 4], "x": 12, "y": 0, "w": 1}, + {"label": "0,11", "matrix": [4, 5], "x": 13, "y": 0, "w": 1}, + {"label": "1,0", "matrix": [1, 0], "x": 0, "y": 1, "w": 1.25}, + {"label": "1,1", "matrix": [1, 1], "x": 1.25, "y": 1, "w": 1}, + {"label": "1,2", "matrix": [1, 2], "x": 2.25, "y": 1, "w": 1}, + {"label": "1,3", "matrix": [1, 3], "x": 3.25, "y": 1, "w": 1}, + {"label": "1,4", "matrix": [1, 4], "x": 4.25, "y": 1, "w": 1}, + {"label": "1,5", "matrix": [1, 5], "x": 5.25, "y": 1, "w": 1}, + {"label": "1,7", "matrix": [5, 1], "x": 8.25, "y": 1, "w": 1}, + {"label": "1,8", "matrix": [5, 2], "x": 9.25, "y": 1, "w": 1}, + {"label": "1,9", "matrix": [5, 3], "x": 10.25, "y": 1, "w": 1}, + {"label": "1,10", "matrix": [5, 4], "x": 11.25, "y": 1, "w": 1}, + {"label": "1,11", "matrix": [5, 5], "x": 12.25, "y": 1, "w": 1.75}, + {"label": "2,0", "matrix": [2, 0], "x": 0, "y": 2, "w": 1.75}, + {"label": "2,1", "matrix": [2, 1], "x": 1.75, "y": 2, "w": 1}, + {"label": "2,2", "matrix": [2, 2], "x": 2.75, "y": 2, "w": 1}, + {"label": "2,3", "matrix": [2, 3], "x": 3.75, "y": 2, "w": 1}, + {"label": "2,4", "matrix": [2, 4], "x": 4.75, "y": 2, "w": 1}, + {"label": "2,5", "matrix": [2, 5], "x": 5.75, "y": 2, "w": 1}, + {"label": "2,7", "matrix": [6, 1], "x": 8.75, "y": 2, "w": 1}, + {"label": "2,8", "matrix": [6, 2], "x": 9.75, "y": 2, "w": 1}, + {"label": "2,9", "matrix": [6, 3], "x": 10.75, "y": 2, "w": 1}, + {"label": "2,10", "matrix": [6, 4], "x": 11.75, "y": 2, "w": 1}, + {"label": "2,11", "matrix": [6, 5], "x": 12.75, "y": 2, "w": 1.25}, + {"label": "3,0", "matrix": [3, 0], "x": 0, "y": 3, "w": 1.25}, + {"label": "3,1", "matrix": [3, 1], "x": 1.25, "y": 3, "w": 1}, + {"label": "3,2", "matrix": [3, 2], "x": 2.25, "y": 3, "w": 1.25}, + {"label": "3,4", "matrix": [3, 4], "x": 3.5, "y": 3, "w": 2.75}, + {"label": "3,7", "matrix": [7, 1], "x": 8.25, "y": 3, "w": 2.25}, + {"label": "3,9", "matrix": [7, 3], "x": 10.5, "y": 3, "w": 1.25}, + {"label": "3,10", "matrix": [7, 4], "x": 11.75, "y": 3, "w": 1}, + {"label": "3,11", "matrix": [7, 5], "x": 12.75, "y": 3, "w": 1.25} + ] + } + } +} diff --git a/keyboards/rainkeebs/twoyo/keymaps/default/keymap.c b/keyboards/rainkeebs/twoyo/keymaps/default/keymap.c new file mode 100644 index 0000000000..5e14849704 --- /dev/null +++ b/keyboards/rainkeebs/twoyo/keymaps/default/keymap.c @@ -0,0 +1,57 @@ +/* Copyright 2021 Regan Palmer + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ +#include QMK_KEYBOARD_H + +#if defined(ENCODER_MAP_ENABLE) +const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { + [0] = { ENCODER_CCW_CW(KC_MS_WH_UP, KC_MS_WH_DOWN), ENCODER_CCW_CW(KC_VOLD, KC_VOLU) }, + [1] = { ENCODER_CCW_CW(RGB_HUD, RGB_HUI), ENCODER_CCW_CW(RGB_SAD, RGB_SAI) }, + [2] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI), ENCODER_CCW_CW(RGB_SPD, RGB_SPI) }, + [3] = { ENCODER_CCW_CW(RGB_RMOD, RGB_MOD), ENCODER_CCW_CW(KC_RIGHT, KC_LEFT) }, + // Encoder 1 Encoder 2 +}; +#endif + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + LAYOUT( + KC_ESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, + KC_TAB, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_ENTER, + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, MO(1), + KC_LCTL, KC_LGUI, KC_LALT, MO(2), KC_SPC, KC_RALT, KC_RGUI, KC_RCTL + ), + + LAYOUT( + KC_TILDE, KC_EXCLAIM, KC_AT, KC_HASH, KC_DOLLAR, KC_PERCENT, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_TRNS, + KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_UNDS, KC_LCBR, KC_RCBR, KC_DQT, KC_COLON, KC_TRNS, + KC_TRNS, QK_BOOT, KC_NO, KC_NO, KC_NO, KC_PLUS, KC_PIPE, KC_QUES, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ), + + LAYOUT( + KC_GRAVE, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_TRNS, + KC_TRNS, KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT, KC_MINS, KC_LBRC, KC_RBRC, KC_QUOTE, KC_SCLN, KC_TRNS, + KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_EQL, KC_BSLS, KC_SLASH, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ), + + LAYOUT( + 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, 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 + ) +}; diff --git a/keyboards/rainkeebs/twoyo/keymaps/default/rules.mk b/keyboards/rainkeebs/twoyo/keymaps/default/rules.mk new file mode 100644 index 0000000000..ee32568148 --- /dev/null +++ b/keyboards/rainkeebs/twoyo/keymaps/default/rules.mk @@ -0,0 +1 @@ +ENCODER_MAP_ENABLE = yes diff --git a/keyboards/rainkeebs/twoyo/keymaps/vial/config.h b/keyboards/rainkeebs/twoyo/keymaps/vial/config.h new file mode 100644 index 0000000000..46c64c244c --- /dev/null +++ b/keyboards/rainkeebs/twoyo/keymaps/vial/config.h @@ -0,0 +1,8 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ + +#pragma once + +#define VIAL_KEYBOARD_UID {0xE1, 0x46, 0x48, 0x68, 0xFC, 0x48, 0xF5, 0x48} +#define VIAL_UNLOCK_COMBO_ROWS { 0, 0 } +#define VIAL_UNLOCK_COMBO_COLS { 0, 1 } +#define VIAL_TAP_DANCE_ENTRIES 4 diff --git a/keyboards/rainkeebs/twoyo/keymaps/vial/keymap.c b/keyboards/rainkeebs/twoyo/keymaps/vial/keymap.c new file mode 100644 index 0000000000..5e14849704 --- /dev/null +++ b/keyboards/rainkeebs/twoyo/keymaps/vial/keymap.c @@ -0,0 +1,57 @@ +/* Copyright 2021 Regan Palmer + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ +#include QMK_KEYBOARD_H + +#if defined(ENCODER_MAP_ENABLE) +const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { + [0] = { ENCODER_CCW_CW(KC_MS_WH_UP, KC_MS_WH_DOWN), ENCODER_CCW_CW(KC_VOLD, KC_VOLU) }, + [1] = { ENCODER_CCW_CW(RGB_HUD, RGB_HUI), ENCODER_CCW_CW(RGB_SAD, RGB_SAI) }, + [2] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI), ENCODER_CCW_CW(RGB_SPD, RGB_SPI) }, + [3] = { ENCODER_CCW_CW(RGB_RMOD, RGB_MOD), ENCODER_CCW_CW(KC_RIGHT, KC_LEFT) }, + // Encoder 1 Encoder 2 +}; +#endif + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + LAYOUT( + KC_ESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, + KC_TAB, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_ENTER, + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, MO(1), + KC_LCTL, KC_LGUI, KC_LALT, MO(2), KC_SPC, KC_RALT, KC_RGUI, KC_RCTL + ), + + LAYOUT( + KC_TILDE, KC_EXCLAIM, KC_AT, KC_HASH, KC_DOLLAR, KC_PERCENT, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_TRNS, + KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_UNDS, KC_LCBR, KC_RCBR, KC_DQT, KC_COLON, KC_TRNS, + KC_TRNS, QK_BOOT, KC_NO, KC_NO, KC_NO, KC_PLUS, KC_PIPE, KC_QUES, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ), + + LAYOUT( + KC_GRAVE, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_TRNS, + KC_TRNS, KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT, KC_MINS, KC_LBRC, KC_RBRC, KC_QUOTE, KC_SCLN, KC_TRNS, + KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_EQL, KC_BSLS, KC_SLASH, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ), + + LAYOUT( + 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, 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 + ) +}; diff --git a/keyboards/rainkeebs/twoyo/keymaps/vial/rules.mk b/keyboards/rainkeebs/twoyo/keymaps/vial/rules.mk new file mode 100644 index 0000000000..45ad307be7 --- /dev/null +++ b/keyboards/rainkeebs/twoyo/keymaps/vial/rules.mk @@ -0,0 +1,6 @@ +VIA_ENABLE = yes +VIAL_ENABLE = yes +ENCODER_MAP_ENABLE = yes +LTO_ENABLE = yes +QMK_SETTINGS = no +TAP_DANCE_ENABLE = no diff --git a/keyboards/rainkeebs/twoyo/keymaps/vial/vial.json b/keyboards/rainkeebs/twoyo/keymaps/vial/vial.json new file mode 100644 index 0000000000..6cd5effb19 --- /dev/null +++ b/keyboards/rainkeebs/twoyo/keymaps/vial/vial.json @@ -0,0 +1,87 @@ +{ + "name": "Twoyo", + "matrix": { + "rows": 8, + "cols": 6 + }, + "layouts": { + "labels": [ + "1u Right Shift" + ], + "keymap": [ + [ + { "y": 0.25 }, + "0,0\n\n\n\n\n\n\n\n\ne", + "0,1\n\n\n\n\n\n\n\n\ne", + { "x": 9 }, + "1,0\n\n\n\n\n\n\n\n\ne", + "1,1\n\n\n\n\n\n\n\n\ne"], + [ + "0,0", + "0,1", + "0,2", + "0,3", + "0,4", + "0,5", + { "x": 1 }, + "4,0", + "4,1", + "4,2", + "4,3", + "4,4", + "4,5" + ], + [ + { "w": 1.25 }, + "1,0", + "1,1", + "1,2", + "1,3", + "1,4", + "1,5", + { "x": 1 }, + "5,1", + "5,2", + "5,3", + "5,4", + { "w": 1.75 }, + "5,5" + ], + [ + { "w": 1.75 }, + "2,0", + "2,1", + "2,2", + "2,3", + "2,4", + "2,5", + { "x": 1 }, + "6,1", + "6,2", + "6,3", + "6,4\n0,0", + { "w": 1.25 }, + "6,5\n0,0", + { "x": 0.25, "w": 1.25 }, + "6,4\n\n\n0,1", + "6,5\n\n\n0,1" + ], + [ + { "w": 1.25 }, + "3,0", + "3,1", + { "w": 1.25 }, + "3,2", + { "w": 2.75 }, + "3,4", + { "x": 1, "w": 2.25 }, + "7,1", + { "w": 1.25 }, + "7,3", + "7,4", + { "w": 1.25 }, + "7,5" + ] + ] + } +} diff --git a/keyboards/rainkeebs/twoyo/readme.md b/keyboards/rainkeebs/twoyo/readme.md new file mode 100644 index 0000000000..75f45db063 --- /dev/null +++ b/keyboards/rainkeebs/twoyo/readme.md @@ -0,0 +1,22 @@ +# Twoyo + +![Twoyo](https://i.imgur.com/j48Gq0g.png) + +A 12u split staggered 40% kit. + +* Keyboard Maintainer: Rain +* Hardware Supported: Yasui PCB v2 +* Hardware Availability: [rainkeebs](https://www.rainkeebs.mx/product/twoyo-keyboard-kit) + + +Make example for this keyboard (after setting up your build environment): + + qmk compile -kb twoyo -kb default + +To reset the keyboard, hold the top left key while plugging in, or hit the reset button near the USB port + +Install example for this keyboard: + + qmk flash -kb twoyo -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). \ No newline at end of file diff --git a/keyboards/rainkeebs/twoyo/rules.mk b/keyboards/rainkeebs/twoyo/rules.mk new file mode 100644 index 0000000000..fc89e3b54c --- /dev/null +++ b/keyboards/rainkeebs/twoyo/rules.mk @@ -0,0 +1,5 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader +BOOTLOADER = caterina diff --git a/keyboards/reviung/reviung53/keymaps/vial/config.h b/keyboards/reviung/reviung53/keymaps/vial/config.h new file mode 100644 index 0000000000..75e568566e --- /dev/null +++ b/keyboards/reviung/reviung53/keymaps/vial/config.h @@ -0,0 +1,7 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ + +#pragma once + +#define VIAL_KEYBOARD_UID {0xE9, 0xF8, 0x22, 0xB0, 0x41, 0x10, 0x91, 0xC4} +#define VIAL_UNLOCK_COMBO_ROWS { 0, 5 } +#define VIAL_UNLOCK_COMBO_COLS { 2, 3 } diff --git a/keyboards/reviung/reviung53/keymaps/vial/keymap.c b/keyboards/reviung/reviung53/keymaps/vial/keymap.c new file mode 100644 index 0000000000..4764cbd274 --- /dev/null +++ b/keyboards/reviung/reviung53/keymaps/vial/keymap.c @@ -0,0 +1,55 @@ +// Copyright 2021 gtips (@gtips) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H + +// Defines names for use in layer keycodes and the keymap +enum layer_names { + _BASE, + _LOWER, + _RAISE, + _ADJUST +}; + +#define LOWER MO(_LOWER) +#define RAISE MO(_RAISE) +#define ADJUST MO(_ADJUST) + +#define SF_SS RSFT_T(KC_SLSH) +#define SP_LO LT(LOWER, KC_SPC) +#define SP_RA LT(RAISE, KC_SPC) + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_BASE] = LAYOUT_reviung53( + KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, 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_BSPC, + KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_ENT, + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, SF_SS, + KC_LCTL, KC_LGUI, KC_LALT, SP_LO, SP_RA, KC_LALT, KC_RGUI, KC_RCTL + ), + [_LOWER] = LAYOUT_reviung53( + QK_GESC, KC_F9, KC_F10, KC_F11, KC_F12, KC_INS, KC_PAUS, KC_SCRL, KC_PSCR, _______, + _______, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, _______, + _______, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, XXXXXXX, KC_QUOT, + _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_HOME, KC_END, KC_PGUP, KC_PGDN, KC_SLSH, + _______, _______, _______, _______, _______, _______, _______, _______ + ), + [_RAISE] = LAYOUT_reviung53( + KC_TILD, KC_F9, KC_F10, KC_F11, KC_F12, KC_MUTE, KC_VOLU, KC_VOLD, KC_MPLY, _______, + _______, 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_LBRC, KC_RBRC, KC_BSLS, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_DQUO, + _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_QUES, + _______, _______, _______, _______, _______, _______, _______, _______ + ), + [_ADJUST] = LAYOUT_reviung53( + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, QK_BOOT, + RGB_VAI, RGB_SAI, RGB_HUI, RGB_MOD, XXXXXXX, RGB_TOG, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + RGB_VAD, RGB_SAD, RGB_HUD, RGB_RMOD, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + XXXXXXX, XXXXXXX, XXXXXXX, _______, _______, XXXXXXX, XXXXXXX, XXXXXXX + ), +}; + +layer_state_t layer_state_set_user(layer_state_t state) { + return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST); +} diff --git a/keyboards/reviung/reviung53/keymaps/vial/rules.mk b/keyboards/reviung/reviung53/keymaps/vial/rules.mk new file mode 100644 index 0000000000..043b69911e --- /dev/null +++ b/keyboards/reviung/reviung53/keymaps/vial/rules.mk @@ -0,0 +1,4 @@ +VIA_ENABLE = yes +VIAL_ENABLE = yes +LTO_ENABLE = yes +QMK_SETTINGS = no diff --git a/keyboards/reviung/reviung53/keymaps/vial/vial.json b/keyboards/reviung/reviung53/keymaps/vial/vial.json new file mode 100644 index 0000000000..2de141256b --- /dev/null +++ b/keyboards/reviung/reviung53/keymaps/vial/vial.json @@ -0,0 +1,137 @@ +{ + "keyboard_name": "reviung53", + "manufacturer": "gtips", + "url": "", + "maintainer": "gtips", + "usb": { + "vid": "0x4E94", + "pid": "0x4E09", + "device_version": "0.0.1" + }, + "lighting": "qmk_rgblight", + "matrix": { + "rows": 7, + "cols": 8 + }, + "layouts": { + "keymap": [ + [ + { + "x": 2.25 + }, + "0,2", + { + "x": 0.25 + }, + "0,3", + "0,4", + "0,5", + "0,6", + { + "x": 0.25 + }, + "0,7", + "4,0", + "4,1", + "4,2", + { + "x": 0.25 + }, + "4,3" + ], + [ + { + "w": 1.5 + }, + "1,0", + "1,1", + "1,2", + "1,3", + "1,4", + "1,5", + "1,6", + "1,7", + "4,4", + "4,5", + "4,6", + { + "w": 1.5 + }, + "4,7" + ], + [ + { + "w": 1.75 + }, + "2,0", + "2,1", + "2,2", + "2,3", + "2,4", + "2,5", + "2,6", + "2,7", + "5,0", + "5,1", + "5,2", + { + "w": 1.25 + }, + "5,3" + ], + [ + { + "w": 2.25 + }, + "3,0", + "3,1", + "3,2", + "3,3", + "3,4", + "3,5", + "3,6", + "3,7", + "5,4", + "5,5", + { + "w": 1.75 + }, + "5,6" + ], + [ + { + "w": 1.5 + }, + "6,0", + { + "w": 1.25 + }, + "6,1", + { + "w": 1.25 + }, + "6,2", + { + "w": 2.75 + }, + "6,3", + { + "w": 2.25 + }, + "6,4", + { + "w": 1.25 + }, + "6,5", + { + "w": 1.25 + }, + "6,6", + { + "w": 1.5 + }, + "6,7" + ] + ] + } +} diff --git a/keyboards/sneakbox/aliceclonergb/keymaps/vial/keymap.c b/keyboards/sneakbox/aliceclonergb/keymaps/vial/keymap.c index bdd6deb5f8..a55b58780e 100644 --- a/keyboards/sneakbox/aliceclonergb/keymaps/vial/keymap.c +++ b/keyboards/sneakbox/aliceclonergb/keymaps/vial/keymap.c @@ -20,9 +20,7 @@ along with this program. If not, see . // Defines names for use in layer keycodes and the keymap enum layer_names { _BASE, - _FN, - _L3, - _L4 + _FN }; const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { @@ -38,17 +36,5 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_RMOD, RGB_MOD, RGB_TOG, QK_BOOT, KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_VAD, RGB_VAI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_SAD, RGB_SAI, KC_TRNS, RGB_HUI, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), - [_L3] = LAYOUT_alice_split_bs( - 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, 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, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), - [_L4] = LAYOUT_alice_split_bs( - 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, 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, 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) }; diff --git a/keyboards/sneakbox/aliceclonergb/keymaps/vial/vial.json b/keyboards/sneakbox/aliceclonergb/keymaps/vial/vial.json index 56e3028a68..903904f4f5 100644 --- a/keyboards/sneakbox/aliceclonergb/keymaps/vial/vial.json +++ b/keyboards/sneakbox/aliceclonergb/keymaps/vial/vial.json @@ -7,6 +7,10 @@ "matrix": { "rows": 10, "cols": 8 }, "lighting": "qmk_rgblight", "layouts": { + "labels": [ + "Split Backspace", + "Split Right Shift" + ], "keymap": [ [ @@ -33,8 +37,17 @@ "x": 15.08, "c": "#cccccc" }, - "1,6", - "1,7" + "1,6\n\n\n0,1", + "1,7\n\n\n0,1" + ], + [ + { + "y": -0.8885, + "x": 15.08, + "w": 2, + "c": "#cccccc" + }, + "1,6\n\n\n0,0" ], [ { @@ -178,25 +191,33 @@ "c": "#cccccc" }, "7,5", + { + "x": -0.0024999999999995026, + "w": 2.75, + "c": "#cccccc" + }, + "7,6\n\n\n1,0" + ], + [ { "x": -0.0024999999999995026, "w": 1.75, "c": "#cccccc" }, - "7,6", + "7,6\n\n\n1,1", { "x": -0.002600000000001046, "c": "#cccccc" }, - "7,7" + "7,7\n\n\n1,1" ], [ { - "y": -0.9996, + "y": -1.9996, "x": 0.9996, "w": 2.25, "c": "#aaaaaa" - }, + }, "6,1" ], [ diff --git a/keyboards/splitkb/kyria/rev2/keymaps/vial/config.h b/keyboards/splitkb/kyria/rev2/keymaps/vial/config.h new file mode 100644 index 0000000000..7008340c06 --- /dev/null +++ b/keyboards/splitkb/kyria/rev2/keymaps/vial/config.h @@ -0,0 +1,17 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ + +#pragma once + +#define VIAL_KEYBOARD_UID {0x20, 0x43, 0x8B, 0x3D, 0x4E, 0x21, 0xFD, 0x07} + +/* #define DYNAMIC_KEYMAP_LAYER_COUNT 3 */ + +#undef LOCKING_SUPPORT_ENABLE +#undef LOCKING_RESYNC_ENABLE + +#define NO_ACTION_ONESHOT +#define NO_MUSIC_MODE +#define LAYER_STATE_8BIT + +#define VIAL_UNLOCK_COMBO_ROWS { 0, 2 } +#define VIAL_UNLOCK_COMBO_COLS { 0, 3 } diff --git a/keyboards/splitkb/kyria/rev2/keymaps/vial/keymap.c b/keyboards/splitkb/kyria/rev2/keymaps/vial/keymap.c new file mode 100644 index 0000000000..3eb18d330b --- /dev/null +++ b/keyboards/splitkb/kyria/rev2/keymaps/vial/keymap.c @@ -0,0 +1,24 @@ +// Copyright 2021 Your Name (@nosarthur) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H + + + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT(KC_ESC, KC_Q, KC_D, KC_R, KC_W, KC_B, KC_J, KC_F, KC_U, KC_P, KC_Q, KC_BSPC, KC_LGUI, KC_A, KC_S, KC_H, KC_T, KC_G, KC_Y, KC_N, KC_E, KC_O, KC_I, KC_QUOT, KC_TAB, KC_Z, KC_X, KC_M, KC_C, KC_V, KC_BSLS, TT(2), KC_LBRC, KC_RBRC, KC_K, KC_L, KC_COMM, KC_DOT, KC_SLSH, KC_GRV, KC_LCTL, KC_LALT, KC_SPC, KC_LSPO, TT(1), TT(1), KC_RSPC, KC_ENT, KC_MINS, KC_EQL), + [1] = LAYOUT(KC_TRNS, KC_NO, KC_7, KC_8, KC_9, KC_NO, KC_NO, KC_NO, KC_UP, KC_PGUP, KC_PSLS, KC_TRNS, KC_TRNS, KC_0, KC_4, KC_5, KC_6, KC_PDOT, KC_NO, KC_LEFT, KC_DOWN, KC_RGHT, KC_PAST, KC_PPLS, KC_TRNS, KC_NO, KC_1, KC_2, KC_3, KC_PCMM, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_DEL, KC_HOME, KC_END, KC_PGDN, KC_EXLM, KC_PMNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), + [2] = LAYOUT(KC_NO, KC_NO, KC_F9, KC_F10, KC_F11, KC_F12, KC_NO, KC_MPLY, KC_VOLU, KC_BRIU, KC_NO, KC_MUTE, KC_NO, KC_NO, KC_F5, KC_F6, KC_F7, KC_F8, KC_NO, KC_MSTP, KC_VOLD, KC_BRID, KC_NO, KC_NO, KC_NO, KC_NO, KC_F1, KC_F2, KC_F3, KC_F4, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_NO, KC_NO, KC_NO), + [3] = LAYOUT(KC_NO, KC_NO, KC_F9, KC_F10, KC_F11, KC_F12, KC_NO, KC_MPLY, KC_VOLU, KC_BRIU, KC_NO, KC_MUTE, KC_NO, KC_NO, KC_F5, KC_F6, KC_F7, KC_F8, KC_NO, KC_MSTP, KC_VOLD, KC_BRID, KC_NO, KC_NO, KC_NO, KC_NO, KC_F1, KC_F2, KC_F3, KC_F4, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_NO, KC_NO, KC_NO) +}; + +#if defined(ENCODER_MAP_ENABLE) +const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { + [0] = { ENCODER_CCW_CW(KC_BRIU, KC_BRID), ENCODER_CCW_CW(KC_VOLD, KC_VOLU) }, + [1] = { ENCODER_CCW_CW(RGB_HUD, RGB_HUI), ENCODER_CCW_CW(RGB_SAD, RGB_SAI) }, + [2] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI), ENCODER_CCW_CW(RGB_SPD, RGB_SPI) }, + [3] = { ENCODER_CCW_CW(RGB_RMOD, RGB_MOD), ENCODER_CCW_CW(KC_RIGHT, KC_LEFT) }, + // Encoder 1 Encoder 2 +}; +#endif + diff --git a/keyboards/splitkb/kyria/rev2/keymaps/vial/rules.mk b/keyboards/splitkb/kyria/rev2/keymaps/vial/rules.mk new file mode 100644 index 0000000000..6c76f3d286 --- /dev/null +++ b/keyboards/splitkb/kyria/rev2/keymaps/vial/rules.mk @@ -0,0 +1,22 @@ +# Bootloader selection +# BOOTLOADER = caterina + +# Build Options +# change yes to no to disable +# +ENCODER_MAP_ENABLE = yes +OLED_ENABLE = no + +AUTO_SHIFT_ENABLE = yes +COMBO_ENABLE = yes +TAP_DANCE_ENABLE = no + +VIA_ENABLE = yes +VIAL_ENABLE = yes + +QMK_SETTINGS = yes +KEY_OVERRIDE_ENABLE = no +SPACE_CADET_ENABLE = no +GRAVE_ESC_ENABLE = no +MAGIC_ENABLE = no +AVR_USE_MINIMAL_PRINTF = yes diff --git a/keyboards/splitkb/kyria/rev2/keymaps/vial/vial.json b/keyboards/splitkb/kyria/rev2/keymaps/vial/vial.json new file mode 100644 index 0000000000..6a1faaf2ce --- /dev/null +++ b/keyboards/splitkb/kyria/rev2/keymaps/vial/vial.json @@ -0,0 +1,341 @@ +{ + "name": "Kyria rev2.1", + "matrix": {"rows": 8, "cols": 8}, + "layouts": { + "labels": [ + "Far Left 2U", + "Mid Left 2U", + "Mid Right 2U", + "Far Right 2U" + ], + "keymap": +[ + [ + { + "y": 0.25, + "x": 3 + }, + "0,4", + { + "x": 9 + }, + "4,4" + ], + [ + { + "y": -0.75, + "x": 2 + }, + "0,5", + { + "x": 1 + }, + "0,3", + { + "x": 7 + }, + "4,3", + { + "x": 1 + }, + "4,5" + ], + [ + { + "y": -0.875, + "x": 5 + }, + "0,2", + { + "x": 5 + }, + "4,2" + ], + [ + { + "y": -0.625, + "c": "#aaaaaa" + }, + "0,7", + { + "c": "#cccccc" + }, + "0,6", + { + "x": 13 + }, + "4,6", + { + "c": "#aaaaaa" + }, + "4,7" + ], + [ + { + "y": -0.75, + "x": 3, + "c": "#cccccc" + }, + "1,4", + { + "x": 9 + }, + "5,4" + ], + [ + { + "y": -0.75, + "x": 2 + }, + "1,5", + { + "x": 1 + }, + "1,3", + { + "x": 7 + }, + "5,3", + { + "x": 1 + }, + "5,5" + ], + [ + { + "y": -0.875, + "x": 5 + }, + "1,2", + { + "x": 5 + }, + "5,2" + ], + [ + { + "y": -0.625, + "c": "#aaaaaa" + }, + "1,7", + { + "c": "#cccccc" + }, + "1,6", + { + "x": 13 + }, + "5,6", + { + "c": "#aaaaaa" + }, + "5,7" + ], + [ + { + "y": -0.75, + "x": 3, + "c": "#cccccc" + }, + "2,4", + { + "x": 9 + }, + "6,4" + ], + [ + { + "y": -0.75, + "x": 2 + }, + "2,5", + { + "x": 1 + }, + "2,3", + { + "x": 7 + }, + "6,3", + { + "x": 1 + }, + "6,5" + ], + [ + { + "y": -0.875, + "x": 5 + }, + "2,2", + { + "x": 5 + }, + "6,2" + ], + [ + { + "y": -0.625, + "c": "#aaaaaa" + }, + "2,7", + { + "c": "#cccccc" + }, + "2,6", + { + "x": 13 + }, + "6,6", + { + "c": "#aaaaaa" + }, + "6,7" + ], + [ + { + "y": -0.5, + "x": 2.5 + }, + "3,5", + { + "x": 10 + }, + "7,5" + ], + [ + { + "x": 2 + }, + "0,0\n\n\n\n\n\n\n\n\ne", + "0,1\n\n\n\n\n\n\n\n\ne", + { + "x": 9 + }, + "1,0\n\n\n\n\n\n\n\n\ne", + "1,1\n\n\n\n\n\n\n\n\ne" + ], + [ + { + "rx": 4, + "ry": 8.175, + "y": -4.675, + "x": -0.5 + }, + "3,3" + ], + [ + { + "rx": 13, + "y": -4.675, + "x": -0.5 + }, + "7,3" + ], + [ + { + "r": 15, + "rx": 4, + "y": -4.675, + "x": -0.5 + }, + "3,2" + ], + [ + { + "r": 30, + "y": -2, + "x": -0.5 + }, + "2,1\n\n\n0,0" + ], + [ + { + "x": -0.5 + }, + "3,1\n\n\n0,0" + ], + [ + { + "y": 0.5, + "x": -1, + "h": 2 + }, + "3,1\n\n\n0,1" + ], + [ + { + "r": 45, + "y": -3.5, + "x": -0.5 + }, + "2,0\n\n\n1,0" + ], + [ + { + "x": -0.5 + }, + "3,0\n\n\n1,0" + ], + [ + { + "y": 0.25, + "h": 2 + }, + "3,0\n\n\n1,1" + ], + [ + { + "r": -45, + "rx": 13, + "y": -5.675, + "x": -0.5 + }, + "6,0\n\n\n2,0" + ], + [ + { + "x": -0.5 + }, + "7,0\n\n\n2,0" + ], + [ + { + "y": 0.25, + "x": -1, + "h": 2 + }, + "7,0\n\n\n2,1" + ], + [ + { + "r": -30, + "y": -3.25, + "x": -0.5 + }, + "6,1\n\n\n3,0" + ], + [ + { + "x": -0.5 + }, + "7,1\n\n\n3,0" + ], + [ + { + "y": 0.5, + "h": 2 + }, + "7,1\n\n\n3,1" + ], + [ + { + "r": -15, + "y": -2.5, + "x": -0.5 + }, + "7,2" + ] +] +} +} diff --git a/keyboards/viktus/minne/keymaps/via/minne.json b/keyboards/viktus/minne/keymaps/via/minne.json new file mode 100644 index 0000000000..e715a8a452 --- /dev/null +++ b/keyboards/viktus/minne/keymaps/via/minne.json @@ -0,0 +1,208 @@ +{ + "name": "Minne", + "vendorId": "0x5644", + "productId": "0x4D49", + "keycodes": [ "qmk_lighting" ], + "menus": [ "qmk_rgblight" ], + "matrix": { + "rows": 8, + "cols": 7 + }, + "layouts": { + "labels": [ + ["Bottom Row", "Dual 1.75U", "2.75U 2.25U", "Dual 3U", "6U", "7U", "10U"] + ], + "keymap": [ + [ + { + "c":"#777777" + }, + "1,0", + { + "c":"#aaaaaa" + }, + "1,1", + { + "c":"#cccccc" + }, + "0,1", + "0,2", + "1,2", + "1,3", + "0,3", + "0,4", + "1,4", + "1,5", + "0,5", + { + "c":"#aaaaaa", + "w":1.75 + }, + "0,6" + ], + [ + { + "w":1.25 + }, + "3,0", + { + "c":"#cccccc" + }, + "3,1", + "2,1", + "2,2", + "3,2", + "3,3", + "2,3", + "2,4", + "3,4", + "3,5", + "2,5", + { + "c":"#777777", + "w":1.5 + }, + "2,6" + ], + [ + { + "c":"#aaaaaa", + "w":1.75 + }, + "5,0", + { + "c":"#cccccc" + }, + "5,1", + "4,1", + "4,2", + "5,2", + "5,3", + "4,3", + "4,4", + "5,4", + "5,5", + "4,5", + { + "c":"#aaaaaa" + }, + "4,6" + ], + [ + { + "x":1.38 + }, + "7,1\n\n\n0,0", + "6,1\n\n\n0,0", + { + "w":1.25 + }, + "6,2\n\n\n0,0", + { + "c":"#cccccc", + "w":1.75 + }, + "7,2\n\n\n0,0", + { + "w":1.75 + }, + "6,3\n\n\n0,0", + { + "c":"#aaaaaa", + "w":1.25 + }, + "6,4\n\n\n0,0", + "7,4\n\n\n0,0", + "7,5\n\n\n0,0" + ], + [ + { + "x":1.38 + }, + "7,1\n\n\n0,1", + { + "w":1.5 + }, + "6,1\n\n\n0,1", + { + "c":"#cccccc", + "w":2.75 + }, + "7,2\n\n\n0,1", + { + "w":2.25 + }, + "6,3\n\n\n0,1", + { + "c":"#aaaaaa", + "w":1.5 + }, + "7,4\n\n\n0,1", + "7,5\n\n\n0,1" + ], + [ + { + "x":1.38 + }, + "7,1\n\n\n0,2", + "6,1\n\n\n0,2", + { + "c":"#cccccc", + "w":3 + }, + "7,2\n\n\n0,2", + { + "w":3 + }, + "6,3\n\n\n0,2", + { + "c":"#aaaaaa" + }, + "7,4\n\n\n0,2", + "7,5\n\n\n0,2" + ], + [ + { + "x":1.38 + }, + "7,1\n\n\n0,3", + "6,1\n\n\n0,3", + { + "c":"#cccccc", + "w":6 + }, + "7,3\n\n\n0,3", + { + "c":"#aaaaaa" + }, + "7,4\n\n\n0,3", + "7,5\n\n\n0,3" + ], + [ + { + "x":1.38, + "w":1.5 + }, + "7,1\n\n\n0,4", + { + "c":"#cccccc", + "w":7 + }, + "7,3\n\n\n0,4", + { + "c":"#aaaaaa", + "w":1.5 + }, + "7,5\n\n\n0,4" + ], + [ + { + "x":1.38, + "c":"#cccccc", + "w":10 + }, + "7,3\n\n\n0,5" + ] + ] + } +} diff --git a/keyboards/viktus/minne/keymaps/vial/config.h b/keyboards/viktus/minne/keymaps/vial/config.h new file mode 100644 index 0000000000..0529deffd8 --- /dev/null +++ b/keyboards/viktus/minne/keymaps/vial/config.h @@ -0,0 +1,6 @@ +#pragma once + +#define VIAL_KEYBOARD_UID {0x38, 0x17, 0xCA, 0xBC, 0x62, 0x69, 0x28, 0x45} + +#define VIAL_UNLOCK_COMBO_ROWS { 1, 0 } +#define VIAL_UNLOCK_COMBO_COLS { 0, 2 } diff --git a/keyboards/viktus/minne/keymaps/vial/keymap.c b/keyboards/viktus/minne/keymaps/vial/keymap.c new file mode 100644 index 0000000000..bf34ed993e --- /dev/null +++ b/keyboards/viktus/minne/keymaps/vial/keymap.c @@ -0,0 +1,26 @@ +/* Copyright 2023 Viktus Design LLC + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT_all( + KC_ESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, + KC_TAB, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_ENT, + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_RSFT, MO(1), + KC_LCTL, KC_LALT, KC_LGUI, KC_SPC, KC_SPC, KC_SPC, KC_RGUI, KC_RALT, KC_RCTL + ) +}; diff --git a/keyboards/viktus/minne/keymaps/vial/rules.mk b/keyboards/viktus/minne/keymaps/vial/rules.mk new file mode 100644 index 0000000000..b993c43f1c --- /dev/null +++ b/keyboards/viktus/minne/keymaps/vial/rules.mk @@ -0,0 +1,6 @@ +VIA_ENABLE = yes +VIAL_ENABLE = yes +LTO_ENABLE = yes +KEY_OVERRIDE_ENABLE = no +EXTRAKEY_ENABLE = no +MOUSEKEY_ENABLE = no diff --git a/keyboards/viktus/minne/keymaps/vial/vial.json b/keyboards/viktus/minne/keymaps/vial/vial.json new file mode 100644 index 0000000000..975484bf50 --- /dev/null +++ b/keyboards/viktus/minne/keymaps/vial/vial.json @@ -0,0 +1,180 @@ +{ + "name": "Minne", + "vendorId": "0x5644", + "productId": "0x4D49", + "lighting": "qmk_rgblight", + "matrix": { + "rows": 8, + "cols": 7 + }, + "layouts": { + "labels": [ + ["Bottom Row", "Dual 1.75U", "2.75U 2.25U", "Dual 3U", "6U", "7U", "10U"] + ], + "keymap": [ + [ + "1,0", + "1,1", + "0,1", + "0,2", + "1,2", + "1,3", + "0,3", + "0,4", + "1,4", + "1,5", + "0,5", + { + "w":1.75 + }, + "0,6" + ], + [ + { + "w":1.25 + }, + "3,0", + "3,1", + "2,1", + "2,2", + "3,2", + "3,3", + "2,3", + "2,4", + "3,4", + "3,5", + "2,5", + { + "w":1.5 + }, + "2,6" + ], + [ + { + "w":1.75 + }, + "5,0", + "5,1", + "4,1", + "4,2", + "5,2", + "5,3", + "4,3", + "4,4", + "5,4", + "5,5", + "4,5", + "4,6" + ], + [ + { + "x":1.38 + }, + "7,1\n\n\n0,0", + "6,1\n\n\n0,0", + { + "w":1.25 + }, + "6,2\n\n\n0,0", + { + "w":1.75 + }, + "7,2\n\n\n0,0", + { + "w":1.75 + }, + "6,3\n\n\n0,0", + { + "x":0, + "w":1.25 + }, + "6,4\n\n\n0,0", + "7,4\n\n\n0,0", + "7,5\n\n\n0,0" + ], + [ + { + "x":1.38 + }, + "7,1\n\n\n0,1", + { + "w":1.5 + }, + "6,1\n\n\n0,1", + { + "w":2.75 + }, + "7,2\n\n\n0,1", + { + "w":2.25 + }, + "6,3\n\n\n0,1", + { + "x":0, + "w":1.5 + }, + "7,4\n\n\n0,1", + "7,5\n\n\n0,1" + ], + [ + { + "x":1.38 + }, + "7,1\n\n\n0,2", + "6,1\n\n\n0,2", + { + "w":3 + }, + "7,2\n\n\n0,2", + { + "w":3 + }, + "6,3\n\n\n0,2", + { + "x":0 + }, + "7,4\n\n\n0,2", + "7,5\n\n\n0,2" + ], + [ + { + "x":1.38 + }, + "7,1\n\n\n0,3", + "6,1\n\n\n0,3", + { + "w":6 + }, + "7,3\n\n\n0,3", + { + "x":0 + }, + "7,4\n\n\n0,3", + "7,5\n\n\n0,3" + ], + [ + { + "x":1.38, + "w":1.5 + }, + "7,1\n\n\n0,4", + { + "w":7 + }, + "7,3\n\n\n0,4", + { + "x":0, + "w":1.5 + }, + "7,5\n\n\n0,4" + ], + [ + { + "x":1.38, + "w":10 + }, + "7,3\n\n\n0,5" + ] + ] + } +} diff --git a/keyboards/viktus/minne_topre/keymaps/via/minne_topre.json b/keyboards/viktus/minne_topre/keymaps/via/minne_topre.json new file mode 100644 index 0000000000..5f18c16b90 --- /dev/null +++ b/keyboards/viktus/minne_topre/keymaps/via/minne_topre.json @@ -0,0 +1,151 @@ +{ + "name": "Minne - Topre", + "vendorId": "0x5644", + "productId": "0x4D54", + "matrix": { + "rows": 4, + "cols": 12 + }, + "layouts": { + "labels": [ + ["Bottom Row", "Dual 3U", "6U", "7U", "10U"] + ], + "keymap": [ + [ + { + "c":"#777777" + }, + "0,0", + { + "c":"#cccccc" + }, + "0,1", + "0,2", + "0,3", + "0,4", + "0,5", + "0,6", + "0,7", + "0,8", + "0,9", + "0,10", + { + "c":"#aaaaaa", + "w":1.75 + }, + "0,11" + ], + [ + { + "w":1.25 + }, + "1,0", + { + "c":"#cccccc" + }, + "1,1", + "1,2", + "1,3", + "1,4", + "1,5", + "1,6", + "1,7", + "1,8", + "1,9", + "1,10", + { + "c":"#777777", + "w":1.5 + }, + "1,11" + ], + [ + { + "c":"#aaaaaa", + "w":1.75 + }, + "2,0", + { + "c":"#cccccc" + }, + "2,1", + "2,2", + "2,3", + "2,4", + "2,5", + "2,6", + "2,7", + "2,8", + "2,9", + "2,10", + { + "c":"#aaaaaa" + }, + "2,11" + ], + [ + { + "x":1.38 + }, + "3,1\n\n\n0,0", + "3,2\n\n\n0,0", + { + "c":"#cccccc", + "w":3 + }, + "3,4\n\n\n0,0", + { + "w":3 + }, + "3,7\n\n\n0,0", + { + "c":"#aaaaaa" + }, + "3,9\n\n\n0,0", + "3,10\n\n\n0,0" + ], + [ + { + "x":1.38 + }, + "3,1\n\n\n0,1", + "3,2\n\n\n0,1", + { + "c":"#cccccc", + "w":6 + }, + "3,5\n\n\n0,1", + { + "c":"#aaaaaa" + }, + "3,9\n\n\n0,1", + "3,10\n\n\n0,1" + ], + [ + { + "x":1.38, + "w":1.5 + }, + "3,1\n\n\n0,2", + { + "c":"#cccccc", + "w":7 + }, + "3,5\n\n\n0,2", + { + "c":"#aaaaaa", + "w":1.5 + }, + "3,10\n\n\n0,2" + ], + [ + { + "x":1.38, + "c":"#cccccc", + "w":10 + }, + "3,5\n\n\n0,3" + ] + ] + } +} diff --git a/keyboards/viktus/minne_topre/keymaps/vial/config.h b/keyboards/viktus/minne_topre/keymaps/vial/config.h new file mode 100644 index 0000000000..0b72656397 --- /dev/null +++ b/keyboards/viktus/minne_topre/keymaps/vial/config.h @@ -0,0 +1,6 @@ +#pragma once + +#define VIAL_KEYBOARD_UID {0xE9, 0xAD, 0xFD, 0x66, 0x8E, 0x62, 0x1D, 0xA7} + +#define VIAL_UNLOCK_COMBO_ROWS { 0, 2 } +#define VIAL_UNLOCK_COMBO_COLS { 0, 0 } diff --git a/keyboards/viktus/minne_topre/keymaps/vial/keymap.c b/keyboards/viktus/minne_topre/keymaps/vial/keymap.c new file mode 100644 index 0000000000..5ad476a25d --- /dev/null +++ b/keyboards/viktus/minne_topre/keymaps/vial/keymap.c @@ -0,0 +1,26 @@ +/* Copyright 2023 Viktus Design LLC + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT_all( + KC_ESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, + KC_TAB, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_ENT, + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_RSFT, MO(1), + KC_LCTL, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_RALT, KC_RCTL + ) +}; diff --git a/keyboards/viktus/minne_topre/keymaps/vial/rules.mk b/keyboards/viktus/minne_topre/keymaps/vial/rules.mk new file mode 100644 index 0000000000..b993c43f1c --- /dev/null +++ b/keyboards/viktus/minne_topre/keymaps/vial/rules.mk @@ -0,0 +1,6 @@ +VIA_ENABLE = yes +VIAL_ENABLE = yes +LTO_ENABLE = yes +KEY_OVERRIDE_ENABLE = no +EXTRAKEY_ENABLE = no +MOUSEKEY_ENABLE = no diff --git a/keyboards/viktus/minne_topre/keymaps/vial/vial.json b/keyboards/viktus/minne_topre/keymaps/vial/vial.json new file mode 100644 index 0000000000..38eaaaca17 --- /dev/null +++ b/keyboards/viktus/minne_topre/keymaps/vial/vial.json @@ -0,0 +1,127 @@ +{ + "name": "Minne - Topre", + "vendorId": "0x5644", + "productId": "0x4D54", + "lighting": "none", + "matrix": { + "rows": 4, + "cols": 12 + }, + "layouts": { + "labels": [ + ["Bottom Row", "Dual 3U", "6U", "7U", "10U"] + ], + "keymap": [ + [ + "0,0", + "0,1", + "0,2", + "0,3", + "0,4", + "0,5", + "0,6", + "0,7", + "0,8", + "0,9", + "0,10", + { + "w":1.75 + }, + "0,11" + ], + [ + { + "w":1.25 + }, + "1,0", + "1,1", + "1,2", + "1,3", + "1,4", + "1,5", + "1,6", + "1,7", + "1,8", + "1,9", + "1,10", + { + "w":1.5 + }, + "1,11" + ], + [ + { + "w":1.75 + }, + "2,0", + "2,1", + "2,2", + "2,3", + "2,4", + "2,5", + "2,6", + "2,7", + "2,8", + "2,9", + "2,10", + "2,11" + ], + [ + { + "x":1.38 + }, + "3,1\n\n\n0,0", + "3,2\n\n\n0,0", + { + "w":3 + }, + "3,4\n\n\n0,0", + { + "w":3 + }, + "3,7\n\n\n0,0", + "3,9\n\n\n0,0", + "3,10\n\n\n0,0" + ], + [ + { + "x":1.38 + }, + "3,1\n\n\n0,1", + "3,2\n\n\n0,1", + { + "w":6 + }, + "3,5\n\n\n0,1", + { + "x":0 + }, + "3,9\n\n\n0,1", + "3,10\n\n\n0,1" + ], + [ + { + "x":1.38, + "w":1.5 + }, + "3,1\n\n\n0,2", + { + "w":7 + }, + "3,5\n\n\n0,2", + { + "x":0, + "w":1.5 + }, + "3,10\n\n\n0,2" + ], + [ + { + "x":1.38, + "w":10 + }, + "3,5\n\n\n0,3" + ] + ] + } +} diff --git a/keyboards/w1_at/keymaps/vial/config.h b/keyboards/w1_at/keymaps/vial/config.h new file mode 100644 index 0000000000..0328f9ae8b --- /dev/null +++ b/keyboards/w1_at/keymaps/vial/config.h @@ -0,0 +1,7 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ + +#pragma once + +#define VIAL_KEYBOARD_UID {0xEF, 0xFC, 0xF5, 0xFF, 0xBC, 0x05, 0x3E, 0xA3} +#define VIAL_UNLOCK_COMBO_ROWS { 0, 2 } +#define VIAL_UNLOCK_COMBO_COLS { 0, 13 } diff --git a/keyboards/w1_at/keymaps/vial/keymap.c b/keyboards/w1_at/keymaps/vial/keymap.c new file mode 100644 index 0000000000..bd6e2274d2 --- /dev/null +++ b/keyboards/w1_at/keymaps/vial/keymap.c @@ -0,0 +1,49 @@ +/* Copyright 2021 Yiancar-Designs + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ +#include QMK_KEYBOARD_H + +enum custom_keycodes { + KC_P00 = SAFE_RANGE +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +[0] = LAYOUT_all( /* Base */ + KC_F1, KC_F2, QK_GESC, 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_NUM, KC_PMNS, KC_PSLS, KC_PAST, + KC_F3, KC_F4, 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_P7, KC_P8, KC_P9, KC_PPLS, + KC_F5, KC_F6, 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_P4, KC_P5, KC_P6, KC_PMNS, + KC_F7, KC_F8, 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, MO(1), KC_P1, KC_P2, KC_P3, KC_PMNS, + KC_F9, KC_F10, KC_LCTL, KC_LALT, KC_SPC, KC_RALT, KC_RCTL, KC_P0, KC_P00, KC_PDOT, KC_PENT), + +[1] = LAYOUT_all( /* FN */ + 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, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_VOLU, KC_VOLD, KC_MUTE, 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) +}; + + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + if (record->event.pressed) { + switch(keycode) { + case KC_P00: + tap_code(KC_P0); + tap_code(KC_P0); + return false; + } + } + return true; +} \ No newline at end of file diff --git a/keyboards/w1_at/keymaps/vial/readme.md b/keyboards/w1_at/keymaps/vial/readme.md new file mode 100644 index 0000000000..af0497e720 --- /dev/null +++ b/keyboards/w1_at/keymaps/vial/readme.md @@ -0,0 +1,9 @@ +# The default keymap for W1-AT. + +Layer 0 + +![Layer 0](https://i.imgur.com/pLdgxlJ.png) + +Layer 1 + +![Layer 1](https://i.imgur.com/v24h9EO.png) diff --git a/keyboards/w1_at/keymaps/vial/rules.mk b/keyboards/w1_at/keymaps/vial/rules.mk new file mode 100644 index 0000000000..4f7618e9b2 --- /dev/null +++ b/keyboards/w1_at/keymaps/vial/rules.mk @@ -0,0 +1,2 @@ +VIA_ENABLE = yes +VIAL_ENABLE = yes diff --git a/keyboards/w1_at/keymaps/vial/vial.json b/keyboards/w1_at/keymaps/vial/vial.json new file mode 100644 index 0000000000..4f0cb8638f --- /dev/null +++ b/keyboards/w1_at/keymaps/vial/vial.json @@ -0,0 +1,288 @@ +{ + "name": "W1-AT", + "vendorId": "0x8968", + "productId": "0x5754", + "lighting": "none", + "customKeycodes": [{"name": "00", "title": "00", "shortName": "KC_P00"}], + "matrix": {"rows": 5, "cols": 20}, + "layouts": { + "labels": [ + "Split Backspace", + "ISO Enter", + "Split Left Shift", + "Split Right Shift", + "Single Num +", + "Split Num Enter", + "Split Num 0", + "10U Spacebar" + ], + "keymap": [ + [ + "0,0", + "0,1", + { + "x": 0.25, + "c": "#777777" + }, + "0,2", + { + "c": "#cccccc" + }, + "0,3", + "0,4", + "0,5", + "0,6", + "0,7", + "0,8", + "0,9", + "0,10", + "0,11", + "0,12", + "0,13", + "0,14", + { + "c": "#aaaaaa", + "w": 2 + }, + "0,15\n\n\n0,0", + { + "x": 0.25 + }, + "0,16", + "0,17", + "0,18", + "0,19", + { + "x": 0.75 + }, + "0,15\n\n\n0,1", + "2,14\n\n\n0,1" + ], + [ + { + "c": "#cccccc" + }, + "1,0", + "1,1", + { + "x": 0.25, + "c": "#aaaaaa", + "w": 1.5 + }, + "1,2", + { + "c": "#cccccc" + }, + "1,3", + "1,4", + "1,5", + "1,6", + "1,7", + "1,8", + "1,9", + "1,10", + "1,11", + "1,12", + "1,13", + "1,14", + { + "c": "#aaaaaa", + "w": 1.5 + }, + "1,15\n\n\n1,0", + { + "x": 0.25, + "c": "#cccccc" + }, + "1,16", + "1,17", + "1,18", + { + "c": "#aaaaaa" + }, + "1,19\n\n\n4,0", + { + "x": 1.5, + "c": "#777777", + "w": 1.25, + "h": 2, + "w2": 1.5, + "h2": 1, + "x2": -0.25 + }, + "2,15\n\n\n1,1", + { + "x": 0.5, + "c": "#aaaaaa", + "h": 2 + }, + "1,19\n\n\n4,1" + ], + [ + { + "c": "#cccccc" + }, + "2,0", + "2,1", + { + "x": 0.25, + "c": "#aaaaaa", + "w": 1.75 + }, + "2,2", + { + "c": "#cccccc" + }, + "2,3", + "2,4", + "2,5", + "2,6", + "2,7", + "2,8", + "2,9", + "2,10", + "2,11", + "2,12", + "2,13", + { + "c": "#777777", + "w": 2.25 + }, + "2,15\n\n\n1,0", + { + "x": 0.25, + "c": "#cccccc" + }, + "2,16", + "2,17", + "2,18", + { + "c": "#aaaaaa" + }, + "2,19\n\n\n4,0", + { + "x": 0.5, + "c": "#cccccc" + }, + "1,15\n\n\n1,1" + ], + [ + "3,0", + "3,1", + { + "x": 0.25, + "c": "#aaaaaa", + "w": 2.25 + }, + "3,2\n\n\n2,0", + { + "c": "#cccccc" + }, + "3,4", + "3,5", + "3,6", + "3,7", + "3,8", + "3,9", + "3,10", + "3,11", + "3,12", + "3,13", + { + "c": "#aaaaaa", + "w": 2.75 + }, + "3,14\n\n\n3,0", + { + "x": 0.25, + "c": "#cccccc" + }, + "3,16", + "3,17", + "3,18", + { + "c": "#aaaaaa", + "h": 2 + }, + "4,19\n\n\n5,0", + { + "x": 3.25 + }, + "3,19\n\n\n5,1" + ], + [ + { + "c": "#cccccc" + }, + "4,0", + "4,1", + { + "x": 0.25, + "c": "#aaaaaa", + "w": 1.5 + }, + "4,2", + { + "x": 1, + "w": 1.5 + }, + "4,4\n\n\n7,0", + { + "c": "#cccccc", + "w": 7 + }, + "4,8\n\n\n7,0", + { + "c": "#aaaaaa", + "w": 1.5 + }, + "4,13\n\n\n7,0", + { + "x": 1, + "w": 1.5 + }, + "4,15", + { + "x": 0.25, + "c": "#cccccc", + "w": 2 + }, + "4,16\n\n\n6,0", + "4,18", + { + "x": 4.25, + "c": "#aaaaaa" + }, + "4,19\n\n\n5,1" + ], + [ + { + "y": 0.5, + "x": 2.25, + "w": 1.25 + }, + "3,2\n\n\n2,1", + { + "c": "#cccccc" + }, + "3,3\n\n\n2,1", + { + "w": 10 + }, + "4,8\n\n\n7,1", + { + "c": "#aaaaaa", + "w": 1.75 + }, + "3,14\n\n\n3,1", + "3,15\n\n\n3,1", + { + "x": 0.25, + "c": "#cccccc" + }, + "4,16\n\n\n6,1", + "4,17\n\n\n6,1" + ] + ] + } +} diff --git a/keyboards/waterfowl/keymaps/vial/config.h b/keyboards/waterfowl/keymaps/vial/config.h new file mode 100644 index 0000000000..0c550f1f5a --- /dev/null +++ b/keyboards/waterfowl/keymaps/vial/config.h @@ -0,0 +1,8 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ + +#pragma once + +#define VIAL_KEYBOARD_UID {0x95, 0x71, 0x9F, 0x29, 0xA6, 0x0B, 0x39, 0x57} + +#define VIAL_UNLOCK_COMBO_ROWS {0, 2, 4, 6} +#define VIAL_UNLOCK_COMBO_COLS {0, 0, 0, 0} diff --git a/keyboards/waterfowl/keymaps/vial/keymap.c b/keyboards/waterfowl/keymaps/vial/keymap.c new file mode 100644 index 0000000000..4fe117cd50 --- /dev/null +++ b/keyboards/waterfowl/keymaps/vial/keymap.c @@ -0,0 +1,117 @@ +/* Copyright 2022 CyanDuck +* +* 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 3 of the License, or +* (at your option) any later version. +* +* This program is distributed in the hope that it will be useful, +* but WITHOUT ANY WARRANTY; without even the implied warranty of +* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +* GNU General Public License for more details. +* +* You should have received a copy of the GNU General Public License +* along with this program. If not, see . +*/ + +#include QMK_KEYBOARD_H + +// Defines names for use in layer keycodes and the keymap +enum layer_names { + _QWERTY, + _NAVNUM, + _SYM, + _FUNC, +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + +/* QWERTY + * + * ,----------------------------------. ,----------------------------------. + * | Q | W | E | R | T | | Y | U | I | O | P | + * |------+------+------+------+------| |------+------+------+------+------| + * | A | S | D | F | G | | H | J | K | L | ; | + * |------+------+------+------+------| ,-----. ,-----. |------+------+------+------+------| + * | Z | X | C | V | B | |CAPS | |NUMLK| | N | M | , | . | / | + * `----------------------------------' `-----' `-----' `----------------------------------' + * ,-----. ,--------------------. ,--------------------. ,-----. + * | 1 | | DEL | SPACE | TAB | | ESC | BS | ENTER | | 4 | + * `-----' `--------------------' `--------------------' `-----' + */ +[_QWERTY] = LAYOUT( + KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, + MT(MOD_LGUI, KC_A), MT(MOD_LALT, KC_S), MT(MOD_LCTL, KC_D), MT(MOD_LSFT, KC_F), KC_G, KC_H, MT(MOD_LSFT, KC_J), MT(MOD_LCTL, KC_K), MT(MOD_LALT, KC_L), MT(MOD_LGUI, KC_SCLN), + KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, + KC_1, LT(3,KC_DEL), LT(1,KC_SPC), KC_TAB, KC_CAPS, KC_NUM, KC_ESC, KC_BSPC, LT(2,KC_ENT), KC_4 +), + +/* NAVNUM + * + * ,----------------------------------. ,----------------------------------. + * | | PgUp | UP | PgDn | | | / | 7 | 8 | 9 | - | + * |------+------+------+------+------| |------+------+------+------+------| + * | Home | Left | Down | Right| End | | = | 4 | 5 | 6 | + | + * |------+------+------+------+------| ,-----. ,-----. |------+------+------+------+------| + * | | | INS | | | |CAPS | |NUMLK| | 0 | 1 | 2 | 3 | * | + * `----------------------------------' `-----' `-----' `----------------------------------' + * ,-----. ,--------------------. ,--------------------. ,-----. + * | 1 | | DEL | SPACE | MO(3)| | ESC | BS | ENTER | | 4 | + * `-----' `--------------------' `--------------------' `-----' + */ +[_NAVNUM] = LAYOUT( + KC_NO, KC_PGUP, KC_UP, KC_PGDN, KC_NO, KC_SLSH, KC_7, KC_8, KC_9, KC_MINS, + KC_HOME, KC_LEFT, KC_DOWN, KC_RGHT, KC_END, KC_EQL, KC_4, KC_5, KC_6, KC_PLUS, + KC_NO, KC_NO, KC_INS, KC_NO, KC_NO, KC_0, KC_1, KC_2, KC_3, KC_ASTR, + KC_1, LT(3,KC_DEL), LT(1,KC_SPC), KC_TAB, KC_CAPS, KC_NUM, KC_ESC, KC_BSPC, LT(2,KC_ENT), KC_4 +), + +/* SYM + * + * ,----------------------------------. ,----------------------------------. + * | % | @ | [ | ] | \ | | ¦ | ¬ | ^ | | | + * |------+------+------+------+------| |------+------+------+------+------| + * | # | ! | ( | ) | | | | _ | ' | " | ~ | ` | + * |------+------+------+------+------| ,-----. ,-----. |------+------+------+------+------| + * | $ | £ | { | } | & | |CAPS | |NUMLK| | | | | | | + * `----------------------------------' `-----' `-----' `----------------------------------' + * ,-----. ,--------------------. ,--------------------. ,-----. + * | 1 | | DEL | SPACE | TAB | | ESC | BS | ENTER | | 4 | + * `-----' `--------------------' `--------------------' `-----' + */ +[_SYM] = LAYOUT( + KC_PERC, KC_AT, KC_LBRC, KC_RBRC, KC_BSLS, KC_NO, KC_NO, KC_CIRC, KC_NO, KC_NO, + KC_HASH, KC_EXLM, KC_LPRN, KC_RPRN, KC_PIPE, KC_UNDS, KC_QUOT, KC_DQT, KC_TILD, KC_GRV, + KC_DLR, KC_NO, KC_LCBR, KC_RCBR, KC_AMPR, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_1, LT(3,KC_DEL), LT(1,KC_SPC), KC_TAB, KC_CAPS, KC_NUM, KC_ESC, KC_BSPC, LT(2,KC_ENT), KC_4 +), + +/* FUNC + * + * ,----------------------------------. ,----------------------------------. + * | | | | | | | | F7 | F8 | F9 | F11 | + * |------+------+------+------+------| |------+------+------+------+------| + * | | | | | | | | F4 | F5 | F6 | F12 | + * |------+------+------+------+------| ,-----. ,-----. |------+------+------+------+------| + * | Reset| | | | | |CAPS | |NUMLK| | F10 | F1 | F2 | F3 | F13 | + * `----------------------------------' `-----' `-----' `----------------------------------' + * ,-----. ,--------------------. ,--------------------. ,-----. + * | 1 | | DEL | SPACE | TAB | | ESC | BS | ENTER | | 4 | + * `-----' `--------------------' `--------------------' `-----' + */ +[_FUNC] = LAYOUT( + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_F7, KC_F8, KC_F9, KC_F11, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_F4, KC_F5, KC_F6, KC_F12, + QK_BOOT, KC_NO, KC_NO, KC_NO, KC_NO, KC_F10, KC_F1, KC_F2, KC_F3, KC_F13, + KC_1, LT(3,KC_DEL), LT(1,KC_SPC), KC_TAB, KC_CAPS, KC_NUM, KC_ESC, KC_BSPC, LT(2,KC_ENT), KC_4 +), +}; + +#if defined(ENCODER_MAP_ENABLE) +const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { + [_QWERTY] = { ENCODER_CCW_CW(KC_MS_WH_UP, KC_MS_WH_DOWN), ENCODER_CCW_CW(KC_TAB, S(KC_TAB)), ENCODER_CCW_CW(KC_MS_WH_LEFT, KC_MS_WH_RIGHT), ENCODER_CCW_CW(KC_LEFT, KC_RIGHT) }, + [_NAVNUM] = { ENCODER_CCW_CW(KC_MS_WH_UP, KC_MS_WH_DOWN), ENCODER_CCW_CW(KC_TAB, S(KC_TAB)), ENCODER_CCW_CW(KC_MS_WH_LEFT, KC_MS_WH_RIGHT), ENCODER_CCW_CW(KC_LEFT, KC_RIGHT) }, + [_SYM] = { ENCODER_CCW_CW(KC_MS_WH_UP, KC_MS_WH_DOWN), ENCODER_CCW_CW(KC_TAB, S(KC_TAB)), ENCODER_CCW_CW(KC_MS_WH_LEFT, KC_MS_WH_RIGHT), ENCODER_CCW_CW(KC_LEFT, KC_RIGHT) }, + [_FUNC] = { ENCODER_CCW_CW(KC_MS_WH_UP, KC_MS_WH_DOWN), ENCODER_CCW_CW(KC_TAB, S(KC_TAB)), ENCODER_CCW_CW(KC_MS_WH_LEFT, KC_MS_WH_RIGHT), ENCODER_CCW_CW(KC_LEFT, KC_RIGHT) }, +}; +#endif diff --git a/keyboards/waterfowl/keymaps/vial/rules.mk b/keyboards/waterfowl/keymaps/vial/rules.mk new file mode 100644 index 0000000000..db6cb50ede --- /dev/null +++ b/keyboards/waterfowl/keymaps/vial/rules.mk @@ -0,0 +1,9 @@ +ENCODER_ENABLE = yes +ENCODER_MAP_ENABLE = yes +VIA_ENABLE = yes +VIAL_ENABLE = yes +LTO_ENABLE = yes +QMK_SETTINGS = no +KEY_OVERRIDE_ENABLE = no +TAP_DANCE_ENABLE = no +COMBO_ENABLE = no \ No newline at end of file diff --git a/keyboards/waterfowl/keymaps/vial/vial.json b/keyboards/waterfowl/keymaps/vial/vial.json new file mode 100644 index 0000000000..2e2f3118a7 --- /dev/null +++ b/keyboards/waterfowl/keymaps/vial/vial.json @@ -0,0 +1,263 @@ +{ + "name": "Waterfowl", + "vendorId": "0xFEED", + "productId": "0x9CE3", + "lighting": "none", + "matrix": { + "rows": 8, + "cols": 5 + }, + "layouts": { + "keymap": + [ + [ + { + "y": 0.25, + "x": 3 + }, + "0,2", + { + "x": 9 + }, + "4,2" + ], + [ + { + "y": -0.75, + "x": 2 + }, + "0,1", + { + "x": 1 + }, + "0,3", + { + "x": 7 + }, + "4,3", + { + "x": 1 + }, + "4,1" + ], + [ + { + "y": -0.875, + "x": 5 + }, + "0,4", + { + "x": 5 + }, + "4,4" + ], + [ + { + "y": -0.625, + "x": 1 + }, + "0,0", + { + "x": 13 + }, + "4,0" + ], + [ + { + "y": -0.75, + "x": 3 + }, + "1,2", + { + "x": 9 + }, + "5,2" + ], + [ + { + "y": -0.75, + "x": 2 + }, + "1,1", + { + "x": 1 + }, + "1,3", + { + "x": 1 + }, + "1,0\n\n\n\n\n\n\n\n\ne", + "1,1\n\n\n\n\n\n\n\n\ne", + { + "x": 1 + }, + "3,0\n\n\n\n\n\n\n\n\ne", + "3,1\n\n\n\n\n\n\n\n\ne", + { + "x": 1 + }, + "5,3", + { + "x": 1 + }, + "5,1" + ], + [ + { + "y": -0.875, + "x": 5 + }, + "1,4", + { + "x": 5 + }, + "5,4" + ], + [ + { + "y": -0.625, + "x": 1 + }, + "1,0", + { + "x": 13 + }, + "5,0" + ], + [ + { + "y": -0.75, + "x": 3 + }, + "2,2", + { + "x": 9 + }, + "6,2" + ], + [ + { + "y": -0.75, + "x": 2 + }, + "2,1", + { + "x": 1 + }, + "2,3", + { + "x": 1.5 + }, + "3,4", + { + "x": 2 + }, + "7,4", + { + "x": 1.5 + }, + "6,3", + { + "x": 1 + }, + "6,1" + ], + [ + { + "y": -0.875, + "x": 5 + }, + "2,4", + { + "x": 5 + }, + "6,4" + ], + [ + { + "y": -0.625, + "x": 1 + }, + "2,0", + { + "x": 13 + }, + "6,0" + ], + [ + { + "y": -0.5, + "x": 3 + }, + "3,0", + { + "x": 9 + }, + "7,0" + ], + [ + { + "x": 2.5 + }, + "0,0\n\n\n\n\n\n\n\n\ne", + "0,1\n\n\n\n\n\n\n\n\ne", + { + "x": 8 + }, + "2,0\n\n\n\n\n\n\n\n\ne", + "2,1\n\n\n\n\n\n\n\n\ne" + ], + [ + { + "r": 15, + "rx": 4, + "ry": 8.175, + "y": -4.675, + "x": -0.5 + }, + "3,1" + ], + [ + { + "r": 30, + "y": -1, + "x": -0.5 + }, + "3,2" + ], + [ + { + "r": 45, + "y": -1, + "x": -0.5 + }, + "3,3" + ], + [ + { + "r": -45, + "rx": 13, + "y": -4.675, + "x": -0.5 + }, + "7,3" + ], + [ + { + "r": -30, + "y": -1, + "x": -0.5 + }, + "7,2" + ], + [ + { + "r": -15, + "y": -1, + "x": -0.5 + }, + "7,1" + ] + ] + } +} \ No newline at end of file diff --git a/keyboards/wilba_tech/wt60_h1/keymaps/vial/config.h b/keyboards/wilba_tech/wt60_h1/keymaps/vial/config.h new file mode 100644 index 0000000000..d7e773fd73 --- /dev/null +++ b/keyboards/wilba_tech/wt60_h1/keymaps/vial/config.h @@ -0,0 +1,8 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ + +#pragma once + +/* Vial configuration */ +#define VIAL_KEYBOARD_UID {0x4D, 0x1A, 0x49, 0x5D, 0x98, 0xAF, 0x2A, 0x0F} +#define VIAL_UNLOCK_COMBO_ROWS { 0, 2 } +#define VIAL_UNLOCK_COMBO_COLS { 0, 12 } diff --git a/keyboards/wilba_tech/wt60_h1/keymaps/vial/keymap.c b/keyboards/wilba_tech/wt60_h1/keymaps/vial/keymap.c new file mode 100644 index 0000000000..1f9d213f05 --- /dev/null +++ b/keyboards/wilba_tech/wt60_h1/keymaps/vial/keymap.c @@ -0,0 +1 @@ +#include "../default/keymap.c" \ No newline at end of file diff --git a/keyboards/wilba_tech/wt60_h1/keymaps/vial/rules.mk b/keyboards/wilba_tech/wt60_h1/keymaps/vial/rules.mk new file mode 100644 index 0000000000..3ed0d216fb --- /dev/null +++ b/keyboards/wilba_tech/wt60_h1/keymaps/vial/rules.mk @@ -0,0 +1,3 @@ +VIA_ENABLE = yes +VIAL_ENABLE = yes +QMK_SETTINGS = no diff --git a/keyboards/wilba_tech/wt60_h1/keymaps/vial/vial.json b/keyboards/wilba_tech/wt60_h1/keymaps/vial/vial.json new file mode 100644 index 0000000000..cfe2865425 --- /dev/null +++ b/keyboards/wilba_tech/wt60_h1/keymaps/vial/vial.json @@ -0,0 +1,200 @@ +{ + "name": "wilba.tech WT60-H1", + "vendorId": "0x6582", + "productId": "0x0024", + "lighting": "none", + "matrix": {"rows": 5, "cols": 14}, + "layouts": { + "labels": [["Bottom Row", "7U", "HHKB", "WKL"]], + "keymap": [ + [ + { + "c": "#777777" + }, + "0,0", + { + "c": "#cccccc" + }, + "0,1", + "0,2", + "0,3", + "0,4", + "0,5", + "0,6", + "0,7", + "0,8", + "0,9", + "0,10", + "0,11", + "0,12", + "0,13", + "2,13" + ], + [ + { + "c": "#aaaaaa", + "w": 1.5 + }, + "1,0", + { + "c": "#cccccc" + }, + "1,1", + "1,2", + "1,3", + "1,4", + "1,5", + "1,6", + "1,7", + "1,8", + "1,9", + "1,10", + "1,11", + "1,12", + { + "c": "#aaaaaa", + "w": 1.5 + }, + "1,13" + ], + [ + { + "w": 1.75 + }, + "2,0", + { + "c": "#cccccc" + }, + "2,1", + "2,2", + "2,3", + "2,4", + "2,5", + "2,6", + "2,7", + "2,8", + "2,9", + "2,10", + "2,11", + { + "c": "#777777", + "w": 2.25 + }, + "2,12" + ], + [ + { + "c": "#aaaaaa", + "w": 2.25 + }, + "3,0", + { + "c": "#cccccc" + }, + "3,2", + "3,3", + "3,4", + "3,5", + "3,6", + "3,7", + "3,8", + "3,9", + "3,10", + "3,11", + { + "c": "#aaaaaa", + "w": 1.75 + }, + "3,12", + "3,13" + ], + [ + { + "w": 1.5 + }, + "4,0\n\n\n0,0", + "4,1\n\n\n0,0", + { + "w": 1.5 + }, + "4,2\n\n\n0,0", + { + "c": "#cccccc", + "w": 7 + }, + "4,6\n\n\n0,0", + { + "c": "#aaaaaa", + "w": 1.5 + }, + "4,11\n\n\n0,0", + "4,12\n\n\n0,0", + { + "w": 1.5 + }, + "4,13\n\n\n0,0" + ], + [ + { + "y": 0.25, + "w": 1.5, + "d": true + }, + "4,0\n\n\n0,1", + "4,1\n\n\n0,1", + { + "w": 1.5 + }, + "4,2\n\n\n0,1", + { + "c": "#cccccc", + "w": 7 + }, + "4,6\n\n\n0,1", + { + "c": "#aaaaaa", + "w": 1.5 + }, + "4,11\n\n\n0,1", + "4,12\n\n\n0,1", + { + "w": 1.5, + "d": true + }, + "4,13\n\n\n0,1" + ], + [ + { + "w": 1.5 + }, + "4,0\n\n\n0,2", + { + "d": true + }, + "4,1\n\n\n0,2", + { + "w": 1.5 + }, + "4,2\n\n\n0,2", + { + "c": "#cccccc", + "w": 7 + }, + "4,6\n\n\n0,2", + { + "c": "#aaaaaa", + "w": 1.5 + }, + "4,11\n\n\n0,2", + { + "d": true + }, + "4,12\n\n\n0,2", + { + "w": 1.5 + }, + "4,13\n\n\n0,2" + ] + ] + } +} diff --git a/keyboards/wuque/tata80/wk/keymaps/vial/config.h b/keyboards/wuque/tata80/wk/keymaps/vial/config.h new file mode 100644 index 0000000000..b6c42aef33 --- /dev/null +++ b/keyboards/wuque/tata80/wk/keymaps/vial/config.h @@ -0,0 +1,12 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ + +#pragma once + +#define VIAL_KEYBOARD_UID {0x6F, 0x39, 0x42, 0x3A, 0x41, 0x83, 0xFD, 0x60} +#define VIAL_UNLOCK_COMBO_ROWS { 0, 2 } +#define VIAL_UNLOCK_COMBO_COLS { 0, 13 } +#define VIAL_TAP_DANCE_ENTRIES 4 +#define VIAL_COMBO_ENTRIES 4 +#define VIAL_KEY_OVERRIDE_ENTRIES 4 +#define DYNAMIC_KEYMAP_LAYER_COUNT 3 + diff --git a/keyboards/wuque/tata80/wk/keymaps/vial/keymap.c b/keyboards/wuque/tata80/wk/keymaps/vial/keymap.c new file mode 100644 index 0000000000..ea4680a0fc --- /dev/null +++ b/keyboards/wuque/tata80/wk/keymaps/vial/keymap.c @@ -0,0 +1,36 @@ +/* Copyright 2022 wuque + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ +#include QMK_KEYBOARD_H + + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT( + 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_SCRL, KC_PAUS, + KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_INS, KC_HOME, KC_PGUP, + KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_DEL, KC_END, KC_PGDN, + KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_APP, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT + ), + [1] = LAYOUT( + _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ) +}; diff --git a/keyboards/wuque/tata80/wk/keymaps/vial/rules.mk b/keyboards/wuque/tata80/wk/keymaps/vial/rules.mk new file mode 100644 index 0000000000..8ff1f2319b --- /dev/null +++ b/keyboards/wuque/tata80/wk/keymaps/vial/rules.mk @@ -0,0 +1,3 @@ +VIA_ENABLE = yes +LTO_ENABLE = yes +VIAL_ENABLE = yes diff --git a/keyboards/wuque/tata80/wk/keymaps/vial/vial.json b/keyboards/wuque/tata80/wk/keymaps/vial/vial.json new file mode 100644 index 0000000000..9c10ce9110 --- /dev/null +++ b/keyboards/wuque/tata80/wk/keymaps/vial/vial.json @@ -0,0 +1,186 @@ +{ + "name": "Tata80", + "vendorId": "0x2365", + "productId": "0x0168", + "lighting": "none", + "matrix": {"rows": 6, "cols": 17}, + "layouts": { + "keymap": [ + [ + "0,0", + { + "x": 0.25 + }, + "0,1", + "0,2", + "0,3", + "0,4", + { + "x": 0.25 + }, + "0,5", + "0,6", + "0,7", + "0,8", + { + "x": 0.25 + }, + "0,9", + "0,10", + "0,11", + "0,12", + { + "x": 0.25 + }, + "0,13", + { + "x": 0.25 + }, + "0,14", + "0,15", + "0,16" + ], + [ + { + "y": 0.25 + }, + "1,0", + "1,1", + "1,2", + "1,3", + "1,4", + "1,5", + "1,6", + "1,7", + "1,8", + "1,9", + "1,10", + "1,11", + "1,12", + { + "w": 2 + }, + "1,13", + { + "x": 0.25 + }, + "1,14", + "1,15", + "1,16" + ], + [ + { + "w": 1.5 + }, + "2,0", + "2,1", + "2,2", + "2,3", + "2,4", + "2,5", + "2,6", + "2,7", + "2,8", + "2,9", + "2,10", + "2,11", + "2,12", + { + "w": 1.5 + }, + "2,13", + { + "x": 0.25 + }, + "2,14", + "2,15", + "2,16" + ], + [ + { + "w": 1.72 + }, + "3,0", + "3,1", + "3,2", + "3,3", + "3,4", + "3,5", + "3,6", + "3,7", + "3,8", + "3,9", + "3,10", + "3,11", + { + "w": 2.25 + }, + "3,13" + ], + [ + { + "w": 2.25 + }, + "4,0", + "4,2", + "4,3", + "4,4", + "4,5", + "4,6", + "4,7", + "4,8", + "4,9", + "4,10", + "4,11", + { + "w": 2.75 + }, + "4,13", + { + "x": 1.25 + }, + "4,15" + ], + [ + { + "w": 1.25 + }, + "5,0", + { + "w": 1.25 + }, + "5,1", + { + "w": 1.25 + }, + "5,2", + { + "w": 6.25 + }, + "5,6", + { + "w": 1.25 + }, + "5,9", + { + "w": 1.25 + }, + "5,10", + { + "w": 1.25 + }, + "5,11", + { + "w": 1.25 + }, + "5,13", + { + "x": 0.25 + }, + "5,14", + "5,15", + "5,16" + ] + ] + } +} diff --git a/keyboards/wuque/tata80/wk/wk.c b/keyboards/wuque/tata80/wk/wk.c new file mode 100644 index 0000000000..1846559718 --- /dev/null +++ b/keyboards/wuque/tata80/wk/wk.c @@ -0,0 +1,16 @@ +/* Copyright 2022 wuque + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ +#include "wk.h" diff --git a/keyboards/wuque/tata80/wk/wk.h b/keyboards/wuque/tata80/wk/wk.h new file mode 100644 index 0000000000..d166d4312c --- /dev/null +++ b/keyboards/wuque/tata80/wk/wk.h @@ -0,0 +1,44 @@ +/* Copyright 2022 wuque + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +#pragma once + +#include "quantum.h" + +/* This is a shortcut to help you visually see your layout. + * + * The first section contains all of the arguments representing the physical + * layout of the board and position of the keys. + * + * The second converts the arguments into a two-dimensional array which + * represents the switch matrix. + */ +#define LAYOUT( \ + k000, k001, k002, k003, k004, k005, k006, k007, k008, k009, k010, k011, k012, k013, k014, k015, k016, \ + k100, k101, k102, k103, k104, k105, k106, k107, k108, k109, k110, k111, k112, k113, k114, k115, k116, \ + k200, k201, k202, k203, k204, k205, k206, k207, k208, k209, k210, k211, k212, k213, k214, k215, k216, \ + k300, k301, k302, k303, k304, k305, k306, k307, k308, k309, k310, k311, k313, \ + k400, k402, k403, k404, k405, k406, k407, k408, k409, k410, k411, k413, k415, \ + k500, k501, k502, k506, k509, k510, k511, k513, k514, k515, k516 \ +) \ +{ \ + { k000, k001, k002, k003, k004, k005, k006, k007, k008, k009, k010, k011, k012, k013, k014, k015, k016 }, \ + { k100, k101, k102, k103, k104, k105, k106, k107, k108, k109, k110, k111, k112, k113, k114, k115, k116 }, \ + { k200, k201, k202, k203, k204, k205, k206, k207, k208, k209, k210, k211, k212, k213, k214, k215, k216 }, \ + { k300, k301, k302, k303, k304, k305, k306, k307, k308, k309, k310, k311, KC_NO, k313, KC_NO, KC_NO, KC_NO }, \ + { k400, KC_NO, k402, k403, k404, k405, k406, k407, k408, k409, k410, k411, KC_NO, k413, KC_NO, k415, KC_NO }, \ + { k500, k501, k502, KC_NO, KC_NO, KC_NO, k506, KC_NO, KC_NO, k509, k510, k511, KC_NO, k513, k514, k515, k516 } \ +} diff --git a/keyboards/xelus/rs60/keymaps/vial/config.h b/keyboards/xelus/rs60/keymaps/vial/config.h new file mode 100644 index 0000000000..991bc24039 --- /dev/null +++ b/keyboards/xelus/rs60/keymaps/vial/config.h @@ -0,0 +1,7 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ + +#pragma once + +#define VIAL_KEYBOARD_UID {0xB5, 0xCF, 0x0C, 0xD3, 0x06, 0xBA, 0xDB, 0x39} +#define VIAL_UNLOCK_COMBO_ROWS { 0, 2 } +#define VIAL_UNLOCK_COMBO_COLS { 0, 13 } diff --git a/keyboards/xelus/rs60/keymaps/vial/keymap.c b/keyboards/xelus/rs60/keymaps/vial/keymap.c new file mode 100644 index 0000000000..2900081385 --- /dev/null +++ b/keyboards/xelus/rs60/keymaps/vial/keymap.c @@ -0,0 +1,50 @@ +/* Copyright 2021 Harrison Chan (Xelus) + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT_60_ansi_split_bs_rshift( + 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_BSLS, 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_BSPC, + 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, MO(1), + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_APP, KC_RCTL + ), + + [1] = LAYOUT_60_ansi_split_bs_rshift( + 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_PSCR, + KC_CAPS, KC_TRNS, KC_UP , KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_VOLD, KC_VOLU, QK_BOOT, + KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, 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_RSFT, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ), + + [2] = LAYOUT_60_ansi_split_bs_rshift( + 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, 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_RSFT, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ), + + [3] = LAYOUT_60_ansi_split_bs_rshift( + 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, 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_RSFT, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ) +}; diff --git a/keyboards/xelus/rs60/keymaps/vial/rules.mk b/keyboards/xelus/rs60/keymaps/vial/rules.mk new file mode 100644 index 0000000000..a1c84ce8f9 --- /dev/null +++ b/keyboards/xelus/rs60/keymaps/vial/rules.mk @@ -0,0 +1,5 @@ +VIA_ENABLE = yes +VIAL_ENABLE = yes +LTO_ENABLE = yes + +CONSOLE_ENABLE = no diff --git a/keyboards/xelus/rs60/keymaps/vial/vial.json b/keyboards/xelus/rs60/keymaps/vial/vial.json new file mode 100644 index 0000000000..356ea697ed --- /dev/null +++ b/keyboards/xelus/rs60/keymaps/vial/vial.json @@ -0,0 +1,195 @@ +{ + "name": "RS60", + "vendorId": "0x5845", + "productId": "0x5253", + "lighting": "none", + "matrix": { + "rows": 5, + "cols": 14 + }, + "layouts": { + "labels": [ + "Split Backspace", + "Split Right Shift", + ["Bottom Row", "6.25U", "7U"] + ], + "keymap": [ + [ + { + "c": "#777777" + }, + "0,0", + { + "c": "#cccccc" + }, + "0,1", + "0,2", + "0,3", + "0,4", + "0,5", + "0,6", + "0,7", + "0,8", + "0,9", + "0,10", + "0,11", + "0,12", + { + "c": "#aaaaaa", + "w": 2 + }, + "0,13\n\n\n0,0", + { + "x": 0.5 + }, + "0,13\n\n\n0,1", + "2,13\n\n\n0,1" + ], + [ + { + "w": 1.5 + }, + "1,0", + { + "c": "#cccccc" + }, + "1,1", + "1,2", + "1,3", + "1,4", + "1,5", + "1,6", + "1,7", + "1,8", + "1,9", + "1,10", + "1,11", + "1,12", + { + "w": 1.5 + }, + "1,13" + ], + [ + { + "c": "#aaaaaa", + "w": 1.75 + }, + "2,0", + { + "c": "#cccccc" + }, + "2,1", + "2,2", + "2,3", + "2,4", + "2,5", + "2,6", + "2,7", + "2,8", + "2,9", + "2,10", + "2,11", + { + "c": "#777777", + "w": 2.25 + }, + "2,12" + ], + [ + { + "c": "#aaaaaa", + "w": 2.25 + }, + "3,0", + { + "c": "#cccccc" + }, + "3,1", + "3,2", + "3,3", + "3,4", + "3,5", + "3,6", + "3,7", + "3,8", + "3,9", + "3,11", + { + "c": "#aaaaaa", + "w": 1.75 + }, + "3,12\n\n\n1,0", + "3,13\n\n\n1,0", + { + "x": 0.5, + "w": 2.75 + }, + "3,12\n\n\n1,1" + ], + [ + { + "w": 1.25 + }, + "4,0\n\n\n2,0", + { + "w": 1.25 + }, + "4,1\n\n\n2,0", + { + "w": 1.25 + }, + "4,2\n\n\n2,0", + { + "c": "#cccccc", + "w": 6.25 + }, + "4,5\n\n\n2,0", + { + "c": "#aaaaaa", + "w": 1.25 + }, + "4,9\n\n\n2,0", + { + "w": 1.25 + }, + "4,10\n\n\n2,0", + { + "w": 1.25 + }, + "4,12\n\n\n2,0", + { + "w": 1.25 + }, + "4,13\n\n\n2,0" + ], + [ + { + "y": 0.5, + "w": 1.5 + }, + "4,0\n\n\n2,1", + "4,1\n\n\n2,1", + { + "w": 1.5 + }, + "4,2\n\n\n2,1", + { + "c": "#cccccc", + "w": 7 + }, + "4,5\n\n\n2,1", + { + "c": "#aaaaaa", + "w": 1.5 + }, + "4,10\n\n\n2,1", + "4,12\n\n\n2,1", + { + "w": 1.5 + }, + "4,13\n\n\n2,1" + ] + ] + } +} diff --git a/quantum/qmk_settings.c b/quantum/qmk_settings.c index 7293f416c8..1549d7b5fc 100644 --- a/quantum/qmk_settings.c +++ b/quantum/qmk_settings.c @@ -26,7 +26,7 @@ static void auto_shift_timeout_apply(void) { set_autoshift_timeout(QS.auto_shift_timeout); } -#ifdef MOUSEKEY_ENABLE +#if defined(MOUSEKEY_ENABLE) && !defined(MK_3_SPEED) static void mousekey_apply(void) { mk_delay = QS.mousekey_delay / 10; mk_interval = QS.mousekey_interval; @@ -48,7 +48,7 @@ static const qmk_settings_proto_t protos[] PROGMEM = { DECLARE_STATIC_SETTING(6, osk_timeout), DECLARE_STATIC_SETTING(7, tapping_term), DECLARE_STATIC_SETTING(8, tapping), -#ifdef MOUSEKEY_ENABLE +#if defined(MOUSEKEY_ENABLE) && !defined(MK_3_SPEED) DECLARE_STATIC_SETTING_NOTIFY(9, mousekey_delay, mousekey_apply), DECLARE_STATIC_SETTING_NOTIFY(10, mousekey_interval, mousekey_apply), DECLARE_STATIC_SETTING_NOTIFY(11, mousekey_move_delta, mousekey_apply), @@ -166,7 +166,7 @@ void qmk_settings_reset(void) { QS.osk_tap_toggle = ONESHOT_TAP_TOGGLE; QS.osk_timeout = ONESHOT_TIMEOUT; -#ifdef MOUSEKEY_ENABLE +#if defined(MOUSEKEY_ENABLE) && !defined(MK_3_SPEED) QS.mousekey_delay = MOUSEKEY_DELAY; QS.mousekey_interval = MOUSEKEY_INTERVAL; QS.mousekey_move_delta = MOUSEKEY_MOVE_DELTA; diff --git a/util/ci_vial_verify_uid.py b/util/ci_vial_verify_uid.py index a07cb24de5..5f98be7c2d 100755 --- a/util/ci_vial_verify_uid.py +++ b/util/ci_vial_verify_uid.py @@ -1,33 +1,33 @@ #!/usr/bin/env python3 from glob import glob -import os +from pathlib import Path import re import sys import struct from collections import defaultdict - def main(): + + VIAL_UID_REGEX = re.compile(r"#\s*define\s+VIAL_KEYBOARD_UID\s+(?:\\(?:\n|\r)\s*)*{\s*((?:0(?:x|X)(?:[0-9a-fA-F]){2}\s*,\s*){7}(?:0(?:x|X)(?:[0-9a-fA-F]){2}))\s*}") + error = 0 uid_to_keyboards = defaultdict(set) for filename in glob("keyboards/**/vial.json", recursive=True): keyboard = filename[10:-10].split("/keymaps/")[0] - path = os.path.dirname(filename) + dirname = Path(filename).parents[0] uid = None + while True: - config_h = os.path.join(path, "config.h") - if os.path.exists(config_h): - with open(config_h, "r") as inf: - for line in inf: - uid = re.findall(r"#define.*VIAL_KEYBOARD_UID.*{(.*)}", line) - if uid: - break + config_h = dirname.joinpath("config.h") + if config_h.exists() and config_h.stat().st_size < 100000: + content = config_h.read_text() + uid = VIAL_UID_REGEX.search(content) if uid: break - path = os.path.dirname(path) - if path.endswith("keyboards"): + dirname = dirname.parents[0] + if dirname.match("keyboards"): break if not uid: @@ -35,7 +35,8 @@ def main(): error = 1 continue - uid = uid[0].split(",") + uid = uid[1].split(",") + uid.reverse() uid = [int(x, 16) for x in uid] uid = struct.pack("BBBBBBBB", *uid).hex() uid_to_keyboards[uid].add(keyboard)