mirror of
https://github.com/Keychron/qmk_firmware.git
synced 2024-12-28 20:18:49 +06:00
94efa18c28
* Update Layer functions to use layer_state_t in ZSA Boards * Update Music Mask for ZSA boards Fixes an issue with the board getting stuck on Adjust layer when activating music mode * Add Support for SMART LED Toggle to Planck EZ * Add support for SMART LED toggle in Ergodox EZ * Ifdef swiss cheeze for Oryx Configurator * Documentation and updates * Add Oryx Keymap * Add option to configure the layers for the Layer Indicator * Update keymap with better examples * Make sure eeprom is initialized before reading from it * Force flush of LED matrix when suspending board This fixes an issue where the LEDs don't fully clear sometimes when the host system goes to sleep * Enable RGB Sleeping by default * Add clarification about planck ez led layer config
77 lines
2.6 KiB
C
77 lines
2.6 KiB
C
/* Copyright 2018 Jack Humbert <jack.humb@gmail.com>
|
|
*
|
|
* 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 <http://www.gnu.org/licenses/>.
|
|
*/
|
|
#pragma once
|
|
|
|
#include "planck.h"
|
|
|
|
#define LAYOUT_planck_1x2uC( \
|
|
k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, \
|
|
k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, \
|
|
k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, \
|
|
k30, k31, k32, k33, k34, k35, k37, k38, k39, k3a, k3b \
|
|
) \
|
|
{ \
|
|
{ k00, k01, k02, k03, k04, k05 }, \
|
|
{ k10, k11, k12, k13, k14, k15 }, \
|
|
{ k20, k21, k22, k23, k24, k25 }, \
|
|
{ k30, k31, k32, k3a, k3b, KC_NO }, \
|
|
{ k06, k07, k08, k09, k0a, k0b }, \
|
|
{ k16, k17, k18, k19, k1a, k1b }, \
|
|
{ k26, k27, k28, k29, k2a, k2b }, \
|
|
{ k37, k38, k39, k33, k34, k35 } \
|
|
}
|
|
|
|
#define LAYOUT_ortho_4x12( \
|
|
k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, \
|
|
k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, \
|
|
k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, \
|
|
k30, k31, k32, k33, k34, k35, KC_NO, k37, k38, k39, k3a, k3b \
|
|
) \
|
|
LAYOUT_planck_1x2uC( \
|
|
k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, \
|
|
k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, \
|
|
k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, \
|
|
k30, k31, k32, k33, k34, k35, k37, k38, k39, k3a, k3b \
|
|
)
|
|
|
|
#define KEYMAP LAYOUT_ortho_4x12
|
|
#define LAYOUT_planck_mit LAYOUT_planck_1x2uC
|
|
#define LAYOUT_planck_grid LAYOUT_ortho_4x12
|
|
|
|
void planck_ez_right_led_on(void);
|
|
void planck_ez_right_led_off(void);
|
|
void planck_ez_right_led_level(uint8_t level);
|
|
void planck_ez_left_led_on(void);
|
|
void planck_ez_left_led_off(void);
|
|
void planck_ez_left_led_level(uint8_t level);
|
|
|
|
enum planck_ez_keycodes {
|
|
LED_LEVEL = SAFE_RANGE,
|
|
TOGGLE_LAYER_COLOR,
|
|
EZ_SAFE_RANGE,
|
|
};
|
|
|
|
typedef union {
|
|
uint32_t raw;
|
|
struct {
|
|
uint8_t led_level :3;
|
|
bool disable_layer_led :1;
|
|
bool rgb_matrix_enable :1;
|
|
};
|
|
} keyboard_config_t;
|
|
|
|
extern keyboard_config_t keyboard_config;
|