summaryrefslogtreecommitdiff
path: root/keyboards/neson_design
diff options
context:
space:
mode:
Diffstat (limited to 'keyboards/neson_design')
-rw-r--r--keyboards/neson_design/700e/700e.c51
-rw-r--r--keyboards/neson_design/700e/config.h7
-rw-r--r--keyboards/neson_design/700e/rules.mk3
-rw-r--r--keyboards/neson_design/n6/config.h7
-rw-r--r--keyboards/neson_design/n6/n6.c41
-rw-r--r--keyboards/neson_design/n6/rules.mk3
-rw-r--r--keyboards/neson_design/nico/nico.c4
7 files changed, 45 insertions, 71 deletions
diff --git a/keyboards/neson_design/700e/700e.c b/keyboards/neson_design/700e/700e.c
index cf31b6b72b..9def73d6a4 100644
--- a/keyboards/neson_design/700e/700e.c
+++ b/keyboards/neson_design/700e/700e.c
@@ -48,18 +48,18 @@ enum {
// led index
#define ST_LEFT_BEGIN 0
-#ifdef DRIVER_ADDR_2
+#ifdef IS31FL3731_I2C_ADDRESS_2
#define ST_LEFT_SIZE 4
#else
#define ST_LEFT_SIZE 2
#endif
#define ST_LEFT_END (ST_LEFT_BEGIN+ST_LEFT_SIZE-1)
-#ifdef DRIVER_ADDR_2
+#ifdef IS31FL3731_I2C_ADDRESS_2
#define ST_RIGHT_BEGIN 60
#else
#define ST_RIGHT_BEGIN 30
#endif
-#ifdef DRIVER_ADDR_2
+#ifdef IS31FL3731_I2C_ADDRESS_2
#define ST_RIGHT_SIZE 4
#else
#define ST_RIGHT_SIZE 2
@@ -111,7 +111,7 @@ static void self_testing(void)
}
if (rgb_state.index >= ST_LEFT_END) {
- for (int i = rgb_state.index - 1; i < RGB_MATRIX_LED_COUNT - rgb_state.index + 1; i++) {
+ for (int i = rgb_state.index - 1; i < IS31FL3731_LED_COUNT - rgb_state.index + 1; i++) {
is31fl3731_set_color(i, led.r, led.g, led.b);
}
if (rgb_state.index == ST_LEFT_END) {
@@ -173,13 +173,13 @@ static void self_testing(void)
}
break;
case ST_STAGE_3:
- if (rgb_state.index != RGB_MATRIX_LED_COUNT/2) {
+ if (rgb_state.index != IS31FL3731_LED_COUNT/2) {
is31fl3731_set_color_all(0, 0, 0);
}
// light left and right
- if (rgb_state.index == RGB_MATRIX_LED_COUNT/2) {
+ if (rgb_state.index == IS31FL3731_LED_COUNT/2) {
if (rgb_state.duration) {
rgb_state.duration--;
} else {
@@ -207,7 +207,7 @@ static void self_testing(void)
update_ticks();
}
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3731_led_t PROGMEM g_is31fl3731_leds[IS31FL3731_LED_COUNT] = {
/* Refer to IS31 manual for these locations
* driver
* | R location
@@ -294,18 +294,8 @@ void matrix_init_kb(void)
setPinOutput(LED_CAPS_LOCK_PIN);
writePinLow(LED_CAPS_LOCK_PIN);
- i2c_init();
- is31fl3731_init(DRIVER_ADDR_1);
-#ifdef DRIVER_ADDR_2
- is31fl3731_init(DRIVER_ADDR_2);
-#endif
- for (int index = 0; index < RGB_MATRIX_LED_COUNT; index++) {
- is31fl3731_set_led_control_register(index, true, true, true);
- }
- is31fl3731_update_led_control_registers(DRIVER_ADDR_1, 0);
-#ifdef DRIVER_ADDR_2
- is31fl3731_update_led_control_registers(DRIVER_ADDR_2, 1);
-#endif
+ is31fl3731_init_drivers();
+
update_ticks();
matrix_init_user();
}
@@ -322,7 +312,7 @@ void housekeeping_task_kb(void)
} else if (rgb_state.state == CAPS_ALERT) {
if (rgb_state.alert) {
is31fl3731_set_color_all(ALERM_LED_R, ALERM_LED_G, ALERM_LED_B);
- LED_TYPE leds[4];
+ rgb_led_t leds[4];
for (int i = 0; i < 4; i++) {
leds[i].r = ALERM_LED_G;
leds[i].g = ALERM_LED_R;
@@ -331,7 +321,7 @@ void housekeeping_task_kb(void)
ws2812_setleds(leds, 4);
} else {
is31fl3731_set_color_all(0, 0, 0);
- LED_TYPE leds[4] = {0};
+ rgb_led_t leds[4] = {0};
ws2812_setleds(leds, 4);
}
@@ -341,28 +331,25 @@ void housekeeping_task_kb(void)
}
}
- is31fl3731_update_pwm_buffers(DRIVER_ADDR_1, 0);
-#ifdef DRIVER_ADDR_2
- is31fl3731_update_pwm_buffers(DRIVER_ADDR_2, 1);
-#endif
+ is31fl3731_flush();
housekeeping_task_user();
}
-void rgblight_call_driver(LED_TYPE *start_led, uint8_t num_leds)
+void rgblight_call_driver(rgb_led_t *start_led, uint8_t num_leds)
{
if (rgb_state.state != NORMAL) return;
- for (uint8_t i = 0; i < RGB_MATRIX_LED_COUNT; i++) {
+ for (uint8_t i = 0; i < IS31FL3731_LED_COUNT; i++) {
is31fl3731_set_color(i, start_led[i].r, start_led[i].g, start_led[i].b);
}
- LED_TYPE leds[4];
+ rgb_led_t leds[4];
for (int i = 0; i < 4; i++) {
- leds[i].r = start_led[RGB_MATRIX_LED_COUNT+i].g;
- leds[i].g = start_led[RGB_MATRIX_LED_COUNT+i].r;
- leds[i].b = start_led[RGB_MATRIX_LED_COUNT+i].b;
+ leds[i].r = start_led[IS31FL3731_LED_COUNT+i].g;
+ leds[i].g = start_led[IS31FL3731_LED_COUNT+i].r;
+ leds[i].b = start_led[IS31FL3731_LED_COUNT+i].b;
}
- //ws2812_setleds(start_led+RGB_MATRIX_LED_COUNT, 4);
+ //ws2812_setleds(start_led+IS31FL3731_LED_COUNT, 4);
ws2812_setleds(leds, 4);
}
diff --git a/keyboards/neson_design/700e/config.h b/keyboards/neson_design/700e/config.h
index cf89616aa8..2fdcead121 100644
--- a/keyboards/neson_design/700e/config.h
+++ b/keyboards/neson_design/700e/config.h
@@ -32,9 +32,8 @@
#define DRIVER_1_LED_TOTAL 32
#define DRIVER_2_LED_TOTAL 32
-#define DRIVER_ADDR_1 0b1110100
-#define DRIVER_ADDR_2 0b1110111
-#define DRIVER_COUNT 2
-#define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL+DRIVER_2_LED_TOTAL)
+#define IS31FL3731_I2C_ADDRESS_1 IS31FL3731_I2C_ADDRESS_GND
+#define IS31FL3731_I2C_ADDRESS_2 IS31FL3731_I2C_ADDRESS_VCC
+#define IS31FL3731_LED_COUNT (DRIVER_1_LED_TOTAL+DRIVER_2_LED_TOTAL)
#define USB_SUSPEND_WAKEUP_DELAY 1000
diff --git a/keyboards/neson_design/700e/rules.mk b/keyboards/neson_design/700e/rules.mk
index 6e1439f1f5..5650ed1fee 100644
--- a/keyboards/neson_design/700e/rules.mk
+++ b/keyboards/neson_design/700e/rules.mk
@@ -11,4 +11,5 @@ BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow
NO_USB_STARTUP_CHECK = yes
-QUANTUM_LIB_SRC += i2c_master.c drivers/led/issi/is31fl3731.c
+QUANTUM_LIB_SRC += drivers/led/issi/is31fl3731.c
+I2C_DRIVER_REQUIRED = yes
diff --git a/keyboards/neson_design/n6/config.h b/keyboards/neson_design/n6/config.h
index 91d96c6a4d..22c12dfb97 100644
--- a/keyboards/neson_design/n6/config.h
+++ b/keyboards/neson_design/n6/config.h
@@ -32,7 +32,6 @@
#define DRIVER_1_LED_TOTAL 32
#define DRIVER_2_LED_TOTAL 32
-#define DRIVER_ADDR_1 0b1110100
-#define DRIVER_ADDR_2 0b1110111
-#define DRIVER_COUNT 2
-#define RGB_MATRIX_LED_COUNT (DRIVER_1_LED_TOTAL+DRIVER_2_LED_TOTAL)
+#define IS31FL3731_I2C_ADDRESS_1 IS31FL3731_I2C_ADDRESS_GND
+#define IS31FL3731_I2C_ADDRESS_2 IS31FL3731_I2C_ADDRESS_VCC
+#define IS31FL3731_LED_COUNT (DRIVER_1_LED_TOTAL+DRIVER_2_LED_TOTAL)
diff --git a/keyboards/neson_design/n6/n6.c b/keyboards/neson_design/n6/n6.c
index cf99404641..38b634eeb7 100644
--- a/keyboards/neson_design/n6/n6.c
+++ b/keyboards/neson_design/n6/n6.c
@@ -48,18 +48,18 @@ enum {
// led index
#define ST_LEFT_BEGIN 0
-#ifdef DRIVER_ADDR_2
+#ifdef IS31FL3731_I2C_ADDRESS_2
#define ST_LEFT_SIZE 4
#else
#define ST_LEFT_SIZE 2
#endif
#define ST_LEFT_END (ST_LEFT_BEGIN+ST_LEFT_SIZE-1)
-#ifdef DRIVER_ADDR_2
+#ifdef IS31FL3731_I2C_ADDRESS_2
#define ST_RIGHT_BEGIN 60
#else
#define ST_RIGHT_BEGIN 30
#endif
-#ifdef DRIVER_ADDR_2
+#ifdef IS31FL3731_I2C_ADDRESS_2
#define ST_RIGHT_SIZE 4
#else
#define ST_RIGHT_SIZE 2
@@ -115,7 +115,7 @@ static void self_testing(void)
}
if (rgb_state.index >= ST_LEFT_END) {
- for (int i = rgb_state.index - 1; i < RGB_MATRIX_LED_COUNT - rgb_state.index + 1; i++) {
+ for (int i = rgb_state.index - 1; i < IS31FL3731_LED_COUNT - rgb_state.index + 1; i++) {
is31fl3731_set_color(i, led.r, led.g, led.b);
}
if (rgb_state.index == ST_LEFT_END) {
@@ -177,13 +177,13 @@ static void self_testing(void)
}
break;
case ST_STAGE_3:
- if (rgb_state.index != RGB_MATRIX_LED_COUNT/2) {
+ if (rgb_state.index != IS31FL3731_LED_COUNT/2) {
is31fl3731_set_color_all(0, 0, 0);
}
// light left and right
- if (rgb_state.index == RGB_MATRIX_LED_COUNT/2) {
+ if (rgb_state.index == IS31FL3731_LED_COUNT/2) {
if (rgb_state.duration) {
rgb_state.duration--;
} else {
@@ -211,7 +211,7 @@ static void self_testing(void)
update_ticks();
}
-const is31_led PROGMEM g_is31_leds[RGB_MATRIX_LED_COUNT] = {
+const is31fl3731_led_t PROGMEM g_is31fl3731_leds[IS31FL3731_LED_COUNT] = {
/* Refer to IS31 manual for these locations
* driver
* | R location
@@ -298,18 +298,8 @@ void matrix_init_kb(void)
setPinOutput(LED_CAPS_LOCK_PIN);
writePinLow(LED_CAPS_LOCK_PIN);
- i2c_init();
- is31fl3731_init(DRIVER_ADDR_1);
-#ifdef DRIVER_ADDR_2
- is31fl3731_init(DRIVER_ADDR_2);
-#endif
- for (int index = 0; index < RGB_MATRIX_LED_COUNT; index++) {
- is31fl3731_set_led_control_register(index, true, true, true);
- }
- is31fl3731_update_led_control_registers(DRIVER_ADDR_1, 0);
-#ifdef DRIVER_ADDR_2
- is31fl3731_update_led_control_registers(DRIVER_ADDR_2, 1);
-#endif
+ is31fl3731_init_drivers();
+
update_ticks();
matrix_init_user();
}
@@ -320,7 +310,7 @@ void housekeeping_task_kb(void)
self_testing();
} else if (rgb_state.state == CAPS_ALERT) {
//gold 0xFF, 0xD9, 0x00
- LED_TYPE led = {
+ rgb_led_t led = {
.r = 0xFF,
//.g = 0xD9,
.g = 0xA5,
@@ -343,22 +333,19 @@ void housekeeping_task_kb(void)
}
}
- is31fl3731_update_pwm_buffers(DRIVER_ADDR_1, 0);
-#ifdef DRIVER_ADDR_2
- is31fl3731_update_pwm_buffers(DRIVER_ADDR_2, 1);
-#endif
+ is31fl3731_flush();
housekeeping_task_user();
}
-void rgblight_call_driver(LED_TYPE *start_led, uint8_t num_leds)
+void rgblight_call_driver(rgb_led_t *start_led, uint8_t num_leds)
{
if (rgb_state.state != NORMAL) return;
- for (uint8_t i = 0; i < RGB_MATRIX_LED_COUNT; i++) {
+ for (uint8_t i = 0; i < IS31FL3731_LED_COUNT; i++) {
is31fl3731_set_color(i, start_led[i].r, start_led[i].g, start_led[i].b);
}
- ws2812_setleds(start_led+RGB_MATRIX_LED_COUNT, 1);
+ ws2812_setleds(start_led+IS31FL3731_LED_COUNT, 1);
}
bool led_update_kb(led_t led_state)
diff --git a/keyboards/neson_design/n6/rules.mk b/keyboards/neson_design/n6/rules.mk
index 5d8397653e..a3e4abe6cd 100644
--- a/keyboards/neson_design/n6/rules.mk
+++ b/keyboards/neson_design/n6/rules.mk
@@ -10,4 +10,5 @@ NKRO_ENABLE = yes # Enable N-Key Rollover
BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow
-QUANTUM_LIB_SRC += i2c_master.c drivers/led/issi/is31fl3731.c
+QUANTUM_LIB_SRC += drivers/led/issi/is31fl3731.c
+I2C_DRIVER_REQUIRED = yes
diff --git a/keyboards/neson_design/nico/nico.c b/keyboards/neson_design/nico/nico.c
index 63f08b8639..b4d15777b7 100644
--- a/keyboards/neson_design/nico/nico.c
+++ b/keyboards/neson_design/nico/nico.c
@@ -22,7 +22,7 @@
static bool alert = false;
static bool backup = false;
-static LED_TYPE caps_led;
+static rgb_led_t caps_led;
static uint16_t last_ticks = 0;
#define ALERT_INTERVAL 500
@@ -66,7 +66,7 @@ void housekeeping_task_kb(void)
housekeeping_task_user();
}
-void rgblight_call_driver(LED_TYPE *start_led, uint8_t num_leds)
+void rgblight_call_driver(rgb_led_t *start_led, uint8_t num_leds)
{
start_led[2].r = start_led[0].r;
start_led[2].g = start_led[0].g;