aboutsummaryrefslogtreecommitdiff
path: root/keyboards/moonlander
diff options
context:
space:
mode:
authorDrashna Jaelre <drashna@live.com>2020-10-13 04:35:36 -0700
committerGitHub <noreply@github.com>2020-10-13 04:35:36 -0700
commit2a65709db6b6154b6780b70b26de57d8d9a63749 (patch)
treefb79b2928adcde4b41df8062060982bb03e4d806 /keyboards/moonlander
parent451e600476d72b6f595044844b8a6767246de5ce (diff)
downloadqmk_firmware-2a65709db6b6154b6780b70b26de57d8d9a63749.tar.gz
qmk_firmware-2a65709db6b6154b6780b70b26de57d8d9a63749.zip
[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>
Diffstat (limited to 'keyboards/moonlander')
-rw-r--r--keyboards/moonlander/config.h2
-rw-r--r--keyboards/moonlander/keymaps/default/config.h2
-rw-r--r--keyboards/moonlander/keymaps/default/keymap.c72
-rw-r--r--keyboards/moonlander/matrix.c2
-rw-r--r--keyboards/moonlander/moonlander.c31
-rw-r--r--keyboards/moonlander/moonlander.h5
6 files changed, 53 insertions, 61 deletions
diff --git a/keyboards/moonlander/config.h b/keyboards/moonlander/config.h
index b77fcbd1e..d1c685280 100644
--- a/keyboards/moonlander/config.h
+++ b/keyboards/moonlander/config.h
@@ -1,6 +1,6 @@
1/* Copyright 2020 ZSA Technology Labs, Inc <@zsa> 1/* Copyright 2020 ZSA Technology Labs, Inc <@zsa>
2 * Copyright 2020 Jack Humbert <jack.humb@gmail.com> 2 * Copyright 2020 Jack Humbert <jack.humb@gmail.com>
3 * Copyright 2020 Drashna Jael're <drashna@live.com> 3 * Copyright 2020 Christopher Courtney <drashna@live.com> (@drashna)
4 * 4 *
5 * This program is free software: you can redistribute it and/or modify 5 * This program is free software: you can redistribute it and/or modify
6 * it under the terms of the GNU General Public License as published by 6 * it under the terms of the GNU General Public License as published by
diff --git a/keyboards/moonlander/keymaps/default/config.h b/keyboards/moonlander/keymaps/default/config.h
index 95b05a5a6..576aae9f5 100644
--- a/keyboards/moonlander/keymaps/default/config.h
+++ b/keyboards/moonlander/keymaps/default/config.h
@@ -1,6 +1,6 @@
1/* Copyright 2020 ZSA Technology Labs, Inc <@zsa> 1/* Copyright 2020 ZSA Technology Labs, Inc <@zsa>
2 * Copyright 2020 Jack Humbert <jack.humb@gmail.com> 2 * Copyright 2020 Jack Humbert <jack.humb@gmail.com>
3 * Copyright 2020 Drashna Jael're <drashna@live.com> 3 * Copyright 2020 Christopher Courtney <drashna@live.com> (@drashna)
4 * 4 *
5 * This program is free software: you can redistribute it and/or modify 5 * This program is free software: you can redistribute it and/or modify
6 * it under the terms of the GNU General Public License as published by 6 * it under the terms of the GNU General Public License as published by
diff --git a/keyboards/moonlander/keymaps/default/keymap.c b/keyboards/moonlander/keymaps/default/keymap.c
index 67a2cd53a..6d98a8607 100644
--- a/keyboards/moonlander/keymaps/default/keymap.c
+++ b/keyboards/moonlander/keymaps/default/keymap.c
@@ -1,6 +1,6 @@
1/* Copyright 2020 ZSA Technology Labs, Inc <@zsa> 1/* Copyright 2020 ZSA Technology Labs, Inc <@zsa>
2 * Copyright 2020 Jack Humbert <jack.humb@gmail.com> 2 * Copyright 2020 Jack Humbert <jack.humb@gmail.com>
3 * Copyright 2020 Drashna Jael're <drashna@live.com> 3 * Copyright 2020 Christopher Courtney <drashna@live.com> (@drashna)
4 * 4 *
5 * This program is free software: you can redistribute it and/or modify 5 * This program is free software: you can redistribute it and/or modify
6 * it under the terms of the GNU General Public License as published by 6 * it under the terms of the GNU General Public License as published by
@@ -35,68 +35,32 @@ enum custom_keycodes {
35const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 35const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
36 [BASE] = LAYOUT_moonlander( 36 [BASE] = LAYOUT_moonlander(
37 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, 37 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,
38 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, 38 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,
39 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), 39 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),
40 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, 40 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,
41 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), 41 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),
42 KC_SPC, KC_BSPC, KC_LGUI, KC_RALT, KC_TAB, KC_ENT 42 KC_SPC, KC_BSPC, KC_LGUI, KC_LALT, KC_TAB, KC_ENT
43 ), 43 ),
44 44
45 [SYMB] = LAYOUT_moonlander( 45 [SYMB] = LAYOUT_moonlander(
46 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, 46 VRSN, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, _______, _______, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11,
47 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, 47 _______, KC_EXLM, KC_AT, KC_LCBR, KC_RCBR, KC_PIPE, _______, _______, KC_UP, KC_7, KC_8, KC_9, KC_ASTR, KC_F12,
48 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, 48 _______, KC_HASH, KC_DLR, KC_LPRN, KC_RPRN, KC_GRV, _______, _______, KC_DOWN, KC_4, KC_5, KC_6, KC_PLUS, _______,
49 KC_TRNS, KC_PERC, KC_CIRC, KC_LBRC, KC_RBRC, KC_TILD, KC_AMPR, KC_1, KC_2, KC_3, KC_BSLS, KC_TRNS, 49 _______, KC_PERC, KC_CIRC, KC_LBRC, KC_RBRC, KC_TILD, KC_AMPR, KC_1, KC_2, KC_3, KC_BSLS, _______,
50 EEP_RST, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_VAI, RGB_TOG, KC_TRNS, KC_DOT, KC_0, KC_EQL, KC_TRNS, 50 EEP_RST, _______, _______, _______, _______, RGB_VAI, RGB_TOG, _______, KC_DOT, KC_0, KC_EQL, _______,
51 RGB_HUD, RGB_VAD, RGB_HUI, TOGGLE_LAYER_COLOR,KC_TRNS, KC_TRNS 51 RGB_HUD, RGB_VAD, RGB_HUI, TOGGLE_LAYER_COLOR,_______, _______
52 ), 52 ),
53 53
54 [MDIA] = LAYOUT_moonlander( 54 [MDIA] = LAYOUT_moonlander(
55 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, 55 LED_LEVEL,_______,_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET,
56 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, 56 _______, _______, _______, KC_MS_U, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
57 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, 57 _______, _______, KC_MS_L, KC_MS_D, KC_MS_R, _______, _______, _______, _______, _______, _______, _______, _______, KC_MPLY,
58 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_MNXT, KC_TRNS, KC_TRNS, 58 _______, _______, _______, _______, _______, _______, _______, _______, KC_MPRV, KC_MNXT, _______, _______,
59 KC_TRNS, KC_TRNS, KC_TRNS, KC_BTN1, KC_BTN2, KC_TRNS, KC_TRNS, KC_VOLU, KC_VOLD, KC_MUTE, KC_TRNS, KC_TRNS, 59 _______, _______, _______, KC_BTN1, KC_BTN2, _______, _______, KC_VOLU, KC_VOLD, KC_MUTE, _______, _______,
60 KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS 60 _______, _______, _______, _______, _______, _______
61 ), 61 ),
62}; 62};
63 63
64layer_state_t layer_state_set_user(layer_state_t state) {
65 ML_LED_1(false);
66 ML_LED_2(false);
67 ML_LED_3(false);
68 ML_LED_4(false);
69 ML_LED_5(false);
70 ML_LED_6(false);
71
72 switch (get_highest_layer(state)) {
73 case 1:
74 ML_LED_1(1);
75 ML_LED_4(1);
76 break;
77 case 2:
78 ML_LED_2(1);
79 ML_LED_5(1);
80 break;
81 case 3:
82 ML_LED_3(1);
83 break;
84 case 4:
85 ML_LED_4(1);
86 break;
87 case 5:
88 ML_LED_5(1);
89 break;
90 case 6:
91 ML_LED_6(1);
92 break;
93 default:
94 break;
95 }
96
97 return state;
98}
99
100bool process_record_user(uint16_t keycode, keyrecord_t *record) { 64bool process_record_user(uint16_t keycode, keyrecord_t *record) {
101 if (record->event.pressed) { 65 if (record->event.pressed) {
102 switch (keycode) { 66 switch (keycode) {
diff --git a/keyboards/moonlander/matrix.c b/keyboards/moonlander/matrix.c
index 774b01187..b90c1b59e 100644
--- a/keyboards/moonlander/matrix.c
+++ b/keyboards/moonlander/matrix.c
@@ -1,6 +1,6 @@
1/* Copyright 2020 ZSA Technology Labs, Inc <@zsa> 1/* Copyright 2020 ZSA Technology Labs, Inc <@zsa>
2 * Copyright 2020 Jack Humbert <jack.humb@gmail.com> 2 * Copyright 2020 Jack Humbert <jack.humb@gmail.com>
3 * Copyright 2020 Drashna Jael're <drashna@live.com> 3 * Copyright 2020 Christopher Courtney <drashna@live.com> (@drashna)
4 * 4 *
5 * This program is free software: you can redistribute it and/or modify 5 * This program is free software: you can redistribute it and/or modify
6 * it under the terms of the GNU General Public License as published by 6 * it under the terms of the GNU General Public License as published by
diff --git a/keyboards/moonlander/moonlander.c b/keyboards/moonlander/moonlander.c
index 403e6aef8..39f61b5c4 100644
--- a/keyboards/moonlander/moonlander.c
+++ b/keyboards/moonlander/moonlander.c
@@ -1,6 +1,6 @@
1/* Copyright 2020 ZSA Technology Labs, Inc <@zsa> 1/* Copyright 2020 ZSA Technology Labs, Inc <@zsa>
2 * Copyright 2020 Jack Humbert <jack.humb@gmail.com> 2 * Copyright 2020 Jack Humbert <jack.humb@gmail.com>
3 * Copyright 2020 Drashna Jael're <drashna@live.com> 3 * Copyright 2020 Christopher Courtney <drashna@live.com> (@drashna)
4 * 4 *
5 * This program is free software: you can redistribute it and/or modify 5 * This program is free software: you can redistribute it and/or modify
6 * it under the terms of the GNU General Public License as published by 6 * it under the terms of the GNU General Public License as published by
@@ -159,10 +159,10 @@ void keyboard_pre_init_kb(void) {
159 keyboard_pre_init_user(); 159 keyboard_pre_init_user();
160} 160}
161 161
162#ifdef ORYX_CONFIGURATOR 162#if !defined(MOONLANDER_USER_LEDS)
163layer_state_t layer_state_set_kb(layer_state_t state) { 163layer_state_t layer_state_set_kb(layer_state_t state) {
164 state = layer_state_set_user(state); 164 state = layer_state_set_user(state);
165 if (is_launching) return state; 165 if (is_launching || !keyboard_config.led_level) return state;
166 166
167 ML_LED_1(false); 167 ML_LED_1(false);
168 ML_LED_2(false); 168 ML_LED_2(false);
@@ -415,6 +415,24 @@ bool process_record_kb(uint16_t keycode, keyrecord_t *record) {
415 if (!record->event.pressed && !webusb_state.pairing) layer_state_set_kb(layer_state); 415 if (!record->event.pressed && !webusb_state.pairing) layer_state_set_kb(layer_state);
416 break; 416 break;
417#endif 417#endif
418#if !defined(MOONLANDER_USER_LEDS)
419 case LED_LEVEL:
420 if (record->event.pressed) {
421 keyboard_config.led_level ^= 1;
422 eeconfig_update_kb(keyboard_config.raw);
423 if (keyboard_config.led_level) {
424 layer_state_set_kb(layer_state);
425 } else {
426 ML_LED_1(false);
427 ML_LED_2(false);
428 ML_LED_3(false);
429 ML_LED_4(false);
430 ML_LED_5(false);
431 ML_LED_6(false);
432 }
433 }
434 break;
435#endif
418#ifdef RGB_MATRIX_ENABLE 436#ifdef RGB_MATRIX_ENABLE
419 case TOGGLE_LAYER_COLOR: 437 case TOGGLE_LAYER_COLOR:
420 if (record->event.pressed) { 438 if (record->event.pressed) {
@@ -449,6 +467,11 @@ bool process_record_kb(uint16_t keycode, keyrecord_t *record) {
449void matrix_init_kb(void) { 467void matrix_init_kb(void) {
450 keyboard_config.raw = eeconfig_read_kb(); 468 keyboard_config.raw = eeconfig_read_kb();
451 469
470 if (!keyboard_config.led_level && !keyboard_config.led_level_res) {
471 keyboard_config.led_level = true;
472 keyboard_config.led_level_res = 0b11;
473 eeconfig_update_kb(keyboard_config.raw);
474 }
452#ifdef RGB_MATRIX_ENABLE 475#ifdef RGB_MATRIX_ENABLE
453 if (keyboard_config.rgb_matrix_enable) { 476 if (keyboard_config.rgb_matrix_enable) {
454 rgb_matrix_set_flags(LED_FLAG_ALL); 477 rgb_matrix_set_flags(LED_FLAG_ALL);
@@ -461,6 +484,8 @@ void matrix_init_kb(void) {
461void eeconfig_init_kb(void) { // EEPROM is getting reset! 484void eeconfig_init_kb(void) { // EEPROM is getting reset!
462 keyboard_config.raw = 0; 485 keyboard_config.raw = 0;
463 keyboard_config.rgb_matrix_enable = true; 486 keyboard_config.rgb_matrix_enable = true;
487 keyboard_config.led_level = true;
488 keyboard_config.led_level_res = 0b11;
464 eeconfig_update_kb(keyboard_config.raw); 489 eeconfig_update_kb(keyboard_config.raw);
465 eeconfig_init_user(); 490 eeconfig_init_user();
466} 491}
diff --git a/keyboards/moonlander/moonlander.h b/keyboards/moonlander/moonlander.h
index 0e2dc880e..08bec5c07 100644
--- a/keyboards/moonlander/moonlander.h
+++ b/keyboards/moonlander/moonlander.h
@@ -1,6 +1,6 @@
1/* Copyright 2020 ZSA Technology Labs, Inc <@zsa> 1/* Copyright 2020 ZSA Technology Labs, Inc <@zsa>
2 * Copyright 2020 Jack Humbert <jack.humb@gmail.com> 2 * Copyright 2020 Jack Humbert <jack.humb@gmail.com>
3 * Copyright 2020 Drashna Jael're <drashna@live.com> 3 * Copyright 2020 Christopher Courtney <drashna@live.com> (@drashna)
4 * 4 *
5 * This program is free software: you can redistribute it and/or modify 5 * This program is free software: you can redistribute it and/or modify
6 * it under the terms of the GNU General Public License as published by 6 * it under the terms of the GNU General Public License as published by
@@ -63,6 +63,7 @@ extern bool mcp23018_leds[];
63 63
64enum planck_ez_keycodes { 64enum planck_ez_keycodes {
65 TOGGLE_LAYER_COLOR = SAFE_RANGE, 65 TOGGLE_LAYER_COLOR = SAFE_RANGE,
66 LED_LEVEL,
66 ML_SAFE_RANGE, 67 ML_SAFE_RANGE,
67}; 68};
68 69
@@ -75,6 +76,8 @@ typedef union {
75 struct { 76 struct {
76 bool disable_layer_led :1; 77 bool disable_layer_led :1;
77 bool rgb_matrix_enable :1; 78 bool rgb_matrix_enable :1;
79 bool led_level :1;
80 uint8_t led_level_res :2; // DO NOT REMOVE
78 }; 81 };
79} keyboard_config_t; 82} keyboard_config_t;
80 83