aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMakotoKurauchi <pluis@me.com>2018-06-05 00:14:35 +0900
committerDrashna Jaelre <drashna@live.com>2018-06-04 08:14:35 -0700
commit7498b184b74c90f94b79f7835852aa54b0134f5c (patch)
treec6b79cde30c7fa5db792746180f9eb100714930f
parente354e36ece9bb96a453ca92db74290a410fa8b60 (diff)
downloadqmk_firmware-7498b184b74c90f94b79f7835852aa54b0134f5c.tar.gz
qmk_firmware-7498b184b74c90f94b79f7835852aa54b0134f5c.zip
Support ios to default keymap (#3118)
* add some comment about Helix customize and auto-setup RGBLIGHT_LIMIT_VAL * add define USB_MAX_POWER_CONSUMPTION * Helix keyboard OLED, RGBLIGHT enable/disable control integrate into rules.mk rules.mk: add 4 Variables for compile control. # Helix keyboard customize # you can edit follows 4 Variables # jp: 以下の4つの変数を必要に応じて編集します。 OLED_ENABLE = no # OLED_ENABLE LED_BACK_ENABLE = no # LED backlight (Enable WS2812 RGB underlight.) LED_UNDERGLOW_ENABLE = no # LED underglow (Enable WS2812 RGB underlight.) LED_ANIMATIONS = yes # LED animations config.h: auto set RGBLED_NUM by HELIX_ROWS and rules.mk's define * HELIX_ROWS define move from config.h to rules.mk * add readme.md * rename readme.md to readme_jp.md * add readme.md and modify readme_jp.md * change helix/ssd1306.c for select glcdfont.c position * add variable LOCAL_GLCDFONT into each keymaps rules.mk * Add iPhone/iPad LED support to Helix default keymap * add Freggy keymap * adjust the delay of serial.c * change readme * renumber _ADJUST for shrink program size
-rw-r--r--keyboards/helix/rev2/keymaps/default/config.h32
-rw-r--r--keyboards/helix/rev2/keymaps/default/keymap.c27
-rw-r--r--keyboards/helix/rev2/keymaps/default/readme.md6
-rw-r--r--keyboards/helix/rev2/keymaps/default/readme_jp.md15
-rw-r--r--keyboards/helix/rev2/keymaps/default/rules.mk39
-rw-r--r--keyboards/helix/rev2/keymaps/froggy/config.h123
-rw-r--r--keyboards/helix/rev2/keymaps/froggy/helixfont.h244
-rw-r--r--keyboards/helix/rev2/keymaps/froggy/keymap.c650
-rw-r--r--keyboards/helix/rev2/keymaps/froggy/readme.md83
-rw-r--r--keyboards/helix/rev2/keymaps/froggy/rules.mk123
-rw-r--r--keyboards/helix/serial.c2
11 files changed, 1313 insertions, 31 deletions
diff --git a/keyboards/helix/rev2/keymaps/default/config.h b/keyboards/helix/rev2/keymaps/default/config.h
index 66c9b9e8b..17c4a30b3 100644
--- a/keyboards/helix/rev2/keymaps/default/config.h
+++ b/keyboards/helix/rev2/keymaps/default/config.h
@@ -78,30 +78,44 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
78 #define RGBLED_NUM 6 78 #define RGBLED_NUM 6
79#endif 79#endif
80 80
81#if RGBLED_NUM <= 6 81#ifndef IOS_DEVICE_ENABLE
82 #define RGBLIGHT_LIMIT_VAL 255 82 #if RGBLED_NUM <= 6
83 #define RGBLIGHT_LIMIT_VAL 255
84 #else
85 #if HELIX_ROWS == 5
86 #define RGBLIGHT_LIMIT_VAL 120
87 #else
88 #define RGBLIGHT_LIMIT_VAL 130
89 #endif
90 #endif
91 #define RGBLIGHT_VAL_STEP 17
83#else 92#else
84 #if HELIX_ROWS == 5 93 #if RGBLED_NUM <= 6
85 #define RGBLIGHT_LIMIT_VAL 120 94 #define RGBLIGHT_LIMIT_VAL 90
86 #else 95 #else
87 #define RGBLIGHT_LIMIT_VAL 130 96 #if HELIX_ROWS == 5
97 #define RGBLIGHT_LIMIT_VAL 35
98 #else
99 #define RGBLIGHT_LIMIT_VAL 45
100 #endif
88 #endif 101 #endif
102 #define RGBLIGHT_VAL_STEP 4
89#endif 103#endif
90#define RGBLIGHT_HUE_STEP 10 104#define RGBLIGHT_HUE_STEP 10
91#define RGBLIGHT_SAT_STEP 17 105#define RGBLIGHT_SAT_STEP 17
92#define RGBLIGHT_VAL_STEP 17
93#endif
94 106
95#ifdef RGBLIGHT_ENABLE 107#if defined(RGBLIGHT_ENABLE) && !defined(IOS_DEVICE_ENABLE)
96// USB_MAX_POWER_CONSUMPTION value for Helix keyboard 108// USB_MAX_POWER_CONSUMPTION value for Helix keyboard
97// 120 RGBoff, OLEDoff 109// 120 RGBoff, OLEDoff
98// 120 OLED 110// 120 OLED
99// 330 RGB 6 111// 330 RGB 6
100// 300 RGB 32 112// 300 RGB 32
101// 310 OLED & RGB 32 113// 310 OLED & RGB 32
102 #define USB_MAX_POWER_CONSUMPTION 330 114 #define USB_MAX_POWER_CONSUMPTION 400
103#else 115#else
104 // fix iPhone and iPad power adapter issue 116 // fix iPhone and iPad power adapter issue
105 // iOS device need lessthan 100 117 // iOS device need lessthan 100
106 #define USB_MAX_POWER_CONSUMPTION 100 118 #define USB_MAX_POWER_CONSUMPTION 100
107#endif 119#endif
120
121#endif /* CONFIG_USER_H */
diff --git a/keyboards/helix/rev2/keymaps/default/keymap.c b/keyboards/helix/rev2/keymaps/default/keymap.c
index b8a9baee3..1a268b32d 100644
--- a/keyboards/helix/rev2/keymaps/default/keymap.c
+++ b/keyboards/helix/rev2/keymaps/default/keymap.c
@@ -27,12 +27,14 @@ extern uint8_t is_master;
27// The underscores don't mean anything - you can have a layer called STUFF or any other name. 27// The underscores don't mean anything - you can have a layer called STUFF or any other name.
28// Layer names don't all need to be of the same length, obviously, and you can also skip them 28// Layer names don't all need to be of the same length, obviously, and you can also skip them
29// entirely and just use numbers. 29// entirely and just use numbers.
30#define _QWERTY 0 30enum layer_number {
31#define _COLEMAK 1 31 _QWERTY = 0,
32#define _DVORAK 2 32 _COLEMAK,
33#define _LOWER 3 33 _DVORAK,
34#define _RAISE 4 34 _LOWER,
35#define _ADJUST 16 35 _RAISE,
36 _ADJUST
37};
36 38
37enum custom_keycodes { 39enum custom_keycodes {
38 QWERTY = SAFE_RANGE, 40 QWERTY = SAFE_RANGE,
@@ -526,15 +528,10 @@ void matrix_update(struct CharacterMatrix *dest,
526 528
527//assign the right code to your layers for OLED display 529//assign the right code to your layers for OLED display
528#define L_BASE 0 530#define L_BASE 0
529#define L_LOWER 8 531#define L_LOWER (1<<_LOWER)
530#define L_RAISE 16 532#define L_RAISE (1<<_RAISE)
531#define L_FNLAYER 64 533#define L_ADJUST (1<<_ADJUST)
532#define L_NUMLAY 128 534#define L_ADJUST_TRI (L_ADJUST|L_RAISE|L_LOWER)
533#define L_NLOWER 136
534#define L_NFNLAYER 192
535#define L_MOUSECURSOR 256
536#define L_ADJUST 65536
537#define L_ADJUST_TRI 65560
538 535
539static void render_logo(struct CharacterMatrix *matrix) { 536static void render_logo(struct CharacterMatrix *matrix) {
540 537
diff --git a/keyboards/helix/rev2/keymaps/default/readme.md b/keyboards/helix/rev2/keymaps/default/readme.md
index 307e5c30b..2cdc5506c 100644
--- a/keyboards/helix/rev2/keymaps/default/readme.md
+++ b/keyboards/helix/rev2/keymaps/default/readme.md
@@ -109,13 +109,15 @@ see `qmk_firmware/keyboards/helix/rev2/keymaps/default/rules.mk`
109 109
110``` 110```
111# Helix keyboard customize 111# Helix keyboard customize
112# you can edit follows 5 Variables 112# you can edit follows 7 Variables
113# jp: 以下の5つの変数を必要に応じて編集します。 113# jp: 以下の7つの変数を必要に応じて編集します。
114HELIX_ROWS = 5 # Helix Rows is 4 or 5 114HELIX_ROWS = 5 # Helix Rows is 4 or 5
115OLED_ENABLE = no # OLED_ENABLE 115OLED_ENABLE = no # OLED_ENABLE
116LOCAL_GLCDFONT = no # use each keymaps "helixfont.h" insted of "common/glcdfont.c"
116LED_BACK_ENABLE = no # LED backlight (Enable WS2812 RGB underlight.) 117LED_BACK_ENABLE = no # LED backlight (Enable WS2812 RGB underlight.)
117LED_UNDERGLOW_ENABLE = no # LED underglow (Enable WS2812 RGB underlight.) 118LED_UNDERGLOW_ENABLE = no # LED underglow (Enable WS2812 RGB underlight.)
118LED_ANIMATIONS = yes # LED animations 119LED_ANIMATIONS = yes # LED animations
120IOS_DEVICE_ENABLE = no # connect to IOS device (iPad,iPhone)
119 121
120``` 122```
121## Compile 123## Compile
diff --git a/keyboards/helix/rev2/keymaps/default/readme_jp.md b/keyboards/helix/rev2/keymaps/default/readme_jp.md
index 88ffc02ff..3eaeab48e 100644
--- a/keyboards/helix/rev2/keymaps/default/readme_jp.md
+++ b/keyboards/helix/rev2/keymaps/default/readme_jp.md
@@ -52,13 +52,15 @@ RGB バックライトまたは、RGB Underglow をつけた場合は、
52 52
53``` 53```
54# Helix keyboard customize 54# Helix keyboard customize
55# you can edit follows 5 Variables 55# you can edit follows 7 Variables
56# jp: 以下の5つの変数を必要に応じて編集します。 56# jp: 以下の7つの変数を必要に応じて編集します。
57HELIX_ROWS = 5 # Helix Rows is 4 or 5 57HELIX_ROWS = 5 # Helix Rows is 4 or 5
58OLED_ENABLE = no # OLED_ENABLE 58OLED_ENABLE = no # OLED_ENABLE
59LOCAL_GLCDFONT = no # use each keymaps "helixfont.h" insted of "common/glcdfont.c"
59LED_BACK_ENABLE = no # LED backlight (Enable WS2812 RGB underlight.) 60LED_BACK_ENABLE = no # LED backlight (Enable WS2812 RGB underlight.)
60LED_UNDERGLOW_ENABLE = no # LED underglow (Enable WS2812 RGB underlight.) 61LED_UNDERGLOW_ENABLE = no # LED underglow (Enable WS2812 RGB underlight.)
61LED_ANIMATIONS = yes # LED animations 62LED_ANIMATIONS = yes # LED animations
63IOS_DEVICE_ENABLE = no # connect to IOS device (iPad,iPhone)
62 64
63``` 65```
64 66
@@ -92,6 +94,15 @@ rules.mk の下記の部分を編集して no を yes に変更してくださ
92OLED_ENABLE = yes # OLED_ENABLE 94OLED_ENABLE = yes # OLED_ENABLE
93``` 95```
94 96
97## iPad/iPhoneサポートを有効にする。
98
99rules.mk の下記の部分を編集して no を yes に変更してください。
100RBG Underglow や RGBバックライトの輝度を抑えて、iPad, iPhone にも接続できるようになります。
101
102```
103IOS_DEVICE_ENABLE = no # connect to IOS device (iPad,iPhone)
104```
105
95## リンク 106## リンク
96 107
97* さらに詳細は、[こちら helix/Doc/firmware_jp.md](https://github.com/MakotoKurauchi/helix/blob/master/Doc/firmware_jp.md)をご覧ください。 108* さらに詳細は、[こちら helix/Doc/firmware_jp.md](https://github.com/MakotoKurauchi/helix/blob/master/Doc/firmware_jp.md)をご覧ください。
diff --git a/keyboards/helix/rev2/keymaps/default/rules.mk b/keyboards/helix/rev2/keymaps/default/rules.mk
index d407dfb5e..4174a3045 100644
--- a/keyboards/helix/rev2/keymaps/default/rules.mk
+++ b/keyboards/helix/rev2/keymaps/default/rules.mk
@@ -23,21 +23,52 @@ define HELIX_CUSTOMISE_MSG
23 $(info - LED_BACK_ENABLE=$(LED_BACK_ENABLE)) 23 $(info - LED_BACK_ENABLE=$(LED_BACK_ENABLE))
24 $(info - LED_UNDERGLOW_ENABLE=$(LED_UNDERGLOW_ENABLE)) 24 $(info - LED_UNDERGLOW_ENABLE=$(LED_UNDERGLOW_ENABLE))
25 $(info - LED_ANIMATION=$(LED_ANIMATIONS)) 25 $(info - LED_ANIMATION=$(LED_ANIMATIONS))
26 $(info - IOS_DEVICE_ENABLE=$(IOS_DEVICE_ENABLE))
26endef 27endef
27 28
28# Helix keyboard customize 29# Helix keyboard customize
29# you can edit follows 6 Variables 30# you can edit follows 7 Variables
30# jp: 以下の6つの変数を必要に応じて編集します。 31# jp: 以下の7つの変数を必要に応じて編集します。
31HELIX_ROWS = 5 # Helix Rows is 4 or 5 32HELIX_ROWS = 5 # Helix Rows is 4 or 5
32OLED_ENABLE = no # OLED_ENABLE 33OLED_ENABLE = no # OLED_ENABLE
33LOCAL_GLCDFONT = no # use each keymaps "helixfont.h" insted of "common/glcdfont.c" 34LOCAL_GLCDFONT = no # use each keymaps "helixfont.h" insted of "common/glcdfont.c"
34LED_BACK_ENABLE = no # LED backlight (Enable WS2812 RGB underlight.) 35LED_BACK_ENABLE = no # LED backlight (Enable WS2812 RGB underlight.)
35LED_UNDERGLOW_ENABLE = no # LED underglow (Enable WS2812 RGB underlight.) 36LED_UNDERGLOW_ENABLE = no # LED underglow (Enable WS2812 RGB underlight.)
36LED_ANIMATIONS = yes # LED animations 37LED_ANIMATIONS = yes # LED animations
38IOS_DEVICE_ENABLE = no # connect to IOS device (iPad,iPhone)
37 39
38#### LED_BACK_ENABLE and LED_UNDERGLOW_ENABLE. 40#### LED_BACK_ENABLE and LED_UNDERGLOW_ENABLE.
39#### Do not enable these with audio at the same time. 41#### Do not enable these with audio at the same time.
40 42
43### Helix keyboard 'default' keymap: convenient command line option
44## make HELIX=<options> helix:defualt
45## option= oled | back | under | na | ios
46## ex.
47## make HELIX=oled helix:defualt
48## make HELIX=oled,back helix:defualt
49## make HELIX=oled,under helix:defualt
50## make HELIX=oled,back,na helix:defualt
51## make HELIX=oled,back,ios helix:defualt
52##
53ifneq ($(strip $(HELIX)),)
54 ifeq ($(findstring oled,$(HELIX)), oled)
55 OLED_ENABLE = yes
56 endif
57 ifeq ($(findstring back,$(HELIX)), back)
58 LED_BACK_ENABLE = yes
59 else ifeq ($(findstring under,$(HELIX)), under)
60 LED_UNDERGLOW_ENABLE = yes
61 endif
62 ifeq ($(findstring na,$(HELIX)), na)
63 LED_ANIMATIONS = no
64 endif
65 ifeq ($(findstring ios,$(HELIX)), ios)
66 IOS_DEVICE_ENABLE = yes
67 endif
68 $(eval $(call HELIX_CUSTOMISE_MSG))
69 $(info )
70endif
71
41# Uncomment these for checking 72# Uncomment these for checking
42# jp: コンパイル時にカスタマイズの状態を表示したい時はコメントをはずします。 73# jp: コンパイル時にカスタマイズの状態を表示したい時はコメントをはずします。
43# $(eval $(call HELIX_CUSTOMISE_MSG)) 74# $(eval $(call HELIX_CUSTOMISE_MSG))
@@ -63,6 +94,10 @@ else
63 RGBLIGHT_ENABLE = no 94 RGBLIGHT_ENABLE = no
64endif 95endif
65 96
97ifeq ($(strip $(IOS_DEVICE_ENABLE)), yes)
98 OPT_DEFS += -DIOS_DEVICE_ENABLE
99endif
100
66ifeq ($(strip $(LED_ANIMATIONS)), yes) 101ifeq ($(strip $(LED_ANIMATIONS)), yes)
67 OPT_DEFS += -DRGBLIGHT_ANIMATIONS 102 OPT_DEFS += -DRGBLIGHT_ANIMATIONS
68endif 103endif
diff --git a/keyboards/helix/rev2/keymaps/froggy/config.h b/keyboards/helix/rev2/keymaps/froggy/config.h
new file mode 100644
index 000000000..19718a458
--- /dev/null
+++ b/keyboards/helix/rev2/keymaps/froggy/config.h
@@ -0,0 +1,123 @@
1/*
2This is the c configuration file for the keymap
3
4Copyright 2012 Jun Wako <wakojun@gmail.com>
5Copyright 2015 Jack Humbert
6
7This program is free software: you can redistribute it and/or modify
8it under the terms of the GNU General Public License as published by
9the Free Software Foundation, either version 2 of the License, or
10(at your option) any later version.
11
12This program is distributed in the hope that it will be useful,
13but WITHOUT ANY WARRANTY; without even the implied warranty of
14MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15GNU General Public License for more details.
16
17You should have received a copy of the GNU General Public License
18along with this program. If not, see <http://www.gnu.org/licenses/>.
19*/
20
21#ifndef CONFIG_USER_H
22#define CONFIG_USER_H
23
24#include "../../config.h"
25
26/* Use I2C or Serial */
27
28#define USE_I2C
29#define USE_SERIAL
30//#define USE_MATRIX_I2C
31
32/* Select hand configuration */
33
34#define MASTER_LEFT
35// #define MASTER_RIGHT
36// #define EE_HANDS
37
38// Helix keyboard OLED support
39// see ./rules.mk: OLED_ENABLE=yes or no
40#ifdef OLED_ENABLE
41 #define SSD1306OLED
42#endif
43
44/* Select rows configuration */
45// Rows are 4 or 5
46// #define HELIX_ROWS 5 see ./rules.mk
47
48/* key matrix size */
49// Rows are doubled-up
50#if HELIX_ROWS == 4
51 #define MATRIX_ROWS 8
52 #define MATRIX_COLS 7
53 #define MATRIX_ROW_PINS { D4, C6, D7, E6 }
54#elif HELIX_ROWS == 5
55 #define MATRIX_ROWS 10
56 #define MATRIX_COLS 7
57 #define MATRIX_ROW_PINS { D4, C6, D7, E6, B4 }
58#else
59 #error "expected HELIX_ROWS 4 or 5"
60#endif
61
62#define USE_SERIAL_PD2
63
64#define PREVENT_STUCK_MODIFIERS
65#define TAPPING_FORCE_HOLD
66#define TAPPING_TERM 200
67#define ONESHOT_TAP_TOGGLE 5 /* Tapping this number of times holds the key until tapped this number of times again. */
68#define ONESHOT_TIMEOUT 5000 /* Time (in ms) before the one shot key is released */
69
70// Helix keyboard RGB LED support
71//#define RGBLIGHT_ANIMATIONS : see ./rules.mk: LED_ANIMATIONS = yes or no
72// see ./rules.mk: LED_BACK_ENABLE or LED_UNDERGLOW_ENABLE set yes
73#ifdef RGBLED_BACK
74 #if HELIX_ROWS == 4
75 #define RGBLED_NUM 25
76 #elif HELIX_ROWS == 5
77 #define RGBLED_NUM 32
78 #endif
79#else
80 #define RGBLED_NUM 6
81#endif
82
83#ifndef IOS_DEVICE_ENABLE
84 #if RGBLED_NUM <= 6
85 #define RGBLIGHT_LIMIT_VAL 255
86 #else
87 #if HELIX_ROWS == 5
88 #define RGBLIGHT_LIMIT_VAL 120
89 #else
90 #define RGBLIGHT_LIMIT_VAL 130
91 #endif
92 #endif
93 #define RGBLIGHT_VAL_STEP 17
94#else
95 #if RGBLED_NUM <= 6
96 #define RGBLIGHT_LIMIT_VAL 90
97 #else
98 #if HELIX_ROWS == 5
99 #define RGBLIGHT_LIMIT_VAL 35
100 #else
101 #define RGBLIGHT_LIMIT_VAL 45
102 #endif
103 #endif
104 #define RGBLIGHT_VAL_STEP 4
105#endif
106#define RGBLIGHT_HUE_STEP 10
107#define RGBLIGHT_SAT_STEP 17
108
109#if defined(RGBLIGHT_ENABLE) && !defined(IOS_DEVICE_ENABLE)
110// USB_MAX_POWER_CONSUMPTION value for Helix keyboard
111// 120 RGBoff, OLEDoff
112// 120 OLED
113// 330 RGB 6
114// 300 RGB 32
115// 310 OLED & RGB 32
116 #define USB_MAX_POWER_CONSUMPTION 400
117#else
118 // fix iPhone and iPad power adapter issue
119 // iOS device need lessthan 100
120 #define USB_MAX_POWER_CONSUMPTION 100
121#endif
122
123#endif /* CONFIG_USER_H */
diff --git a/keyboards/helix/rev2/keymaps/froggy/helixfont.h b/keyboards/helix/rev2/keymaps/froggy/helixfont.h
new file mode 100644
index 000000000..7f5474815
--- /dev/null
+++ b/keyboards/helix/rev2/keymaps/froggy/helixfont.h
@@ -0,0 +1,244 @@
1// This is the 'classic' fixed-space bitmap font for Adafruit_GFX since 1.0.
2// See gfxfont.h for newer custom bitmap font info.
3
4#ifndef FONT5X7_H
5#define FONT5X7_H
6
7#ifdef __AVR__
8 #include <avr/io.h>
9 #include <avr/pgmspace.h>
10#elif defined(ESP8266)
11 #include <pgmspace.h>
12#else
13 #define PROGMEM
14#endif
15
16// Standard ASCII 5x7 font
17
18static const unsigned char font[] PROGMEM = {
190x00, 0x00, 0x00, 0x00, 0x00, 0x00,
200x3E, 0x5B, 0x4F, 0x5B, 0x3E, 0x00,
210x3E, 0x6B, 0x4F, 0x6B, 0x3E, 0x00,
220x1C, 0x3E, 0x7C, 0x3E, 0x1C, 0x00,
230x18, 0x3C, 0x7E, 0x3C, 0x18, 0x00,
240x1C, 0x57, 0x7D, 0x57, 0x1C, 0x00,
250x1C, 0x5E, 0x7F, 0x5E, 0x1C, 0x00,
260x00, 0x18, 0x3C, 0x18, 0x00, 0x00,
270xFF, 0xE7, 0xC3, 0xE7, 0xFF, 0x00,
280x00, 0x18, 0x24, 0x18, 0x00, 0x00,
290xFF, 0xE7, 0xDB, 0xE7, 0xFF, 0x00,
300x30, 0x48, 0x3A, 0x06, 0x0E, 0x00,
310x26, 0x29, 0x79, 0x29, 0x26, 0x00,
320x40, 0x7F, 0x05, 0x05, 0x07, 0x00,
330x40, 0x7F, 0x05, 0x25, 0x3F, 0x00,
340x5A, 0x3C, 0xE7, 0x3C, 0x5A, 0x00,
350x7F, 0x3E, 0x1C, 0x1C, 0x08, 0x00,
360x08, 0x1C, 0x1C, 0x3E, 0x7F, 0x00,
370x14, 0x22, 0x7F, 0x22, 0x14, 0x00,
380x5F, 0x5F, 0x00, 0x5F, 0x5F, 0x00,
390x06, 0x09, 0x7F, 0x01, 0x7F, 0x00,
400x00, 0x66, 0x89, 0x95, 0x6A, 0x00,
410x60, 0x60, 0x60, 0x60, 0x60, 0x00,
420x94, 0xA2, 0xFF, 0xA2, 0x94, 0x00,
430x08, 0x04, 0x7E, 0x04, 0x08, 0x00,
440x10, 0x20, 0x7E, 0x20, 0x10, 0x00,
450x08, 0x08, 0x2A, 0x1C, 0x08, 0x00,
460x08, 0x1C, 0x2A, 0x08, 0x08, 0x00,
470x1E, 0x10, 0x10, 0x10, 0x10, 0x00,
480x0C, 0x1E, 0x0C, 0x1E, 0x0C, 0x00,
490x30, 0x38, 0x3E, 0x38, 0x30, 0x00,
500x06, 0x0E, 0x3E, 0x0E, 0x06, 0x00,
510x00, 0x00, 0x00, 0x00, 0x00, 0x00,
520x00, 0x00, 0x5F, 0x00, 0x00, 0x00,
530x00, 0x07, 0x00, 0x07, 0x00, 0x00,
540x14, 0x7F, 0x14, 0x7F, 0x14, 0x00,
550x24, 0x2A, 0x7F, 0x2A, 0x12, 0x00,
560x23, 0x13, 0x08, 0x64, 0x62, 0x00,
570x36, 0x49, 0x56, 0x20, 0x50, 0x00,
580x00, 0x08, 0x07, 0x03, 0x00, 0x00,
590x00, 0x1C, 0x22, 0x41, 0x00, 0x00,
600x00, 0x41, 0x22, 0x1C, 0x00, 0x00,
610x2A, 0x1C, 0x7F, 0x1C, 0x2A, 0x00,
620x08, 0x08, 0x3E, 0x08, 0x08, 0x00,
630x00, 0x80, 0x70, 0x30, 0x00, 0x00,
640x08, 0x08, 0x08, 0x08, 0x08, 0x00,
650x00, 0x00, 0x60, 0x60, 0x00, 0x00,
660x20, 0x10, 0x08, 0x04, 0x02, 0x00,
670x3E, 0x51, 0x49, 0x45, 0x3E, 0x00,
680x00, 0x42, 0x7F, 0x40, 0x00, 0x00,
690x72, 0x49, 0x49, 0x49, 0x46, 0x00,
700x21, 0x41, 0x49, 0x4D, 0x33, 0x00,
710x18, 0x14, 0x12, 0x7F, 0x10, 0x00,
720x27, 0x45, 0x45, 0x45, 0x39, 0x00,
730x3C, 0x4A, 0x49, 0x49, 0x31, 0x00,
740x41, 0x21, 0x11, 0x09, 0x07, 0x00,
750x36, 0x49, 0x49, 0x49, 0x36, 0x00,
760x46, 0x49, 0x49, 0x29, 0x1E, 0x00,
770x00, 0x00, 0x14, 0x00, 0x00, 0x00,
780x00, 0x40, 0x34, 0x00, 0x00, 0x00,
790x00, 0x08, 0x14, 0x22, 0x41, 0x00,
800x14, 0x14, 0x14, 0x14, 0x14, 0x00,
810x00, 0x41, 0x22, 0x14, 0x08, 0x00,
820x02, 0x01, 0x59, 0x09, 0x06, 0x00,
830x3E, 0x41, 0x5D, 0x59, 0x4E, 0x00,
840x7C, 0x12, 0x11, 0x12, 0x7C, 0x00,
850x7F, 0x49, 0x49, 0x49, 0x36, 0x00,
860x3E, 0x41, 0x41, 0x41, 0x22, 0x00,
870x7F, 0x41, 0x41, 0x41, 0x3E, 0x00,
880x7F, 0x49, 0x49, 0x49, 0x41, 0x00,
890x7F, 0x09, 0x09, 0x09, 0x01, 0x00,
900x3E, 0x41, 0x41, 0x51, 0x73, 0x00,
910x7F, 0x08, 0x08, 0x08, 0x7F, 0x00,
920x00, 0x41, 0x7F, 0x41, 0x00, 0x00,
930x20, 0x40, 0x41, 0x3F, 0x01, 0x00,
940x7F, 0x08, 0x14, 0x22, 0x41, 0x00,
950x7F, 0x40, 0x40, 0x40, 0x40, 0x00,
960x7F, 0x02, 0x1C, 0x02, 0x7F, 0x00,
970x7F, 0x04, 0x08, 0x10, 0x7F, 0x00,
980x3E, 0x41, 0x41, 0x41, 0x3E, 0x00,
990x7F, 0x09, 0x09, 0x09, 0x06, 0x00,
1000x3E, 0x41, 0x51, 0x21, 0x5E, 0x00,
1010x7F, 0x09, 0x19, 0x29, 0x46, 0x00,
1020x26, 0x49, 0x49, 0x49, 0x32, 0x00,
1030x03, 0x01, 0x7F, 0x01, 0x03, 0x00,
1040x3F, 0x40, 0x40, 0x40, 0x3F, 0x00,
1050x1F, 0x20, 0x40, 0x20, 0x1F, 0x00,
1060x3F, 0x40, 0x38, 0x40, 0x3F, 0x00,
1070x63, 0x14, 0x08, 0x14, 0x63, 0x00,
1080x03, 0x04, 0x78, 0x04, 0x03, 0x00,
1090x61, 0x59, 0x49, 0x4D, 0x43, 0x00,
1100x00, 0x7F, 0x41, 0x41, 0x41, 0x00,
1110x02, 0x04, 0x08, 0x10, 0x20, 0x00,
1120x00, 0x41, 0x41, 0x41, 0x7F, 0x00,
1130x04, 0x02, 0x01, 0x02, 0x04, 0x00,
1140x40, 0x40, 0x40, 0x40, 0x40, 0x00,
1150xFC, 0xFE, 0x02, 0x82, 0x82, 0x82,
1160x82, 0x82, 0x82, 0xC2, 0x82, 0x02,
1170x02, 0xFE, 0x00, 0x00, 0xFE, 0xFE,
1180x02, 0x62, 0x62, 0x62, 0x62, 0xE2,
1190x62, 0x62, 0xE2, 0x02, 0x02, 0xFC,
1200x00, 0x00, 0x00, 0x00, 0x00, 0xF0,
1210x30, 0x40, 0x00, 0x00, 0x00, 0x00,
1220x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1230x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1240x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1250x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1260x00, 0x00, 0x00, 0x00, 0x80, 0x00,
1270x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1280x00, 0x40, 0x00, 0x00, 0x24, 0xA4,
1290xA4, 0xBC, 0xA4, 0x24, 0x24, 0x00,
1300x00, 0x00, 0x24, 0xA4, 0x24, 0x24,
1310x3C, 0x04, 0x04, 0x00, 0x00, 0x00,
1320xB8, 0xA4, 0xA4, 0xA4, 0xBC, 0x00,
1330x00, 0x00, 0x00, 0xFC, 0x00, 0xFC,
1340x00, 0x44, 0x44, 0x44, 0xDC, 0x44,
1350x04, 0x3C, 0x00, 0x00, 0x00, 0x00,
1360xFC, 0xFE, 0xFE, 0x7E, 0x7E, 0x7E,
1370x7E, 0x7E, 0x7E, 0x3E, 0x7E, 0xFE,
1380xFE, 0xFE, 0x00, 0x00, 0xFE, 0xFE,
1390xFE, 0x9E, 0x9E, 0x9E, 0x9E, 0x1E,
1400x9E, 0x9E, 0x1E, 0xFE, 0xFE, 0xFC,
1410x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1420x00, 0x08, 0x36, 0x41, 0x00, 0x00,
1430x00, 0x00, 0x77, 0x00, 0x00, 0x00,
1440x00, 0x41, 0x36, 0x08, 0x00, 0x00,
1450x02, 0x01, 0x02, 0x04, 0x02, 0x00,
1460x3C, 0x26, 0x23, 0x26, 0x3C, 0x00,
1470x7F, 0x7F, 0x40, 0x41, 0x41, 0x41,
1480x41, 0x41, 0x41, 0x41, 0x41, 0x40,
1490x40, 0x7F, 0x00, 0x00, 0x7F, 0x7F,
1500x40, 0x40, 0x40, 0x40, 0x40, 0x41,
1510x40, 0x40, 0x43, 0x40, 0x40, 0x7F,
1520x00, 0x00, 0x00, 0xF0, 0xFB, 0xFB,
1530x00, 0x50, 0x60, 0xFF, 0xFC, 0x3C,
1540x1E, 0x0E, 0x0C, 0xFC, 0xF8, 0xE8,
1550xE8, 0xE8, 0x30, 0x00, 0x00, 0x00,
1560x00, 0x00, 0x02, 0x00, 0x00, 0x00,
1570x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1580x00, 0x00, 0x02, 0x02, 0x0D, 0x02,
1590x02, 0x00, 0x00, 0x00, 0x00, 0x00,
1600x00, 0x00, 0x00, 0x00, 0x57, 0x50,
1610x57, 0x54, 0x57, 0x10, 0x50, 0x00,
1620x00, 0x00, 0x97, 0x94, 0x97, 0x94,
1630xF7, 0x00, 0x00, 0x00, 0x00, 0x00,
1640xE4, 0x14, 0xF4, 0x94, 0xF7, 0x00,
1650x00, 0x00, 0x00, 0xFF, 0x00, 0xFF,
1660x00, 0x38, 0xA4, 0xA4, 0xA5, 0x3C,
1670x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1680x7F, 0x7F, 0x7F, 0x7E, 0x7E, 0x7E,
1690x7E, 0x7E, 0x7E, 0x7E, 0x7E, 0x7F,
1700x7F, 0x7F, 0x00, 0x00, 0x7F, 0x7F,
1710x7F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7E,
1720x7F, 0x7F, 0x7C, 0x7F, 0x7F, 0x7F,
1730x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1740x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1750x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1760x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1770x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1780x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1790xFE, 0xFE, 0x02, 0x62, 0x62, 0x62,
1800xE2, 0x62, 0x62, 0x62, 0xC2, 0x02,
1810x02, 0xFE, 0x00, 0x00, 0xFE, 0xFE,
1820x02, 0x82, 0xC2, 0xE2, 0xF2, 0x82,
1830x82, 0x82, 0x82, 0x02, 0x02, 0xFE,
1840x00, 0x00, 0x00, 0x07, 0x7F, 0xDF,
1850x00, 0x05, 0x03, 0x7F, 0x1F, 0x1E,
1860x3C, 0x38, 0x18, 0x1F, 0x0F, 0x0D,
1870x0D, 0x0D, 0x06, 0x00, 0x00, 0x00,
1880x00, 0x00, 0x00, 0x20, 0x20, 0x50,
1890x8C, 0x50, 0x20, 0x20, 0x00, 0x00,
1900x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1910x00, 0x00, 0x00, 0x00, 0x80, 0x80,
1920x40, 0x30, 0x40, 0x80, 0x89, 0x09,
1930x06, 0x09, 0x09, 0x00, 0x00, 0x00,
1940x00, 0x00, 0x1C, 0x12, 0x12, 0x12,
1950x1E, 0x10, 0x10, 0x00, 0x00, 0x00,
1960x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1970x00, 0x00, 0x00, 0xFF, 0x00, 0x73,
1980x84, 0xE7, 0x94, 0x94, 0x94, 0x67,
1990x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2000xFE, 0xFE, 0xFE, 0x9E, 0x9E, 0x9E,
2010x1E, 0x9E, 0x9E, 0x9E, 0x3E, 0xFE,
2020xFE, 0xFE, 0x00, 0x00, 0xFE, 0xFE,
2030xFE, 0x7E, 0x3E, 0x1E, 0x0E, 0x7E,
2040x7E, 0x7E, 0x7E, 0xFE, 0xFE, 0xFE,
2050x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2060x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2070x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2080x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2090x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2100x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2110x3F, 0x7F, 0x40, 0x46, 0x46, 0x46,
2120x47, 0x46, 0x46, 0x46, 0x43, 0x40,
2130x40, 0x7F, 0x00, 0x00, 0x7F, 0x7F,
2140x40, 0x41, 0x43, 0x47, 0x4F, 0x41,
2150x41, 0x41, 0x41, 0x40, 0x40, 0x3F,
2160x00, 0x00, 0x00, 0x00, 0x00, 0x07,
2170x06, 0x01, 0x00, 0x00, 0x00, 0x00,
2180x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2190x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2200x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2210x01, 0x00, 0x00, 0x00, 0x00, 0x00,
2220x00, 0x00, 0x04, 0x00, 0x00, 0x00,
2230x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2240x01, 0x06, 0x01, 0x00, 0x00, 0x00,
2250x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2260x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2270x00, 0x00, 0x00, 0x00, 0x08, 0x08,
2280x36, 0x08, 0x08, 0x00, 0x00, 0x00,
2290x00, 0x00, 0x00, 0x1F, 0x00, 0x0E,
2300x10, 0x1C, 0x12, 0x12, 0x12, 0x12,
2310x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2320x3F, 0x7F, 0x7F, 0x79, 0x79, 0x79,
2330x78, 0x79, 0x79, 0x79, 0x7C, 0x7F,
2340x7F, 0x7F, 0x00, 0x00, 0x7F, 0x7F,
2350x7F, 0x7E, 0x7C, 0x78, 0x70, 0x7E,
2360x7E, 0x7E, 0x7E, 0x7F, 0x7F, 0x3F,
2370x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2380x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2390x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2400x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2410x00, 0x00, 0x00, 0x00, 0x00, 0x00,
2420x00, 0x00, 0x00, 0x00, 0x00, 0x00
243};
244#endif // FONT5X7_H
diff --git a/keyboards/helix/rev2/keymaps/froggy/keymap.c b/keyboards/helix/rev2/keymaps/froggy/keymap.c
new file mode 100644
index 000000000..69c41856b
--- /dev/null
+++ b/keyboards/helix/rev2/keymaps/froggy/keymap.c
@@ -0,0 +1,650 @@
1#include "helix.h"
2#include "bootloader.h"
3#include "action_layer.h"
4#include "eeconfig.h"
5#ifdef PROTOCOL_LUFA
6#include "lufa.h"
7#include "split_util.h"
8#endif
9#include "LUFA/Drivers/Peripheral/TWI.h"
10#ifdef AUDIO_ENABLE
11 #include "audio.h"
12#endif
13#ifdef SSD1306OLED
14 #include "ssd1306.h"
15#endif
16
17extern keymap_config_t keymap_config;
18
19#ifdef RGBLIGHT_ENABLE
20//Following line allows macro to read current RGB settings
21extern rgblight_config_t rgblight_config;
22#endif
23
24extern uint8_t is_master;
25
26#define DELAY_TIME 75
27static uint16_t key_timer;
28static uint16_t tap_timer;
29static uint16_t delay_registered_code;
30static uint8_t delay_mat_row;
31static uint8_t delay_mat_col;
32static bool delay_key_stat;
33static bool delay_key_pressed;
34static bool tapping_key;
35
36// Each layer gets a name for readability, which is then used in the keymap matrix below.
37// The underscores don't mean anything - you can have a layer called STUFF or any other name.
38// Layer names don't all need to be of the same length, obviously, and you can also skip them
39// entirely and just use numbers.
40#define _BASE 0
41#define _OPT 1
42#define _FUNC 2
43#define _SYM 3
44#define _NUM 4
45
46bool RGBAnimation = false; //Flag for LED Layer color Refresh.
47
48enum custom_keycodes {
49 QWERTY = SAFE_RANGE,
50 EISU,
51 KANA,
52 RGBRST,
53 RGBOFF,
54 RGB1,
55 RGB2,
56 RGB3,
57 OPT_TAP_SP,
58 DESKTOP,
59 MAC,
60 WIN,
61};
62
63enum macro_keycodes {
64 KC_SAMPLEMACRO,
65};
66
67
68// Fillers to make layering more clear
69#define _______ KC_TRNS
70#define XXXXXXX KC_NO
71//Macros
72#define M_SAMPLE M(KC_SAMPLEMACRO)
73
74#if HELIX_ROWS == 5
75const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
76
77 /* Base
78 * ,-----------------------------------------. ,-----------------------------------------.
79 * | C+z | ; | [ | ( | < | { | | | | | | | |
80 * |------+------+------+------+------+------| |------+------+------+------+------+------|
81 * | KANA | P | K | R | A | F | | | | | | | |
82 * |------+------+------+------+------+------| |------+------+------+------+------+------|
83 * | BS | D | T | H | E | O | | | | | | | |
84 * |------+------+------+------+------+------+------+------+------+------+------+------+------+------|
85 * | Shift| Y | S | N | I | U |Space | | | | | | | |
86 * |------+------+------+------+------+------+------+------+------+------+------+------+------+------|
87 * | Ctrl | Alt | win | Sym | Num | OPT | Ent | | | | | | | |
88 * `-------------------------------------------------------------------------------------------------'
89 */
90 [_BASE] = KEYMAP( \
91 LCTL(KC_Z), KC_SCLN, KC_LBRC, KC_LPRN, KC_LT, KC_LCBR, _______, _______, _______, _______, _______, _______, \
92 KANA, KC_P, KC_K, KC_R, KC_A, KC_F, _______, _______, _______, _______, _______, _______, \
93 KC_BSPC, KC_D, KC_T, KC_H, KC_E, KC_O, _______, _______, _______, _______, _______, _______, \
94 OSM(MOD_LSFT), KC_Y, KC_S, KC_N, KC_I, KC_U, KC_SPC, _______, _______, _______, _______, _______, _______, _______, \
95 OSM(MOD_LCTL), OSM(MOD_LALT), OSM(MOD_LGUI), MO(_SYM), MO(_NUM), OPT_TAP_SP, KC_ENT, _______, _______, _______, _______, _______, _______, _______ \
96 ),
97
98 /* Opt
99 * ,-----------------------------------------. ,-----------------------------------------.
100 * | Esc | : | ] | ) | > | } | | | | | | | |
101 * |------+------+------+------+------+------| |------+------+------+------+------+------|
102 * | EISU| J | M | B | ' | Tab | | | | | | | |
103 * |------+------+------+------+------+------| |------+------+------+------+------+------|
104 * | . | V | C | L | Z | Q | | | | | | | |
105 * |------+------+------+------+------+------+------+------+------+------+------+------+------+------|
106 * | | X | G | W | - | Del | Esc | | | | | | | |
107 * |------+------+------+------+------+------+------+------+------+------+------+------+------+------|
108 * | | | | , | DTOP | | | | | | | | | |
109 * `-------------------------------------------------------------------------------------------------'
110 */
111 [_OPT] = KEYMAP( \
112 KC_ESC, KC_COLN,KC_RBRC, KC_RPRN,KC_GT, KC_RCBR, _______, _______, _______, _______, _______, _______, \
113 EISU, KC_J, KC_M, KC_B, KC_QUOT, KC_TAB, _______, _______, _______, _______, _______, _______, \
114 KC_DOT, KC_V, KC_C, KC_L, KC_Z, KC_Q, _______, _______, _______, _______, _______, _______, \
115 _______, KC_X, KC_G, KC_W, KC_MINUS, KC_DEL, KC_ESC, _______, _______, _______, _______, _______, _______, _______, \
116 _______, _______,_______, KC_COMM,DESKTOP, _______, _______, _______, _______, _______, _______, _______, _______, _______ \
117 ),
118
119 /* Func
120 * ,-----------------------------------------. ,-----------------------------------------.
121 * |RGBRST| Hue | | RST | Mac | Win | | | | | | | |
122 * |------+------+------+------+------+------| |------+------+------+------+------+------|
123 * | RGB1 | VAL+ | F7 | F8 | F9 | | | | | | | | |
124 * |------+------+------+------+------+------| |------+------+------+------+------+------|
125 * | RGB2 | VAL- | F4 | F5 | F6 | F12 | | | | | | | |
126 * |------+------+------+------+------+------+------+------+------+------+------+------+------+------|
127 * | RGB3 | F10 | F1 | F2 | F3 | F11 | | | | | | | | |
128 * |------+------+------+------+------+------+------+------+------+------+------+------+------+------|
129 * |RGBOFF| | | | | | | | | | | | | |
130 * `-------------------------------------------------------------------------------------------------'
131 */
132 [_FUNC] = KEYMAP( \
133 RGBRST,RGB_HUI, _______, RESET, MAC, WIN, _______, _______, _______, _______, _______, _______, \
134 RGB1, RGB_VAI, KC_F7, KC_F8, KC_F9, _______, _______, _______, _______, _______, _______, _______, \
135 RGB2, RGB_VAD, KC_F4, KC_F5, KC_F6, KC_F12, _______, _______, _______, _______, _______, _______, \
136 RGB3, KC_F10, KC_F1, KC_F2, KC_F3, KC_F11, _______, _______, _______, _______, _______, _______, _______, _______, \
137 RGBOFF,_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ \
138 ),
139
140 /* Sym
141 * ,-----------------------------------------. ,-----------------------------------------.
142 * | Ins | GRV | | PU | PD | ^ | | | | | | | |
143 * |------+------+------+------+------+------| |------+------+------+------+------+------|
144 * | | \ | # | = | ? | % | | | | | | | |
145 * |------+------+------+------+------+------| |------+------+------+------+------+------|
146 * | | $ | upA | @ | ! | | | | | | | | | |
147 * |------+------+------+------+------+------+------+------+------+------+------+------+------+------|
148 * | CL | <- | dwA | -> | _ | & | | | | | | | | |
149 * |------+------+------+------+------+------+------+------+------+------+------+------+------+------|
150 * | | | PS | | ~ | | | | | | | | | |
151 * `-------------------------------------------------------------------------------------------------'
152 */
153 [_SYM] = KEYMAP( \
154 KC_INS, KC_GRV, _______, KC_PGUP, KC_PGDN, KC_CIRC, _______, _______, _______, _______, _______, _______, \
155 _______, KC_BSLS, KC_HASH, KC_EQL, KC_QUES, KC_PERC, _______, _______, _______, _______, _______, _______, \
156 _______, KC_DLR, KC_UP, KC_AT, KC_EXLM, KC_PIPE, _______, _______, _______, _______, _______, _______, \
157 KC_CAPS, KC_LEFT, KC_DOWN, KC_RIGHT,KC_UNDS, KC_AMPR, _______, _______, _______, _______, _______, _______, _______, _______, \
158 _______, _______, KC_PSCR, _______, KC_TILD, _______, _______, _______, _______, _______, _______, _______, _______, _______ \
159 ),
160
161 /* Raise
162 * ,-----------------------------------------. ,-----------------------------------------.
163 * | | | Func | home | End | | | | | | | | |
164 * |------+------+------+------+------+------| |------+------+------+------+------+------|
165 * | | * | 7 | 8 | 9 | - | | | | | | | |
166 * |------+------+------+------+------+------| |------+------+------+------+------+------|
167 * | . | / | 4 | 5 | 6 | + | | | | | | | |
168 * |------+------+------+------+------+------+------+------+------+------+------+------+------+------|
169 * | LN | 0 | 1 | 2 | 3 |C+S+F1| | | | | | | | |
170 * |------+------+------+------+------+------+------+------+------+------+------+------+------+------|
171 * | | | | , | | | | | | | | | | |
172 * `-------------------------------------------------------------------------------------------------'
173 */
174 [_NUM] = KEYMAP( \
175 _______, _______, OSL(_FUNC), KC_HOME, KC_END, _______, _______, _______, _______, _______, _______, _______, \
176 _______, KC_ASTR, KC_P7, KC_P8, KC_P9, KC_MINS, _______, _______, _______, _______, _______, _______, \
177 KC_PDOT, KC_SLSH, KC_P4, KC_P5, KC_P6, KC_PLUS, _______, _______, _______, _______, _______, _______, \
178 KC_NLCK, KC_P0, KC_P1, KC_P2, KC_P3, LCTL(S(KC_F1)), _______, _______, _______, _______, _______, _______, _______, _______, \
179 _______, _______, KC_PDOT, KC_COMM, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ \
180 )
181};
182#else
183#error "undefined keymaps"
184#endif
185
186
187#ifdef AUDIO_ENABLE
188
189float tone_qwerty[][2] = SONG(QWERTY_SOUND);
190float tone_dvorak[][2] = SONG(DVORAK_SOUND);
191float tone_colemak[][2] = SONG(COLEMAK_SOUND);
192float tone_plover[][2] = SONG(PLOVER_SOUND);
193float tone_plover_gb[][2] = SONG(PLOVER_GOODBYE_SOUND);
194float music_scale[][2] = SONG(MUSIC_SCALE_SOUND);
195#endif
196
197// define variables for reactive RGB
198//bool TOG_STATUS = false;
199int RGB_current_mode;
200
201void persistent_default_layer_set(uint16_t default_layer) {
202 eeconfig_update_default_layer(default_layer);
203 default_layer_set(default_layer);
204}
205
206bool find_mairix(uint16_t keycode, uint8_t *row, uint8_t *col){
207 for(uint8_t i=0; i<MATRIX_ROWS; i++){
208 for(uint8_t j=0; j<MATRIX_COLS; j++){
209 if( pgm_read_word(&(keymaps[_BASE][i][j]))==keycode){
210 *row = i;
211 *col = j;
212 return true;
213 }
214 }
215 }
216 return false;
217}
218
219void unregister_delay_code(void){
220 if(delay_registered_code){
221 unregister_code(delay_registered_code);
222 if (delay_registered_code & QK_LSFT){
223 unregister_code(KC_LSFT);
224 }
225 if (delay_registered_code & QK_LCTL){
226 unregister_code(KC_LCTL);
227 }
228 if (delay_registered_code & QK_LALT){
229 unregister_code(KC_LALT);
230 }
231 if (delay_registered_code & QK_LGUI){
232 unregister_code(KC_LGUI);
233 }
234 delay_registered_code=0;
235 }
236}
237
238void register_delay_code(uint8_t layer){
239 if(delay_key_stat){
240 unregister_delay_code();
241
242 uint16_t code = pgm_read_word(&(keymaps[layer][delay_mat_row][delay_mat_col]));
243 if (code & QK_LSFT){
244 register_code(KC_LSFT);
245 }
246 if (code & QK_LCTL){
247 register_code(KC_LCTL);
248 }
249 if (code & QK_LALT){
250 register_code(KC_LALT);
251 }
252 if (code & QK_LGUI){
253 register_code(KC_LGUI);
254 }
255 register_code(code);
256 delay_registered_code = code;
257 delay_key_stat = false;
258 tapping_key = true;
259 }
260}
261
262bool process_record_user(uint16_t keycode, keyrecord_t *record) {
263
264 if(tap_timer&&keycode!=OPT_TAP_SP){
265 tapping_key = true;
266 }
267
268 if(keycode==delay_registered_code){
269 if (!record->event.pressed){
270 unregister_delay_code();
271 }
272 }
273
274 switch (keycode) {
275 case KC_SCLN:
276 case KC_LBRC:
277 case KC_LPRN:
278 case KC_LT:
279 case KC_LCBR:
280 case KC_P:
281 case KC_K:
282 case KC_R:
283 case KC_A:
284 case KC_F:
285 case KC_BSPC:
286 case KC_D:
287 case KC_T:
288 case KC_H:
289 case KC_E:
290 case KC_O:
291 case KC_Y:
292 case KC_S:
293 case KC_N:
294 case KC_I:
295 case KC_U:
296 case LCTL(KC_Z):
297 case KC_SPC:
298 if (record->event.pressed) {
299 register_delay_code(_BASE);
300 if(find_mairix(keycode, &delay_mat_row, &delay_mat_col)){
301 key_timer = timer_read();
302 delay_key_stat = true;
303 delay_key_pressed = true;
304 }
305 }else{
306 delay_key_pressed = false;
307 }
308 return false;
309 break;
310 case OPT_TAP_SP:
311 if (record->event.pressed) {
312 tapping_key = false;
313 register_delay_code(_OPT);
314 layer_on(_OPT);
315 tap_timer = timer_read();
316 }else{
317 layer_off(_OPT);
318 if(tapping_key==false && timer_elapsed(tap_timer) < TAPPING_TERM){
319 SEND_STRING(" ");
320 }
321 tap_timer = 0;
322 }
323 return false;
324 break;
325 case EISU:
326 if (record->event.pressed) {
327 if(keymap_config.swap_lalt_lgui==false){
328 register_code(KC_LANG2);
329 }else{
330 SEND_STRING(SS_LALT("`"));
331 }
332 } else {
333 unregister_code(KC_LANG2);
334 }
335 return false;
336 break;
337 case KANA:
338 if (record->event.pressed) {
339 if(keymap_config.swap_lalt_lgui==false){
340 register_code(KC_LANG1);
341 }else{
342 SEND_STRING(SS_LALT("`"));
343 }
344 } else {
345 unregister_code(KC_LANG1);
346 }
347 return false;
348 break;
349 case DESKTOP:
350 if (record->event.pressed) {
351 if(keymap_config.swap_lalt_lgui==false){
352 register_code(KC_F11);
353 }else{
354 SEND_STRING(SS_LGUI("d"));
355 }
356 } else {
357 unregister_code(KC_F11);
358 }
359 return false;
360 break;
361 case RGBRST:
362 #ifdef RGBLIGHT_ENABLE
363 if (record->event.pressed) {
364 eeconfig_update_rgblight_default();
365 rgblight_enable();
366 RGB_current_mode = rgblight_config.mode;
367 RGBAnimation = false;
368 }
369 #endif
370 break;
371 case RGBOFF:
372 #ifdef RGBLIGHT_ENABLE
373 if (record->event.pressed) {
374 rgblight_disable();
375 }
376 #endif
377 break;
378 case RGB1:
379 #ifdef RGBLIGHT_ENABLE
380 if (record->event.pressed) {
381 RGBAnimation = true;
382 rgblight_mode(6);
383 RGB_current_mode = rgblight_config.mode;
384 }
385 #endif
386 break;
387 case RGB2:
388 #ifdef RGBLIGHT_ENABLE
389 if (record->event.pressed) {
390 RGBAnimation = true;
391 rgblight_mode(10);
392 RGB_current_mode = rgblight_config.mode;
393 }
394 #endif
395 break;
396 case RGB3:
397 #ifdef RGBLIGHT_ENABLE
398 if (record->event.pressed) {
399 RGBAnimation = true;
400 rgblight_mode(21);
401 RGB_current_mode = rgblight_config.mode;
402 }
403 #endif
404 break;
405 case MAC:
406 if (record->event.pressed) {
407 keymap_config.swap_lalt_lgui = false;
408 keymap_config.swap_ralt_rgui = false;
409 #ifdef AUDIO_ENABLE
410 PLAY_SONG(ag_norm_song);
411 #endif
412 }
413 break;
414 case WIN:
415 if (record->event.pressed) {
416 keymap_config.swap_lalt_lgui = true;
417 keymap_config.swap_ralt_rgui = true;
418 #ifdef AUDIO_ENABLE
419 PLAY_SONG(ag_swap_song);
420 #endif
421 }
422 break;
423 }
424 return true;
425}
426
427
428//keyboard start-up code. Runs once when the firmware starts up.
429void matrix_init_user(void) {
430 #ifdef AUDIO_ENABLE
431 startup_user();
432 #endif
433 #ifdef RGBLIGHT_ENABLE
434 RGB_current_mode = rgblight_config.mode;
435 #endif
436 //SSD1306 OLED init, make sure to add #define SSD1306OLED in config.h
437 #ifdef SSD1306OLED
438 TWI_Init(TWI_BIT_PRESCALE_1, TWI_BITLENGTH_FROM_FREQ(1, 800000));
439 iota_gfx_init(!has_usb()); // turns on the display
440 #endif
441}
442
443
444#ifdef AUDIO_ENABLE
445
446void startup_user()
447{
448 _delay_ms(20); // gets rid of tick
449}
450
451void shutdown_user()
452{
453 _delay_ms(150);
454 stop_all_notes();
455}
456
457void music_on_user(void)
458{
459 music_scale_user();
460}
461
462void music_scale_user(void)
463{
464 PLAY_SONG(music_scale);
465}
466
467#endif
468
469
470//assign the right code to your layers for OLED display
471#define L_BASE 0
472#define L_OPT 2
473#define L_FUNC 4
474#define L_SYM 8
475#define L_NUM 16
476#define L_FNLAYER 64
477#define L_NUMLAY 128
478#define L_NLOWER 136
479#define L_NFNLAYER 192
480#define L_MOUSECURSOR 256
481
482
483uint8_t layer_state_old;
484
485//runs every scan cycle (a lot)
486void matrix_scan_user(void) {
487 #ifdef SSD1306OLED
488 iota_gfx_task(); // this is what updates the display continuously
489 #endif
490
491 if(delay_key_stat && (timer_elapsed(key_timer) > DELAY_TIME)){
492 register_delay_code(_BASE);
493 if(!delay_key_pressed){
494 unregister_delay_code();
495 }
496 }
497
498 if(layer_state_old != layer_state){
499 switch (layer_state) {
500 case L_BASE:
501 #ifdef RGBLIGHT_ENABLE
502 if (!RGBAnimation){
503 rgblight_sethsv(187,255,255);
504 rgblight_mode(1);
505 }else{
506 rgblight_mode(RGB_current_mode);
507 }
508 #endif
509 break;
510 case L_OPT:
511 register_delay_code(_OPT);
512 break;
513 case L_NUM:
514 register_delay_code(_NUM);
515 #ifdef RGBLIGHT_ENABLE
516 rgblight_sethsv(25,255,255);
517 rgblight_mode(1);
518 #endif
519 break;
520 case L_SYM:
521 register_delay_code(_SYM);
522 #ifdef RGBLIGHT_ENABLE
523 rgblight_sethsv(96,255,255);
524 rgblight_mode(1);
525 #endif
526 break;
527 case L_FUNC:
528 register_delay_code(_FUNC);
529 #ifdef RGBLIGHT_ENABLE
530 rgblight_sethsv(331,255,255);
531 rgblight_mode(1);
532 #endif
533 break;
534 }
535 layer_state_old = layer_state;
536 }
537}
538
539//SSD1306 OLED update loop, make sure to add #define SSD1306OLED in config.h
540#ifdef SSD1306OLED
541
542void matrix_update(struct CharacterMatrix *dest,
543 const struct CharacterMatrix *source) {
544 if (memcmp(dest->display, source->display, sizeof(dest->display))) {
545 memcpy(dest->display, source->display, sizeof(dest->display));
546 dest->dirty = true;
547 }
548}
549
550// Render to OLED
551void render_status(struct CharacterMatrix *matrix) {
552
553 // froggy logo
554 static char logo[4][1][17]=
555 {
556 {
557 {0x65,0x66,0x67,0x68,0x69,0x6a,0x6b,0x6c,0x6d,0x6e,0x6f,0x70,0x71,0x72,0x73,0x74,0}
558 },
559 {
560 {0x85,0x86,0x87,0x88,0x89,0x8a,0x8b,0x8c,0x8d,0x8e,0x8f,0x90,0x91,0x92,0x93,0x94,0}
561 },
562 {
563 {0xa5,0xa6,0xa7,0xa8,0xa9,0xaa,0xab,0xac,0xad,0xae,0xaf,0xb0,0xb1,0xb2,0xb3,0xb4,0}
564 },
565 {
566 {0xc5,0xc6,0xc7,0xc8,0xc9,0xca,0xcb,0xcc,0xcd,0xce,0xcf,0xd0,0xd1,0xd2,0xd3,0}
567 }
568 };
569
570 static char indctr[8][2][4]=
571 {
572 // white icon
573 {
574 {0x60,0x61,0x62,0},
575 {0x63,0x64,0}
576 },
577 {
578 {0x80,0x81,0x82,0},
579 {0x83,0x84,0}
580 },
581 {
582 {0xa0,0xa1,0xa2,0},
583 {0xa3,0xa4,0}
584 },
585 {
586 {0xc0,0xc1,0xc2,0},
587 {0xc3,0xc4,0}
588 },
589 // Black icon
590 {
591 {0x75,0x76,0x77,0},
592 {0x78,0x79,0}
593 },
594 {
595 {0x95,0x96,0x97,0},
596 {0x98,0x99,0}
597 },
598 {
599 {0xb5,0xb6,0xb7,0},
600 {0xb8,0xb9,0}
601 },
602 {
603 {0xd5,0xd6,0xd7,0},
604 {0xd8,0xd9,0}
605 },
606 };
607
608 int rown = 0;
609 int rowf = 0;
610 int rowa = 0;
611 int rows = 0;
612
613 //Set Indicator icon
614 if (host_keyboard_leds() & (1<<USB_LED_NUM_LOCK)) { rown = 4; } else { rown = 0; }
615 if (host_keyboard_leds() & (1<<USB_LED_CAPS_LOCK)) { rowa = 4; } else { rowa = 0; }
616 if (host_keyboard_leds() & (1<<USB_LED_SCROLL_LOCK)) { rows = 4; } else { rows = 0; }
617 if (layer_state == L_FUNC) { rowf = 4; }
618
619 matrix_write(matrix, indctr[rown] [0]);
620 matrix_write(matrix, indctr[rowf] [1]);
621 matrix_write(matrix, logo [0] [0]);
622 matrix_write(matrix, indctr[rown+1][0]);
623 matrix_write(matrix, indctr[rowf+1][1]);
624 matrix_write(matrix, logo [1] [0]);
625 matrix_write(matrix, indctr[rowa+2][0]);
626 matrix_write(matrix, indctr[rows+2][1]);
627 matrix_write(matrix, logo [2] [0]);
628 matrix_write(matrix, indctr[rowa+3][0]);
629 matrix_write(matrix, indctr[rows+3][1]);
630 matrix_write(matrix, logo [3] [0]);
631
632}
633
634void iota_gfx_task_user(void) {
635 struct CharacterMatrix matrix;
636
637#if DEBUG_TO_SCREEN
638 if (debug_enable) {
639 return;
640 }
641#endif
642
643 matrix_clear(&matrix);
644 if(is_master){
645 render_status(&matrix);
646 }
647 matrix_update(&display, &matrix);
648}
649
650#endif
diff --git a/keyboards/helix/rev2/keymaps/froggy/readme.md b/keyboards/helix/rev2/keymaps/froggy/readme.md
new file mode 100644
index 000000000..624e738a6
--- /dev/null
+++ b/keyboards/helix/rev2/keymaps/froggy/readme.md
@@ -0,0 +1,83 @@
1Froggy -one hand Helix-
2======
3
4![Imgur](https://i.imgur.com/S1Dw3XW.jpg)
5
6## Features
7It is a one-handed keyboard with reference to Frogpad. Layout Designed by タクマ ([@humid](https://twitter.com/humid)).
8
9## Layout
10### Base
11```
12,-----------------------------------------.
13| C+z | ; | [ | ( | < | { |
14|------+------+------+------+------+------|
15| KANA | P | K | R | A | F |
16|------+------+------+------+------+------|
17| BS | D | T | H | E | O |
18|------+------+------+------+------+------+------.
19| Shift| Y | S | N | I | U | Space|
20|------+------+------+------+------+------+------|
21| Ctrl | Alt | win | Sym | Num | OPT | Ent |
22`------------------------------------------------'
23```
24
25### Opt
26```
27,-----------------------------------------.
28| Esc | : | ] | ) | > | } |
29|------+------+------+------+------+------|
30| EISU | J | M | B | ' | Tab |
31|------+------+------+------+------+------|
32| . | V | C | L | Z | Q |
33|------+------+------+------+------+------+------.
34| | X | G | W | - | Del | Esc |
35|------+------+------+------+------+------+------|
36| | | | , | DTOP | | |
37`------------------------------------------------'
38```
39
40### Num
41```
42,-----------------------------------------.
43| | | Func | home | End | |
44|------+------+------+------+------+------|
45| | * | 7 | 8 | 9 | - |
46|------+------+------+------+------+------|
47| . | / | 4 | 5 | 6 | + |
48|------+------+------+------+------+------+------.
49| LN | 0 | 1 | 2 | 3 |C+S+F1| |
50|------+------+------+------+------+------+------|
51| | | | , | | | |
52`------------------------------------------------'
53```
54
55### Sym
56```
57,-----------------------------------------.
58| Ins | GRV | | PU | PD | ^ |
59|------+------+------+------+------+------|
60| | \ | # | = | ? | % |
61|------+------+------+------+------+------|
62| | $ | upA | @ | ! | | |
63|------+------+------+------+------+------+------.
64| CL | <- | dwA | -> | _ | & | |
65|------+------+------+------+------+------+------|
66| | | PS | | ~ | | |
67 `-----------------------------------------------'
68```
69
70### Func
71```
72,-----------------------------------------.
73|RGBRST| Hue | | RST | Mac | Win |
74|------+------+------+------+------+------|
75| RGB1 | VAL+ | F7 | F8 | F9 | |
76|------+------+------+------+------+------|
77| RGB2 | VAL- | F4 | F5 | F6 | F12 |
78|------+------+------+------+------+------+------.
79| RGB3 | F10 | F1 | F2 | F3 | F11 | |
80|------+------+------+------+------+------+------|
81|RGBOFF| | | | | | |
82`------------------------------------------------'
83```
diff --git a/keyboards/helix/rev2/keymaps/froggy/rules.mk b/keyboards/helix/rev2/keymaps/froggy/rules.mk
new file mode 100644
index 000000000..2052b8f4e
--- /dev/null
+++ b/keyboards/helix/rev2/keymaps/froggy/rules.mk
@@ -0,0 +1,123 @@
1
2# Build Options
3# change to "no" to disable the options, or define them in the Makefile in
4# the appropriate keymap folder that will get included automatically
5#
6BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration(+1000)
7MOUSEKEY_ENABLE = no # Mouse keys(+4700)
8EXTRAKEY_ENABLE = no # Audio control and System control(+450)
9CONSOLE_ENABLE = no # Console for debug(+400)
10COMMAND_ENABLE = no # Commands for debug and configuration
11NKRO_ENABLE = no # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
12BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
13MIDI_ENABLE = no # MIDI controls
14AUDIO_ENABLE = no # Audio output on port C6
15UNICODE_ENABLE = no # Unicode
16BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID
17RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. Do not enable this with audio at the same time.
18SWAP_HANDS_ENABLE = no # Enable one-hand typing
19
20define HELIX_CUSTOMISE_MSG
21 $(info Helix customize)
22 $(info - OLED_ENABLE=$(OLED_ENABLE))
23 $(info - LED_BACK_ENABLE=$(LED_BACK_ENABLE))
24 $(info - LED_UNDERGLOW_ENABLE=$(LED_UNDERGLOW_ENABLE))
25 $(info - LED_ANIMATION=$(LED_ANIMATIONS))
26 $(info - IOS_DEVICE_ENABLE=$(IOS_DEVICE_ENABLE))
27endef
28
29# Helix keyboard customize
30# you can edit follows 7 Variables
31# jp: 以下の7つの変数を必要に応じて編集します。
32HELIX_ROWS = 5 # Helix Rows is 4 or 5
33OLED_ENABLE = yes # OLED_ENABLE
34LOCAL_GLCDFONT = yes # use each keymaps "helixfont.h" insted of "common/glcdfont.c"
35LED_BACK_ENABLE = yes # LED backlight (Enable WS2812 RGB underlight.)
36LED_UNDERGLOW_ENABLE = no # LED underglow (Enable WS2812 RGB underlight.)
37LED_ANIMATIONS = yes # LED animations
38IOS_DEVICE_ENABLE = no # connect to IOS device (iPad,iPhone)
39
40#### LED_BACK_ENABLE and LED_UNDERGLOW_ENABLE.
41#### Do not enable these with audio at the same time.
42
43### Helix keyboard 'default' keymap: convenient command line option
44## make HELIX=<options> helix:defualt
45## option= oled | back | under | na | ios
46## ex.
47## make HELIX=oled helix:defualt
48## make HELIX=oled,back helix:defualt
49## make HELIX=oled,under helix:defualt
50## make HELIX=oled,back,na helix:defualt
51## make HELIX=oled,back,ios helix:defualt
52##
53ifneq ($(strip $(HELIX)),)
54 ifeq ($(findstring oled,$(HELIX)), oled)
55 OLED_ENABLE = yes
56 endif
57 ifeq ($(findstring back,$(HELIX)), back)
58 LED_BACK_ENABLE = yes
59 else ifeq ($(findstring under,$(HELIX)), under)
60 LED_UNDERGLOW_ENABLE = yes
61 endif
62 ifeq ($(findstring na,$(HELIX)), na)
63 LED_ANIMATIONS = no
64 endif
65 ifeq ($(findstring ios,$(HELIX)), ios)
66 IOS_DEVICE_ENABLE = yes
67 endif
68 $(eval $(call HELIX_CUSTOMISE_MSG))
69 $(info )
70endif
71
72# Uncomment these for checking
73# jp: コンパイル時にカスタマイズの状態を表示したい時はコメントをはずします。
74# $(eval $(call HELIX_CUSTOMISE_MSG))
75# $(info )
76
77ifneq ($(strip $(HELIX_ROWS)), 4)
78 ifneq ($(strip $(HELIX_ROWS)), 5)
79 $(error HELIX_ROWS = $(strip $(HELIX_ROWS)) is unexpected value)
80 endif
81endif
82OPT_DEFS += -DHELIX_ROWS=$(strip $(HELIX_ROWS))
83
84ifeq ($(strip $(LED_BACK_ENABLE)), yes)
85 RGBLIGHT_ENABLE = yes
86 OPT_DEFS += -DRGBLED_BACK
87 ifeq ($(strip $(LED_UNDERGLOW_ENABLE)), yes)
88 $(eval $(call HELIX_CUSTOMISE_MSG))
89 $(error LED_BACK_ENABLE and LED_UNDERGLOW_ENABLE both 'yes')
90 endif
91else ifeq ($(strip $(LED_UNDERGLOW_ENABLE)), yes)
92 RGBLIGHT_ENABLE = yes
93else
94 RGBLIGHT_ENABLE = no
95endif
96
97ifeq ($(strip $(IOS_DEVICE_ENABLE)), yes)
98 OPT_DEFS += -DIOS_DEVICE_ENABLE
99endif
100
101ifeq ($(strip $(LED_ANIMATIONS)), yes)
102 OPT_DEFS += -DRGBLIGHT_ANIMATIONS
103endif
104
105ifeq ($(strip $(OLED_ENABLE)), yes)
106 OPT_DEFS += -DOLED_ENABLE
107endif
108
109ifeq ($(strip $(LOCAL_GLCDFONT)), yes)
110 OPT_DEFS += -DLOCAL_GLCDFONT
111endif
112
113# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE
114SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend
115
116ifndef QUANTUM_DIR
117 include ../../../../Makefile
118endif
119
120# Uncomment these for debugging
121# $(info -- RGBLIGHT_ENABLE=$(RGBLIGHT_ENABLE))
122# $(info -- OPT_DEFS=$(OPT_DEFS))
123# $(info )
diff --git a/keyboards/helix/serial.c b/keyboards/helix/serial.c
index e918ab6ee..51ab67fb3 100644
--- a/keyboards/helix/serial.c
+++ b/keyboards/helix/serial.c
@@ -16,7 +16,7 @@
16 16
17// Serial pulse period in microseconds. Its probably a bad idea to lower this 17// Serial pulse period in microseconds. Its probably a bad idea to lower this
18// value. 18// value.
19#define SERIAL_DELAY 24 19#define SERIAL_DELAY 30
20 20
21uint8_t volatile serial_slave_buffer[SERIAL_SLAVE_BUFFER_LENGTH] = {0}; 21uint8_t volatile serial_slave_buffer[SERIAL_SLAVE_BUFFER_LENGTH] = {0};
22uint8_t volatile serial_master_buffer[SERIAL_MASTER_BUFFER_LENGTH] = {0}; 22uint8_t volatile serial_master_buffer[SERIAL_MASTER_BUFFER_LENGTH] = {0};