summaryrefslogtreecommitdiff
path: root/keyboards/helix
diff options
context:
space:
mode:
authorXelus22 <17491233+Xelus22@users.noreply.github.com>2021-08-24 16:28:26 +1000
committerGitHub <noreply@github.com>2021-08-24 16:28:26 +1000
commit4e1c5887c5c08ebd2cf7868c8d9292aa728e7bf0 (patch)
tree24ff5bdf570a6a9f5a77a517005bffbb35e46b22 /keyboards/helix
parent6fd20acf4be76e7a2bd82d3dfd0a9bcca8c507eb (diff)
[Core] Refactor OLED to allow easy addition of other types (#13454)
* add docs * core changes * update keyboards to new OLED * updated users to new OLED * update layouts to new OLED * fixup docs * drashna's suggestion * fix up docs * new keyboards with oled * core split changes * remaining keyboard files * Fix The Helix keyboards oled options * reflect develop Co-authored-by: Drashna Jaelre <drashna@live.com> Co-authored-by: mtei <2170248+mtei@users.noreply.github.com>
Diffstat (limited to 'keyboards/helix')
-rw-r--r--keyboards/helix/pico/local_features.mk3
-rw-r--r--keyboards/helix/rev2/config.h4
-rw-r--r--keyboards/helix/rev2/keymaps/default/oled_display.c4
-rw-r--r--keyboards/helix/rev2/keymaps/edvorakjp/oled.c4
-rw-r--r--keyboards/helix/rev2/keymaps/five_rows/oled_display.c4
-rw-r--r--keyboards/helix/rev2/keymaps/five_rows/rules.mk1
-rw-r--r--keyboards/helix/rev2/keymaps/xulkal/rules.mk3
-rw-r--r--keyboards/helix/rev2/local_features.mk10
-rw-r--r--keyboards/helix/rev3_4rows/oled_display.c2
-rw-r--r--keyboards/helix/rev3_4rows/rules.mk3
-rw-r--r--keyboards/helix/rev3_5rows/keymaps/five_rows/oled_display.c4
-rw-r--r--keyboards/helix/rev3_5rows/keymaps/five_rows/rules.mk4
-rw-r--r--keyboards/helix/rev3_5rows/oled_display.c2
-rw-r--r--keyboards/helix/rev3_5rows/rules.mk3
14 files changed, 29 insertions, 22 deletions
diff --git a/keyboards/helix/pico/local_features.mk b/keyboards/helix/pico/local_features.mk
index 25dcb8b6d3..be5c739f97 100644
--- a/keyboards/helix/pico/local_features.mk
+++ b/keyboards/helix/pico/local_features.mk
@@ -138,7 +138,6 @@ ifneq ($(strip $(SHOW_HELIX_OPTIONS)),)
$(eval $(call HELIX_CUSTOMISE_MSG))
ifneq ($(strip $(SHOW_VERBOSE_INFO)),)
$(info -- RGBLIGHT_ENABLE = $(RGBLIGHT_ENABLE))
- $(info -- OLED_DRIVER_ENABLE = $(OLED_DRIVER_ENABLE))
$(info -- CONSOLE_ENABLE = $(CONSOLE_ENABLE))
$(info -- OPT_DEFS = $(OPT_DEFS))
$(info -- SPLIT_KEYBOARD = $(SPLIT_KEYBOARD))
@@ -146,3 +145,5 @@ ifneq ($(strip $(SHOW_HELIX_OPTIONS)),)
$(info )
endif
endif
+
+OLED_ENABLE = no # disable OLED in TOP/common_features.mk
diff --git a/keyboards/helix/rev2/config.h b/keyboards/helix/rev2/config.h
index 73f0c61993..041acee215 100644
--- a/keyboards/helix/rev2/config.h
+++ b/keyboards/helix/rev2/config.h
@@ -42,8 +42,8 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
// #define EE_HANDS
// Helix keyboard OLED support
-// see ./rules.mk: OLED_ENABLE=yes or no
-#ifdef OLED_ENABLE
+// see ./local_features.mk: OLED_SELECT=local
+#ifdef OLED_LOCAL_ENABLE
#define SSD1306OLED
#endif
diff --git a/keyboards/helix/rev2/keymaps/default/oled_display.c b/keyboards/helix/rev2/keymaps/default/oled_display.c
index 04d6408c6c..36a7cf0b10 100644
--- a/keyboards/helix/rev2/keymaps/default/oled_display.c
+++ b/keyboards/helix/rev2/keymaps/default/oled_display.c
@@ -36,9 +36,9 @@ enum layer_number {
};
//SSD1306 OLED update loop, make sure to add #define SSD1306OLED in config.h
-#if defined(SSD1306OLED) || defined(OLED_DRIVER_ENABLE)
+#if defined(SSD1306OLED) || defined(OLED_ENABLE)
-# if defined(OLED_DRIVER_ENABLE)
+# if defined(OLED_ENABLE)
oled_rotation_t oled_init_user(oled_rotation_t rotation) {
if (is_keyboard_master()) {
return OLED_ROTATION_0;
diff --git a/keyboards/helix/rev2/keymaps/edvorakjp/oled.c b/keyboards/helix/rev2/keymaps/edvorakjp/oled.c
index 4bbab1dc4b..500a7bbf1a 100644
--- a/keyboards/helix/rev2/keymaps/edvorakjp/oled.c
+++ b/keyboards/helix/rev2/keymaps/edvorakjp/oled.c
@@ -2,7 +2,7 @@
#include <string.h>
#include "oled.h"
-#ifdef OLED_DRIVER_ENABLE
+#ifdef OLED_ENABLE
void render_host_led_state(void) {
char led_state_str[24];
uint8_t leds = host_keyboard_leds();
@@ -65,4 +65,4 @@ void oled_task_user(void) {
render_logo();
}
}
-#endif // OLED_DRIVER_ENABLE
+#endif // OLED_ENABLE
diff --git a/keyboards/helix/rev2/keymaps/five_rows/oled_display.c b/keyboards/helix/rev2/keymaps/five_rows/oled_display.c
index 689efe4c88..090e8aaec3 100644
--- a/keyboards/helix/rev2/keymaps/five_rows/oled_display.c
+++ b/keyboards/helix/rev2/keymaps/five_rows/oled_display.c
@@ -35,9 +35,9 @@ void init_helix_oled(void) {
}
//SSD1306 OLED update loop, make sure to add #define SSD1306OLED in config.h
-#if defined(SSD1306OLED) || defined(OLED_DRIVER_ENABLE)
+#if defined(SSD1306OLED) || defined(OLED_ENABLE)
-# if defined(OLED_DRIVER_ENABLE)
+# if defined(OLED_ENABLE)
oled_rotation_t oled_init_user(oled_rotation_t rotation) {
if (is_keyboard_master()) {
return OLED_ROTATION_0;
diff --git a/keyboards/helix/rev2/keymaps/five_rows/rules.mk b/keyboards/helix/rev2/keymaps/five_rows/rules.mk
index 58b7ef4efc..e59ce73326 100644
--- a/keyboards/helix/rev2/keymaps/five_rows/rules.mk
+++ b/keyboards/helix/rev2/keymaps/five_rows/rules.mk
@@ -31,7 +31,6 @@ ifneq ($(strip $(HELIX)),)
$(if $(SHOW_PARCE),$(info parse -$1-)) #debug
ifeq ($(strip $1),dispoff)
OLED_ENABLE = no
- OLED_DRIVER_ENABLE = no
LED_BACK_ENABLE = no
LED_UNDERGLOW_ENABLE = no
endif
diff --git a/keyboards/helix/rev2/keymaps/xulkal/rules.mk b/keyboards/helix/rev2/keymaps/xulkal/rules.mk
index 7fac4df7e1..bdf0479a40 100644
--- a/keyboards/helix/rev2/keymaps/xulkal/rules.mk
+++ b/keyboards/helix/rev2/keymaps/xulkal/rules.mk
@@ -4,7 +4,8 @@ OPT_DEFS += -DRGBLIGHT_ANIMATIONS
# Helix specific define for correct RGBLED_NUM
OPT_DEFS += -DRGBLED_BACK
-OLED_DRIVER_ENABLE = yes
+OLED_ENABLE = yes
+OLED_DRIVER = SSD1306
# Helix specific font file
OPT_DEFS += -DOLED_FONT_H=\"common/glcdfont.c\"
# Xulkal specific oled define
diff --git a/keyboards/helix/rev2/local_features.mk b/keyboards/helix/rev2/local_features.mk
index ce3853a02c..47e8c6a83e 100644
--- a/keyboards/helix/rev2/local_features.mk
+++ b/keyboards/helix/rev2/local_features.mk
@@ -156,17 +156,20 @@ endif
ifeq ($(strip $(OLED_ENABLE)), yes)
ifeq ($(strip $(OLED_SELECT)),core)
- OLED_DRIVER_ENABLE = yes
+ OLED_ENABLE = yes
+ OLED_DRIVER = SSD1306
ifeq ($(strip $(LOCAL_GLCDFONT)), yes)
OPT_DEFS += -DOLED_FONT_H=\<helixfont.h\>
else
OPT_DEFS += -DOLED_FONT_H=\"common/glcdfont.c\"
endif
else
+ OLED_ENABLE = no # disable OLED in TOP/common_features.mk
+ OLED_LOCAL_ENABLE = yes
SRC += local_drivers/i2c.c
SRC += local_drivers/ssd1306.c
KEYBOARD_PATHS += $(HELIX_TOP_DIR)/local_drivers
- OPT_DEFS += -DOLED_ENABLE
+ OPT_DEFS += -DOLED_LOCAL_ENABLE
ifeq ($(strip $(LOCAL_GLCDFONT)), yes)
OPT_DEFS += -DLOCAL_GLCDFONT
endif
@@ -177,7 +180,8 @@ ifneq ($(strip $(SHOW_HELIX_OPTIONS)),)
$(eval $(call HELIX_CUSTOMISE_MSG))
ifneq ($(strip $(SHOW_VERBOSE_INFO)),)
$(info -- RGBLIGHT_ENABLE = $(RGBLIGHT_ENABLE))
- $(info -- OLED_DRIVER_ENABLE = $(OLED_DRIVER_ENABLE))
+ $(info -- OLED_DRIVER = $(OLED_DRIVER))
+ $(info -- OLED_LOCAL_ENABLE = $(OLED_LOCAL_ENABLE))
$(info -- CONSOLE_ENABLE = $(CONSOLE_ENABLE))
$(info -- OPT_DEFS = $(OPT_DEFS))
$(info -- SPLIT_KEYBOARD = $(SPLIT_KEYBOARD))
diff --git a/keyboards/helix/rev3_4rows/oled_display.c b/keyboards/helix/rev3_4rows/oled_display.c
index 7716a172c9..23edbf7be4 100644
--- a/keyboards/helix/rev3_4rows/oled_display.c
+++ b/keyboards/helix/rev3_4rows/oled_display.c
@@ -35,7 +35,7 @@ enum layer_names {
_ADJUST
};
-#ifdef OLED_DRIVER_ENABLE
+#ifdef OLED_ENABLE
void render_status(void) {
diff --git a/keyboards/helix/rev3_4rows/rules.mk b/keyboards/helix/rev3_4rows/rules.mk
index 530d1d750e..f29deaf586 100644
--- a/keyboards/helix/rev3_4rows/rules.mk
+++ b/keyboards/helix/rev3_4rows/rules.mk
@@ -3,7 +3,8 @@ RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow
SPLIT_KEYBOARD = yes
RGB_MATRIX_ENABLE = no
RGB_MATRIX_DRIVER = WS2812
-OLED_DRIVER_ENABLE = yes
+OLED_ENABLE = yes
+OLED_DRIVER = SSD1306
ENCODER_ENABLE = yes
DIP_SWITCH_ENABLE = no
LTO_ENABLE = yes
diff --git a/keyboards/helix/rev3_5rows/keymaps/five_rows/oled_display.c b/keyboards/helix/rev3_5rows/keymaps/five_rows/oled_display.c
index 689efe4c88..090e8aaec3 100644
--- a/keyboards/helix/rev3_5rows/keymaps/five_rows/oled_display.c
+++ b/keyboards/helix/rev3_5rows/keymaps/five_rows/oled_display.c
@@ -35,9 +35,9 @@ void init_helix_oled(void) {
}
//SSD1306 OLED update loop, make sure to add #define SSD1306OLED in config.h
-#if defined(SSD1306OLED) || defined(OLED_DRIVER_ENABLE)
+#if defined(SSD1306OLED) || defined(OLED_ENABLE)
-# if defined(OLED_DRIVER_ENABLE)
+# if defined(OLED_ENABLE)
oled_rotation_t oled_init_user(oled_rotation_t rotation) {
if (is_keyboard_master()) {
return OLED_ROTATION_0;
diff --git a/keyboards/helix/rev3_5rows/keymaps/five_rows/rules.mk b/keyboards/helix/rev3_5rows/keymaps/five_rows/rules.mk
index 7344797643..d10972bbdf 100644
--- a/keyboards/helix/rev3_5rows/keymaps/five_rows/rules.mk
+++ b/keyboards/helix/rev3_5rows/keymaps/five_rows/rules.mk
@@ -19,7 +19,7 @@ ifneq ($(strip $(HELIX)),)
# parse 'dispoff', 'consle', 'back', 'oled', 'no-ani', 'mini-ani', 'lto', 'no-lto', 'no-enc', 'scan'
$(if $(SHOW_PARCE),$(info parse .$1.)) #debug
ifeq ($(strip $1),dispoff)
- OLED_DRIVER_ENABLE = no
+ OLED_ENABLE = no
RGBLIGHT_ENABLE = no
endif
ifeq ($(strip $1),console)
@@ -38,7 +38,7 @@ ifneq ($(strip $(HELIX)),)
ENCODER_ENABLE = no
endif
ifeq ($(strip $1),oled)
- OLED_DRIVER_ENABLE = yes
+ OLED_ENABLE = yes
endif
ifeq ($(strip $1),back)
RGBLIGHT_ENABLE = yes
diff --git a/keyboards/helix/rev3_5rows/oled_display.c b/keyboards/helix/rev3_5rows/oled_display.c
index ffe8b594b3..fbaa9bc562 100644
--- a/keyboards/helix/rev3_5rows/oled_display.c
+++ b/keyboards/helix/rev3_5rows/oled_display.c
@@ -35,7 +35,7 @@ enum layer_names {
_ADJUST
};
-#ifdef OLED_DRIVER_ENABLE
+#ifdef OLED_ENABLE
void render_status(void) {
diff --git a/keyboards/helix/rev3_5rows/rules.mk b/keyboards/helix/rev3_5rows/rules.mk
index 530d1d750e..f29deaf586 100644
--- a/keyboards/helix/rev3_5rows/rules.mk
+++ b/keyboards/helix/rev3_5rows/rules.mk
@@ -3,7 +3,8 @@ RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow
SPLIT_KEYBOARD = yes
RGB_MATRIX_ENABLE = no
RGB_MATRIX_DRIVER = WS2812
-OLED_DRIVER_ENABLE = yes
+OLED_ENABLE = yes
+OLED_DRIVER = SSD1306
ENCODER_ENABLE = yes
DIP_SWITCH_ENABLE = no
LTO_ENABLE = yes