From efc1f6fba3dbc7db390aaffe07fb1934cafa49ab Mon Sep 17 00:00:00 2001 From: Asganar <126653612+Asganar@users.noreply.github.com> Date: Sun, 18 Feb 2024 04:15:56 +0300 Subject: [PATCH] Added VIAL support (#676) Added VIAL support, changed default keymap, modifyed build rules --- keyboards/pinky/4/keymaps/vial/config.h | 45 +++ keyboards/pinky/4/keymaps/vial/keymap.c | 47 ++++ keyboards/pinky/4/keymaps/vial/rules.mk | 12 + keyboards/pinky/4/keymaps/vial/vial.json | 336 +++++++++++++++++++++++ 4 files changed, 440 insertions(+) create mode 100644 keyboards/pinky/4/keymaps/vial/config.h create mode 100644 keyboards/pinky/4/keymaps/vial/keymap.c create mode 100644 keyboards/pinky/4/keymaps/vial/rules.mk create mode 100644 keyboards/pinky/4/keymaps/vial/vial.json diff --git a/keyboards/pinky/4/keymaps/vial/config.h b/keyboards/pinky/4/keymaps/vial/config.h new file mode 100644 index 00000000000..c07fad5722a --- /dev/null +++ b/keyboards/pinky/4/keymaps/vial/config.h @@ -0,0 +1,45 @@ +/* Copyright 2018 'Masayuki Sunahara' + * + * 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 USE_MATRIX_I2C + +/* Select hand configuration */ + +#define MASTER_LEFT +// #define MASTER_RIGHT +// #define EE_HANDS + +// Vial Support +#define VIAL_KEYBOARD_UID {0xE6, 0xB5, 0x80, 0x48, 0xB0, 0x2C, 0xBC, 0x11} + +// The four corners +#define VIAL_UNLOCK_COMBO_ROWS { 0, 5, 3, 8 } +#define VIAL_UNLOCK_COMBO_COLS { 0, 0, 0, 0 } + +// Tap dance slots +#define VIAL_TAP_DANCE_ENTRIES 10 + +// Dynamic macro slots +#define DYNAMIC_KEYMAP_MACRO_COUNT 14 + +// Dynamic key override slots +#define VIAL_KEY_OVERRIDE_ENTRIES 8 + +#define QUICK_TAP_TERM 0 +#define TAPPING_TERM 200 +#define RETRO_TAPPPING diff --git a/keyboards/pinky/4/keymaps/vial/keymap.c b/keyboards/pinky/4/keymaps/vial/keymap.c new file mode 100644 index 00000000000..60dc084ed9f --- /dev/null +++ b/keyboards/pinky/4/keymaps/vial/keymap.c @@ -0,0 +1,47 @@ +/* Copyright 2018 'Masayuki Sunahara' + * + * 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_1 , KC_2 , KC_3 , KC_4 , KC_5 , KC_VOLU, KC_MNXT, KC_6 , KC_7 , KC_8 , KC_9 , KC_0 , KC_BSPC, + KC_GRV , KC_Q , KC_W , KC_E , KC_R , KC_T , KC_VOLD, KC_MPRV, KC_Y , KC_U , KC_I , KC_O , KC_P , KC_LBRC, + KC_TAB , KC_A , KC_S , KC_D , KC_F , KC_G , KC_MUTE, KC_MPLY, 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_CALC, KC_RGUI, KC_N , KC_M , KC_COMM, KC_DOT , KC_SLSH, KC_RSFT, + KC_LCTL, KC_LALT, MO(2) , KC_SPC , KC_ENT , MO(1) , KC_RALT, KC_RCTL + ), + [1] = LAYOUT( + KC_GRV , KC_MPRV, KC_MPLY, KC_MNXT, LALT(KC_F4), _______, _______, _______, KC_PSCR, _______, KC_PGUP, _______, KC_SCRL, KC_TRNS, + KC_CAPS, _______, _______, KC_PGUP, _______, _______, _______, _______, KC_INS , KC_HOME, KC_UP , KC_END , KC_NUM , _______, + KC_TRNS, _______, LCTL(KC_X), LCTL(KC_C), LCTL(KC_V), KC_BTN2, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, + KC_TRNS, _______, _______, KC_PGDN, _______, _______, _______, _______, KC_CALC, KC_PGUP, KC_PGDN, KC_PGDN, KC_BRK , KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ), + [2] = LAYOUT( + KC_TRNS, KC_F1 , KC_F2 , KC_F3 , KC_F4 , KC_F5 , _______, _______, KC_F6 , KC_F7 , KC_F8 , KC_F9 , KC_F10 , KC_TRNS, + KC_CAPS, LSFT(KC_1), LSFT(KC_2), LSFT(KC_3), LSFT(KC_4), LSFT(KC_5), _______, _______, LSFT(KC_6), LSFT(KC_7), LSFT(KC_8), LSFT(KC_9), LSFT(KC_0), KC_F11, + KC_TRNS, KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , _______, _______, KC_6 , KC_7 , KC_8 , KC_9 , KC_0 , KC_F12, + KC_TRNS, LSFT(KC_EQUAL), KC_MINUS, KC_EQUAL, KC_COMMA, KC_DOT, _______, _______, KC_LBRC, KC_RBRC, KC_BSLS, KC_DOT, KC_SLSH, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ), + [3] = LAYOUT( + KC_TRNS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_TRNS, + KC_TRNS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + KC_TRNS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + KC_TRNS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ) +}; diff --git a/keyboards/pinky/4/keymaps/vial/rules.mk b/keyboards/pinky/4/keymaps/vial/rules.mk new file mode 100644 index 00000000000..dbd4d871184 --- /dev/null +++ b/keyboards/pinky/4/keymaps/vial/rules.mk @@ -0,0 +1,12 @@ +# Building options + +LTO_ENABLE = yes +VIA_ENABLE = yes +VIAL_ENABLE = yes +MOUSEKEY_ENABLE = yes +EXTRAKEY_ENABLE = yes +COMBO_ENABLE = yes +KEY_OVERRIDE_ENABLE = yes +QMK_SETTINGS = no +TAP_DANCE_ENABLE = yes +NKRO_ENABLE = yes diff --git a/keyboards/pinky/4/keymaps/vial/vial.json b/keyboards/pinky/4/keymaps/vial/vial.json new file mode 100644 index 00000000000..caf4e265c38 --- /dev/null +++ b/keyboards/pinky/4/keymaps/vial/vial.json @@ -0,0 +1,336 @@ +{ + "name": "Pinky4", + "vendorId": "0x544E", + "productId": "0x7034", + "matrix": { "rows": 10, "cols": 7 }, + "layouts": { + "keymap": [ + { + "name": "Pinky4", + "author": "Masayuki Sunahara" + }, + + [ + { + "x": 3, + "sm": "cherry" + }, + "0,3", + { + "x": 7.25 + }, + "5,3" + ], + [ + { + "y": -0.87, + "x": 2 + }, + "0,2", + { + "x": 1 + }, + "0,4", + { + "x": 5.25 + }, + "5,4", + { + "x": 1 + }, + "5,2" + ], + [ + { + "y": -0.88, + "x": 5 + }, + "0,5", + { + "x": 3.25 + }, + "5,5" + ], + [ + { + "y": -0.87 + }, + "0,0", + "0,1", + { + "x": 11.25 + }, + "5,1", + "5,0" + ], + [ + { + "y": -0.88, + "x": 6 + }, + "0,6", + { + "x": 1.25 + }, + "5,6" + ], + [ + { + "y": -0.5, + "x": 3 + }, + "1,3", + { + "x": 7.25 + }, + "6,3" + ], + [ + { + "y": -0.8700000000000001, + "x": 2 + }, + "1,2", + { + "x": 1 + }, + "1,4", + { + "x": 5.25 + }, + "6,4", + { + "x": 1 + }, + "6,2" + ], + [ + { + "y": -0.8799999999999999, + "x": 5 + }, + "1,5", + { + "x": 3.25 + }, + "6,5" + ], + [ + { + "y": -0.8700000000000001 + }, + "1,0", + "1,1", + { + "x": 11.25 + }, + "6,1", + "6,0" + ], + [ + { + "y": -0.8799999999999999, + "x": 6 + }, + "1,6", + { + "x": 1.25 + }, + "6,6" + ], + [ + { + "y": -0.5, + "x": 3 + }, + "2,3", + { + "x": 7.25 + }, + "7,3" + ], + [ + { + "y": -0.8700000000000001, + "x": 2 + }, + "2,2", + { + "x": 1 + }, + "2,4", + { + "x": 5.25 + }, + "7,4", + { + "x": 1 + }, + "7,2" + ], + [ + { + "y": -0.8799999999999999, + "x": 5 + }, + "2,5", + { + "x": 3.25 + }, + "7,5" + ], + [ + { + "y": -0.8700000000000001 + }, + "2,0", + "2,1", + { + "x": 11.25 + }, + "7,1", + "7,0" + ], + [ + { + "y": -0.8799999999999999, + "x": 6 + }, + "2,6", + { + "x": 1.25 + }, + "7,6" + ], + [ + { + "y": -0.5, + "x": 3 + }, + "3,3", + { + "x": 7.25 + }, + "8,3" + ], + [ + { + "y": -0.8700000000000001, + "x": 2 + }, + "3,2", + { + "x": 1 + }, + "3,4", + { + "x": 5.25 + }, + "8,4", + { + "x": 1 + }, + "8,2" + ], + [ + { + "y": -0.8799999999999999, + "x": 5 + }, + "3,5", + { + "x": 3.25 + }, + "8,5" + ], + [ + { + "y": -0.8700000000000001 + }, + "3,0", + "3,1", + { + "x": 11.25 + }, + "8,1", + "8,0" + ], + [ + { + "y": 0.5, + "x": 3 + }, + "4,3", + { + "x": 7.25 + }, + "9,3" + ], + [ + { + "r": 5, + "rx": 6.5, + "ry": 3, + "y": 2.0780000000000003, + "x": -2.25 + }, + "4,4" + ], + [ + { + "r": 15, + "y": -2.1980000000000004 + }, + "3,6" + ], + [ + { + "y": 0.3700000000000001, + "x": -0.7000000000000002 + }, + "4,5" + ], + [ + { + "r": 23, + "y": -1.04, + "x": 0.7400000000000002 + }, + "4,6" + ], + [ + { + "r": -23, + "rx": 9, + "y": 2.1100000000000003, + "x": -1.9720000000000004 + }, + "9,6" + ], + [ + { + "r": -15, + "y": -2.289, + "x": -1.25 + }, + "8,6" + ], + [ + { + "y": 0.37400000000000055, + "x": -0.5399999999999991 + }, + "9,5" + ], + [ + { + "r": -5, + "y": -1.1350000000000007, + "x": 1 + }, + "9,4" + ] + + ] + } +}