qmk-firmware/keyboards/mechmini/mechmini.c
Kenneth Aloysius eba4cb7a04 RGB underglow support for JJ40, clean up redundant code in Mechmini keymap (#2196)
* Cleanup Mechmini keymap. Once the custom RGB function is defined, there is no need to manually handle RGB code.

* Change default to KEYMAP_MIT, not KEYMAP_OFFSET

* Add custom RGB code for JJ40

* Reset Mechmini advertised power draw to 500. Will have to test actual maximum power draw later.

* RGB working on JJ40.

* Fix: saturation increase/decrease flipped

* Add new directory for my custom keymap with RGB keycodes

* Swap LAlt and LGUI

* Update JJ40 max power draw with measured value

* Update: fun40 rules.mk to enable underglow; earlier failed Travis CI
2018-01-01 17:34:46 -05:00

47 lines
1.3 KiB
C

/*
Copyright 2017 Luiz Ribeiro <luizribeiro@gmail.com>
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
the Free Software Foundation, either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#include "mechmini.h"
#include <avr/pgmspace.h>
#include "action_layer.h"
#include "i2c.h"
#include "quantum.h"
#include "rgblight.h"
// custom RGB driver
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);
}
__attribute__ ((weak))
void matrix_scan_user(void) {
rgblight_task();
/* add other tasks to be done on each matrix scan */
}