[Keyboard] Quefrency Rev2 Caps Lock LED, set lighting defaults (#8729)

* Add support for Caps Lock LED

Currently ignores the fact that led_state is not synced between halves, so caps lock LED doesn't do anything if USB is plugged into right half

* Set initial backlight and RGB mode/values on blank EEPROM

* Set default VIA layout options

* Add backlight/RGB ifdefs

* Set bootloaders for each rev
This commit is contained in:
Danny 2020-04-12 16:09:09 -04:00 committed by GitHub
parent b56a41800a
commit 46a69d1f3b
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
6 changed files with 44 additions and 17 deletions

View file

@ -55,3 +55,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define RGB_DI_PIN D3
#define RGBLIGHT_ANIMATIONS
#define RGBLED_NUM 16 // Number of LEDs
// Set 65% column (option 1) and Macro (option 2) on by default
#define VIA_EEPROM_LAYOUT_OPTIONS_DEFAULT 0x06

View file

@ -0,0 +1 @@
BOOTLOADER = caterina

View file

@ -47,6 +47,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define DEBOUNCE 5
#define BACKLIGHT_PIN B5
#define CAPS_LOCK_LED_PIN B6
/* serial.c configuration for split keyboard */
#define SOFT_SERIAL_PIN D0
@ -62,3 +63,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#define RGBLED_NUM 16 // Number of LEDs
#define RGBLED_SPLIT { 8, 8 }
#define RGBLIGHT_LED_MAP { 1, 2, 3, 12, 13, 14, 15, 0, 7, 6, 5, 4, 11, 10, 9, 8 }
// Set 65% column (option 3) and Macro (option 4) on by default
#define VIA_EEPROM_LAYOUT_OPTIONS_DEFAULT 0x0018
#define VIA_EEPROM_LAYOUT_OPTIONS_SIZE 2

View file

@ -1 +1,32 @@
#include "quefrency.h"
#include "split_util.h"
void matrix_init_kb(void) {
setPinOutput(CAPS_LOCK_LED_PIN);
matrix_init_user();
}
bool led_update_kb(led_t led_state) {
// Only update if left half
if (isLeftHand && led_update_user(led_state)) {
writePin(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_ANIMATIONS
rgblight_mode(RGBLIGHT_MODE_RAINBOW_SWIRL + 2); // set to RGB_RAINBOW_SWIRL by default
#endif
#endif
eeconfig_update_kb(0);
eeconfig_init_user();
}

View file

@ -1,3 +1,4 @@
BOOTLOADER = atmel-dfu
BACKLIGHT_ENABLE = yes
RGBLIGHT_ENABLE = yes
ENCODER_ENABLE = yes

View file

@ -1,32 +1,18 @@
# MCU name
MCU = atmega32u4
# Bootloader selection
# Teensy halfkay
# Pro Micro caterina
# Atmel DFU atmel-dfu
# LUFA DFU lufa-dfu
# QMK DFU qmk-dfu
# ATmega32A bootloadHID
# ATmega328P USBasp
BOOTLOADER = caterina
# Build Options
# change to "no" to disable the options, or define them in the Makefile in
# the appropriate keymap folder that will get included automatically
#
BOOTMAGIC_ENABLE = no # Virtual DIP switch configuration
MOUSEKEY_ENABLE = no # Mouse keys
EXTRAKEY_ENABLE = yes # Audio control and System control
CONSOLE_ENABLE = yes # Console for debug
COMMAND_ENABLE = no # Commands for debug and configuration
CONSOLE_ENABLE = yes # Console for debug
COMMAND_ENABLE = no # Commands for debug and configuration
NKRO_ENABLE = no # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
MIDI_ENABLE = no # MIDI controls
AUDIO_ENABLE = no # Audio output on port C6
UNICODE_ENABLE = no # Unicode
BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID
RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight.
RGBLIGHT_ENABLE = yes # Enable WS2812 RGB underlight.
# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE
SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend