FAUXCLICKY_ENABLE = no # Use buzzer to emulate clicky switches
HD44780_ENABLE = no # Enable support for HD44780 based LCDs (+400)
-LAYOUT = ortho_4x4 ortho_4x8 ortho_4x12 ortho_4x16
+LAYOUTS = ortho_4x4 ortho_4x8 ortho_4x12 ortho_4x16
FAUXCLICKY_ENABLE = no # Use buzzer to emulate clicky switches
HD44780_ENABLE = no # Enable support for HD44780 based LCDs (+400)
-LAYOUT = ortho_5x5 ortho_5x10 ortho_5x15
+LAYOUTS = ortho_5x5 ortho_5x10 ortho_5x15
#define EE_HANDS
#endif
+// set top left key as bootloader mode escape key on 4x4 48key layout
+#if defined(KEYBOARD_4x4)
+#define QMK_LED B0
+#define QMK_ESC_OUTPUT C6 // usually COL
+#define QMK_ESC_INPUT B2 // usually ROW
+#endif
+
#endif
_______________Qwerty_Row__0_______________,
_______________Qwerty_Row__1_______________,
_______________Qwerty_Row__2_______________,
- KC_LCTL, KC_LGUI, KC_LALT, GHERKIN, SUBTER, SH_T(KC_SPC), KC_SPC, SUPRA, KC_RGUI, KC_RALT, KC_DEL, KC_RCTL
+ KC_LCTL, KC_LGUI, KC_LALT, GHERKIN, SUBTER, SH_T(KC_SPC), SH_T(KC_SPC), SUPRA, KC_RGUI, KC_RALT, GHERKIN, KC_RCTL
),
#else
[_GK] = LAYOUT_ortho_4x12_wrapper(
## Using QMK DFU
Once QMK DFU is burned to your ProMicro, you can then flash subsequent hex files with
`make lets_split/rev2:<keymap>:dfu dfu=qmk`
-The `dfu=qmk` conditional will set `BOOTLOADER = qmk-dfu` instead of `BOOTLOADER = caterina`
+The `dfu=qmk` conditional will set `BOOTLOADER = qmk-dfu` instead of `BOOTLOADER = caterina`
----
-# JJ40
-## To Do
-- [ ] Mousekeys not working with Userspace for some reason (jj40 only)
\ No newline at end of file
+# Let's Split LEDs
+In `qmk_firmware/keyboards/lets_split/rev2/rev2.c`, replace contents with
+```
+#include "lets_split.h"
+
+
+#ifdef SSD1306OLED
+void led_set_kb(uint8_t usb_led) {
+ // put your keyboard LED indicator (ex: Caps Lock LED) toggling code here
+ led_set_user(usb_led);
+}
+#endif
+
+void matrix_init_kb(void) {
+
+ // // green led on
+ // DDRD |= (1<<5);
+ // PORTD &= ~(1<<5);
+
+ // // orange led on
+ // DDRB |= (1<<0);
+ // PORTB &= ~(1<<0);
+
+ //turn off LEDs on ProMicro
+ DDRD &= ~(1<<5);
+ PORTD &= ~(1<<5);
+
+ DDRB &= ~(1<<0);
+ PORTB &= ~(1<<0);
+
+ matrix_init_user();
+};
+```
+to turn off LEDs
ifeq ($(strip $(KEYBOARD)), jj40)
SWAP_HANDS_ENABLE = no
+endif
+
+ifeq ($(strip $(KEYBOARD)), 4x4)
+ SWAP_HANDS_ENABLE = no
endif
\ No newline at end of file
--- /dev/null
+["","","","","","","","","",""],
+["","","","","","","","","",""],
+["","","","","","","","","",""],
+["","","","","","","","","",""],
+["","","","","","","","","",""]
--- /dev/null
+# ortho_5x10
+
+ LAYOUT_ortho_5x10
--- /dev/null
+#pragma once
+
+//QMK DFU settings (ProMicro boards)
+// set top left key as bootloader mode escape key on Gherkin
+#if defined(KEYBOARD_5x5)
+#define QMK_LED B0
+#define QMK_ESC_OUTPUT D7 // usually COL
+#define QMK_ESC_INPUT B2 // usually ROW
+#endif
--- /dev/null
+#include QMK_KEYBOARD_H
+#include "wanleg.h"
+
+const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
+[gGK] = LAYOUT_ortho_5x10_wrapper(
+ _______________Gherkin_NUM_0_______________,
+ _______________Gherkin_Row_0_______________,
+ _______________Gherkin_Row_1_______________,
+ _______________Gherkin_Row_2_______________,
+ _______, _______, _______, gNUMBER, gETCETERA, KC_SPC,gDIRECTION, KC_RGUI, _______, _______
+),
+
+
+[gNUM] = LAYOUT_ortho_5x10_wrapper(
+ _______________Gherkin_NUM_0_______________,
+ _______________Gherkin_NUM_0_______________,
+ _______________Gherkin_NUM_1_______________,
+ _______________Gherkin_NUM_2_______________,
+ _______, _______, _______, _______, _______, KC_ENT, KC_RSFT, KC_RGUI, _______, _______
+),
+
+[gDIR] = LAYOUT_ortho_5x10_wrapper(
+ _______________Gherkin_NUM_0_______________,
+ _______________Gherkin_DIR_0_______________,
+ _______________Gherkin_DIR_1_______________,
+ _______________Gherkin_DIR_2_______________,
+ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
+),
+
+[gETC] = LAYOUT_ortho_5x10_wrapper(
+ _______________Gherkin_NUM_0_______________,
+ _______________Gherkin_ETC_0_______________,
+ _______________Gherkin_ETC_1_______________,
+ _______________Gherkin_ETC_2_______________,
+ _______, _______, _______, _______, _______, LALT(LCTL(KC_DEL)), _______, _______, _______, _______
+),
+
+};
--- /dev/null
+SWAP_HANDS_ENABLE = no
+
+BOOTLOADER = qmk-dfu
\ No newline at end of file
}
return true;
}
+
+/// Turn off LEDs on ProMicros of Let's Split ///
+// LEDs only on by default on Let's Split
+// Add reconfigurable functions here, for keymap customization
+// This allows for a global, userspace functions, and continued
+// customization of the keymap. Use _keymap instead of _user
+// functions in the keymaps
+__attribute__ ((weak))
+void matrix_init_keymap(void) {}
+
+// Call user matrix init, then call the keymap's init function
+void matrix_init_user(void) {
+#if defined(KEYBOARD_lets_split_rev2)
+ DDRD &= ~(1<<5);
+ PORTD &= ~(1<<5);
+
+ DDRB &= ~(1<<0);
+ PORTB &= ~(1<<0);
+#endif
+ matrix_init_keymap();
+}
\ No newline at end of file
#define KEYMAP_wrapper(...) LAYOUT(__VA_ARGS__)
#define LAYOUT_wrapper(...) LAYOUT(__VA_ARGS__)
#define LAYOUT_ortho_3x10_wrapper(...) LAYOUT_ortho_3x10(__VA_ARGS__)
+#define LAYOUT_ortho_5x10_wrapper(...) LAYOUT_ortho_5x10(__VA_ARGS__)
#define LAYOUT_ortho_4x12_wrapper(...) LAYOUT_ortho_4x12(__VA_ARGS__)
#define LAYOUT_ortho_5x15_wrapper(...) LAYOUT_ortho_5x15(__VA_ARGS__)
#define _______________GherkinLike_1_______________ KC_TAB, _______________Gherkin_Row_1_______________, KC_QUOT
#define _______________GherkinLike_2_______________ TD(TD_SFT_CAPS), SFT_T(KC_Z), KC_X, KC_C, LT(NUM, KC_V),LT(ETC, KC_B),KC_N, LT(DIR, KC_M), GUI_T(KC_COMM), ALT_T(KC_DOT), CTL_T(KC_BSPC), SFT_T(KC_ENT)
#define _______________GherkinLike_3_______________ KC_LCTL, KC_LGUI, KC_LALT, KC_LALT, NUMBER, ETCETERA, KC_SPC,DIRECTION, KC_RGUI, KC_RALT, KC_DEL, KC_RCTL
-#define _______________GherkinLike_3_OneHand_______ KC_LCTL, KC_LGUI, KC_LALT, ONEHAND, NUMBER, ETCETERA, KC_SPC,DIRECTION, KC_RGUI, KC_RALT, KC_DEL, KC_RCTL
+#define _______________GherkinLike_3_OneHand_______ KC_LCTL, KC_LGUI, KC_LALT, ONEHAND, NUMBER, ETCETERA, KC_SPC,DIRECTION, KC_RGUI, KC_RALT, ONEHAND, KC_RCTL
/* Qwerty
* .-------------------------------------------------------------------------------------.
/* Gherkin Numbers
* .-----------------------------------------------------------------------------------------------------------.
- * | | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | DEL |
+ * | | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | BACKSP |
* |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------|
* | | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | |
* |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------|
* | | | | | | | ENTER | SHIFT | RGUI | | | |
* '-----------------------------------------------------------------------------------------------------------'
*/
-#define _______________NUMBERS_Row_0_______________ _______, _______________Gherkin_NUM_0_______________, KC_DEL
+#define _______________NUMBERS_Row_0_______________ _______, _______________Gherkin_NUM_0_______________, KC_BSPC
#define _______________NUMBERS_Row_1_______________ _______, _______________Gherkin_NUM_1_______________, _______
#define _______________NUMBERS_Row_2_______________ _______, _______________Gherkin_NUM_2_______________, _______
#define _______________NUMBERS_Row_3_______________ _______, _______, _______, _______, _______, _______, KC_ENT, KC_RSFT, KC_RGUI, _______, _______, _______