From 80393c53adf7ac8f7ef7daa6314861489d8dae31 Mon Sep 17 00:00:00 2001 From: mizma Date: Sun, 27 Jul 2025 11:58:28 +0900 Subject: [PATCH] Keyboard/slimdash (#915) * add mzmkb/slimdash vial config * fix keymap for RGB backlight control --- .../mzmkb/slimdash/rev1/keymaps/vial/config.h | 23 ++++ .../mzmkb/slimdash/rev1/keymaps/vial/keymap.c | 126 ++++++++++++++++++ .../mzmkb/slimdash/rev1/keymaps/vial/rules.mk | 7 + .../slimdash/rev1/keymaps/vial/vial.json | 41 ++++++ 4 files changed, 197 insertions(+) create mode 100644 keyboards/mzmkb/slimdash/rev1/keymaps/vial/config.h create mode 100644 keyboards/mzmkb/slimdash/rev1/keymaps/vial/keymap.c create mode 100644 keyboards/mzmkb/slimdash/rev1/keymaps/vial/rules.mk create mode 100644 keyboards/mzmkb/slimdash/rev1/keymaps/vial/vial.json diff --git a/keyboards/mzmkb/slimdash/rev1/keymaps/vial/config.h b/keyboards/mzmkb/slimdash/rev1/keymaps/vial/config.h new file mode 100644 index 0000000000..76cf704637 --- /dev/null +++ b/keyboards/mzmkb/slimdash/rev1/keymaps/vial/config.h @@ -0,0 +1,23 @@ +/* Copyright 2025 mizma (@mizma) + * + * 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 {0xF8, 0x33, 0xE5, 0xA6, 0x5B, 0x24, 0x72, 0x00} + +#define VIAL_UNLOCK_COMBO_ROWS {0, 9} +#define VIAL_UNLOCK_COMBO_COLS {0, 5} +#define DYNAMIC_KEYMAP_LAYER_COUNT 5 diff --git a/keyboards/mzmkb/slimdash/rev1/keymaps/vial/keymap.c b/keyboards/mzmkb/slimdash/rev1/keymaps/vial/keymap.c new file mode 100644 index 0000000000..a496950ad8 --- /dev/null +++ b/keyboards/mzmkb/slimdash/rev1/keymaps/vial/keymap.c @@ -0,0 +1,126 @@ +/* Copyright 2025 mizma (@mizma) + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +#include QMK_KEYBOARD_H + +enum layer_names { + _QWERTY, + _GAMEMODE, + _LOWER, + _RAISE +}; + +#define LOWER MO(_LOWER) +#define RAISE MO(_RAISE) +#define GAMEM TG(_GAMEMODE) + +#define EISU LALT(KC_GRV) + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + /* Qwerty + * ,------------------------------------------------. .------------------------------------------------. + * | ESC | 1 | 2 | 3 | 4 | 5 | - | | = | 6 | 7 | 8 | 9 | 0 | Bksp | + * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------| + * | Tab | Q | W | E | R | T | [ | | ] | Y | U | I | O | P | \ | + * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------| + * | LCTL | A | S | D | F | G | Del | | Ins | H | J | K | L | ; | ' | + * |------+------+------+------+------+------+------. .------+------+------+------+------+------+------| + * | LSFT | Z | X | C | V | B | | N | M | , | . | / | RSFT | + * |------+------+------+------+------+--+---+--+------. .------+--+---+--+------+------+------+------+------| + * | RM_DN| RM_UP| GAMEM| GUI | | | LALT | | RALT | | | HOME | END |PageUp|PageDn| + * .---------------------------. .------| Space|------| |------| Enter|------. .---------------------------. + * | Lower| | LSFT | | RCTL | | Raise| + * .--------------------. .--------------------. + */ + [_QWERTY] = LAYOUT( + KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_MINS, KC_EQL, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, + KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_LBRC, KC_RBRC, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS, + KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_DEL , KC_INS, 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_LALT, KC_RALT, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, + RGB_VAD, RGB_VAI, GAMEM, KC_LGUI, LOWER, KC_SPC, KC_LSFT, KC_RCTL, KC_ENT, RAISE, KC_HOME, KC_END, KC_PGUP, KC_PGDN + ), + + /* Game Mode Toggle: sample toggle layer. turn off GUI key and add arrows + * ,------------------------------------------------. .------------------------------------------------. + * | | | | | | | | | | | | | | | | + * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------| + * | | | | | | | | | | | | | | | | + * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------| + * | | | | | | | | | | | | | | | | + * |------+------+------+------+------+------+------. .------+------+------+------+------+------+------| + * | | | | | | | | | | | | | | + * |------+------+------+------+------+--+---+--+------. .------+--+---+--+------+------+------+------+------| + * | | | | NOOP | | | | | | | | ← | ↓ | ↑ | → | + * .---------------------------. .------| |------| |------| |------. .---------------------------. + * | | | | | | | | + * .--------------------. .--------------------. + */ + [_GAMEMODE] = LAYOUT( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, KC_NO, _______, _______, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT + ), + + /* Lower: NUMPAD, App/Media keys and RGM Matrix + * ,------------------------------------------------. .------------------------------------------------. + * | ` | | | | | Mute | Vol- | | Vol+ | | NumL | / | * | - | | + * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------| + * | | | | |RGBTGL| | BrDn | | BrUp | | 7 | 8 | 9 | + | | + * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------| + * | CAPS | | |RM_HUD|RM_HUU| |RM_PRV| |RM_NXT| | 4 | 5 | 6 | , | | + * |------+------+------+------+------+------+------. .------+------+------+------+------+------+------| + * | | | |RM_SPD|RM_SPU| | | | 1 | 2 | 3 | = | | + * |------+------+------+------+------+--+---+--+------. .------+--+---+--+------+------+------+------+------| + * | | | | | | | | | | | | 0 | . | | | + * .---------------------------. .------| |------| |------| PENT |------. .---------------------------. + * | | | | | | | | + * .--------------------. .--------------------. + */ + [_LOWER] = LAYOUT( + KC_GRV, _______, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, _______, KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, _______, + _______, _______, _______, _______, RGB_TOG, _______, KC_BRID, KC_BRIU, _______, KC_P7, KC_P8, KC_P9, KC_PPLS, _______, + KC_CAPS, _______, _______, RGB_HUD, RGB_HUI, _______, RGB_RMOD, RGB_MOD, _______, KC_P4, KC_P5, KC_P6, KC_PCMM, _______, + _______, _______, _______, RGB_SPD, RGB_SPI, _______, _______, _______, _______, KC_P1, KC_P2, KC_P3, KC_PEQL, _______, + _______, _______, _______, _______, _______, _______, _______, _______, KC_PENT, _______, KC_P0, KC_PDOT, _______, _______ + ), + + /* Raise: Functions and Mouse + * ,------------------------------------------------. .------------------------------------------------. + * | ` | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | F11 | + * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------| + * | | | |WheelL|WheelR| | | | | | | Pause|ScrolL| PrnSc| F12 | + * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------| + * | CAPS | |Mouse3|Mouse2|Mouse1|WheelU| | | | ← | ↓ | ↑ | → | | | + * |------+------+------+------+------+------+------. .------+------+------+------+------+------+------| + * | |Accel0|Accel1|Accel2| |WheelD| |MouseL|MouseD|MouseU|MouseR| | | + * |------+------+------+------+------+--+---+--+------. .------+--+---+--+------+------+------+------+------| + * | | | | | | | | | | | | | | | | + * .---------------------------. .------| |------| |------| |------. .---------------------------. + * | | | | | | | | + * .--------------------. .--------------------. + */ + [_RAISE] = 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, + _______, _______, _______, MS_WHLL, MS_WHLR, _______, _______, _______, _______, _______, KC_PAUS, KC_SCRL, KC_PSCR, KC_F12, + KC_CAPS, _______, MS_BTN3, MS_BTN2, MS_BTN1, MS_WHLU, _______, _______, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, _______, _______, + _______, MS_ACL0, MS_ACL1, MS_ACL2, _______, MS_WHLD, _______, _______, MS_LEFT, MS_DOWN, MS_UP, MS_RGHT, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ) +}; + diff --git a/keyboards/mzmkb/slimdash/rev1/keymaps/vial/rules.mk b/keyboards/mzmkb/slimdash/rev1/keymaps/vial/rules.mk new file mode 100644 index 0000000000..e2e5ae028c --- /dev/null +++ b/keyboards/mzmkb/slimdash/rev1/keymaps/vial/rules.mk @@ -0,0 +1,7 @@ +VIA_ENABLE = yes +VIAL_ENABLE = yes + +OLED_ENABLE = no +ENCODER_ENABLE = no +ENCODER_MAP_ENABLE = no +VIALRGB_ENABLE = yes diff --git a/keyboards/mzmkb/slimdash/rev1/keymaps/vial/vial.json b/keyboards/mzmkb/slimdash/rev1/keymaps/vial/vial.json new file mode 100644 index 0000000000..aaa855da67 --- /dev/null +++ b/keyboards/mzmkb/slimdash/rev1/keymaps/vial/vial.json @@ -0,0 +1,41 @@ +{ + "lighting": "vialrgb", + "matrix": { + "rows": 10, + "cols": 7 + }, + "layouts": { + "keymap": [ + { + "name": "slimDash" + }, + [ { "x": 3 }, "0,3", { "x": 10.5 }, "5,3" ], + [ { "y": -0.875, "x": 2 }, "0,2", { "x": 1 }, "0,4", { "x": 8.5 }, "5,4", { "x": 1 }, "5,2" ], + [ { "y": -0.875, "x": 5 }, "0,5", { "x": 6.5 }, "5,5" ], + [ { "y": -0.875 }, "0,0", "0,1", { "x": 14.5 }, "5,1", "5,0" ], + [ { "y": -0.625, "x": 6 }, "0,6", { "x": 4.5 }, "5,6" ], + [ { "y": -0.75, "x": 3 }, "1,3", { "x": 10.5 }, "6,3" ], + [ { "y": -0.875, "x": 2 }, "1,2", { "x": 1 }, "1,4", { "x": 8.5 }, "6,4", { "x": 1 }, "6,2" ], + [ { "y": -0.875, "x": 5 }, "1,5", { "x": 6.5 }, "6,5" ], + [ { "y": -0.875 }, "1,0", "1,1", { "x": 14.5 }, "6,1", "6,0" ], + [ { "y": -0.625, "x": 6 }, "1,6", { "x": 4.5 }, "6,6" ], + [ { "y": -0.75, "x": 3 }, "2,3", { "x": 10.5 }, "7,3" ], + [ { "y": -0.875, "x": 2 }, "2,2", { "x": 1, "n": true }, "2,4", { "x": 8.5, "n": true }, "7,4", { "x": 1 }, "7,2" ], + [ { "y": -0.875, "x": 5 }, "2,5", { "x": 6.5 }, "7,5" ], + [ { "y": -0.875 }, "2,0", "2,1", { "x": 14.5 }, "7,1", "7,0" ], + [ { "y": -0.625, "x": 6 }, "2,6", { "x": 4.5 }, "7,6" ], + [ { "y": -0.75, "x": 3 }, "3,3", { "x": 10.5 }, "8,3" ], + [ { "y": -0.875, "x": 2 }, "3,2", { "x": 1 }, "3,4", { "x": 8.5 }, "8,4", { "x": 1 }, "8,2" ], + [ { "y": -0.875, "x": 5 }, "3,5", { "x": 6.5 }, "8,5" ], + [ { "y": -0.875 }, "3,0", "3,1", { "x": 14.5 }, "8,1", "8,0" ], + [ { "y": -0.375, "x": 3 }, "4,3", { "x": 10.5 }, "9,3" ], + [ { "y": -0.875, "x": 2 }, "4,2", { "x": 12.5 }, "9,2" ], + [ { "y": -0.75 }, "4,0", "4,1", { "x": 14.5 }, "9,1", "9,0" ], + [ { "ry": 4.25, "y": -0.25, "x": 11.25, "h": 2 }, "9,5" ], + [ { "rx": 6.5, "y": -0.25, "x": -0.25, "h": 2 }, "4,5", "3,6" ], + [ { "x": -1.25 }, "4,4", { "x": 1 }, "4,6" ], + [ { "rx": 13, "y": -0.25, "x": -2.75 }, "8,6" ], + [ { "x": -2.75 }, "9,6", { "x": 1 }, "9,4" ] + ] + } +}