From 382c3bd0bd49fc0d53358f45477c48f5ae47f2ff Mon Sep 17 00:00:00 2001 From: adophoxia <100170946+adophoxia@users.noreply.github.com> Date: Wed, 31 Jan 2024 23:46:08 -0800 Subject: Add Doio KB04 (#22754) Co-authored-by: Joel Challis --- keyboards/doio/kb04/keymaps/default/keymap.c | 48 ++++++++++++++++++++++++++++ keyboards/doio/kb04/keymaps/default/rules.mk | 1 + keyboards/doio/kb04/keymaps/via/keymap.c | 48 ++++++++++++++++++++++++++++ keyboards/doio/kb04/keymaps/via/rules.mk | 2 ++ 4 files changed, 99 insertions(+) create mode 100644 keyboards/doio/kb04/keymaps/default/keymap.c create mode 100644 keyboards/doio/kb04/keymaps/default/rules.mk create mode 100644 keyboards/doio/kb04/keymaps/via/keymap.c create mode 100644 keyboards/doio/kb04/keymaps/via/rules.mk (limited to 'keyboards/doio/kb04/keymaps') diff --git a/keyboards/doio/kb04/keymaps/default/keymap.c b/keyboards/doio/kb04/keymaps/default/keymap.c new file mode 100644 index 0000000000..7df80397fd --- /dev/null +++ b/keyboards/doio/kb04/keymaps/default/keymap.c @@ -0,0 +1,48 @@ +/* Copyright 2022 filmstarr + * + * 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 { + _LAY0, + _LAY1 +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +/* + L0: + ┌───┬───┬───┬───┐ ┌───┐ + │MO1│Prv│Ply│Nxt│ │Mut│ + └───┴───┴───┴───┘ └───┘ + L1: + ┌───┬───┬───┬───┐ ┌───┐ + │ │Hud│Tog│Mod│ │ │ + └───┴───┴───┴───┘ └───┘ +*/ + [_LAY0] = LAYOUT( + MO(_LAY1), KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE + ), + [_LAY1] = LAYOUT( + KC_TRNS, RGB_HUD, RGB_TOG, RGB_MOD, KC_TRNS + ) +}; + +#ifdef ENCODER_MAP_ENABLE +const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = { + [_LAY0] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU) }, + [_LAY1] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS) } +}; +#endif diff --git a/keyboards/doio/kb04/keymaps/default/rules.mk b/keyboards/doio/kb04/keymaps/default/rules.mk new file mode 100644 index 0000000000..a40474b4d5 --- /dev/null +++ b/keyboards/doio/kb04/keymaps/default/rules.mk @@ -0,0 +1 @@ +ENCODER_MAP_ENABLE = yes \ No newline at end of file diff --git a/keyboards/doio/kb04/keymaps/via/keymap.c b/keyboards/doio/kb04/keymaps/via/keymap.c new file mode 100644 index 0000000000..7df80397fd --- /dev/null +++ b/keyboards/doio/kb04/keymaps/via/keymap.c @@ -0,0 +1,48 @@ +/* Copyright 2022 filmstarr + * + * 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 { + _LAY0, + _LAY1 +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +/* + L0: + ┌───┬───┬───┬───┐ ┌───┐ + │MO1│Prv│Ply│Nxt│ │Mut│ + └───┴───┴───┴───┘ └───┘ + L1: + ┌───┬───┬───┬───┐ ┌───┐ + │ │Hud│Tog│Mod│ │ │ + └───┴───┴───┴───┘ └───┘ +*/ + [_LAY0] = LAYOUT( + MO(_LAY1), KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE + ), + [_LAY1] = LAYOUT( + KC_TRNS, RGB_HUD, RGB_TOG, RGB_MOD, KC_TRNS + ) +}; + +#ifdef ENCODER_MAP_ENABLE +const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = { + [_LAY0] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU) }, + [_LAY1] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS) } +}; +#endif diff --git a/keyboards/doio/kb04/keymaps/via/rules.mk b/keyboards/doio/kb04/keymaps/via/rules.mk new file mode 100644 index 0000000000..4253f570f0 --- /dev/null +++ b/keyboards/doio/kb04/keymaps/via/rules.mk @@ -0,0 +1,2 @@ +VIA_ENABLE = yes +ENCODER_MAP_ENABLE = yes \ No newline at end of file -- cgit v1.2.3