summaryrefslogtreecommitdiffstats
path: root/keyboards/pearl
diff options
context:
space:
mode:
Diffstat (limited to 'keyboards/pearl')
-rw-r--r--keyboards/pearl/config.h3
-rw-r--r--keyboards/pearl/pearl.c31
2 files changed, 14 insertions, 20 deletions
diff --git a/keyboards/pearl/config.h b/keyboards/pearl/config.h
index 0ae69e8e2b..5dbba3ec0d 100644
--- a/keyboards/pearl/config.h
+++ b/keyboards/pearl/config.h
@@ -31,7 +31,8 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define RGBLIGHT_ANIMATIONS
#define RGBLED_NUM 12
-#define BACKLIGHT_LEVELS 1
+#define BACKLIGHT_PIN D4
+#define BACKLIGHT_LEVELS 3
#define MATRIX_ROWS 4
#define MATRIX_COLS 13
diff --git a/keyboards/pearl/pearl.c b/keyboards/pearl/pearl.c
index 093b5fdd93..cebbc9fcba 100644
--- a/keyboards/pearl/pearl.c
+++ b/keyboards/pearl/pearl.c
@@ -17,32 +17,25 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#include "pearl.h"
-void backlight_init_ports(void) {
- // initialize pins D0, D1, D4 and D6 as output
+void keyboard_pre_init_kb(void) {
+ led_init_ports();
+ keyboard_pre_init_user();
+}
+
+void led_init_ports(void) {
setPinOutput(D0);
setPinOutput(D1);
- setPinOutput(D4);
setPinOutput(D6);
-
- // turn backlight LEDs on
writePinHigh(D0);
writePinHigh(D1);
- writePinHigh(D4);
writePinHigh(D6);
}
-void backlight_set(uint8_t level) {
- if (level == 0) {
- // turn backlight LEDs off
- writePinLow(D0);
- writePinLow(D1);
- writePinLow(D4);
- writePinLow(D6);
- } else {
- // turn backlight LEDs on
- writePinHigh(D0);
- writePinHigh(D1);
- writePinHigh(D4);
- writePinHigh(D6);
+bool led_update_kb(led_t led_state) {
+ if (led_update_user(led_state)) {
+ writePin(D0, !led_state.num_lock);
+ writePin(D1, !led_state.caps_lock);
+ writePin(D6, !led_state.scroll_lock);
}
+ return true;
}