diff options
author | Joel Challis <git@zvecr.com> | 2019-10-29 22:53:11 +0000 |
---|---|---|
committer | Florian Didron <fdidron@users.noreply.github.com> | 2019-11-04 17:24:31 +0900 |
commit | 560d1c53851e5c3d45c5a0f5e16a925ee21a4396 (patch) | |
tree | 08357989f3be526fbb521137abc8c607707ab9c0 /quantum/template/ps2avrgb | |
parent | 66d4c71b03d25b9d889f20bfa471de5fe037a428 (diff) |
Refactor ps2avrgb i2c ws2812 to core (#7183)
* Refactor ps2avrgb i2c ws2812 to core
* Refactor jj40 to use ws2812 i2c driver
* Refactor ps2avrgb template to use ws2812 i2c driver
* Add ws2812 stub files
* clang-format and driver config
* Add ws2812 driver docs
* Fix default config values
* Update tmk_core/protocol/vusb/main.c
Co-Authored-By: Drashna Jaelre <drashna@live.com>
Diffstat (limited to 'quantum/template/ps2avrgb')
-rw-r--r-- | quantum/template/ps2avrgb/rules.mk | 6 | ||||
-rw-r--r-- | quantum/template/ps2avrgb/template.c | 44 |
2 files changed, 17 insertions, 33 deletions
diff --git a/quantum/template/ps2avrgb/rules.mk b/quantum/template/ps2avrgb/rules.mk index 69554cd308..52d9988125 100644 --- a/quantum/template/ps2avrgb/rules.mk +++ b/quantum/template/ps2avrgb/rules.mk @@ -14,9 +14,7 @@ EXTRAKEY_ENABLE = yes CONSOLE_ENABLE = yes COMMAND_ENABLE = yes BACKLIGHT_ENABLE = no -RGBLIGHT_ENABLE = no -RGBLIGHT_CUSTOM_DRIVER = yes +RGBLIGHT_ENABLE = yes +WS2812_DRIVER = i2c OPT_DEFS = -DDEBUG_LEVEL=0 - -SRC += i2c_master.c diff --git a/quantum/template/ps2avrgb/template.c b/quantum/template/ps2avrgb/template.c index acc8698f56..503da7ca71 100644 --- a/quantum/template/ps2avrgb/template.c +++ b/quantum/template/ps2avrgb/template.c @@ -15,44 +15,30 @@ */ #include "%KEYBOARD%.h" -#ifdef RGBLIGHT_ENABLE -# include <string.h> -# include "i2c_master.h" -# include "rgblight.h" +// Optional override functions below. +// You can leave any or all of these undefined. +// These are only required if you want to perform custom actions. -extern rgblight_config_t rgblight_config; +/* void matrix_init_kb(void) { - 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); - } + // put your keyboard start-up code here + // runs once when the firmware starts up - i2c_transmit(0xb0, (uint8_t*)led, 3 * RGBLED_NUM, 100); + matrix_init_user(); } -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; - } - - rgblight_task(); - matrix_scan_user(); + // put your looping keyboard code here + // runs every cycle (a lot) + + matrix_scan_user(); } -#endif +bool process_record_kb(uint16_t keycode, keyrecord_t *record) { + // put your per-action keyboard code here + // runs for every action, just before processing by the firmware -__attribute__ ((weak)) -void matrix_scan_user(void) { + return process_record_user(keycode, record); } |