summaryrefslogtreecommitdiff
path: root/keyboards/splitkb/kyria/keymaps
diff options
context:
space:
mode:
authorleah-splitkb <103112489+leah-splitkb@users.noreply.github.com>2023-01-20 12:22:53 +0100
committerGitHub <noreply@github.com>2023-01-20 11:22:53 +0000
commit64c399ba3832cb4240cd25e25d382856492346d0 (patch)
tree4cd186bfc99156a9ccd826faa8583c62499eb5eb /keyboards/splitkb/kyria/keymaps
parent53cc6170ae2687b0c894f05738181a2f16ad0d6c (diff)
[Keyboard] Add Kyria rev3 (#19423)
Diffstat (limited to 'keyboards/splitkb/kyria/keymaps')
-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
-rw-r--r--keyboards/splitkb/kyria/keymaps/default/config.h4
-rw-r--r--keyboards/splitkb/kyria/keymaps/default/rules.mk3
6 files changed, 131 insertions, 2 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
diff --git a/keyboards/splitkb/kyria/keymaps/default/config.h b/keyboards/splitkb/kyria/keymaps/default/config.h
index 11c2acc40d..00be07e2fa 100644
--- a/keyboards/splitkb/kyria/keymaps/default/config.h
+++ b/keyboards/splitkb/kyria/keymaps/default/config.h
@@ -30,7 +30,9 @@
# define RGBLIGHT_HUE_STEP 8
# define RGBLIGHT_SAT_STEP 8
# define RGBLIGHT_VAL_STEP 8
-# define RGBLIGHT_LIMIT_VAL 150
+# ifndef RGBLIGHT_LIMIT_VAL
+# define RGBLIGHT_LIMIT_VAL 150
+# endif
#endif
// Lets you roll mod-tap keys
diff --git a/keyboards/splitkb/kyria/keymaps/default/rules.mk b/keyboards/splitkb/kyria/keymaps/default/rules.mk
index 35f8ec90c6..8301073511 100644
--- a/keyboards/splitkb/kyria/keymaps/default/rules.mk
+++ b/keyboards/splitkb/kyria/keymaps/default/rules.mk
@@ -1,4 +1,5 @@
OLED_ENABLE = yes
-OLED_DRIVER = SSD1306 # Enables the use of OLED displays
+OLED_DRIVER = SSD1306 # Enables the use of OLED displays
ENCODER_ENABLE = yes # Enables the use of one or more encoders
+RGB_MATRIX_ENABLE = no # Disable keyboard RGB matrix, as it is enabled by default on rev3
RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow