diff --git a/keyboards/mechwild/waka60/keymaps/vial/config.h b/keyboards/mechwild/waka60/keymaps/vial/config.h new file mode 100644 index 0000000000..26eede342f --- /dev/null +++ b/keyboards/mechwild/waka60/keymaps/vial/config.h @@ -0,0 +1,30 @@ +/* +Copyright 2022 Kyle McCreery + +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 AUDIO_PIN B5 +#define AUDIO_PWM_DRIVER PWMD1 +#define AUDIO_PWM_CHANNEL 1 +#define AUDIO_STATE_TIMER GPTD4 + +#define VIAL_KEYBOARD_UID {0x98, 0xFE, 0x0B, 0x88, 0x0A, 0x16, 0x95, 0xD0} + +#define VIAL_UNLOCK_COMBO_ROWS { 0, 5 } +#define VIAL_UNLOCK_COMBO_COLS { 0, 5 } + +#define VIAL_ENCODER_DEFAULT { KC_VOLD, KC_VOLU, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS } diff --git a/keyboards/mechwild/waka60/keymaps/vial/keymap.c b/keyboards/mechwild/waka60/keymaps/vial/keymap.c new file mode 100644 index 0000000000..fc1d16f2fc --- /dev/null +++ b/keyboards/mechwild/waka60/keymaps/vial/keymap.c @@ -0,0 +1,57 @@ +/* Copyright 2022 Kyle McCreery + * + * 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 + +// Defines names for use in layer keycodes and the keymap +enum layer_names { + _BASE, + _FN1, + _FN2, + _FN3 +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + /* Base */ + [_BASE] = LAYOUT( + KC_GESC, KC_1, KC_2, KC_3, KC_4, KC_5, 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_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS, + MO(1), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_QUOT, KC_ENT, + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_MUTE, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, + KC_LCTL, KC_LGUI, KC_LALT, MO(1), KC_SPC, KC_SPC, KC_SPC, KC_SPC, KC_SPC, MO(1), KC_RALT, KC_RGUI, KC_RCTL + ), + [_FN1] = LAYOUT( + KC_TRNS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_DEL, + KC_TRNS, AU_TOG, RGB_TOG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, MU_TOG, RGB_MOD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, MU_MOD, RGB_RMOD, 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 + ), + [_FN2] = 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, 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 + ), + [_FN3] = 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, 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 + ) +}; diff --git a/keyboards/mechwild/waka60/keymaps/vial/rules.mk b/keyboards/mechwild/waka60/keymaps/vial/rules.mk new file mode 100644 index 0000000000..6f1cc7ed94 --- /dev/null +++ b/keyboards/mechwild/waka60/keymaps/vial/rules.mk @@ -0,0 +1,5 @@ +VIA_ENABLE = yes +VIAL_ENABLE = yes +AUDIO_ENABLE = yes +AUDIO_DRIVER = pwm_software +VIAL_ENCODERS_ENABLE = yes diff --git a/keyboards/mechwild/waka60/keymaps/vial/vial.json b/keyboards/mechwild/waka60/keymaps/vial/vial.json new file mode 100644 index 0000000000..e9dca6530c --- /dev/null +++ b/keyboards/mechwild/waka60/keymaps/vial/vial.json @@ -0,0 +1,27 @@ +{ + "name": "MechWild Waka60", + "vendorId": "0x6D77", + "productId": "0x1709", + "lighting": "qmk_rgblight", + "matrix": { "rows": 10, "cols": 7 }, + "layouts": { + "labels": [ + ["Bottom Row", "7U", "2U 1U 1U 1U 2U", "2U 3U 2U", "1U 1U 3U 1U 1U", "1U 1U 1U 1U 1U 1U 1U", "1U 2U 1U 2U 1U"] + ], + "keymap": [ + [{"y":0.25,"c":"#777777"},"0,0",{"c":"#cccccc"},"0,1","0,2","0,3","0,4","0,5",{"x":1.5},"5,0","5,1","5,2","5,3","5,4",{"c":"#aaaaaa"},"5,5"], + [{"y":-0.75,"x":6.25,"c":"#cccccc"},"0,1\n\n\n\n\n\n\n\n\ne"], + [{"y":-0.25,"c":"#aaaaaa"},"1,0",{"c":"#cccccc"},"1,1","1,2","1,3","1,4","1,5",{"x":1.5},"6,0","6,1","6,2","6,3","6,4","6,5"], + [{"y":-0.75,"x":6.25},"0,0\n\n\n\n\n\n\n\n\ne"], + [{"y":-0.25,"c":"#aaaaaa"},"2,0",{"c":"#cccccc"},"2,1","2,2","2,3","2,4","2,5",{"x":1.5},"7,0","7,1","7,2","7,3","7,4",{"c":"#777777"},"7,5"], + [{"y":-0.205,"x":6.25},"3,6"], + [{"y":-0.795,"c":"#aaaaaa"},"3,0",{"c":"#cccccc"},"3,1","3,2","3,3","3,4","3,5",{"x":1.5},"8,0","8,1","8,2","8,3","8,4",{"c":"#aaaaaa"},"8,5"], + [{"x":0.25},"4,0","4,1","4,2",{"c":"#cccccc","w":7},"4,6\n\n\n0,0",{"c":"#aaaaaa"},"9,3","9,4","9,5"], + [{"y":0.25,"x":3.25,"w":2},"4,3\n\n\n0,1","4,5\n\n\n0,1","4,6\n\n\n0,1","9,0\n\n\n0,1",{"w":2},"9,2\n\n\n0,1"], + [{"x":3.25,"w":2},"4,3\n\n\n0,2",{"w":3},"4,6\n\n\n0,2",{"w":2},"9,2\n\n\n0,2"], + [{"x":3.25},"4,3\n\n\n0,3","4,4\n\n\n0,3",{"w":3},"4,6\n\n\n0,3","9,1\n\n\n0,3","9,2\n\n\n0,3"], + [{"x":3.25},"4,3\n\n\n0,4","4,4\n\n\n0,4","4,5\n\n\n0,4","4,6\n\n\n0,4","9,0\n\n\n0,4","9,1\n\n\n0,4","9,2\n\n\n0,4"], + [{"x":3.25},"4,3\n\n\n0,5",{"w":2},"4,4\n\n\n0,5","4,6\n\n\n0,5",{"w":2},"9,1\n\n\n0,5","9,2\n\n\n0,5"] + ] + } +}