/* Copyright 2021 Danny Nguyen 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 . */ #include "quantum.h" #include "split_util.h" void matrix_init_kb(void) { gpio_set_pin_output(CAPS_LOCK_LED_PIN); matrix_init_user(); } bool led_update_kb(led_t led_state) { // Only update if left half if (led_update_user(led_state) && isLeftHand) { gpio_write_pin(CAPS_LOCK_LED_PIN, !led_state.caps_lock); } return true; } void eeconfig_init_kb(void) { #ifdef BACKLIGHT_ENABLE backlight_enable(); backlight_level(3); #endif #ifdef RGBLIGHT_ENABLE rgblight_enable(); // Enable RGB by default rgblight_sethsv(0, 255, 255); // Set default HSV - red hue, full saturation, full brightness #ifdef RGBLIGHT_EFFECT_RAINBOW_SWIRL rgblight_mode(RGBLIGHT_MODE_RAINBOW_SWIRL + 2); // set to RGB_RAINBOW_SWIRL by default #endif #endif eeconfig_update_kb(0); eeconfig_init_user(); } #ifdef ENCODER_ENABLE bool encoder_update_kb(uint8_t index, bool clockwise) { if (!encoder_update_user(index, clockwise)) { return false; } if (index == 0) { if (clockwise) { tap_code(KC_PGDN); } else { tap_code(KC_PGUP); } } else if (index == 1) { if (clockwise) { tap_code(KC_VOLU); } else { tap_code(KC_VOLD); } } return false; } #endif