backlight breathing overhaul (#2187)

* add breathing to bananasplit

* backlight breathing overhaul

* fix the backlight_tick thing.

* fix for vision_division backlight

* fix a few keymaps and probably break breathing for some weirdly set-up boards.

* remove BL_x keycodes because they made unreasonable assumptions

* some fixes for BL keycodes

* integer cie lightness scaling

* use cie lightness for non-breathing backlight and make breathing able to reach true max brightness
This commit is contained in:
Balz Guenat
2018-01-01 23:47:51 +01:00
committed by Jack Humbert
parent d6215ad6af
commit 4931510ad3
25 changed files with 285 additions and 329 deletions
+1 -1
View File
@@ -42,7 +42,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
//#define MATRIX_HAS_GHOST
/* number of backlight levels */
#define BACKLIGHT_LEVELS 1
#define BACKLIGHT_LEVELS 3
/* mapping backlight LEDs to correct Pin */
#define BACKLIGHT_PIN B7
@@ -21,5 +21,7 @@
// place overrides here
#define GRAVE_ESC_CTRL_OVERRIDE
#define BACKLIGHT_BREATHING
#define BREATHING_PERIOD 8
#endif
@@ -16,7 +16,7 @@
#include "bananasplit.h"
enum custom_keycodes {
WIN_SWITCH_LAYOUT = SAFE_RANGE
WIN_SWITCH_LAYOUT = SAFE_RANGE,
};
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
@@ -57,7 +57,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
_______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, \
KC_CAPS, KC_MPRV, KC_VOLU, KC_MNXT, KC_PGUP, KC_INS, KC_HOME, LCTL(KC_LEFT), LCTL(KC_RGHT), KC_END, _______, _______, _______, KC_PSCR, \
_______, KC_MUTE, KC_VOLD, KC_MPLY, KC_PGDN, KC_DEL, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, _______, _______, _______, \
_______, _______, _______, _______, _______,_______, LCTL(KC_BSPC), LCTL(KC_DEL), _______, _______, _______, _______, _______, \
_______, BL_STEP, BL_BRTG, _______, _______,_______, LCTL(KC_BSPC), LCTL(KC_DEL), _______, _______, _______, _______, _______, \
_______, _______, _______, _______, _______,_______, _______, _______, _______, _______, RESET \
),
};
@@ -76,19 +76,19 @@ void matrix_scan_user(void) {
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
case WIN_SWITCH_LAYOUT: {
// Sends Alt+Shift on both key down and key up.
// Designed to switch between two keyboard layouts on Windows using a locking switch.
// Does nothing if right shift is pressed for easy resync.
if (!(get_mods() & MOD_BIT(KC_RSFT))) {
if (!(get_mods() & MOD_BIT(KC_RSFT)))
SEND_STRING(SS_DOWN(X_LALT)SS_TAP(X_LSHIFT)SS_UP(X_LALT));
return false;
}
else
return false;
return false;
}
default:
return true;
}
return true;
}
void led_set_user(uint8_t usb_led) {