X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=keyboards%2Fjj40%2Fjj40.c;h=26cfa6c067e93b7bb5bff7edec75a6044103795a;hb=c44fc68297029da87233777aff6978d39caebbb1;hp=d5add2a6b1d0b48da29b1a62dcb5761c47ac3337;hpb=9113f3387a670373919fe62899b0ab27e9d89eba;p=qmk_firmware.git diff --git a/keyboards/jj40/jj40.c b/keyboards/jj40/jj40.c index d5add2a6b..26cfa6c06 100644 --- a/keyboards/jj40/jj40.c +++ b/keyboards/jj40/jj40.c @@ -1,5 +1,6 @@ /* Copyright 2017 Luiz Ribeiro +Modified 2018 Kenneth A. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -17,24 +18,39 @@ along with this program. If not, see . #include "jj40.h" -#include +#ifdef RGBLIGHT_ENABLE -#include "action_layer.h" -#include "quantum.h" +#include +#include "i2c_master.h" +#include "rgblight.h" -__attribute__ ((weak)) -void matrix_scan_user(void) { - /* Nothing to do here... yet */ -} +extern rgblight_config_t rgblight_config; void matrix_init_kb(void) { - - // Call the keymap level matrix init. + i2c_init(); + // call user level keymaps, if any matrix_init_user(); +} +// custom RGB driver +void rgblight_set(void) { + if (!rgblight_config.enable) { + memset(led, 0, 3 * RGBLED_NUM); + } + + i2c_transmit(0xb0, (uint8_t*)led, 3 * RGBLED_NUM, 100); +} + +bool rgb_init = false; + +void matrix_scan_kb(void) { + // if LEDs were previously on before poweroff, turn them back on + if (rgb_init == false && rgblight_config.enable) { + i2c_transmit(0xb0, (uint8_t*)led, 3 * RGBLED_NUM, 100); + rgb_init = true; + } - // Set our LED pins as output - DDRB |= (1<<6); + rgblight_task(); + matrix_scan_user(); } -void matrix_init_user(void) { -} \ No newline at end of file +#endif