qmk

Unnamed repository; edit this file 'description' to name the repository.
git clone git://git.z3bra.org/qmk.git
Log | Files | Refs | Submodules | LICENSE

commit 5632552558fc5e032e89c62d578dff7d3c3cb800
parent d3a6296199c6f6564e0fffd6d7c1355496d9feac
Author: MechMerlin <30334081+mechmerlin@users.noreply.github.com>
Date:   Fri, 26 Oct 2018 21:20:00 -0700

RGB Support for Panc60 (#4253)

* add RGB underglow support

* enable RGB underglow and backlighting

Diffstat:
keyboards/panc60/panc60.c | 39+++++++++++++++++++++++++++++++++++++++
keyboards/panc60/rules.mk | 4++--
2 files changed, 41 insertions(+), 2 deletions(-)

diff --git a/keyboards/panc60/panc60.c b/keyboards/panc60/panc60.c @@ -14,8 +14,15 @@ * along with this program. If not, see <http://www.gnu.org/licenses/>. */ #include "panc60.h" +#ifdef BACKLIGHT_ENABLE +#include "backlight.h" +#endif +#ifdef RGBLIGHT_ENABLE +#include "rgblight.h" +#endif #include <avr/pgmspace.h> + #include "action_layer.h" #include "i2c.h" #include "quantum.h" @@ -23,3 +30,35 @@ __attribute__ ((weak)) void matrix_scan_user(void) { } + +#ifdef RGBLIGHT_ENABLE +extern rgblight_config_t rgblight_config; + +void rgblight_set(void) { + if (!rgblight_config.enable) { + for (uint8_t i = 0; i < RGBLED_NUM; i++) { + led[i].r = 0; + led[i].g = 0; + led[i].b = 0; + } + } + + i2c_init(); + i2c_send(0xb0, (uint8_t*)led, 3 * RGBLED_NUM); +} +#endif + +void backlight_init_ports(void) { + DDRD |= (1<<0 | 1<<1 | 1<<4 | 1<<6); + PORTD &= ~(1<<0 | 1<<1 | 1<<4 | 1<<6); +} + +void backlight_set(uint8_t level) { + if (level == 0) { + // Turn out the lights + PORTD &= ~(1<<0 | 1<<1 | 1<<4 | 1<<6); + } else { + // Turn on the lights + PORTD |= (1<<0 | 1<<1 | 1<<4 | 1<<6); + } +} diff --git a/keyboards/panc60/rules.mk b/keyboards/panc60/rules.mk @@ -36,8 +36,8 @@ MOUSEKEY_ENABLE = yes EXTRAKEY_ENABLE = yes CONSOLE_ENABLE = yes COMMAND_ENABLE = yes -BACKLIGHT_ENABLE = no -RGBLIGHT_ENABLE = no +BACKLIGHT_ENABLE = yes +RGBLIGHT_ENABLE = yes RGBLIGHT_CUSTOM_DRIVER = yes OPT_DEFS = -DDEBUG_LEVEL=0