summaryrefslogtreecommitdiff
path: root/keyboards/splitkb/kyria
diff options
context:
space:
mode:
authorJoel Challis <git@zvecr.com>2023-12-18 21:55:36 +0000
committerGitHub <noreply@github.com>2023-12-19 08:55:36 +1100
commitfc4e6c61a44756a1dc2ac6ef8f98a5159f903635 (patch)
tree3a8a2fc96abe60b4c3d476fe7647a1913404f371 /keyboards/splitkb/kyria
parenta1c8b1ebf724f79dd9bad12976e3b1bd0c9c196f (diff)
[Keymap Removal] Restore splitkb 'debug' keymaps (#22700)
Diffstat (limited to 'keyboards/splitkb/kyria')
-rw-r--r--keyboards/splitkb/kyria/keymaps/debug/config.h21
-rw-r--r--keyboards/splitkb/kyria/keymaps/debug/keymap.c73
-rw-r--r--keyboards/splitkb/kyria/keymaps/debug/readme.md24
-rw-r--r--keyboards/splitkb/kyria/keymaps/debug/rules.mk8
4 files changed, 126 insertions, 0 deletions
diff --git a/keyboards/splitkb/kyria/keymaps/debug/config.h b/keyboards/splitkb/kyria/keymaps/debug/config.h
new file mode 100644
index 0000000000..9e639dbc35
--- /dev/null
+++ b/keyboards/splitkb/kyria/keymaps/debug/config.h
@@ -0,0 +1,21 @@
+/* Copyright 2022 splitkb.com <support@splitkb.com>
+ *
+ * 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 <http://www.gnu.org/licenses/>.
+ */
+
+#pragma once
+
+#ifdef RGBLIGHT_ENABLE
+# define RGBLIGHT_EFFECT_BREATHING
+#endif
diff --git a/keyboards/splitkb/kyria/keymaps/debug/keymap.c b/keyboards/splitkb/kyria/keymaps/debug/keymap.c
new file mode 100644
index 0000000000..9ca059e3ee
--- /dev/null
+++ b/keyboards/splitkb/kyria/keymaps/debug/keymap.c
@@ -0,0 +1,73 @@
+/* Copyright 2022 splitkb.com <support@splitkb.com>
+ *
+ * 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 <http://www.gnu.org/licenses/>.
+ */
+
+#include QMK_KEYBOARD_H
+
+enum layers {
+ _DEFAULT = 0,
+};
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+ [_DEFAULT] = LAYOUT(
+ KC_A, KC_B, KC_C, KC_D, KC_E, KC_F, S(KC_F), S(KC_E), S(KC_D), S(KC_C), S(KC_B), S(KC_A),
+ KC_G, KC_H, KC_I, KC_J, KC_K, KC_L, S(KC_L), S(KC_K), S(KC_J), S(KC_I), S(KC_H), S(KC_G),
+ KC_M, KC_N, KC_O, KC_P, KC_Q, KC_R, KC_S, KC_T, S(KC_T), S(KC_S), S(KC_R), S(KC_Q), S(KC_P), S(KC_O), S(KC_N), S(KC_M),
+ KC_U, KC_V, KC_W, KC_X, KC_Y, S(KC_Y), S(KC_X), S(KC_W), S(KC_V), S(KC_U)
+ )
+};
+
+#ifdef RGBLIGHT_ENABLE
+void keyboard_post_init_user(void) {
+ rgblight_enable_noeeprom(); // enables RGB, without saving settings
+ rgblight_sethsv_noeeprom(HSV_RED); // sets the color to red without saving
+ rgblight_mode_noeeprom(RGBLIGHT_MODE_BREATHING + 3); // sets mode to Fast breathing without saving
+}
+#endif
+
+#ifdef ENCODER_ENABLE
+bool encoder_update_user(uint8_t index, bool clockwise) {
+ // 0 is left-half encoder,
+ // 1 is right-half encoder
+ if (index == 0) {
+ tap_code(KC_0);
+ } else if (index == 1) {
+ tap_code(KC_1);
+ }
+
+ if (clockwise) {
+ tap_code16(KC_PLUS);
+ } else {
+ tap_code(KC_MINUS);
+ }
+
+ return false;
+}
+#endif
+
+#ifdef OLED_ENABLE
+bool oled_task_user(void) {
+ // A 128x64 OLED rotated 180 degrees is 21 characters wide and 8 characters tall
+ // This example string should fill that neatly
+ const char *text = PSTR("abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ123456789!@#$%^&*()[]{}-=_+?/,.|abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ123456789!@#$%^&*()[]{}-=_+?/,.|");
+
+ if (is_keyboard_master()) {
+ oled_write_P(text, false);
+ } else {
+ oled_write_P(text, false);
+ }
+ return false;
+}
+#endif
diff --git a/keyboards/splitkb/kyria/keymaps/debug/readme.md b/keyboards/splitkb/kyria/keymaps/debug/readme.md
new file mode 100644
index 0000000000..1373ad02d9
--- /dev/null
+++ b/keyboards/splitkb/kyria/keymaps/debug/readme.md
@@ -0,0 +1,24 @@
+# Kyria's Debug Keymap
+
+To make debugging your build as easy as possible, we have provided a special debugging keymap. It is not intended to actually type on, it is just here to make sure that your hardware is working correctly.
+
+## Keys
+
+![Keys](https://i.imgur.com/pmPBYlkh.png)
+
+The left side uses lowercase letters, the right side uses uppercase ones.
+
+## Encoders
+
+Encoders output a number of 0 or 1, depending on the installed position.
+These correspond to the index used for custom encoder code.
+
+The number is followed by either a `+` or a `-`, depending on the direction turned.
+
+## LEDs
+
+Both underglow and per-key RGB should be fading between red and off.
+
+## OLEDs
+
+Both the primary and secondary side should be filled with characters.
diff --git a/keyboards/splitkb/kyria/keymaps/debug/rules.mk b/keyboards/splitkb/kyria/keymaps/debug/rules.mk
new file mode 100644
index 0000000000..e1b414f5c1
--- /dev/null
+++ b/keyboards/splitkb/kyria/keymaps/debug/rules.mk
@@ -0,0 +1,8 @@
+# NOTE: These are already enabled by default at the revision level
+#ENCODER_ENABLE = yes
+#OLED_ENABLE = yes
+
+# RGB Matrix is enabled at the revision level,
+# while we use the regular RGB underglow for testing
+RGB_MATRIX_ENABLE = no
+RGBLIGHT_ENABLE = yes