diff --git a/keyboards/alko/cantordeon/README.md b/keyboards/alko/cantordeon/README.md new file mode 100644 index 0000000000..8aca3e556c --- /dev/null +++ b/keyboards/alko/cantordeon/README.md @@ -0,0 +1,27 @@ +# Cantordeon + +Inspired by [El Cantor HS](https://github.com/azhizhinov/ELCANTORHS) + +![Cantordeon](https://cornedeon.ru/img/cantordeon_1_over.jpg) + +This keyboard a mod of El Cantor HS with rp2040 MCU and diode matrix, optimized for handwired. + +* Keyboard Maintainer: [alko](https://github.com/alko-kbd/) +* Gallery: [Cornedeon](https://cornedeon.ru) +* Case 3D Model: [Thingiverse](https://www.thingiverse.com/thing:7161522) +* Hardware Supported: rp2040-zero + +## Build firmware + +qmk compile -kb alko/cantordeon -km vial + +## Bootloader + +Enter the bootloader in 3 ways: + +* **Bootmagic reset**: Hold down the two top left keys (top right for right side) and plug in the keyboard. +* **Physical reset button**: + * Press and hold the BOOT button. + * Press and release the RESET button. + * Release the BOOT button. + diff --git a/keyboards/alko/cantordeon/config.h b/keyboards/alko/cantordeon/config.h new file mode 100644 index 0000000000..11abebf505 --- /dev/null +++ b/keyboards/alko/cantordeon/config.h @@ -0,0 +1,18 @@ +// Copyright 2024 QMK +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#define SERIAL_USART_FULL_DUPLEX +#define SERIAL_USART_RX_PIN GP1 +#define SERIAL_USART_TX_PIN GP0 +//#define USE_SERIAL +//#define SOFT_SERIAL_PIN GP1 +//#define USB_VBUS_PIN GP2 + +/* RP2040- and hardware-specific config */ +#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET // Activates the double-tap behavior +#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 500U +#define PICO_XOSC_STARTUP_DELAY_MULTIPLIER 64 + +//#define SPLIT_HAND_PIN GP8 diff --git a/keyboards/alko/cantordeon/keyboard.json b/keyboards/alko/cantordeon/keyboard.json new file mode 100644 index 0000000000..80b032abc5 --- /dev/null +++ b/keyboards/alko/cantordeon/keyboard.json @@ -0,0 +1,107 @@ +{ + "manufacturer": "alko", + "keyboard_name": "Cantordeon", + "maintainer": "alko", + "url": "https://github.com/alko-kbd/cantordeon", + "usb": { + "vid": "0x4653", + "pid": "0x0004", + "suspend_wakeup_delay": 200, + "device_version": "1.0.0" + }, + "processor": "RP2040", + "bootloader": "rp2040", + "features": { + "bootmagic": true, + "extrakey": true, + "mousekey": true, + "nkro": true, + "oled": false, + "rgblight": false, + "rgb_matrix": false, + "encoder": false + }, + "diode_direction": "COL2ROW", + "matrix_pins": { + "cols": ["GP28", "GP27", "GP26", "GP15", "GP14", "GP13"], + "rows": ["GP4", "GP5", "GP6", "GP7"] + }, + "bootmagic": { + "enabled": true, + "matrix": [ 0, 1 ] + }, + "split": { + "enabled": true, + "bootmagic": { + "matrix": [4, 1] + }, + "matrix_pins": { + "right": { + "cols": ["GP9", "GP8", "GP7", "GP6", "GP5", "GP4"], + "rows": ["GP28", "GP27", "GP26", "GP15"] + } + }, + "handedness": { + "pin": "GP29" + }, + "serial": { + "driver": "vendor" + }, + "transport": { + "sync": { + "matrix_state": true + }, + "watchdog": true + } + }, + "layouts": { + "LAYOUT": { + "layout": [ + {"matrix": [0, 0], "x": 0, "y": 0.25}, + {"matrix": [0, 1], "x": 1, "y": 0.25}, + {"matrix": [0, 2], "x": 2, "y": 0.125}, + {"matrix": [0, 3], "x": 3, "y": 0}, + {"matrix": [0, 4], "x": 4, "y": 0.125}, + {"matrix": [0, 5], "x": 5, "y": 0.25}, + {"matrix": [4, 0], "x": 8, "y": 0.25}, + {"matrix": [4, 1], "x": 9, "y": 0.125}, + {"matrix": [4, 2], "x": 10, "y": 0}, + {"matrix": [4, 3], "x": 11, "y": 0.125}, + {"matrix": [4, 4], "x": 12, "y": 0.25}, + {"matrix": [4, 5], "x": 13, "y": 0.25}, + {"matrix": [1, 0], "x": 0, "y": 1.25}, + {"matrix": [1, 1], "x": 1, "y": 1.25}, + {"matrix": [1, 2], "x": 2, "y": 1.125}, + {"matrix": [1, 3], "x": 3, "y": 1}, + {"matrix": [1, 4], "x": 4, "y": 1.125}, + {"matrix": [1, 5], "x": 5, "y": 1.25}, + {"matrix": [5, 0], "x": 8, "y": 1.25}, + {"matrix": [5, 1], "x": 9, "y": 1.125}, + {"matrix": [5, 2], "x": 10, "y": 1}, + {"matrix": [5, 3], "x": 11, "y": 1.125}, + {"matrix": [5, 4], "x": 12, "y": 1.25}, + {"matrix": [5, 5], "x": 13, "y": 1.25}, + {"matrix": [2, 0], "x": 0, "y": 2.25}, + {"matrix": [2, 1], "x": 1, "y": 2.25}, + {"matrix": [2, 2], "x": 2, "y": 2.125}, + {"matrix": [2, 3], "x": 3, "y": 2}, + {"matrix": [2, 4], "x": 4, "y": 2.125}, + {"matrix": [2, 5], "x": 5, "y": 2.25}, + {"matrix": [6, 0], "x": 8, "y": 2.25}, + {"matrix": [6, 1], "x": 9, "y": 2.125}, + {"matrix": [6, 2], "x": 10, "y": 2}, + {"matrix": [6, 3], "x": 11, "y": 2.125}, + {"matrix": [6, 4], "x": 12, "y": 2.25}, + {"matrix": [6, 5], "x": 13, "y": 2.25}, + {"matrix": [3, 0], "x": 2.5, "y": 3}, + {"matrix": [3, 1], "x": 3.5, "y": 3.25}, + {"matrix": [3, 2], "x": 4.5, "y": 3.5}, + {"matrix": [3, 3], "x": 5.5, "y": 3.75}, + {"matrix": [7, 0], "x": 7.5, "y": 3.75}, + {"matrix": [7, 1], "x": 8.5, "y": 3.5}, + {"matrix": [7, 2], "x": 9.5, "y": 3.25}, + {"matrix": [7, 3], "x": 10.5, "y": 3} + ] + } + } +} diff --git a/keyboards/alko/cantordeon/keymaps/default/keymap.c b/keyboards/alko/cantordeon/keymaps/default/keymap.c new file mode 100644 index 0000000000..49d5e4d178 --- /dev/null +++ b/keyboards/alko/cantordeon/keymaps/default/keymap.c @@ -0,0 +1,30 @@ +// Copyright 2021 azhizhinov (@azhizhinov) +// SPDX-License-Identifier: GPL-2.0-or-late +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT( + KC_GRV, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, + 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_TAB, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RBRC, + KC_LALT, KC_LSFT, MO(1), KC_BSPC, KC_ENT, MO(2), KC_SPC, RCTL(KC_BSPC) + ), + [1] = 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_LCTL, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_LEFT, KC_UP, KC_RGHT, KC_NO, KC_HOME, KC_NO, + KC_LSFT, KC_CAPS, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_DOWN, KC_NO, KC_NO, KC_END, KC_RALT, + KC_LALT, KC_LGUI, KC_TRNS, KC_ESC, KC_ENT, MO(3), KC_SPC, RCTL(KC_BSPC) + ), + [2] = 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_LCTL, KC_BSPC, KC_C, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_LSFT, KC_X, KC_V, KC_S, KC_L, KC_NO, KC_UNDS, KC_PLUS, KC_PMNS, KC_NO, KC_NO, KC_RALT, + KC_LALT, KC_LGUI, MO(3), KC_ESC, KC_ENT, KC_TRNS, KC_SPC, RCTL(KC_BSPC) + ), + [3] = LAYOUT( + KC_TAB, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC, + KC_LCTL, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS, KC_GRV, + KC_LSFT, KC_CAPS, KC_NO, KC_NO, KC_NO, KC_NO, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, KC_RALT, + KC_LALT, KC_LGUI, KC_TRNS, KC_ESC, KC_ENT, KC_TRNS, KC_SPC, RCTL(KC_BSPC) + ) +}; diff --git a/keyboards/alko/cantordeon/keymaps/vial/config.h b/keyboards/alko/cantordeon/keymaps/vial/config.h new file mode 100644 index 0000000000..c5984ee3d9 --- /dev/null +++ b/keyboards/alko/cantordeon/keymaps/vial/config.h @@ -0,0 +1,34 @@ +/* +Copyright 2019 @foostan +Copyright 2020 Drashna Jaelre <@drashna> + +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 {0x85, 0x86, 0x45, 0x19, 0x3D, 0x36, 0xA3, 0x90} +#define VIAL_UNLOCK_COMBO_ROWS {0, 0} +#define VIAL_UNLOCK_COMBO_COLS {0, 1} + +// For master half only when MASTER_LEFT/MASTER_RIGHT using +//#define WAIT_FOR_USB + +/* Select hand configuration */ + +//#define MASTER_LEFT +//#define MASTER_RIGHT +// #define EE_HANDS +// moved to revXX +//#define SPLIT_HAND_PIN GP8 diff --git a/keyboards/alko/cantordeon/keymaps/vial/keymap.c b/keyboards/alko/cantordeon/keymaps/vial/keymap.c new file mode 100644 index 0000000000..085dfedcdf --- /dev/null +++ b/keyboards/alko/cantordeon/keymaps/vial/keymap.c @@ -0,0 +1,67 @@ +/* +Copyright 2019 @foostan +Copyright 2020 Drashna Jaelre <@drashna> + +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_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_QUOT, + //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, + //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + KC_LCTL, KC_LALT, TL_LOWR, KC_SPC, KC_SPC, TL_UPPR, KC_RGUI, KC_RCTL + //`------------------------------------------------------' `-----------------------------------------------------' + ), + [1] = LAYOUT( + //,-----------------------------------------------------. ,-----------------------------------------------------. + KC_ESC,KC_GRAVE, KC_LPRN, KC_RPRN, KC_PLUS,KC_MINUS, KC_7, KC_8, KC_9, KC_0, KC_INS, KC_DEL, + //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + KC_TAB, XXXXXXX, KC_LBRC, KC_RBRC,KC_DQUO, KC_SLASH, KC_4, KC_5, KC_6,KC_KP_DOT,KC_UNDS, KC_BSLS, + //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + KC_LSFT, XXXXXXX, KC_LCBR, KC_RCBR, KC_LT, KC_GT, KC_1, KC_2, KC_3,KC_KP_EQUAL,KC_SLSH,KC_RSFT, + //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + KC_LCTL, KC_LALT, KC_TRNS, KC_SPC, KC_ENT, KC_TRNS, KC_RGUI, KC_RCTL + //`-----------------------------------------------------' `-----------------------------------------------------' + ), + [2] = LAYOUT( + //,-----------------------------------------------------. ,-----------------------------------------------------. + KC_PAST, KC_PSLS, KC_KP_0, KC_KP_7, KC_KP_8, KC_KP_9, KC_F7, KC_F8, KC_F9, KC_F10, KC_PSCR, KC_BRK, + //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + KC_PPLS, KC_PMNS, KC_PDOT, KC_KP_4, KC_KP_5, KC_KP_6, KC_F4, KC_F5, KC_F6, KC_F11, KC_NUM, KC_SCLN, + //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + KC_LSFT, XXXXXXX, KC_PEQL, KC_KP_1, KC_KP_2, KC_KP_3, KC_F1, KC_F2, KC_F3, KC_F12, KC_APP, KC_RSFT, + //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + KC_LCTL, KC_CALC, KC_TRNS, KC_PENT, KC_ENT, KC_TRNS, KC_CAPS, KC_RCTL + //`-----------------------------------------------------' `-----------------------------------------------------' + ), + [3] = 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, KC_CALC, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + XXXXXXX, XXXXXXX, KC_TRNS, XXXXXXX, XXXXXXX, KC_TRNS, XXXXXXX, XXXXXXX + //`-----------------------------------------------------' `-----------------------------------------------------' + ) +}; + diff --git a/keyboards/alko/cantordeon/keymaps/vial/rules.mk b/keyboards/alko/cantordeon/keymaps/vial/rules.mk new file mode 100644 index 0000000000..2c8798fe27 --- /dev/null +++ b/keyboards/alko/cantordeon/keymaps/vial/rules.mk @@ -0,0 +1,18 @@ +VIA_ENABLE = yes +VIAL_ENABLE = yes +LTO_ENABLE = yes + +RGBLIGHT_ENABLE = no +RGB_MATRIX_ENABLE = no # Can't have RGBLIGHT and RGB_MATRIX at the same time. +VIALRGB_ENABLE = no +MOUSEKEY_ENABLE = yes +OLED_ENABLE = no +OLED_DRIVER = SSD1306 +EXTRAKEY_ENABLE = yes +COMBO_ENABLE = yes + +QMK_SETTINGS = yes + +CAPS_WORD_ENABLE = yes +LAYER_LOCK_ENABLE = yes +REPEAT_KEY_ENABLE = yes diff --git a/keyboards/alko/cantordeon/keymaps/vial/vial.json b/keyboards/alko/cantordeon/keymaps/vial/vial.json new file mode 100644 index 0000000000..0bf2b8367c --- /dev/null +++ b/keyboards/alko/cantordeon/keymaps/vial/vial.json @@ -0,0 +1,25 @@ +{ + "matrix": { "rows": 8, "cols": 6 }, + "layouts": { + "keymap": [ + [{"x":3},"0,3",{"x":9.5},"4,2"], + [{"y":-0.75,"x":2},"0,2",{"x":1},"0,4",{"x":7.5},"4,1",{"x":1},"4,3"], + [{"y":-0.9,"x":5},"0,5",{"x":5.5},"4,0"], + [{"y":-0.35},"0,0","0,1",{"x":1},"1,3",{"x":9.5},"5,2",{"x":1},"4,4","4,5"], + [{"y":-0.75,"x":2},"1,2",{"x":1},"1,4",{"x":7.5},"5,1",{"x":1},"5,3"], + [{"y":-0.99,"x":5},"1,5",{"x":5.5},"5,0"], + [{"y":-0.35},"1,0","1,1",{"x":1},"2,3",{"x":9.5},"6,2",{"x":1},"5,4","5,5"], + [{"y":-0.75,"x":2},"2,2",{"x":1},"2,4",{"x":7.5},"6,1",{"x":1},"6,3"], + [{"y":-0.89,"x":5},"2,5",{"x":5.5},"6,0"], + [{"y":-0.35},"2,0","2,1",{"x":13.5},"6,4","6,5"], + [{"rx":5,"ry":3.5,"x":0.1,"r":5},"3,1"], + [{"rx":3.6,"y":0.1,"x":0.2,"r":-5},"3,0"], + [{"rx":6.5,"y":0.2,"x":-0.05,"r":15},"3,2"], + [{"rx":7.5,"y":0.45,"x":0.4,"r":25},"3,3"], + [{"rx":12.9,"y":0.1,"x":-0.2,"r":5},"7,3"], + [{"rx":11.5,"ry":3.5,"x":-0.1,"r":-5},"7,2"], + [{"rx":10,"y":0.45,"x":0.05,"r":-15},"7,1"], + [{"rx":9,"y":0.9,"x":-0.4,"r":-25},"7,0"] + ] + } +} diff --git a/keyboards/alko/cornedeon/README.md b/keyboards/alko/cornedeon/README.md index 5ea8627341..9ee33b3066 100644 --- a/keyboards/alko/cornedeon/README.md +++ b/keyboards/alko/cornedeon/README.md @@ -2,9 +2,18 @@ ## Based on Corne Keyboard [CRKBD](https://github.com/foostan/crkbd) Improved Corne 3 keyboard with full 4x6 matrix. -Keyboard Maintainer: [alk0](https://github.com/alk0-kbd/) [alko-kbd@alk0.ru](mailto:alko-kbd@alk0.ru) +Keyboard Maintainer: [alko](https://github.com/alko-kbd/cornedeon) [alko-kbd@alk0.ru](mailto:alko-kbd@alk0.ru) + +Web Site: [cornedeon.ru](https://cornedeon.ru) + Hardware Supported: Corne 3 PCB, Handwired ![Corne3-based Cornedeon](https://cornedeon.ru/img/cornedeon_3_overviev.jpg) +Revisions: + +rev2 - promicro rp2040 + +rev2z - rp2040 zero + qmk compile -kb alko/cornedeon/rev2 -km vial diff --git a/keyboards/alko/cornedeon/keymaps/vial/config.h b/keyboards/alko/cornedeon/keymaps/vial/config.h index fc243f8896..3af8b41f42 100644 --- a/keyboards/alko/cornedeon/keymaps/vial/config.h +++ b/keyboards/alko/cornedeon/keymaps/vial/config.h @@ -22,6 +22,8 @@ along with this program. If not, see . #define VIAL_UNLOCK_COMBO_ROWS {0, 0} #define VIAL_UNLOCK_COMBO_COLS {0, 1} +//#define DYNAMIC_KEYMAP_LAYER_COUNT 6 + // For master half only when MASTER_LEFT/MASTER_RIGHT using //#define WAIT_FOR_USB @@ -30,5 +32,3 @@ along with this program. If not, see . //#define MASTER_LEFT //#define MASTER_RIGHT // #define EE_HANDS -// moved to revXX -//#define SPLIT_HAND_PIN GP8 diff --git a/keyboards/alko/cornedeon/keymaps/vial/rules.mk b/keyboards/alko/cornedeon/keymaps/vial/rules.mk index 1243e76d14..765a84fd53 100644 --- a/keyboards/alko/cornedeon/keymaps/vial/rules.mk +++ b/keyboards/alko/cornedeon/keymaps/vial/rules.mk @@ -1,18 +1,7 @@ VIA_ENABLE = yes VIAL_ENABLE = yes LTO_ENABLE = yes +MEDIA_KEY_ENABLE = yes +CONSUMER_ENABLE = yes +COMBO_ENABLE = yes -RGBLIGHT_ENABLE = no -RGB_MATRIX_ENABLE = yes # Can't have RGBLIGHT and RGB_MATRIX at the same time. -VIALRGB_ENABLE = yes -MOUSEKEY_ENABLE = no -OLED_ENABLE = no -OLED_DRIVER = SSD1306 -EXTRAKEY_ENABLE = no -COMBO_ENABLE = no - -QMK_SETTINGS = no - -CAPS_WORD_ENABLE = no -LAYER_LOCK_ENABLE = no -REPEAT_KEY_ENABLE = no diff --git a/keyboards/alko/cornedeon/keymaps/vial/vial.json b/keyboards/alko/cornedeon/keymaps/vial/vial.json index de2e6f7b1f..c3caa88fd8 100644 --- a/keyboards/alko/cornedeon/keymaps/vial/vial.json +++ b/keyboards/alko/cornedeon/keymaps/vial/vial.json @@ -1,5 +1,5 @@ { - "lighting": "vialrgb", + "lighting": "none", "matrix": { "rows": 8, "cols": 6 }, "layouts": { "keymap": [ diff --git a/keyboards/alko/cornedeon/rev1_5/config.h b/keyboards/alko/cornedeon/rev1_5/config.h deleted file mode 100644 index 74f9e7d32a..0000000000 --- a/keyboards/alko/cornedeon/rev1_5/config.h +++ /dev/null @@ -1 +0,0 @@ -#define SPLIT_HAND_PIN B4 \ No newline at end of file diff --git a/keyboards/alko/cornedeon/rev1_5/keyboard.json b/keyboards/alko/cornedeon/rev1_5/keyboard.json deleted file mode 100644 index cd433d042c..0000000000 --- a/keyboards/alko/cornedeon/rev1_5/keyboard.json +++ /dev/null @@ -1,46 +0,0 @@ -{ - "keyboard_name": "Cornedion", - "usb": { - "pid": "0x0001", - "device_version": "0.0.1" - }, - "features": { - "extrakey": false, - "nkro": false, - "oled": false, - "mousekey": false, - "encoder": false, - "rgblight": false, - "rgbmatrix": true - }, - "build": { - "lto": false - }, - "matrix_pins": { - "cols": [ "F4", "F5", "F6", "F7", "B1", "B3" ], - "rows": [ "D4", "C6", "D7", "E6" ] - }, - "diode_direction": "COL2ROW", - "split": { - "serial": { - "pin": "D2" - }, - "transport": { - "sync": { - "matrix_state": true - } - } - }, - "rgblight": { - "led_count": 60, - "split_count": [30, 30] - }, - "rgb_matrix": { - "led_count": 60, - "split_count": [30, 30] - }, - "ws2812": { - "pin": "D3" - }, - "development_board": "promicro" -} diff --git a/keyboards/alko/cornedeon/rev2/config.h b/keyboards/alko/cornedeon/rev2/config.h index ef09659326..a215ed8d05 100644 --- a/keyboards/alko/cornedeon/rev2/config.h +++ b/keyboards/alko/cornedeon/rev2/config.h @@ -6,7 +6,7 @@ //#define SERIAL_USART_FULL_DUPLEX //#define SERIAL_USART_RX_PIN GP2 //#define SERIAL_USART_TX_PIN GP1 -#define USE_SERIAL +//#define USE_SERIAL //#define SOFT_SERIAL_PIN GP1 //#define USB_VBUS_PIN GP2 @@ -14,5 +14,3 @@ #define RP2040_BOOTLOADER_DOUBLE_TAP_RESET // Activates the double-tap behavior #define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 500U #define PICO_XOSC_STARTUP_DELAY_MULTIPLIER 64 - -//#define SPLIT_HAND_PIN GP8 diff --git a/keyboards/alko/cornedeon/rev2/keyboard.json b/keyboards/alko/cornedeon/rev2/keyboard.json index 5c647b1844..fab85931af 100644 --- a/keyboards/alko/cornedeon/rev2/keyboard.json +++ b/keyboards/alko/cornedeon/rev2/keyboard.json @@ -5,19 +5,18 @@ "usb": { "vid": "0x4653", "pid": "0x0002", - "suspend_wakeup_delay": 200, "device_version": "2.0.0" }, "processor": "RP2040", "bootloader": "rp2040", "features": { - "bootmagic": true, - "extrakey": true, - "nkro": true, + "bootmagic": false, + "extrakey": false, + "mousekey": false, + "nkro": false, "oled": false, "rgblight": false, - "rgb_matrix": true, - "mousekey": true, + "rgb_matrix": false, "encoder": false }, "diode_direction": "COL2ROW", @@ -26,7 +25,7 @@ "rows": ["GP4", "GP5", "GP6", "GP7"] }, "bootmagic": { - "enabled": true, + "enabled": false, "matrix": [ 0, 1 ] }, "split": { @@ -113,24 +112,6 @@ "driver": "vendor", "pin": "GP0" }, - "rgblight": { - "led_count": 60, - "split": true, - "split_count": [30, 30], - "max_brightness": 120, - "animations": { - "alternating": true, - "breathing": true, - "christmas": true, - "knight": true, - "rainbow_mood": true, - "rainbow_swirl": true, - "rgb_test": true, - "snake": true, - "static_gradient": true, - "twinkle": true - } - }, "rgb_matrix": { "animations": { "alphas_mods": true, @@ -178,5 +159,5 @@ "solid_multisplash": true }, "sleep": true - }, + } } diff --git a/keyboards/alko/cornedeon/rev2z/config.h b/keyboards/alko/cornedeon/rev2z/config.h new file mode 100644 index 0000000000..11abebf505 --- /dev/null +++ b/keyboards/alko/cornedeon/rev2z/config.h @@ -0,0 +1,18 @@ +// Copyright 2024 QMK +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#define SERIAL_USART_FULL_DUPLEX +#define SERIAL_USART_RX_PIN GP1 +#define SERIAL_USART_TX_PIN GP0 +//#define USE_SERIAL +//#define SOFT_SERIAL_PIN GP1 +//#define USB_VBUS_PIN GP2 + +/* RP2040- and hardware-specific config */ +#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET // Activates the double-tap behavior +#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 500U +#define PICO_XOSC_STARTUP_DELAY_MULTIPLIER 64 + +//#define SPLIT_HAND_PIN GP8 diff --git a/keyboards/alko/cornedeon/rev2z/keyboard.json b/keyboards/alko/cornedeon/rev2z/keyboard.json new file mode 100644 index 0000000000..0de192d201 --- /dev/null +++ b/keyboards/alko/cornedeon/rev2z/keyboard.json @@ -0,0 +1,182 @@ +{ + "maintainer": "alko", + "manufacturer": "alko", + "keyboard_name": "Cornedeon v2z", + "url": "https://github.com/alko-kbd/cornedeon", + "usb": { + "vid": "0x4653", + "pid": "0x0002", + "suspend_wakeup_delay": 200, + "device_version": "2.0.0" + }, + "processor": "RP2040", + "bootloader": "rp2040", + "features": { + "bootmagic": true, + "extrakey": true, + "nkro": true, + "oled": false, + "rgblight": false, + "rgb_matrix": true, + "mousekey": true, + "encoder": false + }, + "diode_direction": "COL2ROW", + "matrix_pins": { + "cols": ["GP28", "GP27", "GP26", "GP15", "GP14", "GP13"], + "rows": ["GP4", "GP5", "GP6", "GP7"] + }, + "bootmagic": { + "enabled": true, + "matrix": [ 0, 1 ] + }, + "split": { + "enabled": true, + "bootmagic": { + "matrix": [4, 1] + }, + "handedness": { + "pin": "GP29" + }, + "serial": { + "driver": "vendor", + }, + "transport": { + "sync": { + "matrix_state": true + }, + "watchdog": true + } + }, + "layouts": { + "LAYOUT": { + "layout": [ + {"matrix": [0, 0], "x": 0, "y": 0.3}, + {"matrix": [0, 1], "x": 1, "y": 0.3}, + {"matrix": [0, 2], "x": 2, "y": 0.1}, + {"matrix": [0, 3], "x": 3, "y": 0}, + {"matrix": [0, 4], "x": 4, "y": 0.1}, + {"matrix": [0, 5], "x": 5, "y": 0.2}, + + {"matrix": [4, 5], "x": 9, "y": 0.2}, + {"matrix": [4, 4], "x": 10, "y": 0.1}, + {"matrix": [4, 3], "x": 11, "y": 0}, + {"matrix": [4, 2], "x": 12, "y": 0.1}, + {"matrix": [4, 1], "x": 13, "y": 0.3}, + {"matrix": [4, 0], "x": 14, "y": 0.3}, + + {"matrix": [1, 0], "x": 0, "y": 1.3}, + {"matrix": [1, 1], "x": 1, "y": 1.3}, + {"matrix": [1, 2], "x": 2, "y": 1.1}, + {"matrix": [1, 3], "x": 3, "y": 1}, + {"matrix": [1, 4], "x": 4, "y": 1.1}, + {"matrix": [1, 5], "x": 5, "y": 1.2}, + + {"matrix": [5, 5], "x": 9, "y": 1.2}, + {"matrix": [5, 4], "x": 10, "y": 1.1}, + {"matrix": [5, 3], "x": 11, "y": 1}, + {"matrix": [5, 2], "x": 12, "y": 1.1}, + {"matrix": [5, 1], "x": 13, "y": 1.3}, + {"matrix": [5, 0], "x": 14, "y": 1.3}, + + {"matrix": [2, 0], "x": 0, "y": 2.3}, + {"matrix": [2, 1], "x": 1, "y": 2.3}, + {"matrix": [2, 2], "x": 2, "y": 2.1}, + {"matrix": [2, 3], "x": 3, "y": 2}, + {"matrix": [2, 4], "x": 4, "y": 2.1}, + {"matrix": [2, 5], "x": 5, "y": 2.2}, + + {"matrix": [6, 5], "x": 9, "y": 2.2}, + {"matrix": [6, 4], "x": 10, "y": 2.1}, + {"matrix": [6, 3], "x": 11, "y": 2}, + {"matrix": [6, 2], "x": 12, "y": 2.1}, + {"matrix": [6, 1], "x": 13, "y": 2.3}, + {"matrix": [6, 0], "x": 14, "y": 2.3}, + + {"matrix": [3, 0], "x": 0, "y": 3.7}, + {"matrix": [3, 1], "x": 1, "y": 3.7}, + {"matrix": [3, 2], "x": 2, "y": 3.7}, + {"matrix": [3, 3], "x": 4, "y": 3.7}, + {"matrix": [3, 4], "x": 5, "y": 3.7}, + {"matrix": [3, 5], "x": 6, "y": 3.2, "h": 1.5}, + + {"matrix": [7, 5], "x": 8, "y": 3.2, "h": 1.5}, + {"matrix": [7, 4], "x": 9, "y": 3.7}, + {"matrix": [7, 3], "x": 10, "y": 3.7} + {"matrix": [7, 2], "x": 12, "y": 3.7} + {"matrix": [7, 1], "x": 13, "y": 3.7} + {"matrix": [7, 0], "x": 14, "y": 3.7} + ] + } + }, + "ws2812": { + "driver": "vendor", + "pin": "GP3" + }, + "rgblight": { + "led_count": 60, + "split": true, + "split_count": [30, 30], + "max_brightness": 120, + "animations": { + "alternating": true, + "breathing": true, + "christmas": true, + "knight": true, + "rainbow_mood": true, + "rainbow_swirl": true, + "rgb_test": true, + "snake": true, + "static_gradient": true, + "twinkle": true + } + }, + "rgb_matrix": { + "animations": { + "alphas_mods": true, + "gradient_up_down": true, + "gradient_left_right": true, + "breathing": true, + "band_sat": true, + "band_val": true, + "band_pinwheel_sat": true, + "band_pinwheel_val": true, + "band_spiral_sat": true, + "band_spiral_val": true, + "cycle_all": true, + "cycle_left_right": true, + "cycle_up_down": true, + "rainbow_moving_chevron": true, + "cycle_out_in": true, + "cycle_out_in_dual": true, + "cycle_pinwheel": true, + "cycle_spiral": true, + "dual_beacon": true, + "rainbow_beacon": true, + "rainbow_pinwheels": true, + "raindrops": true, + "jellybean_raindrops": true, + "hue_breathing": true, + "hue_pendulum": true, + "hue_wave": true, + "pixel_fractal": true, + "pixel_flow": true, + "pixel_rain": true, + "typing_heatmap": true, + "digital_rain": true, + "solid_reactive_simple": true, + "solid_reactive": true, + "solid_reactive_wide": true, + "solid_reactive_multiwide": true, + "solid_reactive_cross": true, + "solid_reactive_multicross": true, + "solid_reactive_nexus": true, + "solid_reactive_multinexus": true, + "splash": true, + "multisplash": true, + "solid_splash": true, + "solid_multisplash": true + }, + "sleep": true + }, +} diff --git a/keyboards/alko/cornedeon_mini/README.md b/keyboards/alko/cornedeon_mini/README.md new file mode 100644 index 0000000000..4fdb2e2751 --- /dev/null +++ b/keyboards/alko/cornedeon_mini/README.md @@ -0,0 +1,13 @@ +# Cornedeon Keyboard +## Based on Corne Keyboard [CRKBD](https://github.com/foostan/crkbd) +Improved Corne 3 keyboard with full 4x5 matrix. + +Keyboard Maintainer: [alko](https://github.com/alko-kbd/) [alko-kbd@alk0.ru](mailto:alko-kbd@alk0.ru) + +Web Site: [cornedeon.ru](https://cornedeon.ru) + +Hardware Supported: Handwired + +![Corne3-based Cornedeon](https://cornedeon.ru/img/cornedeon_mini_mx.jpg) + +qmk compile -kb alko/cornedeon_mini/rev2z -km vial diff --git a/keyboards/alko/cornedeon_mini/info.json b/keyboards/alko/cornedeon_mini/info.json new file mode 100644 index 0000000000..f5b1d1b180 --- /dev/null +++ b/keyboards/alko/cornedeon_mini/info.json @@ -0,0 +1,134 @@ +{ + "maintainer": "alko", + "manufacturer": "alko", + "keyboard_name": "Cornedeon Mini", + "url": "https://github.com/alko-kbd/qmk-vial", + "usb": { + "vid": "0x4653" + }, + "features": { + "bootmagic": true, + "extrakey": true, + "nkro": true, + "oled": false, + "rgblight": false, + "rgb_matrix": true + }, + "bootmagic": { + "matrix": [0, 1] + }, + "split": { + "enabled": true, + "bootmagic": { + "matrix": [4, 1] + } + }, + "layouts": { + "LAYOUT": { + "layout": [ + {"matrix": [0, 0], "x": 1, "y": 0.3}, + {"matrix": [0, 1], "x": 2, "y": 0.1}, + {"matrix": [0, 2], "x": 3, "y": 0}, + {"matrix": [0, 3], "x": 4, "y": 0.1}, + {"matrix": [0, 4], "x": 5, "y": 0.2}, + + {"matrix": [4, 4], "x": 9, "y": 0.2}, + {"matrix": [4, 3], "x": 10, "y": 0.1}, + {"matrix": [4, 2], "x": 11, "y": 0}, + {"matrix": [4, 1], "x": 12, "y": 0.1}, + {"matrix": [4, 0], "x": 13, "y": 0.3}, + + {"matrix": [1, 0], "x": 1, "y": 1.3}, + {"matrix": [1, 1], "x": 2, "y": 1.1}, + {"matrix": [1, 2], "x": 3, "y": 1}, + {"matrix": [1, 3], "x": 4, "y": 1.1}, + {"matrix": [1, 4], "x": 5, "y": 1.2}, + + {"matrix": [5, 4], "x": 9, "y": 1.2}, + {"matrix": [5, 3], "x": 10, "y": 1.1}, + {"matrix": [5, 2], "x": 11, "y": 1}, + {"matrix": [5, 1], "x": 12, "y": 1.1}, + {"matrix": [5, 0], "x": 13, "y": 1.3}, + + {"matrix": [2, 0], "x": 1, "y": 2.3}, + {"matrix": [2, 1], "x": 2, "y": 2.1}, + {"matrix": [2, 2], "x": 3, "y": 2}, + {"matrix": [2, 3], "x": 4, "y": 2.1}, + {"matrix": [2, 4], "x": 5, "y": 2.2}, + + {"matrix": [6, 4], "x": 9, "y": 2.2}, + {"matrix": [6, 3], "x": 10, "y": 2.1}, + {"matrix": [6, 2], "x": 11, "y": 2}, + {"matrix": [6, 1], "x": 12, "y": 2.1}, + {"matrix": [6, 0], "x": 13, "y": 2.3}, + + {"matrix": [3, 0], "x": 1, "y": 3.7}, + {"matrix": [3, 1], "x": 2, "y": 3.7}, + {"matrix": [3, 2], "x": 4, "y": 3.7}, + {"matrix": [3, 3], "x": 5, "y": 3.7}, + {"matrix": [3, 4], "x": 6, "y": 3.2, "h": 1.5}, + + {"matrix": [7, 4], "x": 8, "y": 3.2, "h": 1.5}, + {"matrix": [7, 3], "x": 9, "y": 3.7}, + {"matrix": [7, 2], "x": 10, "y": 3.7} + {"matrix": [7, 1], "x": 12, "y": 3.7} + {"matrix": [7, 0], "x": 13, "y": 3.7} + ] + } + }, + "rgb_matrix": { + "driver": "ws2812", + "max_brightness": 120 + "led_count": 36, + "split": true, + "split_count": [18, 18], + "layout": [ + {"matrix": [0, 0], "x": 16, "y": 7, "flags": 4}, + {"matrix": [0, 1], "x": 33, "y": 3, "flags": 4}, + {"matrix": [0, 2], "x": 50, "y": 0, "flags": 4}, + {"matrix": [0, 3], "x": 68, "y": 2, "flags": 4}, + {"matrix": [0, 4], "x": 85, "y": 4, "flags": 4}, + + {"matrix": [1, 0], "x": 16, "y": 24, "flags": 4}, + {"matrix": [1, 1], "x": 33, "y": 20, "flags": 4}, + {"matrix": [1, 2], "x": 50, "y": 13, "flags": 4}, + {"matrix": [1, 3], "x": 68, "y": 19, "flags": 4}, + {"matrix": [1, 4], "x": 85, "y": 21, "flags": 4}, + + {"matrix": [2, 0], "x": 16, "y": 42, "flags": 4}, + {"matrix": [2, 1], "x": 33, "y": 37, "flags": 4}, + {"matrix": [2, 2], "x": 50, "y": 35, "flags": 4}, + {"matrix": [2, 3], "x": 68, "y": 37, "flags": 4}, + {"matrix": [2, 4], "x": 85, "y": 39, "flags": 4}, + + {"matrix": [3, 2], "x": 60, "y": 55, "flags": 1}, + {"matrix": [3, 3], "x": 80, "y": 58, "flags": 1}, + {"matrix": [3, 4], "x": 95, "y": 63, "flags": 1}, + + {"matrix": [4, 0], "x": 208, "y": 7, "flags": 4}, + {"matrix": [4, 1], "x": 191, "y": 3, "flags": 4}, + {"matrix": [4, 2], "x": 174, "y": 0, "flags": 4}, + {"matrix": [4, 3], "x": 156, "y": 2, "flags": 4}, + {"matrix": [4, 4], "x": 139, "y": 4, "flags": 4}, + + {"matrix": [5, 0], "x": 208, "y": 24, "flags": 4}, + {"matrix": [5, 1], "x": 191, "y": 20, "flags": 4}, + {"matrix": [5, 2], "x": 174, "y": 13, "flags": 4}, + {"matrix": [5, 3], "x": 156, "y": 19, "flags": 4}, + {"matrix": [5, 4], "x": 139, "y": 21, "flags": 4}, + + {"matrix": [6, 0], "x": 208, "y": 42, "flags": 4}, + {"matrix": [6, 1], "x": 191, "y": 37, "flags": 4}, + {"matrix": [6, 2], "x": 174, "y": 35, "flags": 4}, + {"matrix": [6, 3], "x": 156, "y": 37, "flags": 4}, + {"matrix": [6, 4], "x": 139, "y": 39, "flags": 4}, + + {"matrix": [7, 2], "x": 164, "y": 55, "flags": 1}, + {"matrix": [7, 3], "x": 144, "y": 58, "flags": 1}, + {"matrix": [7, 4], "x": 129, "y": 63, "flags": 1}, + ], + }, + "rgblight": { + "max_brightness": 120 + } +} diff --git a/keyboards/alko/cornedeon_mini/keymaps/default/config.h b/keyboards/alko/cornedeon_mini/keymaps/default/config.h new file mode 100644 index 0000000000..b045efebfc --- /dev/null +++ b/keyboards/alko/cornedeon_mini/keymaps/default/config.h @@ -0,0 +1,22 @@ +/* +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 + diff --git a/keyboards/alko/cornedeon_mini/keymaps/default/keymap.c b/keyboards/alko/cornedeon_mini/keymaps/default/keymap.c new file mode 100644 index 0000000000..5672d02dc5 --- /dev/null +++ b/keyboards/alko/cornedeon_mini/keymaps/default/keymap.c @@ -0,0 +1,44 @@ +/* +Copyright 2019 @foostan +Copyright 2020 Drashna Jaelre <@drashna> + +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_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_SCLN, + //|--------+--------+--------+--------+--------| |--------+--------+--------+--------+-------| + KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, + //|--------+--------+--------+--------+--------| |--------+--------+--------+--------+-------| + XXXXXXX,XXXXXXX, KC_LSFT, TL_LOWR, KC_SPC, KC_SPC, TL_UPPR, KC_RCTL, XXXXXXX, XXXXXXX + //`--------------------------------------------' `--------------------------------------------' + ), + [1] = LAYOUT( + //,--------------------------------------------. ,--------------------------------------------. + KC_ESC, KC_LPRN, KC_RPRN, KC_PLUS,KC_MINUS, KC_7, KC_8, KC_9, KC_0, KC_BSPC, + //|--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------| + KC_TAB, KC_LBRC, KC_RBRC,KC_DQUO, KC_SLASH, KC_4, KC_5, KC_6,KC_KP_DOT,KC_SLSH, + //|--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------| + KC_LALT, KC_LCBR, KC_RCBR, KC_LT, KC_GT, KC_1, KC_2, KC_3, KC_UNDS, KC_BSLS, + //|--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------| + XXXXXXX, XXXXXXX, KC_LSFT, KC_TRNS, KC_SPC, KC_ENT, KC_TRNS, KC_RGUI, XXXXXXX, XXXXXXX + //`--------------------------------------------' `--------------------------------------------' + ) +}; diff --git a/keyboards/alko/cornedeon_mini/keymaps/vial/config.h b/keyboards/alko/cornedeon_mini/keymaps/vial/config.h new file mode 100644 index 0000000000..71461fab5e --- /dev/null +++ b/keyboards/alko/cornedeon_mini/keymaps/vial/config.h @@ -0,0 +1,34 @@ +/* +Copyright 2019 @foostan +Copyright 2020 Drashna Jaelre <@drashna> + +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 {0xEE, 0x73, 0x08, 0xC4, 0xE2, 0x27, 0x05, 0x16} +#define VIAL_UNLOCK_COMBO_ROWS {0, 0} +#define VIAL_UNLOCK_COMBO_COLS {0, 1} + +// For master half only when MASTER_LEFT/MASTER_RIGHT using +//#define WAIT_FOR_USB + +/* Select hand configuration */ + +//#define MASTER_LEFT +//#define MASTER_RIGHT +// #define EE_HANDS +// moved to revXX +//#define SPLIT_HAND_PIN GP8 diff --git a/keyboards/alko/cornedeon_mini/keymaps/vial/keymap.c b/keyboards/alko/cornedeon_mini/keymaps/vial/keymap.c new file mode 100644 index 0000000000..470962abf3 --- /dev/null +++ b/keyboards/alko/cornedeon_mini/keymaps/vial/keymap.c @@ -0,0 +1,67 @@ +/* +Copyright 2019 @foostan +Copyright 2020 Drashna Jaelre <@drashna> + +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_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_SCLN, + //|--------+--------+--------+--------+--------| |--------+--------+--------+--------+-------| + KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, + //|--------+--------+--------+--------+--------| |--------+--------+--------+--------+-------| + XXXXXXX,XXXXXXX, KC_LSFT, TL_LOWR, KC_SPC, KC_SPC, TL_UPPR, KC_RCTL, XXXXXXX, XXXXXXX + //`--------------------------------------------' `--------------------------------------------' + ), + [1] = LAYOUT( + //,--------------------------------------------. ,--------------------------------------------. + KC_ESC, KC_LPRN, KC_RPRN, KC_PLUS,KC_MINUS, KC_7, KC_8, KC_9, KC_0, KC_BSPC, + //|--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------| + KC_TAB, KC_LBRC, KC_RBRC,KC_DQUO, KC_SLASH, KC_4, KC_5, KC_6,KC_KP_DOT,KC_SLSH, + //|--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------| + KC_LALT, KC_LCBR, KC_RCBR, KC_LT, KC_GT, KC_1, KC_2, KC_3, KC_UNDS, KC_BSLS, + //|--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------| + XXXXXXX, XXXXXXX, KC_LSFT, KC_TRNS, KC_SPC, KC_ENT, KC_TRNS, KC_RGUI, XXXXXXX, XXXXXXX + //`--------------------------------------------' `--------------------------------------------' + ), + [2] = LAYOUT( + //,--------------------------------------------. ,--------------------------------------------. + KC_PSLS, KC_KP_0, KC_KP_7, KC_KP_8, KC_KP_9, KC_F7, KC_F8, KC_F9, KC_F10, KC_PSCR, + //|--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------| + KC_PMNS, KC_PDOT, KC_KP_4, KC_KP_5, KC_KP_6, KC_F4, KC_F5, KC_F6, KC_F11, KC_NUM, + //|--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------| + XXXXXXX, KC_PEQL, KC_KP_1, KC_KP_2, KC_KP_3, KC_F1, KC_F2, KC_F3, KC_F12, KC_APP, + //|--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------| + XXXXXXX, XXXXXXX, KC_CALC, KC_TRNS, KC_PENT, KC_ENT, KC_TRNS, KC_CAPS, XXXXXXX, XXXXXXX + //`--------------------------------------------' `--------------------------------------------' + ), + [3] = LAYOUT( + //,--------------------------------------------. ,---------------------------------------------. + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + //|--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------| + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + //|--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------| + XXXXXXX, XXXXXXX, KC_CALC, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + //|--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------| + XXXXXXX, XXXXXXX, XXXXXXX, KC_TRNS, XXXXXXX, XXXXXXX, KC_TRNS, XXXXXXX, XXXXXXX, XXXXXXX + //`--------------------------------------------' `--------------------------------------------' + ) +}; + diff --git a/keyboards/alko/cornedeon_mini/keymaps/vial/rules.mk b/keyboards/alko/cornedeon_mini/keymaps/vial/rules.mk new file mode 100644 index 0000000000..1243e76d14 --- /dev/null +++ b/keyboards/alko/cornedeon_mini/keymaps/vial/rules.mk @@ -0,0 +1,18 @@ +VIA_ENABLE = yes +VIAL_ENABLE = yes +LTO_ENABLE = yes + +RGBLIGHT_ENABLE = no +RGB_MATRIX_ENABLE = yes # Can't have RGBLIGHT and RGB_MATRIX at the same time. +VIALRGB_ENABLE = yes +MOUSEKEY_ENABLE = no +OLED_ENABLE = no +OLED_DRIVER = SSD1306 +EXTRAKEY_ENABLE = no +COMBO_ENABLE = no + +QMK_SETTINGS = no + +CAPS_WORD_ENABLE = no +LAYER_LOCK_ENABLE = no +REPEAT_KEY_ENABLE = no diff --git a/keyboards/alko/cornedeon_mini/keymaps/vial/vial.json b/keyboards/alko/cornedeon_mini/keymaps/vial/vial.json new file mode 100644 index 0000000000..39a0be8bfb --- /dev/null +++ b/keyboards/alko/cornedeon_mini/keymaps/vial/vial.json @@ -0,0 +1,25 @@ +{ + "lighting": "vialrgb", + "matrix": { "rows": 8, "cols": 5 }, + "layouts": { + "keymap": [ + [{"y":1,"x":3.5},"0,2",{"x":7.5},"4,2"], + [{"y":-0.875,"x":2.5},"0,1",{"x":1},"0,3",{"x":5.5},"4,3",{"x":1},"4,1"], + [{"y":-0.875,"x":5.5},"0,4",{"x":3.5},"4,4"], + [{"y":-0.875,"x":1.5},"0,0",{"x":11.5},"4,0"], + [{"y":-0.375,"x":3.5},"1,2",{"x":7.5},"5,2"], + [{"y":-0.875,"x":2.5},"1,1",{"x":1},"1,3",{"x":5.5},"5,3",{"x":1},"5,1"], + [{"y":-0.875,"x":5.5},"1,4",{"x":3.5},"5,4"], + [{"y":-0.875,"x":1.5},"1,0",{"x":11.5},"5,0"], + [{"y":-0.375,"x":3.5},"2,2",{"x":7.5},"6,2"], + [{"y":-0.875,"x":2.5},"2,1",{"x":1},"2,3",{"x":5.5},"6,3",{"x":1},"6,1"], + [{"y":-0.875,"x":5.5},"2,4",{"x":3.5},"6,4"], + [{"y":-0.875,"x":1.5},"2,0",{"x":11.5},"6,0"], + [{"y":-0.125,"x":4},"3,2",{"x":6.5},"7,2"], + [{"r":15,"rx":4.5,"ry":9.1,"y":-4.85,"x":-0.5},"3,3"], + [{"r":30,"rx":5.4,"ry":9.3,"y":-5.05,"x":-1.4,"h":1.5},"3,4"], + [{"r":-30,"rx":11.1,"y":-5.05,"x":0.4,"h":1.5},"7,4"], + [{"r":-15,"rx":12,"ry":9.1,"y":-4.85,"x":-0.5},"7,3"] + ] + } +} diff --git a/keyboards/alko/cornedeon_mini/rev2z/config.h b/keyboards/alko/cornedeon_mini/rev2z/config.h new file mode 100644 index 0000000000..11abebf505 --- /dev/null +++ b/keyboards/alko/cornedeon_mini/rev2z/config.h @@ -0,0 +1,18 @@ +// Copyright 2024 QMK +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#define SERIAL_USART_FULL_DUPLEX +#define SERIAL_USART_RX_PIN GP1 +#define SERIAL_USART_TX_PIN GP0 +//#define USE_SERIAL +//#define SOFT_SERIAL_PIN GP1 +//#define USB_VBUS_PIN GP2 + +/* RP2040- and hardware-specific config */ +#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET // Activates the double-tap behavior +#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 500U +#define PICO_XOSC_STARTUP_DELAY_MULTIPLIER 64 + +//#define SPLIT_HAND_PIN GP8 diff --git a/keyboards/alko/cornedeon_mini/rev2z/keyboard.json b/keyboards/alko/cornedeon_mini/rev2z/keyboard.json new file mode 100644 index 0000000000..04c4373020 --- /dev/null +++ b/keyboards/alko/cornedeon_mini/rev2z/keyboard.json @@ -0,0 +1,173 @@ +{ + "maintainer": "alko", + "manufacturer": "alko", + "url": "https://github.com/alko-kbd/cornedeon", + "usb": { + "vid": "0x4653", + "pid": "0x0002", + "suspend_wakeup_delay": 200, + "device_version": "2.0.0" + }, + "processor": "RP2040", + "bootloader": "rp2040", + "features": { + "bootmagic": true, + "extrakey": true, + "nkro": true, + "oled": false, + "rgblight": false, + "rgb_matrix": true, + "mousekey": true, + "encoder": false + }, + "diode_direction": "COL2ROW", + "matrix_pins": { + "cols": ["GP14", "GP15", "GP26", "GP27", "GP28"], + "rows": ["GP4", "GP5", "GP6", "GP7"] + }, + "bootmagic": { + "enabled": true, + "matrix": [ 0, 1 ] + }, + "split": { + "enabled": true, + "bootmagic": { + "matrix": [4, 1] + }, + "handedness": { + "pin": "GP8" + }, + "serial": { + "driver": "vendor", + }, + "transport": { + "sync": { + "matrix_state": true + }, + "watchdog": true + } + }, + "layouts": { + "LAYOUT": { + "layout": [ + {"matrix": [0, 0], "x": 1, "y": 0.3}, + {"matrix": [0, 1], "x": 2, "y": 0.1}, + {"matrix": [0, 2], "x": 3, "y": 0}, + {"matrix": [0, 3], "x": 4, "y": 0.1}, + {"matrix": [0, 4], "x": 5, "y": 0.2}, + + {"matrix": [4, 4], "x": 9, "y": 0.2}, + {"matrix": [4, 3], "x": 10, "y": 0.1}, + {"matrix": [4, 2], "x": 11, "y": 0}, + {"matrix": [4, 1], "x": 12, "y": 0.1}, + {"matrix": [4, 0], "x": 13, "y": 0.3}, + + {"matrix": [1, 0], "x": 1, "y": 1.3}, + {"matrix": [1, 1], "x": 2, "y": 1.1}, + {"matrix": [1, 2], "x": 3, "y": 1}, + {"matrix": [1, 3], "x": 4, "y": 1.1}, + {"matrix": [1, 4], "x": 5, "y": 1.2}, + + {"matrix": [5, 4], "x": 9, "y": 1.2}, + {"matrix": [5, 3], "x": 10, "y": 1.1}, + {"matrix": [5, 2], "x": 11, "y": 1}, + {"matrix": [5, 1], "x": 12, "y": 1.1}, + {"matrix": [5, 0], "x": 13, "y": 1.3}, + + {"matrix": [2, 0], "x": 1, "y": 2.3}, + {"matrix": [2, 1], "x": 2, "y": 2.1}, + {"matrix": [2, 2], "x": 3, "y": 2}, + {"matrix": [2, 3], "x": 4, "y": 2.1}, + {"matrix": [2, 4], "x": 5, "y": 2.2}, + + {"matrix": [6, 4], "x": 9, "y": 2.2}, + {"matrix": [6, 3], "x": 10, "y": 2.1}, + {"matrix": [6, 2], "x": 11, "y": 2}, + {"matrix": [6, 1], "x": 12, "y": 2.1}, + {"matrix": [6, 0], "x": 13, "y": 2.3}, + + {"matrix": [3, 0], "x": 1, "y": 3.7}, + {"matrix": [3, 1], "x": 2, "y": 3.7}, + {"matrix": [3, 2], "x": 4, "y": 3.7}, + {"matrix": [3, 3], "x": 5, "y": 3.7}, + {"matrix": [3, 4], "x": 6, "y": 3.2, "h": 1.5}, + + {"matrix": [7, 4], "x": 8, "y": 3.2, "h": 1.5}, + {"matrix": [7, 3], "x": 9, "y": 3.7}, + {"matrix": [7, 2], "x": 10, "y": 3.7} + {"matrix": [7, 1], "x": 12, "y": 3.7} + {"matrix": [7, 0], "x": 13, "y": 3.7} + ] + } + }, + "ws2812": { + "driver": "vendor", + "pin": "GP3" + }, + "rgblight": { + "led_count": 36, + "split": true, + "split_count": [18, 18], + "max_brightness": 120, + "animations": { + "alternating": true, + "breathing": true, + "christmas": true, + "knight": true, + "rainbow_mood": true, + "rainbow_swirl": true, + "rgb_test": true, + "snake": true, + "static_gradient": true, + "twinkle": true + } + }, + "rgb_matrix": { + "animations": { + "alphas_mods": true, + "gradient_up_down": true, + "gradient_left_right": true, + "breathing": true, + "band_sat": true, + "band_val": true, + "band_pinwheel_sat": true, + "band_pinwheel_val": true, + "band_spiral_sat": true, + "band_spiral_val": true, + "cycle_all": true, + "cycle_left_right": true, + "cycle_up_down": true, + "rainbow_moving_chevron": true, + "cycle_out_in": true, + "cycle_out_in_dual": true, + "cycle_pinwheel": true, + "cycle_spiral": true, + "dual_beacon": true, + "rainbow_beacon": true, + "rainbow_pinwheels": true, + "raindrops": true, + "jellybean_raindrops": true, + "hue_breathing": true, + "hue_pendulum": true, + "hue_wave": true, + "pixel_fractal": true, + "pixel_flow": true, + "pixel_rain": true, + "typing_heatmap": true, + "digital_rain": true, + "solid_reactive_simple": true, + "solid_reactive": true, + "solid_reactive_wide": true, + "solid_reactive_multiwide": true, + "solid_reactive_cross": true, + "solid_reactive_multicross": true, + "solid_reactive_nexus": true, + "solid_reactive_multinexus": true, + "splash": true, + "multisplash": true, + "solid_splash": true, + "solid_multisplash": true + }, + "sleep": true + }, +}