aboutsummaryrefslogtreecommitdiff
path: root/keyboards/splitkb/kyria/rev1
diff options
context:
space:
mode:
Diffstat (limited to 'keyboards/splitkb/kyria/rev1')
-rw-r--r--keyboards/splitkb/kyria/rev1/config.h6
-rw-r--r--keyboards/splitkb/kyria/rev1/rev1.c108
2 files changed, 11 insertions, 103 deletions
diff --git a/keyboards/splitkb/kyria/rev1/config.h b/keyboards/splitkb/kyria/rev1/config.h
index e19e8dfa9..2fc34070f 100644
--- a/keyboards/splitkb/kyria/rev1/config.h
+++ b/keyboards/splitkb/kyria/rev1/config.h
@@ -1,5 +1,5 @@
1/* 1/*
2Copyright 2019 Thomas Baart <thomas@splitkb.com> 2Copyright 2022 Thomas Baart <thomas@splitkb.com>
3 3
4This program is free software: you can redistribute it and/or modify 4This program is free software: you can redistribute it and/or modify
5it under the terms of the GNU General Public License as published by 5it under the terms of the GNU General Public License as published by
@@ -21,8 +21,8 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
21#define VENDOR_ID 0x8D1D 21#define VENDOR_ID 0x8D1D
22#define PRODUCT_ID 0x9D9D 22#define PRODUCT_ID 0x9D9D
23#define DEVICE_VER 0x0001 23#define DEVICE_VER 0x0001
24#define MANUFACTURER splitKB 24#define MANUFACTURER splitkb
25#define PRODUCT Kyria 25#define PRODUCT Kyria rev1
26 26
27/* key matrix size */ 27/* key matrix size */
28/* Rows are doubled up */ 28/* Rows are doubled up */
diff --git a/keyboards/splitkb/kyria/rev1/rev1.c b/keyboards/splitkb/kyria/rev1/rev1.c
index b2641fb40..8398366e7 100644
--- a/keyboards/splitkb/kyria/rev1/rev1.c
+++ b/keyboards/splitkb/kyria/rev1/rev1.c
@@ -1,4 +1,4 @@
1/* Copyright 2019 Thomas Baart <thomas@splitkb.com> 1/* Copyright 2022 Thomas Baart <thomas@splitkb.com>
2 * 2 *
3 * This program is free software: you can redistribute it and/or modify 3 * This program is free software: you can redistribute it and/or modify
4 * it under the terms of the GNU General Public License as published by 4 * it under the terms of the GNU General Public License as published by
@@ -31,7 +31,13 @@ __attribute__ ((weak)) const keypos_t PROGMEM hand_swap_config[MATRIX_ROWS][MATR
31#endif 31#endif
32 32
33#ifdef RGB_MATRIX_ENABLE 33#ifdef RGB_MATRIX_ENABLE
34/* Map physical under glow LEDs for RGB matrix support */ 34/* Map physical under glow LEDs for RGB matrix support
35 *
36 * 09, 05, xx, xx, 04, xx, xx, 14, xx, xx, 15, 19,
37 * xx, xx, xx, xx, xx, 03, 13, xx, xx, xx, xx, xx,
38 * 08, 06, 07, xx, xx, xx, 00, xx, xx, 10, xx, xx, xx, 17, 16, 18,
39 * xx, 02, 01, xx, xx, xx, xx, 11, 12, xx
40 */
35led_config_t g_led_config = { { 41led_config_t g_led_config = { {
36 // Key Matrix to LED Index 42 // Key Matrix to LED Index
37 { NO_LED, NO_LED, NO_LED, 4, NO_LED, NO_LED, 5, 9 }, 43 { NO_LED, NO_LED, NO_LED, 4, NO_LED, NO_LED, 5, 9 },
@@ -54,101 +60,3 @@ led_config_t g_led_config = { {
54 LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL 60 LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL, LED_FLAG_ALL
55} }; 61} };
56#endif 62#endif
57
58#ifdef OLED_ENABLE
59oled_rotation_t oled_init_kb(oled_rotation_t rotation) {
60 return OLED_ROTATION_180;
61}
62
63bool oled_task_kb(void) {
64 if (!oled_task_user()) {
65 return false;
66 }
67 if (is_keyboard_master()) {
68 // QMK Logo and version information
69 // clang-format off
70 static const char PROGMEM qmk_logo[] = {
71 0x80,0x81,0x82,0x83,0x84,0x85,0x86,0x87,0x88,0x89,0x8a,0x8b,0x8c,0x8d,0x8e,0x8f,0x90,0x91,0x92,0x93,0x94,
72 0xa0,0xa1,0xa2,0xa3,0xa4,0xa5,0xa6,0xa7,0xa8,0xa9,0xaa,0xab,0xac,0xad,0xae,0xaf,0xb0,0xb1,0xb2,0xb3,0xb4,
73 0xc0,0xc1,0xc2,0xc3,0xc4,0xc5,0xc6,0xc7,0xc8,0xc9,0xca,0xcb,0xcc,0xcd,0xce,0xcf,0xd0,0xd1,0xd2,0xd3,0xd4,0};
74 // clang-format on
75
76 oled_write_P(qmk_logo, false);
77 oled_write_P(PSTR("Kyria rev1.0\n\n"), false);
78
79 // Host Keyboard Layer Status
80 oled_write_P(PSTR("Layer: "), false);
81 switch (get_highest_layer(layer_state | default_layer_state)) {
82 case 0:
83 oled_write_P(PSTR("QWERTY\n"), false);
84 break;
85 case 1:
86 oled_write_P(PSTR("Dvorak\n"), false);
87 break;
88 case 2:
89 oled_write_P(PSTR("Colemak-DH\n"), false);
90 break;
91 case 3:
92 oled_write_P(PSTR("Nav\n"), false);
93 break;
94 case 4:
95 oled_write_P(PSTR("Sym\n"), false);
96 break;
97 case 5:
98 oled_write_P(PSTR("Function\n"), false);
99 break;
100 case 6:
101 oled_write_P(PSTR("Adjust\n"), false);
102 break;
103 default:
104 oled_write_P(PSTR("Undefined\n"), false);
105 }
106
107 // Host Keyboard LED Status
108 led_t led_usb_state = host_keyboard_led_state();
109 oled_write_P(led_usb_state.num_lock ? PSTR("NUMLCK ") : PSTR(" "), false);
110 oled_write_P(led_usb_state.caps_lock ? PSTR("CAPLCK ") : PSTR(" "), false);
111 oled_write_P(led_usb_state.scroll_lock ? PSTR("SCRLCK ") : PSTR(" "), false);
112 } else {
113 // clang-format off
114 static const char PROGMEM kyria_logo[] = {
115 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,128,128,192,224,240,112,120, 56, 60, 28, 30, 14, 14, 14, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 14, 14, 14, 30, 28, 60, 56,120,112,240,224,192,128,128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
116 0, 0, 0, 0, 0, 0, 0,192,224,240,124, 62, 31, 15, 7, 3, 1,128,192,224,240,120, 56, 60, 28, 30, 14, 14, 7, 7,135,231,127, 31,255,255, 31,127,231,135, 7, 7, 14, 14, 30, 28, 60, 56,120,240,224,192,128, 1, 3, 7, 15, 31, 62,124,240,224,192, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
117 0, 0, 0, 0,240,252,255, 31, 7, 1, 0, 0,192,240,252,254,255,247,243,177,176, 48, 48, 48, 48, 48, 48, 48,120,254,135, 1, 0, 0,255,255, 0, 0, 1,135,254,120, 48, 48, 48, 48, 48, 48, 48,176,177,243,247,255,254,252,240,192, 0, 0, 1, 7, 31,255,252,240, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
118 0, 0, 0,255,255,255, 0, 0, 0, 0, 0,254,255,255, 1, 1, 7, 30,120,225,129,131,131,134,134,140,140,152,152,177,183,254,248,224,255,255,224,248,254,183,177,152,152,140,140,134,134,131,131,129,225,120, 30, 7, 1, 1,255,255,254, 0, 0, 0, 0, 0,255,255,255, 0, 0, 0, 0,255,255, 0, 0,192,192, 48, 48, 0, 0,240,240, 0, 0, 0, 0, 0, 0,240,240, 0, 0,240,240,192,192, 48, 48, 48, 48,192,192, 0, 0, 48, 48,243,243, 0, 0, 0, 0, 0, 0, 48, 48, 48, 48, 48, 48,192,192, 0, 0, 0, 0, 0,
119 0, 0, 0,255,255,255, 0, 0, 0, 0, 0,127,255,255,128,128,224,120, 30,135,129,193,193, 97, 97, 49, 49, 25, 25,141,237,127, 31, 7,255,255, 7, 31,127,237,141, 25, 25, 49, 49, 97, 97,193,193,129,135, 30,120,224,128,128,255,255,127, 0, 0, 0, 0, 0,255,255,255, 0, 0, 0, 0, 63, 63, 3, 3, 12, 12, 48, 48, 0, 0, 0, 0, 51, 51, 51, 51, 51, 51, 15, 15, 0, 0, 63, 63, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 48, 48, 63, 63, 48, 48, 0, 0, 12, 12, 51, 51, 51, 51, 51, 51, 63, 63, 0, 0, 0, 0, 0,
120 0, 0, 0, 0, 15, 63,255,248,224,128, 0, 0, 3, 15, 63,127,255,239,207,141, 13, 12, 12, 12, 12, 12, 12, 12, 30,127,225,128, 0, 0,255,255, 0, 0,128,225,127, 30, 12, 12, 12, 12, 12, 12, 12, 13,141,207,239,255,127, 63, 15, 3, 0, 0,128,224,248,255, 63, 15, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
121 0, 0, 0, 0, 0, 0, 0, 3, 7, 15, 62,124,248,240,224,192,128, 1, 3, 7, 15, 30, 28, 60, 56,120,112,112,224,224,225,231,254,248,255,255,248,254,231,225,224,224,112,112,120, 56, 60, 28, 30, 15, 7, 3, 1,128,192,224,240,248,124, 62, 15, 7, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
122 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 3, 7, 15, 14, 30, 28, 60, 56,120,112,112,112,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,112,112,112,120, 56, 60, 28, 30, 14, 15, 7, 3, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
123 };
124 // clang-format on
125 oled_write_raw_P(kyria_logo, sizeof(kyria_logo));
126 }
127 return false;
128}
129#endif
130
131#ifdef ENCODER_ENABLE
132bool encoder_update_kb(uint8_t index, bool clockwise) {
133 if (!encoder_update_user(index, clockwise)) {
134 return false;
135 }
136
137 if (index == 0) {
138 // Volume control
139 if (clockwise) {
140 tap_code(KC_VOLU);
141 } else {
142 tap_code(KC_VOLD);
143 }
144 } else if (index == 1) {
145 // Page up/Page down
146 if (clockwise) {
147 tap_code(KC_PGDN);
148 } else {
149 tap_code(KC_PGUP);
150 }
151 }
152 return true;
153}
154#endif