From 76ea63a6ee97dfe8c01b12f77306cff1d5076c16 Mon Sep 17 00:00:00 2001 From: Nam Date: Sun, 9 Feb 2025 05:32:51 +0700 Subject: [PATCH 1/7] Port dz60rgb_wkl to VIAL (#850) * Port dz60rgb_wkl to VIAL Space savings: - Enabled LTO - Disabled Combos & Key Overrides - Disabled RGB * Update keymap.c --- .../dztech/dz60rgb_wkl/keymaps/vial/config.h | 9 ++ .../dztech/dz60rgb_wkl/keymaps/vial/keymap.c | 25 ++++ .../dztech/dz60rgb_wkl/keymaps/vial/rules.mk | 7 + .../dztech/dz60rgb_wkl/keymaps/vial/vial.json | 141 ++++++++++++++++++ 4 files changed, 182 insertions(+) create mode 100644 keyboards/dztech/dz60rgb_wkl/keymaps/vial/config.h create mode 100644 keyboards/dztech/dz60rgb_wkl/keymaps/vial/keymap.c create mode 100644 keyboards/dztech/dz60rgb_wkl/keymaps/vial/rules.mk create mode 100644 keyboards/dztech/dz60rgb_wkl/keymaps/vial/vial.json diff --git a/keyboards/dztech/dz60rgb_wkl/keymaps/vial/config.h b/keyboards/dztech/dz60rgb_wkl/keymaps/vial/config.h new file mode 100644 index 0000000000..4c4f6573c3 --- /dev/null +++ b/keyboards/dztech/dz60rgb_wkl/keymaps/vial/config.h @@ -0,0 +1,9 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ + +#pragma once + +#define VIAL_KEYBOARD_UID {0xF4, 0x4F, 0x41, 0x95, 0x3A, 0xD9, 0xD4, 0xAA} + +// Esc + Enter +#define VIAL_UNLOCK_COMBO_ROWS { 0, 2 } +#define VIAL_UNLOCK_COMBO_COLS { 0, 13 } \ No newline at end of file diff --git a/keyboards/dztech/dz60rgb_wkl/keymaps/vial/keymap.c b/keyboards/dztech/dz60rgb_wkl/keymaps/vial/keymap.c new file mode 100644 index 0000000000..a1bbe830e3 --- /dev/null +++ b/keyboards/dztech/dz60rgb_wkl/keymaps/vial/keymap.c @@ -0,0 +1,25 @@ +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT_60_ansi_tsangan_split_bs_rshift( + 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_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, + CTL_T(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(2), + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_RCTL + ), + [1] = LAYOUT_60_ansi_tsangan_split_bs_rshift( + 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_UP, _______, _______, _______, KC_CALC, _______, KC_INS, _______, KC_PSCR, KC_SCRL, KC_PAUS, QK_BOOT, + _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGUP, _______, + KC_MPRV, KC_VOLD, KC_VOLU, KC_MUTE, _______, _______, NK_TOGG, _______, _______, KC_END, KC_PGDN, KC_MNXT, _______, + _______, _______, _______, _______, _______, _______, _______ + ), + [2] = LAYOUT_60_ansi_tsangan_split_bs_rshift( + _______, 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_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, RGB_MOD, _______, _______, _______, QK_BOOT, + _______, _______, _______, _______, _______, _______, _______, _______, RGB_SPI, RGB_SPD, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______ + ) +}; diff --git a/keyboards/dztech/dz60rgb_wkl/keymaps/vial/rules.mk b/keyboards/dztech/dz60rgb_wkl/keymaps/vial/rules.mk new file mode 100644 index 0000000000..6ed5cfcfa4 --- /dev/null +++ b/keyboards/dztech/dz60rgb_wkl/keymaps/vial/rules.mk @@ -0,0 +1,7 @@ +VIA_ENABLE = yes +VIAL_ENABLE = yes +# Disable features for space +COMBO_ENABLE = no # No combos +KEY_OVERRIDE_ENABLE = no # No key overrides +RGB_MATRIX_ENABLE = no # No RGB +LTO_ENABLE = yes # Link-time optimization \ No newline at end of file diff --git a/keyboards/dztech/dz60rgb_wkl/keymaps/vial/vial.json b/keyboards/dztech/dz60rgb_wkl/keymaps/vial/vial.json new file mode 100644 index 0000000000..9d81532f09 --- /dev/null +++ b/keyboards/dztech/dz60rgb_wkl/keymaps/vial/vial.json @@ -0,0 +1,141 @@ +{ + "matrix": { + "rows": 5, + "cols": 14 + }, + "lighting": { + "extends": "none", + "keycodes": "qmk" + }, + "layouts": { + "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,12" + ], + [ + { + "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": "#aaaaaa", + "w": 2.25 + }, + "2,13" + ], + [ + { + "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,10", + { + "c": "#aaaaaa", + "w": 1.75 + }, + "3,11", + "3,13" + ], + [ + { + "c": "#aaaaaa", + "w": 1.5 + }, + "4,0", + "4,1", + { + "w": 1.5 + }, + "4,2", + { + "c": "#cccccc", + "w": 7 + }, + "4,5", + { + "c": "#aaaaaa", + "w": 1.5 + }, + "4,10", + "4,11", + { + "w": 1.5 + }, + "4,13" + ] + ] + } +} From c57fb5fee92a296daee0e944d1a8be9175fe19b5 Mon Sep 17 00:00:00 2001 From: StoyanDimitrov Date: Sun, 9 Feb 2025 04:04:30 +0200 Subject: [PATCH 2/7] Update Redox-W layout to reflect more closely the real thing (#849) Add ability to choose between two key cap sizes in the thumb cluster. Add `vendorId` and `productId` fields. --- keyboards/redox_w/keymaps/vial/vial.json | 424 +++-------------------- 1 file changed, 49 insertions(+), 375 deletions(-) diff --git a/keyboards/redox_w/keymaps/vial/vial.json b/keyboards/redox_w/keymaps/vial/vial.json index 94c0d1ee44..21956261cc 100644 --- a/keyboards/redox_w/keymaps/vial/vial.json +++ b/keyboards/redox_w/keymaps/vial/vial.json @@ -1,377 +1,51 @@ { - "name": "Redox-W", - "matrix": {"rows": 5, "cols": 14}, - "layouts": { - "keymap":[ - [ - { - "x": 3.5 - }, - "0,3", - { - "x": 10.5 - }, - "0,10" - ], - [ - { - "y": -0.875, - "x": 2.5 - }, - "0,2", - { - "x": 1 - }, - "0,4", - { - "x": 8.5 - }, - "0,9", - { - "x": 1 - }, - "0,11" - ], - [ - { - "y": -0.875, - "x": 5.5 - }, - "0,5", - { - "x": 6.5 - }, - "0,8" - ], - [ - { - "y": -0.875, - "c": "#777777", - "w": 1.5 - }, - "0,0", - { - "c": "#cccccc" - }, - "0,1", - { - "x": 14.5 - }, - "0,12", - { - "c": "#aaaaaa", - "w": 1.5 - }, - "0,13" - ], - [ - { - "y": -0.625, - "x": 6.5, - "c": "#cccccc" - }, - "0,6", - { - "x": 4.5 - }, - "0,7" - ], - [ - { - "y": -0.75, - "x": 3.5 - }, - "1,3", - { - "x": 10.5 - }, - "1,10" - ], - [ - { - "y": -0.875, - "x": 2.5 - }, - "1,2", - { - "x": 1 - }, - "1,4", - { - "x": 8.5 - }, - "1,9", - { - "x": 1 - }, - "1,11" - ], - [ - { - "y": -0.875, - "x": 5.5 - }, - "1,5", - { - "x": 6.5 - }, - "1,8" - ], - [ - { - "y": -0.875, - "c": "#aaaaaa", - "w": 1.5 - }, - "1,0", - { - "c": "#cccccc" - }, - "1,1", - { - "x": 14.5 - }, - "1,12", - { - "c": "#aaaaaa", - "w": 1.5 - }, - "1,13" - ], - [ - { - "y": -0.625, - "x": 6.5, - "c": "#cccccc", - "h": 1.5 - }, - "1,6", - { - "x": 4.5, - "h": 1.5 - }, - "1,7" - ], - [ - { - "y": -0.75, - "x": 3.5 - }, - "2,3", - { - "x": 10.5 - }, - "2,10" - ], - [ - { - "y": -0.875, - "x": 2.5 - }, - "2,2", - { - "x": 1 - }, - "2,4", - { - "x": 8.5 - }, - "2,9", - { - "x": 1 - }, - "2,11" - ], - [ - { - "y": -0.875, - "x": 5.5 - }, - "2,5", - { - "x": 6.5 - }, - "2,8" - ], - [ - { - "y": -0.875, - "c": "#aaaaaa", - "w": 1.5 - }, - "2,0", - { - "c": "#cccccc" - }, - "2,1", - { - "x": 14.5 - }, - "2,12", - { - "c": "#aaaaaa", - "w": 1.5 - }, - "2,13" - ], - [ - { - "y": -0.375, - "x": 3.5, - "c": "#cccccc" - }, - "3,3", - { - "x": 10.5 - }, - "3,10" - ], - [ - { - "y": -0.875, - "x": 2.5 - }, - "3,2", - { - "x": 1 - }, - "3,4", - { - "x": 8.5 - }, - "3,9", - { - "x": 1 - }, - "3,11" - ], - [ - { - "y": -0.875, - "x": 5.5 - }, - "3,5", - { - "x": 6.5 - }, - "3,8" - ], - [ - { - "y": -0.875, - "c": "#aaaaaa", - "w": 1.5 - }, - "3,0", - { - "c": "#cccccc" - }, - "3,1", - { - "x": 14.5 - }, - "3,12", - { - "c": "#aaaaaa", - "w": 1.5 - }, - "3,13" - ], - [ - { - "y": -0.375, - "x": 3.5 - }, - "4,3", - { - "x": 10.5 - }, - "4,10" - ], - [ - { - "y": -0.875, - "x": 2.5 - }, - "4,2", - { - "x": 12.5 - }, - "4,11" - ], - [ - { - "y": -0.75, - "x": 0.5 - }, - "4,0", - "4,1", - { - "x": 14.5 - }, - "4,12", - "4,13" - ], - [ - { - "y": -0.7450000000000001, - "x": 13.5 - }, - "4,9" - ], - [ - { - "y": -0.75, - "x": 5.25 - }, - "4,4" - ], - [ - { - "r": 30, - "rx": 6.5, - "ry": 4.25, - "y": -1, - "x": 1 - }, - "2,6", - "3,6" - ], - [ - { - "x": 1, - "c": "#777777", - "h": 2 - }, - "4,5", - { - "c": "#aaaaaa", - "h": 2 - }, - "4,6" - ], - [ - { - "r": -30, - "rx": 13, - "y": -1, - "x": -3 - }, - "3,7", - "2,7" - ], - [ - { - "x": -3, - "h": 2 - }, - "4,7", - { - "c": "#777777", - "h": 2 - }, - "4,8" - ] - ] - } + "name": "Redox-W", + "vendorId": "0x4D44", + "productId": "0x5257", + "matrix": { + "rows": 5, + "cols": 14 + }, + "layouts": { + "labels": [ + [ + "Thumb cluster keycap sizes", + "1.25u", + "1u + 1.5u" + ] + ], + "keymap": [ + [{"x":3.25},"0,3",{"x":9.5},"0,10"], + [{"y":-0.87,"x":2.25},"0,2",{"x":1},"0,4",{"x":7.5},"0,9",{"x":1},"0,11"], + [{"y":-0.88,"x":5.25},"0,5",{"x":5.5},"0,8"], + [{"y":-0.87,"c":"#aaaaaa","w":1.25},"0,0",{"c":"#cccccc"},"0,1",{"x":13.5},"0,12",{"c":"#aaaaaa","w":1.25},"0,13"], + [{"y":-0.705,"x":6.25,"c":"#cccccc","h":1.25},"0,6",{"x":3.5,"h":1.25},"0,7"], + [{"y":-0.675,"x":3.25},"1,3",{"x":9.5},"1,10"], + [{"y":-0.87,"x":2.25},"1,2",{"x":1},"1,4",{"x":7.5},"1,9",{"x":1},"1,11"], + [{"y":-0.88,"x":5.25},"1,5",{"x":5.5},"1,8"], + [{"y":-0.87,"c":"#aaaaaa","w":1.25},"1,0",{"c":"#cccccc"},"1,1",{"x":13.5},"1,12",{"c":"#aaaaaa","w":1.25},"1,13"], + [{"y":-0.455,"x":6.25,"c":"#cccccc","h":1.25},"1,6",{"x":3.5,"h":1.25},"1,7"], + [{"y":-0.925,"x":3.25},"2,3",{"x":9.5},"2,10"], + [{"y":-0.87,"x":2.25},"2,2",{"x":1,"n":true},"2,4",{"x":7.5,"n":true},"2,9",{"x":1},"2,11"], + [{"y":-0.88,"x":5.25},"2,5",{"x":5.5},"2,8"], + [{"y":-0.87,"c":"#aaaaaa","w":1.25},"2,0",{"c":"#cccccc"},"2,1",{"x":13.5},"2,12",{"c":"#aaaaaa","w":1.25},"2,13"], + [{"y":-0.38,"x":3.25,"c":"#cccccc"},"3,3",{"x":9.5},"3,10"], + [{"y":-0.87,"x":2.25},"3,2",{"x":1},"3,4",{"x":7.5},"3,9",{"x":1},"3,11"], + [{"y":-0.88,"x":5.25},"3,5",{"x":5.5},"3,8"], + [{"y":-0.87,"c":"#aaaaaa","w":1.25},"3,0",{"c":"#cccccc"},"3,1",{"x":13.5},"3,12",{"c":"#aaaaaa","w":1.25},"3,13"], + [{"y":-0.38,"x":3.25},"4,3",{"x":9.5},"4,10"], + [{"y":-0.87,"x":2.25},"4,2",{"x":11.5},"4,11"], + [{"y":-0.75,"x":0.25},"4,0","4,1",{"x":13.5},"4,12","4,13"], + [{"r":15,"rx":5.75,"ry":4.5,"x":-1.25,"w":1.25},"4,4"], + [{"r":30,"rx":6.25,"ry":4.4,"y":-1.15,"a":0},"2,6\n\n\n0,1\n\n1+1.5u","3,6\n\n\n0,1\n\n1+1.5u"], + [{"y":-1,"h":1.25},"2,6\n\n\n0,0\n\n1,25u",{"h":1.25},"3,6\n\n\n0,0\n\n1,25u"], + [{"c":"#777777","h":1.5,"n":true},"4,5\n\n\n0,1\n\n1+1.5u",{"c":"#aaaaaa","h":1.5},"4,6\n\n\n0,1\n\n1+1.5u"], + [{"y":-0.75,"c":"#777777","h":1.25,"n":true},"4,5\n\n\n0,0\n\n1,25u",{"c":"#aaaaaa","h":1.25},"4,6\n\n\n0,0\n\n1,25u"], + [{"r":-30,"rx":11.75,"y":-1.15,"x":-2},"3,7\n\n\n0,1\n\n1+1.5u","2,7\n\n\n0,1\n\n1+1.5u"], + [{"y":-1,"x":-2,"h":1.25},"3,7\n\n\n0,0\n\n1,25u",{"h":1.25},"2,7\n\n\n0,0\n\n1,25u"], + [{"x":-2,"h":1.5},"4,7\n\n\n0,1\n\n1+1.5u",{"c":"#777777","h":1.5,"n":true},"4,8\n\n\n0,1\n\n1+1.5u"], + [{"y":-0.75,"x":-2,"c":"#aaaaaa","h":1.25},"4,7\n\n\n0,0\n\n1,25u",{"c":"#777777","h":1.25,"n":true},"4,8\n\n\n0,0\n\n1,25u"], + [{"r":-15,"rx":12.25,"ry":4.5,"c":"#aaaaaa","a":4,"w":1.25},"4,9"] + ] + } } From 8659262088eeb72a8a185c2d232a20d63adb6b9f Mon Sep 17 00:00:00 2001 From: StoyanDimitrov Date: Sun, 9 Feb 2025 04:04:43 +0200 Subject: [PATCH 3/7] Update Pteron36 vial.json (#848) Add support for switching separate encoders on/off from the layout. Fix default thumbkeys switch state. It was opposite to what the label said. --- keyboards/pteron36/keymaps/vial/vial.json | 337 +++------------------- 1 file changed, 44 insertions(+), 293 deletions(-) diff --git a/keyboards/pteron36/keymaps/vial/vial.json b/keyboards/pteron36/keymaps/vial/vial.json index 02a192447c..6b2e7948dd 100644 --- a/keyboards/pteron36/keymaps/vial/vial.json +++ b/keyboards/pteron36/keymaps/vial/vial.json @@ -1,295 +1,46 @@ { - "name": "Pteron36", - "vendorId": "0x4847", - "productId": "0x5054", - "lighting": "qmk_rgblight", - "matrix": { - "rows": 8, - "cols": 5 - }, - "layouts": { - "labels":["No Outer Thumbs","No Inner Thumbs"], - "keymap":[ - [ - { - "x": 2 - }, - "0,2", - { - "x": 9.5 - }, - "4,2" - ], - [ - { - "y": -0.75, - "x": 1 - }, - "0,1", - { - "x": 11.5 - }, - "4,1" - ], - [ - { - "y": -0.95, - "x": 3 - }, - "0,3", - { - "x": 7.5 - }, - "4,3" - ], - [ - { - "y": -0.9, - "x": 4 - }, - "0,4", - { - "x": 5.5 - }, - "4,4" - ], - [ - { - "y": -0.65 - }, - "0,0", - { - "x": 13.5 - }, - "4,0" - ], - [ - { - "y": -0.75, - "x": 2 - }, - "1,2", - { - "x": 9.5 - }, - "5,2" - ], - [ - { - "y": -0.75, - "x": 1 - }, - "1,1", - { - "x": 3 - }, - "0,0\n\n\n\n\n\n\n\n\ne", - "0,1\n\n\n\n\n\n\n\n\ne", - { - "x": 1.5 - }, - "1,0\n\n\n\n\n\n\n\n\ne", - "1,1\n\n\n\n\n\n\n\n\ne", - { - "x": 3 - }, - "5,1" - ], - [ - { - "y": -0.95, - "x": 3, - "n": true - }, - "1,3", - { - "x": 7.5, - "n": true - }, - "5,3" - ], - [ - { - "y": -0.8999999999999999, - "x": 4 - }, - "1,4", - { - "x": 5.5 - }, - "5,4" - ], - [ - { - "y": -0.6499999999999999 - }, - "1,0", - { - "x": 13.5 - }, - "5,0" - ], - [ - { - "y": -0.75, - "x": 2 - }, - "2,2", - { - "x": 9.5 - }, - "6,2" - ], - [ - { - "y": -0.75, - "x": 1 - }, - "2,1", - { - "x": 3 - }, - "3,4", - { - "x": 3.5 - }, - "7,4", - { - "x": 3 - }, - "6,1" - ], - [ - { - "y": -0.9500000000000002, - "x": 3 - }, - "2,3", - { - "x": 7.5 - }, - "6,3" - ], - [ - { - "y": -0.8999999999999999, - "x": 4 - }, - "2,4", - { - "x": 5.5 - }, - "6,4" - ], - [ - { - "y": -0.6499999999999999 - }, - "2,0", - { - "x": 13.5 - }, - "6,0" - ], - [ - { - "y": -0.25, - "x": 2.75, - "c": "#bababa", - "d": true - }, - "3,3\n\n\n0,0\n36 keys", - { - "x": -1 - }, - "3,3\n\n\n0,1\n38 keys", - { - "x": 8, - "d": true - }, - "7,3\n\n\n0,0\n36 keys", - { - "x": -1 - }, - "7,3\n\n\n0,1\n38 keys" - ], - [ - { - "r": 15, - "rx": 3.75, - "ry": 4.75, - "y": -1.25, - "c": "#888888" - }, - "3,0" - ], - [ - { - "r": 30, - "rx": 4.25, - "ry": 4.8, - "y": -1.2999999999999998, - "x": 0.5, - "c": "#bababa" - }, - "3,1" - ], - [ - { - "r": 45, - "rx": 4.75, - "ry": 4.9, - "y": -1.4000000000000004, - "x": 1 - }, - "3,2\n\n\n1,1" - ], - [ - { - "y": -0.9999999999999996, - "x": 1, - "d": true - }, - "3,2\n\n\n1,0" - ], - [ - { - "r": -45, - "rx": 10.75, - "y": -1.4000000000000004, - "x": -2 - }, - "7,2\n\n\n1,1" - ], - [ - { - "y": -0.9999999999999996, - "x": -2, - "d": true - }, - "7,2\n\n\n1,0" - ], - [ - { - "r": -30, - "rx": 11.25, - "ry": 4.8, - "y": -1.2999999999999998, - "x": -1.5 - }, - "7,1" - ], - [ - { - "r": -15, - "rx": 11.75, - "ry": 4.75, - "y": -1.25, - "x": -1, - "c": "#888888" - }, - "7,0" - ] - ] - } + "name": "Pteron36", + "vendorId": "0x4847", + "productId": "0x5054", + "lighting": "qmk_rgblight", + "matrix": { + "rows": 8, + "cols": 5 + }, + "layouts": { + "labels": [ + "No outer thumbkeys", + "No inner thumbkeys", + "No left encoder", + "No right encoder" + ], + "keymap": [ + [{"x":2},"0,2",{"x":9.5},"4,2"], + [{"y":-0.75,"x":1},"0,1",{"x":11.5},"4,1"], + [{"y":-0.95,"x":3},"0,3",{"x":7.5},"4,3"], + [{"y":-0.9,"x":4},"0,4",{"x":5.5},"4,4"], + [{"y":-0.65},"0,0",{"x":13.5},"4,0"], + [{"y":-1,"x":5.75,"d":true},"3,4\n\n\n2,1\nno enc0",{"x":2,"d":true},"7,4\n\n\n3,1\nno enc1"], + [{"y":-0.75,"x":2},"1,2",{"x":9.5},"5,2"], + [{"y":-0.75,"x":1},"1,1",{"x":11.5},"5,1"], + [{"y":-0.95,"x":3,"n":true},"1,3",{"x":7.5,"n":true},"5,3"], + [{"y":-0.9,"x":4},"1,4",{"x":5.5},"5,4"], + [{"y":-0.65},"1,0",{"x":4.25},"0,0\n\n\n2,0\ne0 CC\n\n\n\n\ne","0,1\n\n\n2,0\ne0 CCW\n\n\n\n\ne",{"x":1},"1,1\n\n\n3,0\ne1 CCW\n\n\n\n\ne","1,0\n\n\n3,0\ne1 CW\n\n\n\n\ne",{"x":4.25},"5,0"], + [{"y":-0.75,"x":2},"2,2",{"x":9.5},"6,2"], + [{"y":-0.75,"x":1},"2,1",{"x":11.5},"6,1"], + [{"y":-0.95,"x":3},"2,3",{"x":7.5},"6,3"], + [{"y":-0.9,"x":4},"2,4",{"x":5.5},"6,4"], + [{"y":-0.65},"2,0",{"x":4.75},"3,4\n\n\n2,0\nhas enc0",{"x":2},"7,4\n\n\n3,0\nhas enc1",{"x":4.75},"6,0"], + [{"y":-0.25,"x":2.75,"c":"#aaaaaa"},"3,3\n\n\n0,0\nhas outer",{"x":8},"7,3\n\n\n0,0\nhas outer"], + [{"x":2.75,"c":"#cccccc","d":true},"3,3\n\n\n0,1\nno outer",{"x":8,"d":true},"7,3\n\n\n0,1\nno outer"], + [{"r":15,"rx":3.75,"ry":4.75,"y":-1.25,"c":"#777777","n":true},"3,0"], + [{"r":30,"rx":4.25,"ry":4.8,"y":-1.3,"x":0.5,"c":"#aaaaaa"},"3,1"], + [{"r":45,"rx":4.75,"ry":4.9,"y":-2.4,"x":1,"c":"#cccccc","a":0,"d":true},"3,2\n\n\n1,1\n\nno inner"], + [{"x":1,"c":"#aaaaaa"},"3,2\n\n\n1,0\n\nhas inner"], + [{"r":-45,"rx":10.75,"y":-2.4,"x":-2,"c":"#cccccc","d":true},"7,2\n\n\n1,1\n\nno inner"], + [{"x":-2,"c":"#aaaaaa"},"7,2\n\n\n1,0\n\nhas inner"], + [{"r":-30,"rx":11.25,"ry":4.8,"y":-1.3,"x":-1.5,"a":4},"7,1"], + [{"r":-15,"rx":11.75,"ry":4.75,"y":-1.25,"x":-1,"c":"#777777","n":true},"7,0"] + ] + } } From 0a854393d826a673e2c1914a1a39a224440fb83d Mon Sep 17 00:00:00 2001 From: "Juho T." Date: Sun, 9 Feb 2025 04:05:06 +0200 Subject: [PATCH 4/7] Add vial support for silakka54 (#847) * Added silakka54 keyboard * Update readme.md --- keyboards/silakka54/config.h | 25 +++++ keyboards/silakka54/keyboard.json | 104 +++++++++++++++++++ keyboards/silakka54/keymaps/default/keymap.c | 22 ++++ keyboards/silakka54/keymaps/vial/config.h | 8 ++ keyboards/silakka54/keymaps/vial/keymap.c | 22 ++++ keyboards/silakka54/keymaps/vial/rules.mk | 2 + keyboards/silakka54/keymaps/vial/vial.json | 78 ++++++++++++++ keyboards/silakka54/readme.md | 24 +++++ 8 files changed, 285 insertions(+) create mode 100644 keyboards/silakka54/config.h create mode 100644 keyboards/silakka54/keyboard.json create mode 100644 keyboards/silakka54/keymaps/default/keymap.c create mode 100644 keyboards/silakka54/keymaps/vial/config.h create mode 100644 keyboards/silakka54/keymaps/vial/keymap.c create mode 100644 keyboards/silakka54/keymaps/vial/rules.mk create mode 100644 keyboards/silakka54/keymaps/vial/vial.json create mode 100644 keyboards/silakka54/readme.md diff --git a/keyboards/silakka54/config.h b/keyboards/silakka54/config.h new file mode 100644 index 0000000000..16f98fc7b4 --- /dev/null +++ b/keyboards/silakka54/config.h @@ -0,0 +1,25 @@ +/* Copyright 2024 Juho T. (@Squalius-cephalus) + * + * 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 SERIAL_USART_FULL_DUPLEX +#define SERIAL_USART_TX_PIN GP0 +#define SERIAL_USART_RX_PIN GP1 + +#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET +#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 200U +#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_LED GP17 diff --git a/keyboards/silakka54/keyboard.json b/keyboards/silakka54/keyboard.json new file mode 100644 index 0000000000..2d4871bce5 --- /dev/null +++ b/keyboards/silakka54/keyboard.json @@ -0,0 +1,104 @@ +{ + "manufacturer": "Squalius-cephalus", + "keyboard_name": "silakka54", + "maintainer": "Squalius-cephalus", + "bootloader": "rp2040", + "diode_direction": "COL2ROW", + "features": { + "bootmagic": true, + "command": false, + "console": false, + "extrakey": true, + "mousekey": true, + "nkro": true + }, + "split": { + "enabled": true, + "serial": { + "driver": "vendor" + } + }, + "matrix_pins": { + "cols": ["GP7", "GP8", "GP9", "GP10", "GP11", "GP12"], + "rows": ["GP2", "GP3", "GP4", "GP5","GP6"] + }, + "processor": "RP2040", + "url": "https://github.com/Squalius-cephalus/silakka54", + "usb": { + "device_version": "1.0.0", + "pid": "0x1212", + "vid": "0xFEED" + }, + "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": [5, 5], "x": 0, "y": 5}, + {"matrix": [5, 4], "x": 1, "y": 5}, + {"matrix": [5, 3], "x": 2, "y": 5}, + {"matrix": [5, 2], "x": 3, "y": 5}, + {"matrix": [5, 1], "x": 4, "y": 5}, + {"matrix": [5, 0], "x": 5, "y": 5}, + + + {"matrix": [1, 0], "x": 0, "y": 1}, + {"matrix": [1, 1], "x": 1, "y": 1}, + {"matrix": [1, 2], "x": 2, "y": 1}, + {"matrix": [1, 3], "x": 3, "y": 1}, + {"matrix": [1, 4], "x": 4, "y": 1}, + {"matrix": [1, 5], "x": 5, "y": 1}, + + {"matrix": [6, 5], "x": 0, "y": 6}, + {"matrix": [6, 4], "x": 1, "y": 6}, + {"matrix": [6, 3], "x": 2, "y": 6}, + {"matrix": [6, 2], "x": 3, "y": 6}, + {"matrix": [6, 1], "x": 4, "y": 6}, + {"matrix": [6, 0], "x": 5, "y": 6}, + + {"matrix": [2, 0], "x": 0, "y": 2}, + {"matrix": [2, 1], "x": 1, "y": 2}, + {"matrix": [2, 2], "x": 2, "y": 2}, + {"matrix": [2, 3], "x": 3, "y": 2}, + {"matrix": [2, 4], "x": 4, "y": 2}, + {"matrix": [2, 5], "x": 5, "y": 2}, + + {"matrix": [7, 5], "x": 0, "y": 7}, + {"matrix": [7, 4], "x": 1, "y": 7}, + {"matrix": [7, 3], "x": 2, "y": 7}, + {"matrix": [7, 2], "x": 3, "y": 7}, + {"matrix": [7, 1], "x": 4, "y": 7}, + {"matrix": [7, 0], "x": 5, "y": 7}, + + {"matrix": [3, 0], "x": 0, "y": 3}, + {"matrix": [3, 1], "x": 1, "y": 3}, + {"matrix": [3, 2], "x": 2, "y": 3}, + {"matrix": [3, 3], "x": 3, "y": 3}, + {"matrix": [3, 4], "x": 4, "y": 3}, + {"matrix": [3, 5], "x": 5, "y": 3}, + + {"matrix": [8, 5], "x": 0, "y": 9}, + {"matrix": [8, 4], "x": 1, "y": 9}, + {"matrix": [8, 3], "x": 2, "y": 9}, + {"matrix": [8, 2], "x": 3, "y": 9}, + {"matrix": [8, 1], "x": 4, "y": 9}, + {"matrix": [8, 0], "x": 5, "y": 9}, + + {"matrix": [4, 3], "x": 3, "y": 4}, + {"matrix": [4, 4], "x": 4, "y": 4}, + {"matrix": [4, 5], "x": 5, "y": 4}, + + {"matrix": [9, 5], "x": 3, "y": 9}, + {"matrix": [9, 4], "x": 4, "y": 9}, + {"matrix": [9, 3], "x": 5, "y": 9} + + + ] + } + } +} diff --git a/keyboards/silakka54/keymaps/default/keymap.c b/keyboards/silakka54/keymaps/default/keymap.c new file mode 100644 index 0000000000..aa5e64efa3 --- /dev/null +++ b/keyboards/silakka54/keymaps/default/keymap.c @@ -0,0 +1,22 @@ +// Copyright 2023 QMK +// 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_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, 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_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, + KC_LGUI, MO(1), KC_SPC, KC_ENT, KC_RCTL, KC_RALT + ), + [1] = LAYOUT( + 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_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PGUP, KC_PGDN, KC_HOME, KC_END, KC_DEL, KC_F12, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_LBRC, KC_RBRC, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, 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/silakka54/keymaps/vial/config.h b/keyboards/silakka54/keymaps/vial/config.h new file mode 100644 index 0000000000..d1d12eae4d --- /dev/null +++ b/keyboards/silakka54/keymaps/vial/config.h @@ -0,0 +1,8 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ + +#pragma once + +#define VIAL_KEYBOARD_UID {0x97, 0xD0, 0xA5, 0x97, 0x57, 0x48, 0xD0, 0x4F} + +#define VIAL_UNLOCK_COMBO_ROWS { 0, 0 } +#define VIAL_UNLOCK_COMBO_COLS { 0, 1 } diff --git a/keyboards/silakka54/keymaps/vial/keymap.c b/keyboards/silakka54/keymaps/vial/keymap.c new file mode 100644 index 0000000000..aa5e64efa3 --- /dev/null +++ b/keyboards/silakka54/keymaps/vial/keymap.c @@ -0,0 +1,22 @@ +// Copyright 2023 QMK +// 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_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, 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_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, + KC_LGUI, MO(1), KC_SPC, KC_ENT, KC_RCTL, KC_RALT + ), + [1] = LAYOUT( + 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_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PGUP, KC_PGDN, KC_HOME, KC_END, KC_DEL, KC_F12, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_LBRC, KC_RBRC, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, 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/silakka54/keymaps/vial/rules.mk b/keyboards/silakka54/keymaps/vial/rules.mk new file mode 100644 index 0000000000..4f7618e9b2 --- /dev/null +++ b/keyboards/silakka54/keymaps/vial/rules.mk @@ -0,0 +1,2 @@ +VIA_ENABLE = yes +VIAL_ENABLE = yes diff --git a/keyboards/silakka54/keymaps/vial/vial.json b/keyboards/silakka54/keymaps/vial/vial.json new file mode 100644 index 0000000000..c3f9375999 --- /dev/null +++ b/keyboards/silakka54/keymaps/vial/vial.json @@ -0,0 +1,78 @@ +{ + "matrix": { + "rows": 10, + "cols": 6 + }, + "layouts": { + "keymap": [ + [{ "x": 2 }, "0,2", "0,3", { "x": 5.25 }, "5,3", "5,2"], + [ + { "y": -0.75 }, + "0,0", + "0,1", + { "x": 2 }, + "0,4", + { "x": 3.25 }, + "5,4", + { "x": 2 }, + "5,1", + "5,0" + ], + [{ "y": -0.75, "x": 5 }, "0,5", { "x": 1.25 }, "5,5"], + [{ "y": -0.5, "x": 2 }, "1,2", "1,3", { "x": 5.25 }, "6,3", "6,2"], + [ + { "y": -0.75 }, + "1,0", + "1,1", + { "x": 2 }, + "1,4", + { "x": 3.25 }, + "6,4", + { "x": 2 }, + "6,1", + "6,0" + ], + [{ "y": -0.75, "x": 5 }, "1,5", { "x": 1.25 }, "6,5"], + [{ "y": -0.5, "x": 2 }, "2,2", "2,3", { "x": 5.25 }, "7,3", "7,2"], + [ + { "y": -0.75 }, + "2,0", + "2,1", + { "x": 2 }, + "2,4", + { "x": 3.25 }, + "7,4", + { "x": 2 }, + "7,1", + "7,0" + ], + [{ "y": -0.75, "x": 5 }, "2,5", { "x": 1.25 }, "7,5"], + [{ "y": -0.5, "x": 2 }, "3,2", "3,3", { "x": 5.25 }, "8,3", "8,2"], + [ + { "y": -0.75 }, + "3,0", + "3,1", + { "x": 2 }, + "3,4", + { "x": 3.25 }, + "8,4", + { "x": 2 }, + "8,1", + "8,0" + ], + [{ "y": -0.75, "x": 5 }, "3,5", { "x": 1.25 }, "8,5"], + [ + { "y": 0.25, "x": 2.75 }, + "4,3", + "4,4", + { "x": 0.25 }, + "4,5", + { "x": 1.25 }, + "9,5", + { "x": 0.25 }, + "9,4", + "9,3" + ] + ] + } +} diff --git a/keyboards/silakka54/readme.md b/keyboards/silakka54/readme.md new file mode 100644 index 0000000000..d0b66348b8 --- /dev/null +++ b/keyboards/silakka54/readme.md @@ -0,0 +1,24 @@ +# Silakka54 + +![Silakka54](https://i.imgur.com/JrsS0kY.png) + +Silakka54 is a RP2040 Zero based 54-key column staggered split keyboard. PCB uses hotswap sockets. Design is inspired from REVIUNG41 and Corne keyboards. + +* Keyboard Maintainer: [Squalius-cephalus](https://github.com/Squalius-cephalus) +* Hardware Supported: Silakka54 PCB +* Hardware Availability: https://github.com/Squalius-cephalus/silakka54 + +Make example for this keyboard (after setting up your vial build environment): + + make silakka54:vial + +Flashing example for this keyboard: + + make silakka54:vial:flash + +## Bootloader + +Enter the bootloader in 2 ways: + +* **Physical boot button**: Hold BOOT button down and connect MCU to the PC +* **Keycode in layout**: Press the key mapped to `QK_BOOT` if it is available From 4504107cc9e62f370cf093fcd6c06410ac875a5e Mon Sep 17 00:00:00 2001 From: Damien Erambert Date: Sat, 8 Feb 2025 18:05:29 -0800 Subject: [PATCH 5/7] Add support for Novelkey's Classic-TKL (#845) * basic vial keymap for nk_classic_tkl * add rgb * Create README.md * Update rules.mk * customizable caps lock color --- .../nk_classic_tkl/keymaps/vial/README.md | 18 ++ .../nk_classic_tkl/keymaps/vial/config.h | 11 + .../nk_classic_tkl/keymaps/vial/keymap.c | 75 +++++++ .../nk_classic_tkl/keymaps/vial/rules.mk | 17 ++ .../nk_classic_tkl/keymaps/vial/vial.json | 205 ++++++++++++++++++ 5 files changed, 326 insertions(+) create mode 100644 keyboards/novelkeys/nk_classic_tkl/keymaps/vial/README.md create mode 100644 keyboards/novelkeys/nk_classic_tkl/keymaps/vial/config.h create mode 100644 keyboards/novelkeys/nk_classic_tkl/keymaps/vial/keymap.c create mode 100644 keyboards/novelkeys/nk_classic_tkl/keymaps/vial/rules.mk create mode 100644 keyboards/novelkeys/nk_classic_tkl/keymaps/vial/vial.json diff --git a/keyboards/novelkeys/nk_classic_tkl/keymaps/vial/README.md b/keyboards/novelkeys/nk_classic_tkl/keymaps/vial/README.md new file mode 100644 index 0000000000..7ddc9fe65f --- /dev/null +++ b/keyboards/novelkeys/nk_classic_tkl/keymaps/vial/README.md @@ -0,0 +1,18 @@ +# The Classic_TKL Vial default layout + +To change the color of the Caps Lock indicator: + +1. Uncomment line 11 in `config.h` and change the RGB values: + +```c +// Uncomment to customize the color of the caps lock indicator +// #define CAPS_LOCK_COLORS {0, 255, 0} +``` + +2. rebuild the firmware using + +``` +make novelkeys/nk_classic_tkl:vial +``` + +3. reflash the firmware according to [README.md](../../readme.md#flash) diff --git a/keyboards/novelkeys/nk_classic_tkl/keymaps/vial/config.h b/keyboards/novelkeys/nk_classic_tkl/keymaps/vial/config.h new file mode 100644 index 0000000000..24d7b401f9 --- /dev/null +++ b/keyboards/novelkeys/nk_classic_tkl/keymaps/vial/config.h @@ -0,0 +1,11 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ + +#pragma once + +#define VIAL_KEYBOARD_UID {0x14, 0xE0, 0xDA, 0x55, 0xA2, 0xB4, 0xD4, 0xF7} +// Escape + Enter to unlock +#define VIAL_UNLOCK_COMBO_ROWS { 0, 3 } +#define VIAL_UNLOCK_COMBO_COLS { 0, 13 } + +// Uncomment to customize the color of the caps lock indicator +// #define CAPS_LOCK_COLORS {0, 255, 0} diff --git a/keyboards/novelkeys/nk_classic_tkl/keymaps/vial/keymap.c b/keyboards/novelkeys/nk_classic_tkl/keymaps/vial/keymap.c new file mode 100644 index 0000000000..9f5d03d23a --- /dev/null +++ b/keyboards/novelkeys/nk_classic_tkl/keymaps/vial/keymap.c @@ -0,0 +1,75 @@ +/* Copyright 2024 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 my_keycodes { + RETRO_RGB = QK_KB_0 +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +[0] = LAYOUT_tkl_ansi_tsangan( /* Base */ + KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_PSCR, KC_SCRL, KC_PAUS, + KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_INS, KC_HOME, KC_PGUP, + KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_DEL, KC_END, KC_PGDN, + KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), + +[1] = LAYOUT_tkl_ansi_tsangan( /* FN */ + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_VOLU, KC_VOLD, KC_MUTE, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, RGB_TOG, RGB_MOD, RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, RGB_VAD, RGB_VAI, RGB_SPD, RGB_SPI, _______, _______, + _______, _______, _______, RETRO_RGB, _______, _______, _______, _______, _______, _______), + +}; + +#ifdef CAPS_LOCK_COLORS +static uint8_t caps_lock_colors[] = CAPS_LOCK_COLORS; +#else +static uint8_t caps_lock_colors[] = {255, 86, 0}; +#endif + +bool rgb_matrix_indicators_advanced_user(uint8_t led_min, uint8_t led_max) { + if (host_keyboard_led_state().caps_lock) { + for (uint8_t i = 50; i <= 55; i++) { + rgb_matrix_set_color(i, caps_lock_colors[0], caps_lock_colors[1], caps_lock_colors[2]); + } + } + return false; +} + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + switch (keycode) { + case RETRO_RGB: + if (record->event.pressed) { + switch (rgb_matrix_get_flags()) { + case LED_FLAG_ALL: { + rgb_matrix_set_flags(LED_FLAG_INDICATOR); + } + break; + default: { + rgb_matrix_set_flags(LED_FLAG_ALL); + } + break; + } + } + return false; // Skip all further processing of this key + default: + return true; // Process all other keycodes normally + } +} diff --git a/keyboards/novelkeys/nk_classic_tkl/keymaps/vial/rules.mk b/keyboards/novelkeys/nk_classic_tkl/keymaps/vial/rules.mk new file mode 100644 index 0000000000..d6d7b9f7e3 --- /dev/null +++ b/keyboards/novelkeys/nk_classic_tkl/keymaps/vial/rules.mk @@ -0,0 +1,17 @@ +# Wildcard to allow APM32 MCU (taken from source rules.mk) +DFU_SUFFIX_ARGS = -v FFFF -p FFFF +# Enable VIA +VIA_ENABLE = yes +# Enable VIAL +VIAL_ENABLE = yes +LTO_ENABLE = yes +# Enable RGB +VIALRGB_ENABLE = yes +# Enable Bootmagic Lite +BOOTMAGIC_ENABLE = yes +# Mouse keys +MOUSEKEY_ENABLE = yes +# Audio control and System control +EXTRAKEY_ENABLE = yes +# Enable N-Key Rollover +NKRO_ENABLE = yes diff --git a/keyboards/novelkeys/nk_classic_tkl/keymaps/vial/vial.json b/keyboards/novelkeys/nk_classic_tkl/keymaps/vial/vial.json new file mode 100644 index 0000000000..936ba50e54 --- /dev/null +++ b/keyboards/novelkeys/nk_classic_tkl/keymaps/vial/vial.json @@ -0,0 +1,205 @@ +{ + "name": "NK_ Classic TKL", + "vendorId": "0x8968", + "productId": "0x4E54", + "matrix": { + "rows": 6, + "cols": 17 + }, + "lighting": "vialrgb", + "customKeycodes": [ + { + "name": "NK_ Retro RGB", + "title": "NK_ Retro RGB", + "shortName": "RETRO_RGB" + } + ], + "layouts": { + "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, + "c": "#aaaaaa" + }, + "0,14", + "0,15", + "0,16" + ], + [ + { + "y": 0.25, + "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", + { + "x": 0.25 + }, + "1,14", + "1,15", + "1,16" + ], + [ + { + "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", + { + "w": 1.5 + }, + "3,12", + { + "x": 0.25, + "c": "#aaaaaa" + }, + "2,14", + "2,15", + "2,16" + ], + [ + { + "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": "#aaaaaa", + "w": 2.25 + }, + "3,13" + ], + [ + { + "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": 2.75 + }, + "4,12", + { + "x": 1.25 + }, + "4,15" + ], + [ + { + "w": 1.5 + }, + "5,0", + "5,1", + { + "w": 1.5 + }, + "5,2", + { + "c": "#cccccc", + "w": 7 + }, + "5,6", + { + "c": "#aaaaaa", + "w": 1.5 + }, + "5,11", + "5,12", + { + "w": 1.5 + }, + "5,13", + { + "x": 0.25 + }, + "5,14", + "5,15", + "5,16" + ] + ] + } + } From 330084efbe3fbd950c1e3bb4235f3b89859586d2 Mon Sep 17 00:00:00 2001 From: Nizo <38207294+theNizo@users.noreply.github.com> Date: Sun, 9 Feb 2025 02:05:52 +0000 Subject: [PATCH 6/7] Add Vial support for 1upkeyboards/pi60 (#844) * added vial for 1upkeyboards/pi60 * added readme * restore state of readme --------- Co-authored-by: Your Name --- .../1upkeyboards/pi60/keymaps/vial/config.h | 7 ++ .../1upkeyboards/pi60/keymaps/vial/keymap.c | 61 ++++++++++++ .../1upkeyboards/pi60/keymaps/vial/readme.md | 9 ++ .../1upkeyboards/pi60/keymaps/vial/rules.mk | 5 + .../1upkeyboards/pi60/keymaps/vial/vial.json | 97 +++++++++++++++++++ 5 files changed, 179 insertions(+) create mode 100644 keyboards/1upkeyboards/pi60/keymaps/vial/config.h create mode 100644 keyboards/1upkeyboards/pi60/keymaps/vial/keymap.c create mode 100644 keyboards/1upkeyboards/pi60/keymaps/vial/readme.md create mode 100644 keyboards/1upkeyboards/pi60/keymaps/vial/rules.mk create mode 100644 keyboards/1upkeyboards/pi60/keymaps/vial/vial.json diff --git a/keyboards/1upkeyboards/pi60/keymaps/vial/config.h b/keyboards/1upkeyboards/pi60/keymaps/vial/config.h new file mode 100644 index 0000000000..dccfcb67bf --- /dev/null +++ b/keyboards/1upkeyboards/pi60/keymaps/vial/config.h @@ -0,0 +1,7 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ + +#pragma once + +#define VIAL_KEYBOARD_UID {0x09, 0xB9, 0xBD, 0xB8, 0xB8, 0x6A, 0x2A, 0xA7} +#define VIAL_UNLOCK_COMBO_ROWS { 0, 2 } +#define VIAL_UNLOCK_COMBO_COLS { 0, 13 } diff --git a/keyboards/1upkeyboards/pi60/keymaps/vial/keymap.c b/keyboards/1upkeyboards/pi60/keymaps/vial/keymap.c new file mode 100644 index 0000000000..8a83e83b52 --- /dev/null +++ b/keyboards/1upkeyboards/pi60/keymaps/vial/keymap.c @@ -0,0 +1,61 @@ +/* Copyright 2022 ziptyze + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + [0] = LAYOUT_all( + KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_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_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_TRNS, 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_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_RALT, MO(1), KC_TRNS, KC_APP, KC_RCTL + ), + + [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_TRNS, + KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_SCRL, KC_PAUS, KC_TRNS, + KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_INS, KC_HOME, KC_PGUP, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_VOLU, KC_VOLD, KC_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_END, KC_PGDN, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, 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, + RGB_TOG, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, RGB_SPI, RGB_M_P, RGB_M_B, RGB_M_R, RGB_M_SW,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, RGB_RMOD,RGB_HUD, RGB_SAD, RGB_VAD, RGB_SPD, RGB_M_SN,RGB_M_K, RGB_M_X, RGB_M_G, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, 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 + ) +}; + +#if defined(ENCODER_MAP_ENABLE) +const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = { + [0] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU), ENCODER_CCW_CW(KC_VOLD, KC_VOLU), ENCODER_CCW_CW(KC_VOLD, KC_VOLU) }, + [1] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS), ENCODER_CCW_CW(KC_TRNS, KC_TRNS), ENCODER_CCW_CW(KC_TRNS, KC_TRNS) }, + [2] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS), ENCODER_CCW_CW(KC_TRNS, KC_TRNS), ENCODER_CCW_CW(KC_TRNS, KC_TRNS) }, + [3] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS), ENCODER_CCW_CW(KC_TRNS, KC_TRNS), ENCODER_CCW_CW(KC_TRNS, KC_TRNS) } +}; +#endif diff --git a/keyboards/1upkeyboards/pi60/keymaps/vial/readme.md b/keyboards/1upkeyboards/pi60/keymaps/vial/readme.md new file mode 100644 index 0000000000..fe0ff412f4 --- /dev/null +++ b/keyboards/1upkeyboards/pi60/keymaps/vial/readme.md @@ -0,0 +1,9 @@ +# pi60:vial + +Shows all keymaps like in via, except for 2U Shift ones. No functionality sacrificed. + +Rotary Encoder is disabled, because it's not tested. + +--- + +Ported to Vial by [theNizo](https://github.com/theNizo/). diff --git a/keyboards/1upkeyboards/pi60/keymaps/vial/rules.mk b/keyboards/1upkeyboards/pi60/keymaps/vial/rules.mk new file mode 100644 index 0000000000..42f60d5573 --- /dev/null +++ b/keyboards/1upkeyboards/pi60/keymaps/vial/rules.mk @@ -0,0 +1,5 @@ +VIA_ENABLE = yes +VIAL_ENABLE = yes +LTO_ENABLE = yes +ENCODER_MAP_ENABLE = no +VIALRGB_ENABLE = yes diff --git a/keyboards/1upkeyboards/pi60/keymaps/vial/vial.json b/keyboards/1upkeyboards/pi60/keymaps/vial/vial.json new file mode 100644 index 0000000000..90cf1ecd69 --- /dev/null +++ b/keyboards/1upkeyboards/pi60/keymaps/vial/vial.json @@ -0,0 +1,97 @@ +{ + "lighting": "vialrgb", + "matrix": { + "rows": 5, + "cols": 16 + }, + "layouts": { + "labels": [ + [ + "Backspace", + "2U", + "1/1", + "1/enc" + ], + "Split Left Shift", + [ + "Enter", + "ANSI - 1/1.25", + "ANSI - 1.25/1", + "ANSI", + "ISO" + ], + [ + "Right Shift", + "1.75/1/1", + "1/1.75/1", + "1/1/1", + "1/2.75", + "1.75/1/enc", + "1/1.75/enc", + "1/1/enc" + ], + [ + "Spacebar", + "6.25U - 2.75/1.25/2.25", + "6.25U - 2.25/1.25/2.75", + "6.25U", + "6U", + "7U", + "7U - 2.75/1.5/2.75", + "7U - 3/1/3", + "7U - 3/enc/3", + "10U" + + ], + [ + "Left Cluster", + "6.25U - 1.25/1.25/1.25", + "6.25U - 1.5/1/1.25", + "6U/7U - 1.25/1.25/1.5", + "6U/7U - 1.5/1/1.5", + "10U - 1.25/1.25", + "10U - 1.5/1" + ], + [ + "Right Cluster", + "6.25U/6U - 1/1/1/1/1", + "6.25U/6U - 1.25/1.25/1.25/1.25", + "6.25U/6U - 1.25/1.25/1/1.5", + "6.25U/6U - 1/1.5/1.25/1.25", + "6.25U/6U - 1/1.5/1/1.5", + "7U - 1/1/1/1", + "7U - 1.5/1.25/1.25", + "7U - 1.5/1/1.5", + "10U - 1.25/1.25", + "10U - 1/1.5" + ] + ], + "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":0.25},"0,13\n\n\n0,1","0,14\n\n\n0,1",{"x":0.25},"0,13\n\n\n0,2","0,14\n\n\n0,2\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\n2,0",{"x":1,"w":1.5},"1,13\n\n\n2,1",{"x":1,"w":1.5},"1,13\n\n\n2,2",{"x":1.25,"w":1.25,"h":2,"w2":1.5,"h2":1,"x2":-0.25},"2,13\n\n\n2,3"],[{"x":2.5,"w":1.75},"2,15","2,1","2,2","2,3","2,4","2,5","2,6","2,7","2,8","2,9","2,10","2,11","2,12\n\n\n2,0",{"w":1.25},"2,13\n\n\n2,0",{"x":0.25,"w":1.25},"2,12\n\n\n2,1","2,13\n\n\n2,1",{"x":0.25,"w":2.25},"2,13\n\n\n2,2",{"x":0.25},"2,12\n\n\n2,3"], + [{"w":1.25},"3,15\n\n\n1,1","3,1\n\n\n1,1",{"x":0.25,"w":2.25},"3,15\n\n\n1,0","3,2","3,3","3,4","3,5","3,6","3,7","3,8","3,9","3,10",{"w":1.75},"3,11\n\n\n3,0","3,12\n\n\n3,0","3,14\n\n\n3,0",{"x":0.25},"3,11\n\n\n3,1",{"w":1.75},"3,12\n\n\n3,1","3,14\n\n\n3,1"], + [{"w":6.25,"d":true},"\n\n\n4,0",{"x":-6.25,"w":12.5,"d":true},"\n\n\n6,0",{"x":-10,"w":1.25},"4,15\n\n\n5,0",{"w":1.25},"4,1\n\n\n5,0",{"w":1.25},"4,2\n\n\n5,0",{"w":2.75},"4,4\n\n\n4,0",{"w":1.25},"4,6\n\n\n4,0",{"w":2.25},"4,8\n\n\n4,0","4,10\n\n\n6,0","4,11\n\n\n6,0","4,12\n\n\n6,0","4,13\n\n\n6,0","4,14\n\n\n6,0",{"x":0.25},"3,11\n\n\n3,2",{"x":0.75},"3,12\n\n\n3,2","3,14\n\n\n3,2"], + [{"x":2.5,"w":1.5},"4,15\n\n\n5,1","4,1\n\n\n5,1",{"w":1.25},"4,2\n\n\n5,1",{"x":11.5},"3,11\n\n\n3,3",{"w":2.754},"3,12\n\n\n3,3"], + [{"x":2.5,"w":1.25},"4,15\n\n\n5,2",{"w":1.25},"4,1\n\n\n5,2",{"w":1.5},"4,2\n\n\n5,2",{"x":11.25,"w":1.75},"3,11\n\n\n3,4","3,12\n\n\n3,4","3,14\n\n\n3,4\n\n\n\n\n\ne"], + [{"x":2.5,"w":1.5},"4,15\n\n\n5,3","4,1\n\n\n5,3",{"w":1.5},"4,2\n\n\n5,3",{"x":11.25},"3,11\n\n\n3,5",{"w":1.75},"3,12\n\n\n3,5","3,14\n\n\n3,5\n\n\n\n\n\ne"], + [{"x":2.5,"w":1.25},"4,15\n\n\n5,4",{"w":1.25},"4,1\n\n\n5,4",{"x":12.75},"3,11\n\n\n3,6",{"x":0.75},"3,12\n\n\n3,6","3,14\n\n\n3,6\n\n\n\n\n\ne"], + [{"x":2.5,"w":1.5},"4,15\n\n\n5,5","4,1\n\n\n5,5"], + [{"w":6.25,"d":true},"\n\n\n4,1",{"w":2.25},"4,4\n\n\n4,1",{"w":1.25},"4,6\n\n\n4,1",{"w":2.75},"4,8\n\n\n4,1"], + [{"w":6.25,"d":true},"\n\n\n4,2",{"w":6.25},"4,6\n\n\n4,2"], + [{"w":6.5,"d":true},"\n\n\n4,3",{"w":6},"4,6\n\n\n4,3"], + [{"w":6.5,"d":true},"\n\n\n4,4",{"w":7},"4,6\n\n\n4,4"], + [{"w":6.5,"d":true},"\n\n\n4,5",{"w":2.75},"4,4\n\n\n4,5",{"w":1.5},"4,6\n\n\n4,5",{"w":2.75},"4,8\n\n\n4,5"], + [{"w":6.5,"d":true},"\n\n\n4,6",{"w":3},"4,4\n\n\n4,6","4,6\n\n\n4,6",{"w":3},"4,8\n\n\n4,6"], + [{"w":6.5,"d":true},"\n\n\n4,7",{"w":3},"4,4\n\n\n4,7","4,6\n\n\n4,7\n\n\n\n\n\ne",{"w":3},"4,8\n\n\n4,7"], + [{"w":5,"d":true},"\n\n\n4,8",{"w":10},"4,6\n\n\n4,8"], + [{"y":0.25,"w":12.5,"d":true},"\n\n\n6,1",{"w":1.25},"4,10\n\n\n6,1",{"w":1.25},"4,11\n\n\n6,1",{"w":1.25},"4,13\n\n\n6,1",{"w":1.25},"4,14\n\n\n6,1"], + [{"w":12.5,"d":true},"\n\n\n6,2",{"w":1.25},"4,10\n\n\n6,2",{"w":1.25},"4,11\n\n\n6,2","4,13\n\n\n6,2",{"w":1.5},"4,14\n\n\n6,2"], + [{"w":12.5,"d":true},"\n\n\n6,3","4,10\n\n\n6,3",{"w":1.5},"4,11\n\n\n6,3",{"w":1.25},"4,13\n\n\n6,3",{"w":1.25},"4,14\n\n\n6,3"], + [{"w":12.5,"d":true},"\n\n\n6,4","4,10\n\n\n6,4",{"w":1.5},"4,11\n\n\n6,4","4,13\n\n\n6,4",{"w":1.5},"4,14\n\n\n6,4"], + [{"w":13.5,"d":true},"\n\n\n6,5","4,11\n\n\n6,5","4,12\n\n\n6,5","4,13\n\n\n6,5","4,14\n\n\n6,5"], + [{"w":13.5,"d":true},"\n\n\n6,6",{"w":1.5},"4,11\n\n\n6,6",{"w":1.25},"4,13\n\n\n6,6",{"w":1.25},"4,14\n\n\n6,6"], + [{"w":13.5,"d":true},"\n\n\n6,7",{"w":1.5},"4,11\n\n\n6,7","4,13\n\n\n6,7",{"w":1.5},"4,14\n\n\n6,7"], + [{"w":15,"d":true},"\n\n\n6,8",{"w":1.25},"4,13\n\n\n6,8",{"w":1.25},"4,14\n\n\n6,8"], + [{"w":15,"d":true},"\n\n\n6,9","4,13\n\n\n6,9",{"w":1.5},"4,14\n\n\n6,9"] + ] + } +} From 1c129915f059c004155a3e69df9068089ca753bb Mon Sep 17 00:00:00 2001 From: Shadow Date: Sun, 9 Feb 2025 02:06:24 +0000 Subject: [PATCH 7/7] adds support for ploopy mouse (#841) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * adds support for ploopy mouse while not using tapdance * Add Vial support for NCR80 ALPS SKFL/FR (#819) * add support * fix * Update config.h * Add vial support for the elongate delta (#826) * Add vial support for the elongate delta delta * removing uneeded parts * Add Vial support for desire65 (#830) * Add vial support for lazydesigners/kontro (#842) Add vial support for lazydesigners/kontro * added readme file for rorian04_kbd keyboard (#843) * added readme file for rorian05_kbd * Update readme.md * Add support for K1 Pro ISO RGB, bluetooth delete, USB cable only. (#838) * add keyboard kbd0/curve0/60_ansi (#834) * add keyboard kbd0/curve0/60_ansi * Update vial.json * Port Leviatan to VIAL (#829) * Port Swiss to VIAL (#827) * Port Swiss to VIAL * Revert some changes * feat: add VIAL support for xt60_singa (#824) * fix tapping force hold to use quick tap term internally (#839) * keebio/quefrency/rev5: reduce vial fw size * disable key override to save a lot of flash storage --------- Co-authored-by: Sắn <59417802+MaiTheSan@users.noreply.github.com> Co-authored-by: Patrick Muldoon Co-authored-by: akyp Co-authored-by: Jacky@LAZYDESIGNERS Co-authored-by: Rorian04 <114996287+Rorian04@users.noreply.github.com> Co-authored-by: richud Co-authored-by: kbd0 <108237598+kbd0@users.noreply.github.com> Co-authored-by: Nam Co-authored-by: Yuri Paharev Co-authored-by: Jaeseok Lee Co-authored-by: Ilya Zhuravlev --- .../ploopyco/mouse/keymaps/vial/config.h | 50 ++++++++++++++ .../ploopyco/mouse/keymaps/vial/keymap.c | 23 +++++++ .../ploopyco/mouse/keymaps/vial/rules.mk | 16 +++++ .../ploopyco/mouse/keymaps/vial/vial.json | 67 +++++++++++++++++++ 4 files changed, 156 insertions(+) create mode 100644 keyboards/ploopyco/mouse/keymaps/vial/config.h create mode 100644 keyboards/ploopyco/mouse/keymaps/vial/keymap.c create mode 100644 keyboards/ploopyco/mouse/keymaps/vial/rules.mk create mode 100644 keyboards/ploopyco/mouse/keymaps/vial/vial.json diff --git a/keyboards/ploopyco/mouse/keymaps/vial/config.h b/keyboards/ploopyco/mouse/keymaps/vial/config.h new file mode 100644 index 0000000000..5f3daa6a01 --- /dev/null +++ b/keyboards/ploopyco/mouse/keymaps/vial/config.h @@ -0,0 +1,50 @@ +/* Copyright 2020 Christopher Courtney, aka Drashna Jael're (@drashna) + * Copyright 2019 Sunjun Kim + * Copyright 2020 Ploopy Corporation + * + * 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 + +// These pins are not broken out, and cannot be used normally. +// They are set as output and pulled high, by default +#define UNUSABLE_PINS \ + { B4, D6, F1, F5, F6, F7 } + +/* disable action features */ +//#define NO_ACTION_LAYER +//#define NO_ACTION_TAPPING +//#define NO_ACTION_ONESHOT + +// #define DEBUG_LED_PIN F7 + +/* PMW33XX Settings */ +#define PMW33XX_CS_PIN B0 + +#define ENCODER_BUTTON_COL 1 +#define ENCODER_BUTTON_ROW 0 +/* Custom encoder needs to specify just how many encoders we have */ +#define NUM_ENCODERS 1 + +#define ENCODER_A_PINS { F0 } +#define ENCODER_B_PINS { F4 } + +#define PLOOPY_DPI_OPTIONS { 800, 1200, 1600, 2400 } +#define PLOOPY_DPI_DEFAULT 0 + +#define VIAL_KEYBOARD_UID {0x84, 0x1C, 0x34, 0x08, 0xC9, 0xC5, 0xB4, 0x37} + +#define VIAL_UNLOCK_COMBO_ROWS {0, 0} +#define VIAL_UNLOCK_COMBO_COLS {4, 5} diff --git a/keyboards/ploopyco/mouse/keymaps/vial/keymap.c b/keyboards/ploopyco/mouse/keymaps/vial/keymap.c new file mode 100644 index 0000000000..29d81b8061 --- /dev/null +++ b/keyboards/ploopyco/mouse/keymaps/vial/keymap.c @@ -0,0 +1,23 @@ +/* Copyright 2020 Christopher Courtney, aka Drashna Jael're (@drashna) + * Copyright 2019 Sunjun Kim + * Copyright 2020 Ploopy Corporation + * + * 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(/* Base */ + C(KC_C), KC_BTN1, KC_BTN3, KC_BTN2, C(KC_V), KC_BTN4, KC_BTN5, DPI_CONFIG) +}; diff --git a/keyboards/ploopyco/mouse/keymaps/vial/rules.mk b/keyboards/ploopyco/mouse/keymaps/vial/rules.mk new file mode 100644 index 0000000000..b9509645d8 --- /dev/null +++ b/keyboards/ploopyco/mouse/keymaps/vial/rules.mk @@ -0,0 +1,16 @@ +# Processor frequency +F_CPU = 8000000 + +POINTING_DEVICE_DRIVER = pmw3360 + +# add vial config +VIA_ENABLE = yes +VIAL_ENABLE = yes + +TAP_DANCE_ENABLE = no +KEY_OVERRIDE_ENABLE = no + + +LTO_ENABLE = yes + +# VIAL_INSECURE = yes diff --git a/keyboards/ploopyco/mouse/keymaps/vial/vial.json b/keyboards/ploopyco/mouse/keymaps/vial/vial.json new file mode 100644 index 0000000000..3d58fee81e --- /dev/null +++ b/keyboards/ploopyco/mouse/keymaps/vial/vial.json @@ -0,0 +1,67 @@ +{ + "name": "PloopyCo Mouse", + "vendorId": "0x5043", + "productId": "0x4D6F", + "matrix": { + "rows": 1, + "cols": 8 + }, + "customKeycodes": [ + { + "name": "DPI Config", + "title": "DPI Config: Cycles through the DPI settings", + "shortName": "DPI" + }, + { + "name": "Drag Scroll", + "title": "Drag Scroll: Enables you to scroll instead of moving the cursor", + "shortName": "DragScl" + } + ], + "lighting": "none", + "layouts": { + "keymap": [ + [ + "0,4", + { + "h": 2 + }, + "0,6", + { + "h": 2 + }, + "0,0", + { + "x": 1, + "h": 2 + }, + "0,2", + { + "h": 2 + }, + "0,5" + ], + [ + { + "y": -0.75, + "x": 3, + "h": 1.25 + }, + "0,1" + ], + [ + { + "y": -0.25 + }, + "0,3" + ], + [ + { + "y": -0.5, + "x": 3 + }, + "0,7" + ] + ] + } +}