]> git.donarmstrong.com Git - qmk_firmware.git/commitdiff
Add support for key backlighting to bfake
authorChris Lee <clee@mg8.org>
Sat, 2 Dec 2017 10:26:49 +0000 (03:26 -0700)
committerJack Humbert <jack.humb@gmail.com>
Fri, 2 Feb 2018 05:58:26 +0000 (00:58 -0500)
If BACKLIGHT_ENABLE is set to `yes` in `rules.mk`, then the user
can use the `BL_*` keycodes to adjust the backlight. At the moment,
only on/off is supported.

keyboards/bfake/bfake.c
keyboards/bfake/config.h
keyboards/bfake/rules.mk

index 33d0a60c21c2c03e8142eb0f2ef8ba149dbc5125..2160706fea56ee4946670412dea4d9f486625691 100644 (file)
@@ -16,7 +16,12 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
 */
 
 #include "bfake.h"
+#ifdef BACKLIGHT_ENABLE
+#include "backlight.h"
+#endif
+#ifdef RGBLIGHT_ENABLE
 #include "rgblight.h"
+#endif
 
 #include <avr/pgmspace.h>
 
@@ -24,6 +29,7 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
 #include "i2c.h"
 #include "quantum.h"
 
+#ifdef RGBLIGHT_ENABLE
 extern rgblight_config_t rgblight_config;
 
 void rgblight_set(void) {
@@ -38,8 +44,23 @@ void rgblight_set(void) {
     i2c_init();
     i2c_send(0xb0, (uint8_t*)led, 3 * RGBLED_NUM);
 }
+#endif
 
 __attribute__ ((weak))
 void matrix_scan_user(void) {
-    rgblight_task();
+}
+
+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);
+       }
 }
index c0e0face5a2b2727b106ee03e3bbef5ed0a2018a..de8c4b5df54ef907ca310e17ee6e852f6caa0835 100644 (file)
@@ -37,7 +37,8 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
 #define DIODE_DIRECTION COL2ROW
 #define DEBOUNCING_DELAY 5
 
-
+#define NO_BACKLIGHT_CLOCK
+#define BACKLIGHT_LEVELS 1
 #define RGBLIGHT_ANIMATIONS
 
 #define NO_UART 1
index 9165de4248ec01bf64ee3f17ebfffd3a82dad38f..6577ea193fd4a2c15aadd2622469eb870edc3fbf 100644 (file)
@@ -37,7 +37,7 @@ EXTRAKEY_ENABLE = yes
 CONSOLE_ENABLE = yes
 COMMAND_ENABLE = yes
 BACKLIGHT_ENABLE = no
-RGBLIGHT_ENABLE = yes
+RGBLIGHT_ENABLE = no
 RGBLIGHT_CUSTOM_DRIVER = yes
 
 OPT_DEFS = -DDEBUG_LEVEL=0
@@ -47,4 +47,4 @@ CUSTOM_MATRIX = yes
 SRC = matrix.c i2c.c
 
 # programming options
-PROGRAM_CMD = ./util/atmega32a_program.py $(TARGET).hex
\ No newline at end of file
+PROGRAM_CMD = ./util/atmega32a_program.py $(TARGET).hex