 94efa18c28
			
		
	
	
		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
		
			
				
	
	
		
			76 lines
		
	
	
	
		
			2.6 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			76 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;
 |