summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--keyboards/ergodox/config.h2
-rw-r--r--keyboards/ergodox/keymaps/jack/Makefile5
-rw-r--r--keyboards/ergodox/keymaps/jack/config.h14
-rw-r--r--keyboards/ergodox/keymaps/jack/keymap.c4
-rw-r--r--quantum/rgblight.c18
-rw-r--r--quantum/rgblight.h1
6 files changed, 39 insertions, 5 deletions
diff --git a/keyboards/ergodox/config.h b/keyboards/ergodox/config.h
index edc60caae1..049c707a56 100644
--- a/keyboards/ergodox/config.h
+++ b/keyboards/ergodox/config.h
@@ -1,6 +1,8 @@
#ifndef KEYBOARDS_ERGODOX_CONFIG_H_
#define KEYBOARDS_ERGODOX_CONFIG_H_
+#include "config_common.h"
+
#define MOUSEKEY_DELAY 100
#define MOUSEKEY_INTERVAL 20
#define MOUSEKEY_MAX_SPEED 3
diff --git a/keyboards/ergodox/keymaps/jack/Makefile b/keyboards/ergodox/keymaps/jack/Makefile
new file mode 100644
index 0000000000..1e57612788
--- /dev/null
+++ b/keyboards/ergodox/keymaps/jack/Makefile
@@ -0,0 +1,5 @@
+RGBLIGHT_ENABLE = yes
+
+ifndef QUANTUM_DIR
+ include ../../../../Makefile
+endif
diff --git a/keyboards/ergodox/keymaps/jack/config.h b/keyboards/ergodox/keymaps/jack/config.h
new file mode 100644
index 0000000000..01ccfb3a2a
--- /dev/null
+++ b/keyboards/ergodox/keymaps/jack/config.h
@@ -0,0 +1,14 @@
+#ifndef CONFIG_USER_H
+#define CONFIG_USER_H
+
+#include "../../config.h"
+
+/* ws2812 RGB LED */
+#define RGB_DI_PIN D7
+// #define RGBLIGHT_TIMER
+#define RGBLED_NUM 20 // Number of LEDs
+#define RGBLIGHT_HUE_STEP 8
+#define RGBLIGHT_SAT_STEP 8
+#define RGBLIGHT_VAL_STEP 8
+
+#endif \ No newline at end of file
diff --git a/keyboards/ergodox/keymaps/jack/keymap.c b/keyboards/ergodox/keymaps/jack/keymap.c
index dda253fa45..1dd5a76187 100644
--- a/keyboards/ergodox/keymaps/jack/keymap.c
+++ b/keyboards/ergodox/keymaps/jack/keymap.c
@@ -24,7 +24,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,
KC_NO, KC_N, KC_M, KC_COMM,KC_DOT, KC_SLSH, KC_ENT,
MO(1), KC_LEFT,KC_DOWN,KC_UP, KC_RGHT,
- KC_NO, KC_NO,
+ RGB_TOG, RGB_HUI,
KC_PGUP,
KC_PGDN, KC_SPC,KC_SPC
),
@@ -90,7 +90,7 @@ const macro_t *action_get_macro(keyrecord_t *record, uint8_t id, uint8_t opt)
// Runs just one time when the keyboard initializes.
void matrix_init_user(void) {
-
+
};
// Runs constantly in the background, in a loop.
diff --git a/quantum/rgblight.c b/quantum/rgblight.c
index f82e3ec558..801ca1d0d9 100644
--- a/quantum/rgblight.c
+++ b/quantum/rgblight.c
@@ -50,7 +50,11 @@ const uint8_t RGBLED_KNIGHT_INTERVALS[] PROGMEM = {100, 50, 20};
rgblight_config_t rgblight_config;
rgblight_config_t inmem_config;
-struct cRGB led[RGBLED_NUM];
+#ifdef RGBW
+ struct cRGBW led[RGBLED_NUM];
+#else
+ struct cRGB led[RGBLED_NUM];
+#endif
uint8_t rgblight_inited = 0;
@@ -334,14 +338,22 @@ void rgblight_setrgb(uint8_t r, uint8_t g, uint8_t b) {
void rgblight_set(void) {
if (rgblight_config.enable) {
- ws2812_setleds(led, RGBLED_NUM);
+ #ifdef RGBW
+ ws2812_setleds_rgbw(led, RGBLED_NUM);
+ #else
+ ws2812_setleds(led, RGBLED_NUM);
+ #endif
} else {
for (uint8_t i = 0; i < RGBLED_NUM; i++) {
led[i].r = 0;
led[i].g = 0;
led[i].b = 0;
}
- ws2812_setleds(led, RGBLED_NUM);
+ #ifdef RGBW
+ ws2812_setleds_rgbw(led, RGBLED_NUM);
+ #else
+ ws2812_setleds(led, RGBLED_NUM);
+ #endif
}
}
diff --git a/quantum/rgblight.h b/quantum/rgblight.h
index def26c428c..2a712d8be4 100644
--- a/quantum/rgblight.h
+++ b/quantum/rgblight.h
@@ -1,6 +1,7 @@
#ifndef RGBLIGHT_H
#define RGBLIGHT_H
+#define RGBW 1
#if !defined(AUDIO_ENABLE) && defined(RGBLIGHT_TIMER)
#define RGBLIGHT_MODES 23