[Keyboard] Update to ZSA Boards (#10119) * Add VID/PIDs to ErgoDox EZ * Add VID/PIDs for Planck EZ and Glow revision * Make names consistent * fix typo in docs * Move LED config back, for maximum compatibility * Add revisions for ErgoDox EZ boards * Fix embarassing typo * Typooooo Co-authored-by: Nick Brassel <nick@tzarc.org> * Update Licensing info * Update Moonlander default keymap to match Oryx's default * Fix formatting based on suggestions Co-authored-by: James Young <18669334+noroadsleft@users.noreply.github.com> * Make indicator LEDs more configurable * Update default keymap * Handle older eeprom settings Co-authored-by: Nick Brassel <nick@tzarc.org> Co-authored-by: James Young <18669334+noroadsleft@users.noreply.github.com>
29 files changed, 301 insertions(+), 96 deletions(-) M keyboards/ergodox_ez/config.h M keyboards/ergodox_ez/ergodox_ez.c M keyboards/ergodox_ez/ergodox_ez.h A keyboards/ergodox_ez/glow/config.h A keyboards/ergodox_ez/glow/glow.h A keyboards/ergodox_ez/glow/rules.mk M keyboards/ergodox_ez/led_i2c.c M keyboards/ergodox_ez/matrix.c M keyboards/ergodox_ez/post_config.h M keyboards/ergodox_ez/readme.md M keyboards/ergodox_ez/rules.mk A keyboards/ergodox_ez/shine/config.h A keyboards/ergodox_ez/shine/rules.mk A keyboards/ergodox_ez/shine/shine.h M keyboards/moonlander/config.h M keyboards/moonlander/keymaps/default/config.h M keyboards/moonlander/keymaps/default/keymap.c M keyboards/moonlander/matrix.c M keyboards/moonlander/moonlander.c M keyboards/moonlander/moonlander.h M keyboards/planck/ez/config.h M keyboards/planck/ez/ez.c M keyboards/planck/ez/ez.h A keyboards/planck/ez/glow/config.h A keyboards/planck/ez/glow/glow.c A keyboards/planck/ez/glow/glow.h A keyboards/planck/ez/glow/rules.mk M keyboards/planck/ez/readme.md M keyboards/planck/ez/rules.mk
M keyboards/ergodox_ez/config.h => keyboards/ergodox_ez/config.h +7 -6
@@ 1,6 1,8 @@ /* Copyright 2012 Jun Wako <wakojun@gmail.com> Copyright 2013 Oleg Kostyuk <cub.uanic@gmail.com> Copyright 2015 ZSA Technology Labs Inc (@zsa) Copyright 2020 Christopher Courtney <drashna@live.com> (@drashna) 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 21,10 23,10 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. #include "config_common.h" /* USB Device descriptor parameter */ #define VENDOR_ID 0xFEED #define PRODUCT_ID 0x1307 #define VENDOR_ID 0x3297 #define DEVICE_VER 0x0001 #define MANUFACTURER ZSA Technology Labs Inc #define MANUFACTURER ZSA Technology Labs #define PRODUCT_ID 0x4974 #define PRODUCT ErgoDox EZ @@ /* key matrix size */ 115,7 117,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. * manufacturer specs. */ #define USB_MAX_POWER_CONSUMPTION 500 // RGB backlight @@ #define DRIVER_ADDR_1 0b1110100 154,6 155,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT //#define NO_ACTION_MACRO //#define NO_ACTION_FUNCTION #define NO_ACTION_MACRO #define NO_ACTION_FUNCTION //#define DEBUG_MATRIX_SCAN_RATE
M keyboards/ergodox_ez/ergodox_ez.c => keyboards/ergodox_ez/ergodox_ez.c +20 -0
@@ 1,3 1,23 @@ /* Copyright 2012 Jun Wako <wakojun@gmail.com> Copyright 2013 Oleg Kostyuk <cub.uanic@gmail.com> Copyright 2015 ZSA Technology Labs Inc (@zsa) Copyright 2020 Christopher Courtney <drashna@live.com> (@drashna) 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/>. */ #include "ergodox_ez.h" extern inline void ergodox_board_led_on(void);
M keyboards/ergodox_ez/ergodox_ez.h => keyboards/ergodox_ez/ergodox_ez.h +26 -0
@@ 1,3 1,23 @@ /* Copyright 2012 Jun Wako <wakojun@gmail.com> Copyright 2013 Oleg Kostyuk <cub.uanic@gmail.com> Copyright 2015 ZSA Technology Labs Inc (@zsa) Copyright 2020 Christopher Courtney <drashna@live.com> (@drashna) 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 "quantum.h" 5,6 25,12 @@ #include <stdbool.h> #include "i2c_master.h" #if defined(KEYBOARD_ergodox_ez_glow) # include "glow.h" #elif defined(KEYBOARD_ergodox_ez_shine) # include "shine.h" #endif // I2C aliases and register addresses (see "mcp23018.md") #define I2C_ADDR 0b0100000 #define I2C_ADDR_WRITE ( (I2C_ADDR<<1) | I2C_WRITE )
A keyboards/ergodox_ez/glow/config.h => keyboards/ergodox_ez/glow/config.h +26 -0
@@ 0,0 1,26 @@ /* Copyright 2012 Jun Wako <wakojun@gmail.com> Copyright 2013 Oleg Kostyuk <cub.uanic@gmail.com> Copyright 2015 ZSA Technology Labs Inc (@zsa) Copyright 2020 Christopher Courtney <drashna@live.com> (@drashna) 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 #undef PRODUCT_ID #define PRODUCT_ID 0x4976 #undef PRODUCT #define PRODUCT ErgoDox EZ Glow
A keyboards/ergodox_ez/glow/glow.h => keyboards/ergodox_ez/glow/glow.h +23 -0
@@ 0,0 1,23 @@ /* Copyright 2012 Jun Wako <wakojun@gmail.com> Copyright 2013 Oleg Kostyuk <cub.uanic@gmail.com> Copyright 2015 ZSA Technology Labs Inc (@zsa) Copyright 2020 Christopher Courtney <drashna@live.com> (@drashna) 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 "ergodox_ez.h"
A keyboards/ergodox_ez/glow/rules.mk => keyboards/ergodox_ez/glow/rules.mk +1 -0
M keyboards/ergodox_ez/led_i2c.c => keyboards/ergodox_ez/led_i2c.c +19 -23
@@ 1,31 1,27 @@ /* * light weight WS2812 lib V2.0b * * Controls WS2811/WS2812/WS2812B RGB-LEDs * Author: Tim (cpldcpu@gmail.com) * * Jan 18th, 2014 v2.0b Initial Version * Nov 29th, 2015 v2.3 Added SK6812RGBW support * * 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/>. */ Copyright 2012 Jun Wako <wakojun@gmail.com> Copyright 2013 Oleg Kostyuk <cub.uanic@gmail.com> Copyright 2015 ZSA Technology Labs Inc (@zsa) Copyright 2020 Christopher Courtney <drashna@live.com> (@drashna) 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/>. */ #ifdef RGBLIGHT_ENABLE # include "ergodox_ez.h" extern rgblight_config_t rgblight_config; void rgblight_call_driver(LED_TYPE *led, uint8_t led_num) { i2c_init(); i2c_start(0x84, ERGODOX_EZ_I2C_TIMEOUT);
M keyboards/ergodox_ez/matrix.c => keyboards/ergodox_ez/matrix.c +4 -2
@@ 1,7 1,8 @@ /* Copyright 2012 Jun Wako <wakojun@gmail.com> Copyright 2013 Oleg Kostyuk <cub.uanic@gmail.com> Copyright 2015 ZSA Technology Labs Inc (@zsa) Copyright 2020 Christopher Courtney <drashna@live.com> (@drashna) 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 17,6 18,7 @@ You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>. */ /* * scan matrix */
M keyboards/ergodox_ez/post_config.h => keyboards/ergodox_ez/post_config.h +20 -0
@@ 1,3 1,23 @@ /* Copyright 2012 Jun Wako <wakojun@gmail.com> Copyright 2013 Oleg Kostyuk <cub.uanic@gmail.com> Copyright 2015 ZSA Technology Labs Inc (@zsa) Copyright 2020 Christopher Courtney <drashna@live.com> (@drashna) 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 #if !defined(ERGODOX_LED_15) && !defined(ERGODOX_LED_30)
M keyboards/ergodox_ez/readme.md => keyboards/ergodox_ez/readme.md +5 -0
@@ 11,6 11,11 @@ The ErgoDox EZ is a mass produced version of the original ErgoDox keyboard, with Make example for this keyboard (after setting up your build environment): make ergodox_ez:default:flash For the ErgoDox EZ Shine, and Glow, use one of the following: make ergodox_ez/shine:default:flash make ergodox_ez/glow:default:flash See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs).
M keyboards/ergodox_ez/rules.mk => keyboards/ergodox_ez/rules.mk +0 -1
@@ 30,7 30,6 @@ UNICODE_ENABLE = yes # Unicode SWAP_HANDS_ENABLE= yes # Allow swapping hands of keyboard SLEEP_LED_ENABLE = no API_SYSEX_ENABLE = no RGBLIGHT_ENABLE = yes RGB_MATRIX_ENABLE = no # enable later DEBOUNCE_TYPE = eager_pr
A keyboards/ergodox_ez/shine/config.h => keyboards/ergodox_ez/shine/config.h +26 -0
@@ 0,0 1,26 @@ /* Copyright 2012 Jun Wako <wakojun@gmail.com> Copyright 2013 Oleg Kostyuk <cub.uanic@gmail.com> Copyright 2015 ZSA Technology Labs Inc (@zsa) Copyright 2020 Christopher Courtney <drashna@live.com> (@drashna) 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 #undef PRODUCT_ID #define PRODUCT_ID 0x4975 #undef PRODUCT #define PRODUCT ErgoDox EZ Shine
A keyboards/ergodox_ez/shine/rules.mk => keyboards/ergodox_ez/shine/rules.mk +1 -0
A keyboards/ergodox_ez/shine/shine.h => keyboards/ergodox_ez/shine/shine.h +23 -0
@@ 0,0 1,23 @@ /* Copyright 2012 Jun Wako <wakojun@gmail.com> Copyright 2013 Oleg Kostyuk <cub.uanic@gmail.com> Copyright 2015 ZSA Technology Labs Inc (@zsa) Copyright 2020 Christopher Courtney <drashna@live.com> (@drashna) 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 "ergodox_ez.h"
M keyboards/moonlander/config.h => keyboards/moonlander/config.h +1 -1
@@ 1,6 1,6 @@ /* Copyright 2020 ZSA Technology Labs, Inc <@zsa> * Copyright 2020 Jack Humbert <jack.humb@gmail.com> * Copyright 2020 Drashna Jael're <drashna@live.com> * Copyright 2020 Christopher Courtney <drashna@live.com> (@drashna) * * 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
M keyboards/moonlander/keymaps/default/config.h => keyboards/moonlander/keymaps/default/config.h +1 -1
@@ 1,6 1,6 @@ /* Copyright 2020 ZSA Technology Labs, Inc <@zsa> * Copyright 2020 Jack Humbert <jack.humb@gmail.com> * Copyright 2020 Drashna Jael're <drashna@live.com> * Copyright 2020 Christopher Courtney <drashna@live.com> (@drashna) * * 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
M keyboards/moonlander/keymaps/default/keymap.c => keyboards/moonlander/keymaps/default/keymap.c +18 -54
@@ 1,6 1,6 @@ /* Copyright 2020 ZSA Technology Labs, Inc <@zsa> * Copyright 2020 Jack Humbert <jack.humb@gmail.com> * Copyright 2020 Drashna Jael're <drashna@live.com> * Copyright 2020 Christopher Courtney <drashna@live.com> (@drashna) * * 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 35,68 35,32 @@ enum custom_keycodes { const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [BASE] = LAYOUT_moonlander( KC_EQL, KC_1, KC_2, KC_3, KC_4, KC_5, KC_LEFT, KC_RGHT, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, TG(SYMB), TG(SYMB), KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS, KC_BSPC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_HYPR, KC_MEH, KC_H, KC_J, KC_K, KC_L, LT(MDIA, KC_SCLN), GUI_T(KC_QUOT), KC_LSFT, LCTL_T(KC_Z),KC_X,KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, LCTL_T(KC_SLSH), KC_LSFT, LT(SYMB,KC_GRV),WEBUSB_PAIR,A(KC_LSFT),KC_LEFT, KC_RGHT, LALT_T(KC_APP), RCTL_T(KC_ESC), KC_UP, KC_DOWN, KC_LBRC, KC_RBRC, TT(SYMB), KC_SPC, KC_BSPC, KC_LGUI, KC_RALT, KC_TAB, KC_ENT KC_DEL, KC_Q, KC_W, KC_E, KC_R, KC_T, TG(SYMB), TG(SYMB), KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS, KC_BSPC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_HYPR, KC_MEH, KC_H, KC_J, KC_K, KC_L, LT(MDIA, KC_SCLN), LGUI_T(KC_QUOT), KC_LSFT, LCTL_T(KC_Z),KC_X,KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, RCTL_T(KC_SLSH), KC_RSFT, LT(SYMB,KC_GRV),WEBUSB_PAIR,A(KC_LSFT),KC_LEFT, KC_RGHT, LALT_T(KC_APP), RCTL_T(KC_ESC), KC_UP, KC_DOWN, KC_LBRC, KC_RBRC, MO(SYMB), KC_SPC, KC_BSPC, KC_LGUI, KC_LALT, KC_TAB, KC_ENT ), [SYMB] = LAYOUT_moonlander( VRSN, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_TRNS, KC_TRNS, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_TRNS, KC_EXLM, KC_AT, KC_LCBR, KC_RCBR, KC_PIPE, KC_TRNS, KC_TRNS, KC_UP, KC_7, KC_8, KC_9, KC_ASTR, KC_F12, KC_TRNS, KC_HASH, KC_DLR, KC_LPRN, KC_RPRN, KC_GRV, KC_TRNS, KC_TRNS, KC_DOWN, KC_4, KC_5, KC_6, KC_PLUS, KC_TRNS, KC_TRNS, KC_PERC, KC_CIRC, KC_LBRC, KC_RBRC, KC_TILD, KC_AMPR, KC_1, KC_2, KC_3, KC_BSLS, KC_TRNS, EEP_RST, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_VAI, RGB_TOG, KC_TRNS, KC_DOT, KC_0, KC_EQL, KC_TRNS, RGB_HUD, RGB_VAD, RGB_HUI, TOGGLE_LAYER_COLOR,KC_TRNS, KC_TRNS VRSN, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, _______, _______, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, _______, KC_EXLM, KC_AT, KC_LCBR, KC_RCBR, KC_PIPE, _______, _______, KC_UP, KC_7, KC_8, KC_9, KC_ASTR, KC_F12, _______, KC_HASH, KC_DLR, KC_LPRN, KC_RPRN, KC_GRV, _______, _______, KC_DOWN, KC_4, KC_5, KC_6, KC_PLUS, _______, _______, KC_PERC, KC_CIRC, KC_LBRC, KC_RBRC, KC_TILD, KC_AMPR, KC_1, KC_2, KC_3, KC_BSLS, _______, EEP_RST, _______, _______, _______, _______, RGB_VAI, RGB_TOG, _______, KC_DOT, KC_0, KC_EQL, _______, RGB_HUD, RGB_VAD, RGB_HUI, TOGGLE_LAYER_COLOR,_______, _______ ), [MDIA] = LAYOUT_moonlander( KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MS_U, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MS_L, KC_MS_D, KC_MS_R, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_MNXT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_BTN1, KC_BTN2, KC_TRNS, KC_TRNS, KC_VOLU, KC_VOLD, KC_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS LED_LEVEL,_______,_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, _______, _______, _______, KC_MS_U, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MS_L, KC_MS_D, KC_MS_R, _______, _______, _______, _______, _______, _______, _______, _______, KC_MPLY, _______, _______, _______, _______, _______, _______, _______, _______, KC_MPRV, KC_MNXT, _______, _______, _______, _______, _______, KC_BTN1, KC_BTN2, _______, _______, KC_VOLU, KC_VOLD, KC_MUTE, _______, _______, _______, _______, _______, _______, _______, _______ ), }; layer_state_t layer_state_set_user(layer_state_t state) { ML_LED_1(false); ML_LED_2(false); ML_LED_3(false); ML_LED_4(false); ML_LED_5(false); ML_LED_6(false); switch (get_highest_layer(state)) { case 1: ML_LED_1(1); ML_LED_4(1); break; case 2: ML_LED_2(1); ML_LED_5(1); break; case 3: ML_LED_3(1); break; case 4: ML_LED_4(1); break; case 5: ML_LED_5(1); break; case 6: ML_LED_6(1); break; default: break; } return state; } bool process_record_user(uint16_t keycode, keyrecord_t *record) { if (record->event.pressed) { switch (keycode) {
M keyboards/moonlander/matrix.c => keyboards/moonlander/matrix.c +1 -1
@@ 1,6 1,6 @@ /* Copyright 2020 ZSA Technology Labs, Inc <@zsa> * Copyright 2020 Jack Humbert <jack.humb@gmail.com> * Copyright 2020 Drashna Jael're <drashna@live.com> * Copyright 2020 Christopher Courtney <drashna@live.com> (@drashna) * * 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
M keyboards/moonlander/moonlander.c => keyboards/moonlander/moonlander.c +28 -3
@@ 1,6 1,6 @@ /* Copyright 2020 ZSA Technology Labs, Inc <@zsa> * Copyright 2020 Jack Humbert <jack.humb@gmail.com> * Copyright 2020 Drashna Jael're <drashna@live.com> * Copyright 2020 Christopher Courtney <drashna@live.com> (@drashna) * * 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 159,10 159,10 @@ void keyboard_pre_init_kb(void) { keyboard_pre_init_user(); } #ifdef ORYX_CONFIGURATOR #if !defined(MOONLANDER_USER_LEDS) layer_state_t layer_state_set_kb(layer_state_t state) { state = layer_state_set_user(state); if (is_launching) return state; if (is_launching || !keyboard_config.led_level) return state; ML_LED_1(false); @@ ML_LED_2(false); 415,6 415,24 @@ bool process_record_kb(uint16_t keycode, keyrecord_t *record) { if (!record->event.pressed && !webusb_state.pairing) layer_state_set_kb(layer_state); break; #endif #if !defined(MOONLANDER_USER_LEDS) case LED_LEVEL: if (record->event.pressed) { keyboard_config.led_level ^= 1; eeconfig_update_kb(keyboard_config.raw); if (keyboard_config.led_level) { layer_state_set_kb(layer_state); } else { ML_LED_1(false); ML_LED_2(false); ML_LED_3(false); ML_LED_4(false); ML_LED_5(false); ML_LED_6(false); } } break; #endif #ifdef RGB_MATRIX_ENABLE case TOGGLE_LAYER_COLOR: @@ if (record->event.pressed) { 449,6 467,11 @@ bool process_record_kb(uint16_t keycode, keyrecord_t *record) { void matrix_init_kb(void) { keyboard_config.raw = eeconfig_read_kb(); if (!keyboard_config.led_level && !keyboard_config.led_level_res) { keyboard_config.led_level = true; keyboard_config.led_level_res = 0b11; eeconfig_update_kb(keyboard_config.raw); } #ifdef RGB_MATRIX_ENABLE if (keyboard_config.rgb_matrix_enable) { @@ rgb_matrix_set_flags(LED_FLAG_ALL); 461,6 484,8 @@ void matrix_init_kb(void) { void eeconfig_init_kb(void) { // EEPROM is getting reset! keyboard_config.raw = 0; keyboard_config.rgb_matrix_enable = true; keyboard_config.led_level = true; keyboard_config.led_level_res = 0b11; eeconfig_update_kb(keyboard_config.raw); eeconfig_init_user(); }
M keyboards/moonlander/moonlander.h => keyboards/moonlander/moonlander.h +4 -1
@@ 1,6 1,6 @@ /* Copyright 2020 ZSA Technology Labs, Inc <@zsa> * Copyright 2020 Jack Humbert <jack.humb@gmail.com> * Copyright 2020 Drashna Jael're <drashna@live.com> * Copyright 2020 Christopher Courtney <drashna@live.com> (@drashna) * * 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 63,6 63,7 @@ extern bool mcp23018_leds[]; enum planck_ez_keycodes { TOGGLE_LAYER_COLOR = SAFE_RANGE, LED_LEVEL, ML_SAFE_RANGE, }; @@ 75,6 76,8 @@ typedef union { struct { bool disable_layer_led :1; bool rgb_matrix_enable :1; bool led_level :1; uint8_t led_level_res :2; // DO NOT REMOVE }; } keyboard_config_t;
M keyboards/planck/ez/config.h => keyboards/planck/ez/config.h +8 -0
@@ 17,6 17,14 @@ #pragma once #undef VENDOR_ID #define VENDOR_ID 0x3297 #undef PRODUCT_ID #define PRODUCT_ID 0xC6CE #undef MANUFACTURER #define MANUFACTURER ZSA Technology Labs #undef PRODUCT #define PRODUCT Planck EZ /* USB Device descriptor parameter */ #define DEVICE_VER 0x0000
M keyboards/planck/ez/ez.c => keyboards/planck/ez/ez.c +0 -1
@@ 18,7 18,6 @@ #include "hal.h" keyboard_config_t keyboard_config; #ifdef RGB_MATRIX_ENABLE const is31_led g_is31_leds[DRIVER_LED_TOTAL] = { /* Refer to IS31 manual for these locations
M keyboards/planck/ez/ez.h => keyboards/planck/ez/ez.h +4 -0
@@ 17,6 17,10 @@ #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, \
A keyboards/planck/ez/glow/config.h => keyboards/planck/ez/glow/config.h +24 -0
@@ 0,0 1,24 @@ /* * 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 #undef PRODUCT_ID #define PRODUCT_ID 0xC6CF #undef PRODUCT #define PRODUCT Planck EZ Glow
A keyboards/planck/ez/glow/glow.c => keyboards/planck/ez/glow/glow.c +1 -0
A keyboards/planck/ez/glow/glow.h => keyboards/planck/ez/glow/glow.h +3 -0
A keyboards/planck/ez/glow/rules.mk => keyboards/planck/ez/glow/rules.mk +1 -0
M keyboards/planck/ez/readme.md => keyboards/planck/ez/readme.md +6 -0
@@ 14,6 14,12 @@ Make example for this keyboard (after setting up your build environment): See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). # Planck EZ Glow For the per key RGB version of this keyboard, you want to use the "glow" subdirectory. For example: make planck/ez/glow:default ## Planck EZ Configuration (from Oryx) ### Indicator LEDs
M keyboards/planck/ez/rules.mk => keyboards/planck/ez/rules.mk +0 -2
@@ 24,10 24,8 @@ API_SYSEX_ENABLE = no SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend #SLEEP_LED_ENABLE = yes # Breathing sleep LED during USB suspend CUSTOM_MATRIX = no # Custom matrix file # SERIAL_LINK_ENABLE = yes ENCODER_ENABLE = yes RGB_MATRIX_ENABLE = IS31FL3737 LAYOUTS = ortho_4x12 planck_mit LAYOUTS_HAS_RGB = no