diff --git a/keyboards/redox_w/keymaps/vial/config.h b/keyboards/redox_w/keymaps/vial/config.h new file mode 100644 index 0000000000..27240e3582 --- /dev/null +++ b/keyboards/redox_w/keymaps/vial/config.h @@ -0,0 +1,11 @@ +/* SPDX-License-Identifier: GPL-2.0-or-later */ + +#pragma once + +#define VIAL_KEYBOARD_UID {0xD1, 0x17, 0x1B, 0x09, 0x80, 0x38, 0x78, 0xB1} + +#define VIAL_UNLOCK_COMBO_ROWS { 0, 2 } +#define VIAL_UNLOCK_COMBO_COLS { 0, 13 } +#define VIAL_TAP_DANCE_ENTRIES 2 +#define VIAL_COMBO_ENTRIES 2 +#define VIAL_KEY_OVERRIDE_ENTRIES 4 diff --git a/keyboards/redox_w/keymaps/vial/keymap.c b/keyboards/redox_w/keymaps/vial/keymap.c new file mode 100644 index 0000000000..a463bfc673 --- /dev/null +++ b/keyboards/redox_w/keymaps/vial/keymap.c @@ -0,0 +1,111 @@ +#include QMK_KEYBOARD_H + +// Each layer gets a name for readability, which is then used in the keymap matrix below. +// The underscores don't mean anything - you can have a layer called STUFF or any other name. +// Layer names don't all need to be of the same length, obviously, and you can also skip them +// entirely and just use numbers. +#define _QWERTY 0 +#define _SYMB 1 +#define _NAV 2 +#define _ADJUST 3 + +enum custom_keycodes { + QWERTY = SAFE_RANGE, + SYMB, + NAV, + ADJUST, +}; + +// Shortcut to make keymap more readable +#define SYM_L MO(_SYMB) + +#define KC_ALAS LALT_T(KC_PAST) +#define KC_CTPL LCTL_T(KC_BSLS) + +#define KC_NAGR LT(_NAV, KC_GRV) +#define KC_NAMI LT(_NAV, KC_MINS) + +#define KC_ADEN LT(_ADJUST, KC_END) +#define KC_ADPU LT(_ADJUST, KC_PGUP) + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + [_QWERTY] = LAYOUT( + //┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐ + KC_NAGR ,KC_1 ,KC_2 ,KC_3 ,KC_4 ,KC_5 , KC_6 ,KC_7 ,KC_8 ,KC_9 ,KC_0 ,KC_NAMI , + //├────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┤ + KC_TAB ,KC_Q ,KC_W ,KC_E ,KC_R ,KC_T ,SYM_L , SYM_L ,KC_Y ,KC_U ,KC_I ,KC_O ,KC_P ,KC_EQL , + //├────────┼────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┼────────┤ + KC_ESC ,KC_A ,KC_S ,KC_D ,KC_F ,KC_G ,KC_LBRC , KC_RBRC ,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_ADPU ,KC_PGDN , KC_HOME ,KC_ADEN ,KC_N ,KC_M ,KC_COMM ,KC_DOT ,KC_SLSH ,KC_RSFT , + //├────────┼────────┼────────┼────────┼────┬───┴────┬───┼────────┼────────┤ ├────────┼────────┼───┬────┴───┬────┼────────┼────────┼────────┼────────┤ + KC_LGUI ,KC_PPLS ,KC_PMNS ,KC_ALAS , KC_CTPL , KC_BSPC ,KC_DEL , KC_ENT ,KC_SPC , KC_RALT , KC_LEFT ,KC_DOWN ,KC_UP ,KC_RGHT + //└────────┴────────┴────────┴────────┘ └────────┘ └────────┴────────┘ └────────┴────────┘ └────────┘ └────────┴────────┴────────┴────────┘ + ), + + [_SYMB] = LAYOUT( + //┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐ + _______ ,KC_F1 ,KC_F2 ,KC_F3 ,KC_F4 ,KC_F5 , KC_F6 ,KC_F7 ,KC_F8 ,KC_F9 ,KC_F10 ,XXXXXXX , + //├────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┤ + _______ ,KC_EXLM ,KC_AT ,KC_LCBR ,KC_RCBR ,KC_PIPE ,_______ , _______ ,KC_PSLS ,KC_P7 ,KC_P8 ,KC_P9 ,KC_PMNS ,XXXXXXX , + //├────────┼────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┼────────┤ + _______ ,KC_HASH ,KC_DLR ,KC_LBRC ,KC_RBRC ,KC_GRV ,_______ , _______ ,KC_PAST ,KC_P4 ,KC_P5 ,KC_P6 ,KC_PPLS ,XXXXXXX , + //├────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┤ + _______ ,KC_PERC ,KC_CIRC ,KC_LPRN ,KC_RPRN ,KC_TILD ,_______ ,_______ , _______ ,_______ ,XXXXXXX ,KC_P1 ,KC_P2 ,KC_P3 ,KC_PENT ,XXXXXXX , + //├────────┼────────┼────────┼────────┼────┬───┴────┬───┼────────┼────────┤ ├────────┼────────┼───┬────┴───┬────┼────────┼────────┼────────┼────────┤ + _______ ,_______ ,_______ ,_______ , _______ , _______ ,_______ , _______ ,_______ , KC_P0 , KC_P0 ,KC_PDOT ,KC_PENT ,XXXXXXX + //└────────┴────────┴────────┴────────┘ └────────┘ └────────┴────────┘ └────────┴────────┘ └────────┘ └────────┴────────┴────────┴────────┘ + ), + + [_NAV] = LAYOUT( + //┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐ + _______ ,_______ ,_______ ,_______ ,_______ ,_______ , _______ ,_______ ,_______ ,_______ ,_______ ,_______ , + //├────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┤ + XXXXXXX ,XXXXXXX ,KC_MS_U ,XXXXXXX ,KC_WH_U ,XXXXXXX ,_______ , _______ ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX , + //├────────┼────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┼────────┤ + XXXXXXX ,KC_MS_L ,KC_MS_D ,KC_MS_R ,KC_WH_D ,XXXXXXX ,_______ , _______ ,KC_LEFT ,KC_DOWN ,KC_UP ,KC_RIGHT,XXXXXXX ,XXXXXXX , + //├────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┤ + XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,_______ ,_______ , _______ ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX , + //├────────┼────────┼────────┼────────┼────┬───┴────┬───┼────────┼────────┤ ├────────┼────────┼───┬────┴───┬────┼────────┼────────┼────────┼────────┤ + XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX , KC_BTN1 , KC_BTN2 ,_______ , _______ ,_______ , XXXXXXX , XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX + //└────────┴────────┴────────┴────────┘ └────────┘ └────────┴────────┘ └────────┴────────┘ └────────┘ └────────┴────────┴────────┴────────┘ + ), + + [_ADJUST] = LAYOUT( + //┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐ + XXXXXXX ,KC_F1 ,KC_F2 ,KC_F3 ,KC_F4 ,KC_F5 , KC_F6 ,KC_F7 ,KC_F8 ,KC_F9 ,KC_F10 ,XXXXXXX , + //├────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┤ + XXXXXXX ,QK_BOOT,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX , XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX , + //├────────┼────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┼────────┤ + XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX , XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX , + //├────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┤ + XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,_______ ,XXXXXXX , XXXXXXX ,_______ ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX , + //├────────┼────────┼────────┼────────┼────┬───┴────┬───┼────────┼────────┤ ├────────┼────────┼───┬────┴───┬────┼────────┼────────┼────────┼────────┤ + XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX , XXXXXXX , XXXXXXX ,XXXXXXX , XXXXXXX ,XXXXXXX , XXXXXXX , XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX + //└────────┴────────┴────────┴────────┘ └────────┘ └────────┴────────┘ └────────┴────────┘ └────────┘ └────────┴────────┴────────┴────────┘ + ) + +}; + +layer_state_t layer_state_set_user(layer_state_t state) { + switch (get_highest_layer(state)) { + case _QWERTY: + set_led_off; + break; + case _SYMB: + set_led_green; + break; + case _NAV: + set_led_blue; + break; + case _ADJUST: + set_led_red; + break; + default: + break; + } + return state; +} + + diff --git a/keyboards/redox_w/keymaps/vial/readme.md b/keyboards/redox_w/keymaps/vial/readme.md new file mode 100644 index 0000000000..32ab1253d7 --- /dev/null +++ b/keyboards/redox_w/keymaps/vial/readme.md @@ -0,0 +1 @@ +# Default keymap for Redox Wireless diff --git a/keyboards/redox_w/keymaps/vial/rules.mk b/keyboards/redox_w/keymaps/vial/rules.mk new file mode 100644 index 0000000000..319c81661f --- /dev/null +++ b/keyboards/redox_w/keymaps/vial/rules.mk @@ -0,0 +1,15 @@ +VIA_ENABLE = yes +VIAL_ENABLE = yes +LTO_ENABLE = yes + +COMMAND_ENABLE = no # Commands for debug and configuration +RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. +UNICODE_ENABLE = no +OLED_DRIVER_ENABLE = no +CONSOLE_ENABLE = no # Console for debug +MUSIC_ENALBE = no +SPACE_CADET_ENABLE = no + +# must be disabled for VIA support +MIDI_ENABLE = no +BLUETOOTH_ENABLE = no diff --git a/keyboards/redox_w/keymaps/vial/vial.json b/keyboards/redox_w/keymaps/vial/vial.json new file mode 100644 index 0000000000..540554995b --- /dev/null +++ b/keyboards/redox_w/keymaps/vial/vial.json @@ -0,0 +1,378 @@ +{ + "name": "Redox-W", + "matrix": {"rows": 5, "cols": 14}, + "layouts": { + "keymap":[ + [ + { + "x": 3.5, + "a": 7 + }, + "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" + ] + ] + } +}