qmk-firmware/keyboards/planck/ez/ez.h

90 lines
2.8 KiB
C
Raw Normal View History

/* Copyright 2018 Jack Humbert <jack.humb@gmail.com>
* Copyright 2015 ZSA Technology Labs Inc (@zsa)
* Copyright 2020 Christopher Courtney, aka Drashna Jael're (@drashna) <drashna@live.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"
#ifdef KEYBOARD_planck_ez_glow
# include "glow.h"
#endif
#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, \
Error log cleanup (#13349) * error log cleanup: 40percentclub/25 40percentclub/25: Claims to support a community layout that does not exist: ortho_5x5 * error log cleanup: 40percentclub/4x4 ☒ 40percentclub/4x4: Claims to support a community layout that does not exist: ortho_4x8 ☒ 40percentclub/4x4: Claims to support a community layout that does not exist: ortho_4x16 * error log cleanup: 40percentclub/5x5 ☒ 40percentclub/5x5: Claims to support a community layout that does not exist: ortho_5x5 * error log cleanup: 40percentclub/nori ☒ 40percentclub/nori: Claims to support a community layout that does not exist: ortho_4x8 * error log cleanup: barracuda ☒ barracuda: Claims to support a community layout that does not exist: ortho_3x11 * error log cleanup: bpiphany/frosty_flake ☒ keyboards/bpiphany/frosty_flake/frosty_flake.h: LAYOUT_tkl_ansi: Nested layout macro detected. Matrix data not available! * error log cleanup: bpiphany/pegasushoof/2013 ☒ keyboards/bpiphany/pegasushoof/2013/2013.h: LAYOUT_tkl_ansi: Nested layout macro detected. Matrix data not available! * error cleanup: bpiphany/pegasushoof/2015 ☒ keyboards/bpiphany/pegasushoof/2015/2015.h: LAYOUT_tkl_ansi: Nested layout macro detected. Matrix data not available! ☒ keyboards/bpiphany/pegasushoof/2015/2015.h: LAYOUT_tkl_iso: Nested layout macro detected. Matrix data not available! * error log cleanup: 40percentclub ☒ 40percentclub/25: Claims to support a community layout that does not exist: ortho_5x10 ☒ 40percentclub/5x5: Claims to support a community layout that does not exist: ortho_5x10 * error cleanup: converter/usb_usb ☒ keyboards/converter/usb_usb/usb_usb.h: LAYOUT_ansi: Nested layout macro detected. Matrix data not available! ☒ keyboards/converter/usb_usb/usb_usb.h: LAYOUT_iso: Nested layout macro detected. Matrix data not available! ☒ keyboards/converter/usb_usb/usb_usb.h: LAYOUT_jis: Nested layout macro detected. Matrix data not available! ☒ keyboards/converter/usb_usb/usb_usb.h: LAYOUT_ansi: Nested layout macro detected. Matrix data not available! ☒ keyboards/converter/usb_usb/usb_usb.h: LAYOUT_iso: Nested layout macro detected. Matrix data not available! ☒ keyboards/converter/usb_usb/usb_usb.h: LAYOUT_jis: Nested layout macro detected. Matrix data not available! ☒ keyboards/converter/usb_usb/usb_usb.h: LAYOUT_ansi: Nested layout macro detected. Matrix data not available! ☒ keyboards/converter/usb_usb/usb_usb.h: LAYOUT_iso: Nested layout macro detected. Matrix data not available! ☒ keyboards/converter/usb_usb/usb_usb.h: LAYOUT_jis: Nested layout macro detected. Matrix data not available! * error cleanup: ergo42 ☒ ergo42/rev1: Claims to support a community layout that does not exist: ortho_4x14 * error cleanup: handwired/412_64 ☒ handwired/412_64: Claims to support a community layout that does not exist: ortho_4x16 * error log cleanup: handwired/tritium_numpad ☒ handwired/tritium_numpad: Claims to support a community layout that does not exist: nontra_6x4 * error log cleanup: handwired/xealous/rev1 ☒ handwired/xealous/rev1: Claims to support a community layout that does not exist: split60 * error log cleanup: kbdfans/kbd67/rev2 ⚠ kbdfans/kbd67/rev2: info.json uses alias name LAYOUT_65_ansi_blocker_splitbs instead of LAYOUT_65_ansi_blocker_split_bs * error cleanup: keebio/nyquist ☒ keyboards/keebio/nyquist/nyquist.h: LAYOUT_ortho_4x12: Nested layout macro detected. Matrix data not available! ☒ keyboards/keebio/nyquist/nyquist.h: LAYOUT_ortho_4x12: Nested layout macro detected. Matrix data not available! ☒ keyboards/keebio/nyquist/nyquist.h: LAYOUT_ortho_4x12: Nested layout macro detected. Matrix data not available! * error cleanup: kindakeyboards/conone65 ☒ kindakeyboards/conone65: Claims to support a community layout that does not exist: 65_iso_split_bs * error cleanup: latinpadble ☒ latinpadble: Claims to support a community layout that does not exist: pad * error cleanup: masterworks/classy_tkl/rev_a ☒ masterworks/classy_tkl/rev_a: Claims to support a community layout that does not exist: tkl_ansi_wkl * error cleanup: meira ⚠ meira/featherble: info.json uses alias name LAYOUT_ortho_4x12 instead of LAYOUT ⚠ meira/promicro: info.json uses alias name LAYOUT_ortho_4x12 instead of LAYOUT * error cleanup: nopunin10did/jabberwocky ⚠ nopunin10did/jabberwocky: MANUFACTURER in config.h is overwriting manufacturer in info.json * error cleanup: ok60 ☒ ok60: Claims to support a community layout that does not exist: 60_ansi_split_bksp_rshift * error cleanup: ok60 ☒ ok60: Claims to support a community layout that does not exist: 60_ansi_split_bksp_rshift * error cleanup: planck ☒ keyboards/planck/ez/ez.h: LAYOUT_ortho_4x12: Nested layout macro detected. Matrix data not available! ☒ keyboards/planck/ez/ez.h: LAYOUT_ortho_4x12: Nested layout macro detected. Matrix data not available! ⚠ planck/thk: DEBOUNCE in config.h is overwriting debounce in info.json ⚠ planck/thk: DEVICE_VER in config.h is overwriting usb.device_ver in info.json ⚠ planck/thk: DIODE_DIRECTION in config.h is overwriting diode_direction in info.json ⚠ planck/thk: MANUFACTURER in config.h is overwriting manufacturer in info.json ⚠ planck/thk: PRODUCT_ID in config.h is overwriting usb.pid in info.json ⚠ planck/thk: VENDOR_ID in config.h is overwriting usb.vid in info.json ⚠ planck/thk: QMK_ESC_OUTPUT in config.h is overwriting qmk_lufa_bootloader.esc_output in info.json ⚠ planck/thk: QMK_ESC_INPUT in config.h is overwriting qmk_lufa_bootloader.esc_input in info.json ⚠ planck/thk: QMK_LED in config.h is overwriting qmk_lufa_bootloader.led in info.json ⚠ planck/thk: QMK_SPEAKER in config.h is overwriting qmk_lufa_bootloader.speaker in info.json ⚠ planck/thk: Matrix pins are specified in both info.json and config.h, the config.h values win. ⚠ planck/thk: LAYOUTS in rules.mk is overwriting community_layouts in info.json ⚠ planck/thk: Feature mousekey is specified in both info.json and rules.mk, the rules.mk value wins. ⚠ planck/thk: Feature extrakey is specified in both info.json and rules.mk, the rules.mk value wins. ⚠ planck/thk: Feature console is specified in both info.json and rules.mk, the rules.mk value wins. ⚠ planck/thk: Feature command is specified in both info.json and rules.mk, the rules.mk value wins. ⚠ planck/thk: Feature sleep_led is specified in both info.json and rules.mk, the rules.mk value wins. ⚠ planck/thk: Feature nkro is specified in both info.json and rules.mk, the rules.mk value wins. ⚠ planck/thk: Feature backlight is specified in both info.json and rules.mk, the rules.mk value wins. ⚠ planck/thk: Feature rgblight is specified in both info.json and rules.mk, the rules.mk value wins. ⚠ planck/thk: Feature bluetooth is specified in both info.json and rules.mk, the rules.mk value wins. ⚠ planck/thk: Feature audio is specified in both info.json and rules.mk, the rules.mk value wins. ⚠ planck/thk: Feature encoder is specified in both info.json and rules.mk, the rules.mk value wins. ⚠ planck/thk: Feature dip_switch is specified in both info.json and rules.mk, the rules.mk value wins. ⚠ planck/thk: Feature bootmagic_lite is specified in both info.json and rules.mk, the rules.mk value wins. * error cleanup: primekb/prime_m ☒ primekb/prime_m: Claims to support a community layout that does not exist: ortho_5x6 * error cleanup: rgbkb/sol/rev2 ⚠ rgbkb/sol/rev2: RGBLED_NUM->rgblight.led_count: invalid literal for int() with base 10: '(BACKLIGHT_LEDS + FULLHAND_LEDS)' * error log cleanup: shk9 ☒ shk9: Claims to support a community layout that does not exist: ortho_3x3 * error log cleanup: sowbug ⚠ sowbug/68keys: RGBLED_NUM->rgblight.led_count: invalid literal for int() with base 10: 'DRIVER_LED_TOTAL' ⚠ sowbug/ansi_tkl: RGBLED_NUM->rgblight.led_count: invalid literal for int() with base 10: '(DRIVER_LED_TOTAL)' * error log cleanup: torn ☒ torn: Claims to support a community layout that does not exist: split_3x6_4 * error cleanup: ymdk/np24/u4rgb6 ☒ ymdk/np24/u4rgb6: Claims to support a community layout that does not exist: ortho_4x6 * error cleanup: masterworks/classy_tkl/rev_a ☒ masterworks/classy_tkl/rev_a: Claims to support a community layout that does not exist: tkl_iso_wkl
2021-06-26 17:38:14 +02:00
k30, k31, k32, k33, k34, k35, k36, 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, k36 }, \
{ 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_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,
};
2020-05-28 10:26:53 +02:00
#ifndef WEBUSB_ENABLE
# define WEBUSB_PAIR KC_NO
#endif
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;