mirror of
https://github.com/Keychron/qmk_firmware.git
synced 2024-12-26 11:08:52 +06:00
7216fd0f47
* copied lets_slit to splinter
* initial splinter layout
* remove unused keymaps
* implemented second half of the keyboard
* initial definition of tap dance
* the tap dance is working now
tap dance for right hand 4c 2r
hold - shift
single tap - n
double tap - ñ
triple tap - Ñ
* clear the keymap.c
* put the tap state on to array
* the n tilde tap dance should produce right shift if hold
* add esc grv tap dance
* remove the defined SS_LSFT on tap_dance.h
because it was added on the quantum.h
* minor cleanup for the keymap
* use the X_* on tap dance
* added super alt tap dance
* use the NO_TAP on tap dance reset
* allow track what rows and cols pressed
* added the RGUI_ALT
* keymap arrangement
* use i2c
* initial rgb
* layer colors
* initial rgb pressed key
* set the layers led
* SUCCESS!!!
* cleaning
* improve shifted layer
* led brightness
* initial caps rainbow
* rename SET_LED_RGB to SET_LED_RGB_HEX
* clean the SET_LED_RGB_HEX and added SET_LED_RGB
* clean format
* caps lock rainbow
* rename key_led to set_key_led
* caps lock rainbow enhanced
* make varibiables static
* change back the loop max value to 360 for the rainbow
* add scroll lock to the rainbow led
* fix pos calculation of right hand board
* add ative keys and make rainbow color can override by key press
* remove the TOTAL_MATRIX_POINTS
* some improvments for the rgb
* call the rgblight_set on the process_record_user
* some enhancement for the leds
* pass the dim value to set_layer_led and limit the brightness on _VL
set the brightness to 2 if the dim value is less than 2 because
their is not enought power for the leds.
* remove the rgb steps on the config
* use the non rev config
* remove all the revisions
* favor i2c instead of serial and remove all the ref for the serial
* clang formatting
* allow to save to eeprom the brightness value
* add bootloader caterina this will enable soft reset key
* initial commit for the userspace
* added my own keymap for splinter
* first working userspace
* move splinter to handwired keyboards
* handwired splinter default keymap
* move some config to my keymap
* cleanup some headers on the keymap
* move the EECONFIG_RGB_DIM to the user space
* I fix remove the GUI on SPC and ENT
* remove the default include on tap_dance.c
* add lights.c and refactoring
* fix wrong source for led index
* seperate the variable on set_layer_led for readabilty.
* set the usb max power consumption to 50
* fix led lighting
* add new enums for tap dance
* use romeve path avr on eeprom.h
* fix wrong spelling on TP names
* changed the tap dance
* allow to set rainbow on some pressed key
* add reset key
* fix error on matrix.c if ROW2COL is used
* add extraflags -flto
* See e2352d4
* Got no love from i2c, serial to the rescue
* Fix the led will lit up to color red after boot
* Trial if the power can handle yellow color at full
* Add comment
* Use EE_HANDS
* add config.h in the use space
* KC_N on BL should wrap in SFT_T
* See d13567d, put it back but increase 1 level
* Fix led soldering mistake
* set the tapping_term to 100
* Use TT for the changing the layer
* Remove the changing space to enter and vice version on BL and UL
* Increate the tapping term
* Use tap dance on changing layer
* Add assorted layer
* propery way to tapdance
* Remove DA_EGRV
This also fix the wrong placement of the reset and dance lspr should register
the KC_LGUI on finished not unregistered.
* Remove the media control to the up and down layer
* Remove the interrupted state of the tap dance
* swapt the space and enter on to th caps
* Shorthand
* Keymap update
* My keymap for lets_split
* cleaning
46 lines
858 B
C
46 lines
858 B
C
#ifndef LIGHTS_H
|
|
#define LIGHTS_H
|
|
|
|
#include "eeprom.h"
|
|
#include "tap_dance.h"
|
|
#include "zer09.h"
|
|
|
|
/* Will hold the RGB brightness level */
|
|
#define EECONFIG_LED_DIM_LVL (uint8_t *)15
|
|
|
|
#define SET_LED_RGB(r, g, b, led_dim, pos) \
|
|
setrgb(r >> led_dim, g >> led_dim, b >> led_dim, (LED_TYPE *)&led[pos])
|
|
|
|
typedef enum {
|
|
DEFAULT,
|
|
ENABLED,
|
|
DISABLED,
|
|
} led_status;
|
|
|
|
typedef struct {
|
|
led_status status;
|
|
uint8_t pos;
|
|
bool forced;
|
|
} led_key;
|
|
|
|
enum rbw_keys {
|
|
RBW_LCTL,
|
|
RBW_LCAP,
|
|
RBW_LSPR,
|
|
RBW_RCTL,
|
|
RBW_RCAP,
|
|
RBW_RALT,
|
|
RBW_SCRL,
|
|
RBW
|
|
};
|
|
|
|
extern volatile led_key rbw_led_keys[RBW];
|
|
|
|
void set_key_led(keyrecord_t *record, uint8_t lyr);
|
|
bool set_layer_led(uint8_t lyr);
|
|
bool rainbow_loop(uint8_t lyr);
|
|
bool led_brightness(uint16_t keycode, keyrecord_t *record);
|
|
void eeprom_read_led_dim_lvl(void);
|
|
|
|
#endif
|