[MERGE] Consolidate EE Hands with MASTER_LEFT/RIGHT and simplify behavior (24162)
This commit is contained in:
parent
105272a48a
commit
aed13731a0
143 changed files with 159 additions and 1220 deletions
|
@ -264,27 +264,24 @@ One thing to remember, the side that the USB port is plugged into is always the
|
|||
There are a few different ways to set handedness for split keyboards (listed in order of precedence):
|
||||
|
||||
1. Set `SPLIT_HAND_PIN`: Reads a pin to determine handedness. If pin is high, it's the left side, if low, the half is determined to be the right side
|
||||
2. Set `EE_HANDS` and flash `eeprom-lefthand.eep`/`eeprom-righthand.eep` to each half
|
||||
2. flash `eeprom-lefthand.eep`/`eeprom-righthand.eep` to each half
|
||||
* For boards with DFU bootloader you can use `:dfu-split-left`/`:dfu-split-right` to flash these EEPROM files
|
||||
* For boards with Caterina bootloader (like stock Pro Micros), use `:avrdude-split-left`/`:avrdude-split-right`
|
||||
* For boards with ARM DFU bootloader (like Proton C), use `:dfu-util-split-left`/`:dfu-util-split-right`
|
||||
3. Set `MASTER_RIGHT`: Half that is plugged into the USB port is determined to be the master and right half (inverse of the default)
|
||||
4. Default: The side that is plugged into the USB port is the master half and is assumed to be the left half. The slave side is the right half
|
||||
* For boards with ARM UF2 bootloader (like RP2040), use `:uf2-split-left`/`:uf2-split-right`
|
||||
3. Default: The side that is plugged into the USB port is the master half and is assumed to be the left half. The slave side is the right half
|
||||
|
||||
#### Defines for handedness
|
||||
|
||||
* `#define SPLIT_HAND_PIN B7`
|
||||
* For using high/low pin to determine handedness, low = right hand, high = left hand. Replace `B7` with the pin you are using. This is optional, and if you leave `SPLIT_HAND_PIN` undefined, then you can still use the EE_HANDS method or MASTER_LEFT / MASTER_RIGHT defines like the stock Let's Split uses.
|
||||
* For using high/low pin to determine handedness, low = right hand, high = left hand. Replace `B7` with the pin you are using. This is optional, and if you leave `SPLIT_HAND_PIN` undefined, then you can still use eeprom to set side.
|
||||
|
||||
* `#define SPLIT_HAND_MATRIX_GRID <out_pin>,<in_pin>`
|
||||
* The handedness is determined by using the intersection of the keyswitches in the key matrix, which does not exist. Normally, when this intersection is shorted (level low), it is considered right. If you define `#define SPLIT_HAND_MATRIX_GRID_LOW_IS_LEFT`, it is determined to be left when the level is low.
|
||||
|
||||
* `#define EE_HANDS` (only works if `SPLIT_HAND_PIN` and `SPLIT_HAND_MATRIX_GRID` are not defined)
|
||||
* EEPROM (only works if `SPLIT_HAND_PIN` and `SPLIT_HAND_MATRIX_GRID` are not defined)
|
||||
* Reads the handedness value stored in the EEPROM after `eeprom-lefthand.eep`/`eeprom-righthand.eep` has been flashed to their respective halves.
|
||||
|
||||
* `#define MASTER_RIGHT`
|
||||
* Master half is defined to be the right half.
|
||||
|
||||
### Other Options
|
||||
|
||||
* `#define USE_I2C`
|
||||
|
|
|
@ -25,7 +25,7 @@ Using Bootmagic will **always reset** the EEPROM, so you will lose any settings
|
|||
|
||||
## Split Keyboards
|
||||
|
||||
When [handedness](split_keyboard#setting-handedness) is predetermined via options like `SPLIT_HAND_PIN` or `EE_HANDS`, you might need to configure a different key between halves. To identify the correct key for the right half, examine the split key matrix defined in the `<keyboard>.h` file, e.g.:
|
||||
When [handedness](split_keyboard#setting-handedness) is predetermined via options like `SPLIT_HAND_PIN` or EEPROM, you might need to configure a different key between halves. To identify the correct key for the right half, examine the split key matrix defined in the `<keyboard>.h` file, e.g.:
|
||||
|
||||
```c
|
||||
#define LAYOUT_split_3x5_2( \
|
||||
|
|
|
@ -463,7 +463,7 @@ The following configuration options are only available when using `SPLIT_POINTIN
|
|||
| `POINTING_DEVICE_INVERT_Y_RIGHT` | (Optional) Inverts the Y axis report. | _not defined_ |
|
||||
|
||||
::: warning
|
||||
If there is a `_RIGHT` configuration option or callback, the [common configuration](pointing_device#common-configuration) option will work for the left. For correct left/right detection you should setup a [handedness option](split_keyboard#setting-handedness), `EE_HANDS` is usually a good option for an existing board that doesn't do handedness by hardware.
|
||||
If there is a `_RIGHT` configuration option or callback, the [common configuration](pointing_device#common-configuration) option will work for the left. For correct left/right detection you should setup a [handedness option](split_keyboard#setting-handedness), Using EEPROM is usually a good option for an existing board that doesn't do handedness by hardware.
|
||||
:::
|
||||
|
||||
|
||||
|
|
|
@ -143,13 +143,6 @@ While `MATRIX_MASKED` isn't necessary to use `SPLIT_HAND_MATRIX_GRID` successful
|
|||
|
||||
This method sets the keyboard's handedness by setting a flag in the persistent storage (`EEPROM`). This is checked when the controller first starts up, and determines what half the keyboard is, and how to orient the keyboard layout.
|
||||
|
||||
|
||||
To enable this method, add the following to your `config.h` file:
|
||||
|
||||
```c
|
||||
#define EE_HANDS
|
||||
```
|
||||
|
||||
Next, you will have to flash the correct handedness option to the controller on each halve. You can do this manually with the following bootloader targets using `qmk flash -kb <keyboard> -km <keymap> -bl <bootloader>` command to flash:
|
||||
|
||||
|Microcontroller Type|Bootloader Parameter|
|
||||
|
@ -181,25 +174,6 @@ This setting is not changed when re-initializing the EEPROM using the `EE_CLR` k
|
|||
You can find the `EEPROM` files in the QMK firmware repo, [here](https://github.com/qmk/qmk_firmware/tree/master/quantum/split_common).
|
||||
|
||||
|
||||
#### Handedness by `#define`
|
||||
|
||||
You can use this option when USB cable is always connected to just one side of the split keyboard.
|
||||
|
||||
If the USB cable is always connected to the right side, add the following to your `config.h` file and flash both sides with this option:
|
||||
```c
|
||||
#define MASTER_RIGHT
|
||||
```
|
||||
|
||||
If the USB cable is always connected to the left side, add the following to your `config.h` file and flash both sides with this option:
|
||||
```c
|
||||
#define MASTER_LEFT
|
||||
```
|
||||
|
||||
::: tip
|
||||
If neither options are defined, the handedness defaults to `MASTER_LEFT`.
|
||||
:::
|
||||
|
||||
|
||||
### Communication Options
|
||||
|
||||
Because not every split keyboard is identical, there are a number of additional options that can be configured in your `config.h` file.
|
||||
|
|
|
@ -439,43 +439,43 @@ See also: [LED Matrix](features/led_matrix)
|
|||
|
||||
See also: [Magic Keycodes](keycodes_magic)
|
||||
|
||||
|Key |Aliases |Description |
|
||||
|-------------------------------------|---------|--------------------------------------------------------------------------|
|
||||
|`QK_MAGIC_SWAP_CONTROL_CAPS_LOCK` |`CL_SWAP`|Swap Caps Lock and Left Control |
|
||||
|`QK_MAGIC_UNSWAP_CONTROL_CAPS_LOCK` |`CL_NORM`|Unswap Caps Lock and Left Control |
|
||||
|`QK_MAGIC_TOGGLE_CONTROL_CAPS_LOCK` |`CL_TOGG`|Toggle Caps Lock and Left Control swap |
|
||||
|`QK_MAGIC_CAPS_LOCK_AS_CONTROL_ON` |`CL_CTRL`|Treat Caps Lock as Control |
|
||||
|`QK_MAGIC_CAPS_LOCK_AS_CONTROL_OFF` |`CL_CAPS`|Stop treating Caps Lock as Control |
|
||||
|`QK_MAGIC_SWAP_ESCAPE_CAPS_LOCK` |`EC_SWAP`|Swap Caps Lock and Escape |
|
||||
|`QK_MAGIC_UNSWAP_ESCAPE_CAPS_LOCK` |`EC_NORM`|Unswap Caps Lock and Escape |
|
||||
|`QK_MAGIC_TOGGLE_ESCAPE_CAPS_LOCK` |`EC_TOGG`|Toggle Caps Lock and Escape swap |
|
||||
|`QK_MAGIC_SWAP_LCTL_LGUI` |`CG_LSWP`|Swap Left Control and GUI |
|
||||
|`QK_MAGIC_UNSWAP_LCTL_LGUI` |`CG_LNRM`|Unswap Left Control and GUI |
|
||||
|`QK_MAGIC_SWAP_RCTL_RGUI` |`CG_RSWP`|Swap Right Control and GUI |
|
||||
|`QK_MAGIC_UNSWAP_RCTL_RGUI` |`CG_RNRM`|Unswap Right Control and GUI |
|
||||
|`QK_MAGIC_SWAP_CTL_GUI` |`CG_SWAP`|Swap Control and GUI on both sides |
|
||||
|`QK_MAGIC_UNSWAP_CTL_GUI` |`CG_NORM`|Unswap Control and GUI on both sides |
|
||||
|`QK_MAGIC_TOGGLE_CTL_GUI` |`CG_TOGG`|Toggle Control and GUI swap on both sides |
|
||||
|`QK_MAGIC_SWAP_LALT_LGUI` |`AG_LSWP`|Swap Left Alt and GUI |
|
||||
|`QK_MAGIC_UNSWAP_LALT_LGUI` |`AG_LNRM`|Unswap Left Alt and GUI |
|
||||
|`QK_MAGIC_SWAP_RALT_RGUI` |`AG_RSWP`|Swap Right Alt and GUI |
|
||||
|`QK_MAGIC_UNSWAP_RALT_RGUI` |`AG_RNRM`|Unswap Right Alt and GUI |
|
||||
|`QK_MAGIC_SWAP_ALT_GUI` |`AG_SWAP`|Swap Alt and GUI on both sides |
|
||||
|`QK_MAGIC_UNSWAP_ALT_GUI` |`AG_NORM`|Unswap Alt and GUI on both sides |
|
||||
|`QK_MAGIC_TOGGLE_ALT_GUI` |`AG_TOGG`|Toggle Alt and GUI swap on both sides |
|
||||
|`QK_MAGIC_GUI_OFF` |`GU_OFF` |Disable the GUI keys |
|
||||
|`QK_MAGIC_GUI_ON` |`GU_ON` |Enable the GUI keys |
|
||||
|`QK_MAGIC_TOGGLE_GUI` |`GU_TOGG`|Toggles the status of the GUI keys |
|
||||
|`QK_MAGIC_SWAP_GRAVE_ESC` |`GE_SWAP`|Swap <code>`</code> and Escape |
|
||||
|`QK_MAGIC_UNSWAP_GRAVE_ESC` |`GE_NORM`|Unswap <code>`</code> and Escape |
|
||||
|`QK_MAGIC_SWAP_BACKSLASH_BACKSPACE` |`BS_SWAP`|Swap `\` and Backspace |
|
||||
|`QK_MAGIC_UNSWAP_BACKSLASH_BACKSPACE`|`BS_NORM`|Unswap `\` and Backspace |
|
||||
|`QK_MAGIC_TOGGLE_BACKSLASH_BACKSPACE`|`BS_TOGG`|Toggle `\` and Backspace swap state |
|
||||
|`QK_MAGIC_NKRO_ON` |`NK_ON` |Enable N-key rollover |
|
||||
|`QK_MAGIC_NKRO_OFF` |`NK_OFF` |Disable N-key rollover |
|
||||
|`QK_MAGIC_TOGGLE_NKRO` |`NK_TOGG`|Toggle N-key rollover |
|
||||
|`QK_MAGIC_EE_HANDS_LEFT` |`EH_LEFT`|Set the master half of a split keyboard as the left hand (for `EE_HANDS`) |
|
||||
|`QK_MAGIC_EE_HANDS_RIGHT` |`EH_RGHT`|Set the master half of a split keyboard as the right hand (for `EE_HANDS`)|
|
||||
|Key |Aliases |Description |
|
||||
|-------------------------------------|---------|--------------------------------------------------------- |
|
||||
|`QK_MAGIC_SWAP_CONTROL_CAPS_LOCK` |`CL_SWAP`|Swap Caps Lock and Left Control |
|
||||
|`QK_MAGIC_UNSWAP_CONTROL_CAPS_LOCK` |`CL_NORM`|Unswap Caps Lock and Left Control |
|
||||
|`QK_MAGIC_TOGGLE_CONTROL_CAPS_LOCK` |`CL_TOGG`|Toggle Caps Lock and Left Control swap |
|
||||
|`QK_MAGIC_CAPS_LOCK_AS_CONTROL_ON` |`CL_CTRL`|Treat Caps Lock as Control |
|
||||
|`QK_MAGIC_CAPS_LOCK_AS_CONTROL_OFF` |`CL_CAPS`|Stop treating Caps Lock as Control |
|
||||
|`QK_MAGIC_SWAP_ESCAPE_CAPS_LOCK` |`EC_SWAP`|Swap Caps Lock and Escape |
|
||||
|`QK_MAGIC_UNSWAP_ESCAPE_CAPS_LOCK` |`EC_NORM`|Unswap Caps Lock and Escape |
|
||||
|`QK_MAGIC_TOGGLE_ESCAPE_CAPS_LOCK` |`EC_TOGG`|Toggle Caps Lock and Escape swap |
|
||||
|`QK_MAGIC_SWAP_LCTL_LGUI` |`CG_LSWP`|Swap Left Control and GUI |
|
||||
|`QK_MAGIC_UNSWAP_LCTL_LGUI` |`CG_LNRM`|Unswap Left Control and GUI |
|
||||
|`QK_MAGIC_SWAP_RCTL_RGUI` |`CG_RSWP`|Swap Right Control and GUI |
|
||||
|`QK_MAGIC_UNSWAP_RCTL_RGUI` |`CG_RNRM`|Unswap Right Control and GUI |
|
||||
|`QK_MAGIC_SWAP_CTL_GUI` |`CG_SWAP`|Swap Control and GUI on both sides |
|
||||
|`QK_MAGIC_UNSWAP_CTL_GUI` |`CG_NORM`|Unswap Control and GUI on both sides |
|
||||
|`QK_MAGIC_TOGGLE_CTL_GUI` |`CG_TOGG`|Toggle Control and GUI swap on both sides |
|
||||
|`QK_MAGIC_SWAP_LALT_LGUI` |`AG_LSWP`|Swap Left Alt and GUI |
|
||||
|`QK_MAGIC_UNSWAP_LALT_LGUI` |`AG_LNRM`|Unswap Left Alt and GUI |
|
||||
|`QK_MAGIC_SWAP_RALT_RGUI` |`AG_RSWP`|Swap Right Alt and GUI |
|
||||
|`QK_MAGIC_UNSWAP_RALT_RGUI` |`AG_RNRM`|Unswap Right Alt and GUI |
|
||||
|`QK_MAGIC_SWAP_ALT_GUI` |`AG_SWAP`|Swap Alt and GUI on both sides |
|
||||
|`QK_MAGIC_UNSWAP_ALT_GUI` |`AG_NORM`|Unswap Alt and GUI on both sides |
|
||||
|`QK_MAGIC_TOGGLE_ALT_GUI` |`AG_TOGG`|Toggle Alt and GUI swap on both sides |
|
||||
|`QK_MAGIC_GUI_OFF` |`GU_OFF` |Disable the GUI keys |
|
||||
|`QK_MAGIC_GUI_ON` |`GU_ON` |Enable the GUI keys |
|
||||
|`QK_MAGIC_TOGGLE_GUI` |`GU_TOGG`|Toggles the status of the GUI keys |
|
||||
|`QK_MAGIC_SWAP_GRAVE_ESC` |`GE_SWAP`|Swap <code>`</code> and Escape |
|
||||
|`QK_MAGIC_UNSWAP_GRAVE_ESC` |`GE_NORM`|Unswap <code>`</code> and Escape |
|
||||
|`QK_MAGIC_SWAP_BACKSLASH_BACKSPACE` |`BS_SWAP`|Swap `\` and Backspace |
|
||||
|`QK_MAGIC_UNSWAP_BACKSLASH_BACKSPACE`|`BS_NORM`|Unswap `\` and Backspace |
|
||||
|`QK_MAGIC_TOGGLE_BACKSLASH_BACKSPACE`|`BS_TOGG`|Toggle `\` and Backspace swap state |
|
||||
|`QK_MAGIC_NKRO_ON` |`NK_ON` |Enable N-key rollover |
|
||||
|`QK_MAGIC_NKRO_OFF` |`NK_OFF` |Disable N-key rollover |
|
||||
|`QK_MAGIC_TOGGLE_NKRO` |`NK_TOGG`|Toggle N-key rollover |
|
||||
|`QK_MAGIC_EE_HANDS_LEFT` |`EH_LEFT`|Set the master half of a split keyboard as the left hand |
|
||||
|`QK_MAGIC_EE_HANDS_RIGHT` |`EH_RGHT`|Set the master half of a split keyboard as the right hand |
|
||||
|
||||
## MIDI {#midi}
|
||||
|
||||
|
|
|
@ -2,40 +2,40 @@
|
|||
|
||||
**Magic Keycodes** are prefixed with `MAGIC_`, and allow you to access the functionality of the deprecated Bootmagic feature *after* your keyboard has initialized. To use the keycodes, assign them to your keymap as you would any other keycode.
|
||||
|
||||
|Key |Aliases |Description |
|
||||
|-------------------------------------|---------|--------------------------------------------------------------------------|
|
||||
|`QK_MAGIC_SWAP_CONTROL_CAPS_LOCK` |`CL_SWAP`|Swap Caps Lock and Left Control |
|
||||
|`QK_MAGIC_UNSWAP_CONTROL_CAPS_LOCK` |`CL_NORM`|Unswap Caps Lock and Left Control |
|
||||
|`QK_MAGIC_TOGGLE_CONTROL_CAPS_LOCK` |`CL_TOGG`|Toggle Caps Lock and Left Control swap |
|
||||
|`QK_MAGIC_CAPS_LOCK_AS_CONTROL_ON` |`CL_CTRL`|Treat Caps Lock as Control |
|
||||
|`QK_MAGIC_CAPS_LOCK_AS_CONTROL_OFF` |`CL_CAPS`|Stop treating Caps Lock as Control |
|
||||
|`QK_MAGIC_SWAP_ESCAPE_CAPS_LOCK` |`EC_SWAP`|Swap Caps Lock and Escape |
|
||||
|`QK_MAGIC_UNSWAP_ESCAPE_CAPS_LOCK` |`EC_NORM`|Unswap Caps Lock and Escape |
|
||||
|`QK_MAGIC_TOGGLE_ESCAPE_CAPS_LOCK` |`EC_TOGG`|Toggle Caps Lock and Escape swap |
|
||||
|`QK_MAGIC_SWAP_LCTL_LGUI` |`CG_LSWP`|Swap Left Control and GUI |
|
||||
|`QK_MAGIC_UNSWAP_LCTL_LGUI` |`CG_LNRM`|Unswap Left Control and GUI |
|
||||
|`QK_MAGIC_SWAP_RCTL_RGUI` |`CG_RSWP`|Swap Right Control and GUI |
|
||||
|`QK_MAGIC_UNSWAP_RCTL_RGUI` |`CG_RNRM`|Unswap Right Control and GUI |
|
||||
|`QK_MAGIC_SWAP_CTL_GUI` |`CG_SWAP`|Swap Control and GUI on both sides |
|
||||
|`QK_MAGIC_UNSWAP_CTL_GUI` |`CG_NORM`|Unswap Control and GUI on both sides |
|
||||
|`QK_MAGIC_TOGGLE_CTL_GUI` |`CG_TOGG`|Toggle Control and GUI swap on both sides |
|
||||
|`QK_MAGIC_SWAP_LALT_LGUI` |`AG_LSWP`|Swap Left Alt and GUI |
|
||||
|`QK_MAGIC_UNSWAP_LALT_LGUI` |`AG_LNRM`|Unswap Left Alt and GUI |
|
||||
|`QK_MAGIC_SWAP_RALT_RGUI` |`AG_RSWP`|Swap Right Alt and GUI |
|
||||
|`QK_MAGIC_UNSWAP_RALT_RGUI` |`AG_RNRM`|Unswap Right Alt and GUI |
|
||||
|`QK_MAGIC_SWAP_ALT_GUI` |`AG_SWAP`|Swap Alt and GUI on both sides |
|
||||
|`QK_MAGIC_UNSWAP_ALT_GUI` |`AG_NORM`|Unswap Alt and GUI on both sides |
|
||||
|`QK_MAGIC_TOGGLE_ALT_GUI` |`AG_TOGG`|Toggle Alt and GUI swap on both sides |
|
||||
|`QK_MAGIC_GUI_OFF` |`GU_OFF` |Disable the GUI keys |
|
||||
|`QK_MAGIC_GUI_ON` |`GU_ON` |Enable the GUI keys |
|
||||
|`QK_MAGIC_TOGGLE_GUI` |`GU_TOGG`|Toggles the status of the GUI keys |
|
||||
|`QK_MAGIC_SWAP_GRAVE_ESC` |`GE_SWAP`|Swap <code>`</code> and Escape |
|
||||
|`QK_MAGIC_UNSWAP_GRAVE_ESC` |`GE_NORM`|Unswap <code>`</code> and Escape |
|
||||
|`QK_MAGIC_SWAP_BACKSLASH_BACKSPACE` |`BS_SWAP`|Swap `\` and Backspace |
|
||||
|`QK_MAGIC_UNSWAP_BACKSLASH_BACKSPACE`|`BS_NORM`|Unswap `\` and Backspace |
|
||||
|`QK_MAGIC_TOGGLE_BACKSLASH_BACKSPACE`|`BS_TOGG`|Toggle `\` and Backspace swap state |
|
||||
|`QK_MAGIC_NKRO_ON` |`NK_ON` |Enable N-key rollover |
|
||||
|`QK_MAGIC_NKRO_OFF` |`NK_OFF` |Disable N-key rollover |
|
||||
|`QK_MAGIC_TOGGLE_NKRO` |`NK_TOGG`|Toggle N-key rollover |
|
||||
|`QK_MAGIC_EE_HANDS_LEFT` |`EH_LEFT`|Set the master half of a split keyboard as the left hand (for `EE_HANDS`) |
|
||||
|`QK_MAGIC_EE_HANDS_RIGHT` |`EH_RGHT`|Set the master half of a split keyboard as the right hand (for `EE_HANDS`)|
|
||||
|Key |Aliases |Description |
|
||||
|-------------------------------------|---------|----------------------------------------------------------|
|
||||
|`QK_MAGIC_SWAP_CONTROL_CAPS_LOCK` |`CL_SWAP`|Swap Caps Lock and Left Control |
|
||||
|`QK_MAGIC_UNSWAP_CONTROL_CAPS_LOCK` |`CL_NORM`|Unswap Caps Lock and Left Control |
|
||||
|`QK_MAGIC_TOGGLE_CONTROL_CAPS_LOCK` |`CL_TOGG`|Toggle Caps Lock and Left Control swap |
|
||||
|`QK_MAGIC_CAPS_LOCK_AS_CONTROL_ON` |`CL_CTRL`|Treat Caps Lock as Control |
|
||||
|`QK_MAGIC_CAPS_LOCK_AS_CONTROL_OFF` |`CL_CAPS`|Stop treating Caps Lock as Control |
|
||||
|`QK_MAGIC_SWAP_ESCAPE_CAPS_LOCK` |`EC_SWAP`|Swap Caps Lock and Escape |
|
||||
|`QK_MAGIC_UNSWAP_ESCAPE_CAPS_LOCK` |`EC_NORM`|Unswap Caps Lock and Escape |
|
||||
|`QK_MAGIC_TOGGLE_ESCAPE_CAPS_LOCK` |`EC_TOGG`|Toggle Caps Lock and Escape swap |
|
||||
|`QK_MAGIC_SWAP_LCTL_LGUI` |`CG_LSWP`|Swap Left Control and GUI |
|
||||
|`QK_MAGIC_UNSWAP_LCTL_LGUI` |`CG_LNRM`|Unswap Left Control and GUI |
|
||||
|`QK_MAGIC_SWAP_RCTL_RGUI` |`CG_RSWP`|Swap Right Control and GUI |
|
||||
|`QK_MAGIC_UNSWAP_RCTL_RGUI` |`CG_RNRM`|Unswap Right Control and GUI |
|
||||
|`QK_MAGIC_SWAP_CTL_GUI` |`CG_SWAP`|Swap Control and GUI on both sides |
|
||||
|`QK_MAGIC_UNSWAP_CTL_GUI` |`CG_NORM`|Unswap Control and GUI on both sides |
|
||||
|`QK_MAGIC_TOGGLE_CTL_GUI` |`CG_TOGG`|Toggle Control and GUI swap on both sides |
|
||||
|`QK_MAGIC_SWAP_LALT_LGUI` |`AG_LSWP`|Swap Left Alt and GUI |
|
||||
|`QK_MAGIC_UNSWAP_LALT_LGUI` |`AG_LNRM`|Unswap Left Alt and GUI |
|
||||
|`QK_MAGIC_SWAP_RALT_RGUI` |`AG_RSWP`|Swap Right Alt and GUI |
|
||||
|`QK_MAGIC_UNSWAP_RALT_RGUI` |`AG_RNRM`|Unswap Right Alt and GUI |
|
||||
|`QK_MAGIC_SWAP_ALT_GUI` |`AG_SWAP`|Swap Alt and GUI on both sides |
|
||||
|`QK_MAGIC_UNSWAP_ALT_GUI` |`AG_NORM`|Unswap Alt and GUI on both sides |
|
||||
|`QK_MAGIC_TOGGLE_ALT_GUI` |`AG_TOGG`|Toggle Alt and GUI swap on both sides |
|
||||
|`QK_MAGIC_GUI_OFF` |`GU_OFF` |Disable the GUI keys |
|
||||
|`QK_MAGIC_GUI_ON` |`GU_ON` |Enable the GUI keys |
|
||||
|`QK_MAGIC_TOGGLE_GUI` |`GU_TOGG`|Toggles the status of the GUI keys |
|
||||
|`QK_MAGIC_SWAP_GRAVE_ESC` |`GE_SWAP`|Swap <code>`</code> and Escape |
|
||||
|`QK_MAGIC_UNSWAP_GRAVE_ESC` |`GE_NORM`|Unswap <code>`</code> and Escape |
|
||||
|`QK_MAGIC_SWAP_BACKSLASH_BACKSPACE` |`BS_SWAP`|Swap `\` and Backspace |
|
||||
|`QK_MAGIC_UNSWAP_BACKSLASH_BACKSPACE`|`BS_NORM`|Unswap `\` and Backspace |
|
||||
|`QK_MAGIC_TOGGLE_BACKSLASH_BACKSPACE`|`BS_TOGG`|Toggle `\` and Backspace swap state |
|
||||
|`QK_MAGIC_NKRO_ON` |`NK_ON` |Enable N-key rollover |
|
||||
|`QK_MAGIC_NKRO_OFF` |`NK_OFF` |Disable N-key rollover |
|
||||
|`QK_MAGIC_TOGGLE_NKRO` |`NK_TOGG`|Toggle N-key rollover |
|
||||
|`QK_MAGIC_EE_HANDS_LEFT` |`EH_LEFT`|Set the master half of a split keyboard as the left hand |
|
||||
|`QK_MAGIC_EE_HANDS_RIGHT` |`EH_RGHT`|Set the master half of a split keyboard as the right hand |
|
||||
|
|
|
@ -1,9 +0,0 @@
|
|||
// Copyright 2018-2020
|
||||
// ENDO Katsuhiro <ka2hiro@curlybracket.co.jp>
|
||||
// David Philip Barr <@davidphilipbarr>
|
||||
// Pierre Chevalier <pierrechevalier83@gmail.com>
|
||||
// SPDX-License-Identifier: GPL-2.0+
|
||||
|
||||
#pragma once
|
||||
|
||||
#define EE_HANDS
|
|
@ -1,19 +0,0 @@
|
|||
/* Copyright 2024 Aidan Smith <aidan@aidansmith.dev>
|
||||
*
|
||||
* 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
|
||||
|
||||
#define EE_HANDS
|
|
@ -36,10 +36,6 @@ There is no dedicated build guide for alt34. If you are a novice builder and nee
|
|||
|
||||
Set up your build environment according to the QMK documentation, then after cloning the `qmk_firmware` repository you can run the below commands in the repo root to build and flash the firmware onto your controller.
|
||||
|
||||
Note that this method enables `EE_HANDS` mode which allows you to connect the USB cable to either half of alt34 when using the keyboard.
|
||||
|
||||
|
||||
Flash `EE_HANDS` to the left hand half, this updates the persistent EEPROM storage along with the firmware.
|
||||
Run the below command and then set the board into bootloader mode by bridging the reset pads below the TRRS connector with a paper clip or similar.
|
||||
```
|
||||
make alt34/rev1:default:dfu-split-left
|
||||
|
|
|
@ -19,6 +19,3 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|||
|
||||
#define USE_I2C
|
||||
|
||||
/* Select hand configuration */
|
||||
#define EE_HANDS
|
||||
|
||||
|
|
|
@ -104,14 +104,8 @@ static enum { UNKNOWN, LEFT, RIGHT } hand_side = UNKNOWN;
|
|||
hand_side = peek_matrix_intersection(SPLIT_HAND_MATRIX_GRID) ? LEFT : RIGHT;
|
||||
return (hand_side == LEFT);
|
||||
# endif
|
||||
#elif defined(EE_HANDS)
|
||||
hand_side = eeconfig_read_handedness() ? LEFT : RIGHT;
|
||||
return (hand_side == LEFT);
|
||||
#elif defined(MASTER_RIGHT)
|
||||
hand_side = !is_keyboard_master() ? LEFT : RIGHT;
|
||||
return (hand_side == LEFT);
|
||||
#endif
|
||||
hand_side = is_keyboard_master() ? LEFT : RIGHT;
|
||||
hand_side = eeconfig_read_handedness() ? LEFT : RIGHT;
|
||||
return (hand_side == LEFT);
|
||||
} else {
|
||||
return (hand_side == LEFT);
|
||||
|
|
|
@ -16,8 +16,5 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|||
*/
|
||||
#pragma once
|
||||
|
||||
/* Select hand configuration */
|
||||
|
||||
#define QUICK_TAP_TERM 0
|
||||
#define TAPPING_TERM 180
|
||||
//#define MASTER_RIGHT
|
||||
|
|
|
@ -18,8 +18,5 @@
|
|||
|
||||
#pragma once
|
||||
|
||||
/* Handedness. */
|
||||
#define MASTER_RIGHT
|
||||
|
||||
/* PMW3360 settings. */
|
||||
#define POINTING_DEVICE_CS_PIN B0
|
||||
|
|
|
@ -17,8 +17,5 @@
|
|||
|
||||
#pragma once
|
||||
|
||||
/* Handedness. */
|
||||
#define MASTER_RIGHT
|
||||
|
||||
/* PMW3360 settings. */
|
||||
#define POINTING_DEVICE_CS_PIN F0
|
||||
|
|
|
@ -17,11 +17,8 @@
|
|||
|
||||
#pragma once
|
||||
|
||||
/* Handedness. */
|
||||
#define MASTER_RIGHT
|
||||
|
||||
// To use the handedness pin, resistors need to be installed on the adapter PCB.
|
||||
// If so, uncomment the following code, and undefine MASTER_RIGHT above.
|
||||
// If so, uncomment the following code.
|
||||
// #define SPLIT_HAND_PIN GP13
|
||||
// #define SPLIT_HAND_PIN_LOW_IS_LEFT // High -> right, Low -> left.
|
||||
|
||||
|
|
|
@ -17,11 +17,8 @@
|
|||
|
||||
#pragma once
|
||||
|
||||
/* Handedness. */
|
||||
#define MASTER_RIGHT
|
||||
|
||||
// To use the handedness pin, resistors need to be installed on the adapter PCB.
|
||||
// If so, uncomment the following code, and undefine MASTER_RIGHT above.
|
||||
// If so, uncomment the following code.
|
||||
// #define SPLIT_HAND_PIN GP15
|
||||
// #define SPLIT_HAND_PIN_LOW_IS_LEFT // High -> right, Low -> left.
|
||||
|
||||
|
|
|
@ -17,11 +17,8 @@
|
|||
|
||||
#pragma once
|
||||
|
||||
/* Handedness. */
|
||||
#define MASTER_RIGHT
|
||||
|
||||
// To use the handedness pin, resistors need to be installed on the adapter PCB.
|
||||
// If so, uncomment the following code, and undefine MASTER_RIGHT above.
|
||||
// If so, uncomment the following code.
|
||||
// #define A0 PAL_LINE(GPIOA, 0)
|
||||
// #define SPLIT_HAND_PIN A0
|
||||
// #define SPLIT_HAND_PIN_LOW_IS_LEFT // High -> right, Low -> left.
|
||||
|
|
|
@ -17,8 +17,5 @@
|
|||
|
||||
#pragma once
|
||||
|
||||
/* Handedness. */
|
||||
#define MASTER_RIGHT
|
||||
|
||||
/* PMW3360 settings. */
|
||||
#define POINTING_DEVICE_CS_PIN B0
|
||||
|
|
|
@ -17,8 +17,5 @@
|
|||
|
||||
#pragma once
|
||||
|
||||
/* Handedness. */
|
||||
#define MASTER_RIGHT
|
||||
|
||||
/* PMW3360 settings. */
|
||||
#define POINTING_DEVICE_CS_PIN F0
|
||||
|
|
|
@ -17,11 +17,8 @@
|
|||
|
||||
#pragma once
|
||||
|
||||
/* Handedness. */
|
||||
#define MASTER_RIGHT
|
||||
|
||||
// To use the handedness pin, resistors need to be installed on the adapter PCB.
|
||||
// If so, uncomment the following code, and undefine MASTER_RIGHT above.
|
||||
// If so, uncomment the following code.
|
||||
// #define SPLIT_HAND_PIN GP13
|
||||
// #define SPLIT_HAND_PIN_LOW_IS_LEFT // High -> right, Low -> left.
|
||||
|
||||
|
|
|
@ -17,11 +17,8 @@
|
|||
|
||||
#pragma once
|
||||
|
||||
/* Handedness. */
|
||||
#define MASTER_RIGHT
|
||||
|
||||
// To use the handedness pin, resistors need to be installed on the adapter PCB.
|
||||
// If so, uncomment the following code, and undefine MASTER_RIGHT above.
|
||||
// If so, uncomment the following code.
|
||||
// #define SPLIT_HAND_PIN GP15
|
||||
// #define SPLIT_HAND_PIN_LOW_IS_LEFT // High -> right, Low -> left.
|
||||
|
||||
|
|
|
@ -17,11 +17,9 @@
|
|||
|
||||
#pragma once
|
||||
|
||||
/* Handedness. */
|
||||
#define MASTER_RIGHT
|
||||
|
||||
// To use the handedness pin, resistors need to be installed on the adapter PCB.
|
||||
// If so, uncomment the following code, and undefine MASTER_RIGHT above.
|
||||
// If so, uncomment the following code.
|
||||
// #define A0 PAL_LINE(GPIOA, 0)
|
||||
// #define SPLIT_HAND_PIN A0
|
||||
// #define SPLIT_HAND_PIN_LOW_IS_LEFT // High -> right, Low -> left.
|
||||
|
|
|
@ -18,8 +18,5 @@
|
|||
|
||||
#pragma once
|
||||
|
||||
/* Handedness. */
|
||||
#define MASTER_RIGHT
|
||||
|
||||
/* PMW3360 settings. */
|
||||
#define POINTING_DEVICE_CS_PIN B0
|
||||
|
|
|
@ -17,8 +17,5 @@
|
|||
|
||||
#pragma once
|
||||
|
||||
/* Handedness. */
|
||||
#define MASTER_RIGHT
|
||||
|
||||
/* PMW3360 settings. */
|
||||
#define POINTING_DEVICE_CS_PIN F0
|
||||
|
|
|
@ -17,11 +17,9 @@
|
|||
|
||||
#pragma once
|
||||
|
||||
/* Handedness. */
|
||||
#define MASTER_RIGHT
|
||||
|
||||
// To use the handedness pin, resistors need to be installed on the adapter PCB.
|
||||
// If so, uncomment the following code, and undefine MASTER_RIGHT above.
|
||||
// If so, uncomment the following code.
|
||||
// #define SPLIT_HAND_PIN GP13
|
||||
// #define SPLIT_HAND_PIN_LOW_IS_LEFT // High -> right, Low -> left.
|
||||
|
||||
|
|
|
@ -17,11 +17,9 @@
|
|||
|
||||
#pragma once
|
||||
|
||||
/* Handedness. */
|
||||
#define MASTER_RIGHT
|
||||
|
||||
// To use the handedness pin, resistors need to be installed on the adapter PCB.
|
||||
// If so, uncomment the following code, and undefine MASTER_RIGHT above.
|
||||
// If so, uncomment the following code.
|
||||
// #define SPLIT_HAND_PIN GP15
|
||||
// #define SPLIT_HAND_PIN_LOW_IS_LEFT // High -> right, Low -> left.
|
||||
|
||||
|
|
|
@ -17,11 +17,9 @@
|
|||
|
||||
#pragma once
|
||||
|
||||
/* Handedness. */
|
||||
#define MASTER_RIGHT
|
||||
|
||||
// To use the handedness pin, resistors need to be installed on the adapter PCB.
|
||||
// If so, uncomment the following code, and undefine MASTER_RIGHT above.
|
||||
// If so, uncomment the following code.
|
||||
// #define A0 PAL_LINE(GPIOA, 0)
|
||||
// #define SPLIT_HAND_PIN A0
|
||||
// #define SPLIT_HAND_PIN_LOW_IS_LEFT // High -> right, Low -> left.
|
||||
|
|
|
@ -17,11 +17,8 @@
|
|||
|
||||
#pragma once
|
||||
|
||||
/* Handedness. */
|
||||
#define MASTER_RIGHT
|
||||
|
||||
// To use the handedness pin, resistors need to be installed on the PCB.
|
||||
// If so, uncomment the following code, and undefine MASTER_RIGHT above.
|
||||
// If so, uncomment the following code.
|
||||
//#define SPLIT_HAND_PIN GP29
|
||||
// If you've soldered the handedness pull-up on the upper side instead of the
|
||||
// left one, uncomment the following line.
|
||||
|
|
|
@ -1,22 +0,0 @@
|
|||
/*
|
||||
* Copyright 2021 Quentin LEBASTARD <qlebastard@gmail.com>
|
||||
* Copyright 2022 Charly Delay <charly@codesink.dev> (@0xcharly)
|
||||
*
|
||||
* 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
|
||||
|
||||
/* Handedness. */
|
||||
#define MASTER_RIGHT
|
|
@ -1,21 +0,0 @@
|
|||
/*
|
||||
* Copyright 2022 Charly Delay <charly@codesink.dev> (@0xcharly)
|
||||
*
|
||||
* 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
|
||||
|
||||
/* Handedness. */
|
||||
#define MASTER_RIGHT
|
|
@ -17,11 +17,9 @@
|
|||
|
||||
#pragma once
|
||||
|
||||
/* Handedness. */
|
||||
#define MASTER_RIGHT
|
||||
|
||||
// To use the handedness pin, resistors need to be installed on the adapter PCB.
|
||||
// If so, uncomment the following code, and undefine MASTER_RIGHT above.
|
||||
// If so, uncomment the following code.
|
||||
// #define SPLIT_HAND_PIN GP13
|
||||
// #define SPLIT_HAND_PIN_LOW_IS_LEFT // High -> right, Low -> left.
|
||||
|
||||
|
|
|
@ -17,11 +17,9 @@
|
|||
|
||||
#pragma once
|
||||
|
||||
/* Handedness. */
|
||||
#define MASTER_RIGHT
|
||||
|
||||
// To use the handedness pin, resistors need to be installed on the adapter PCB.
|
||||
// If so, uncomment the following code, and undefine MASTER_RIGHT above.
|
||||
// If so, uncomment the following code.
|
||||
// #define SPLIT_HAND_PIN GP15
|
||||
// #define SPLIT_HAND_PIN_LOW_IS_LEFT // High -> right, Low -> left.
|
||||
|
||||
|
|
|
@ -17,11 +17,9 @@
|
|||
|
||||
#pragma once
|
||||
|
||||
/* Handedness. */
|
||||
#define MASTER_RIGHT
|
||||
|
||||
// To use the handedness pin, resistors need to be installed on the adapter PCB.
|
||||
// If so, uncomment the following code, and undefine MASTER_RIGHT above.
|
||||
// If so, uncomment the following code.
|
||||
// #define A0 PAL_LINE(GPIOA, 0)
|
||||
// #define SPLIT_HAND_PIN A0
|
||||
// #define SPLIT_HAND_PIN_LOW_IS_LEFT // High -> right, Low -> left.
|
||||
|
|
|
@ -1,22 +0,0 @@
|
|||
/*
|
||||
* Copyright 2021 Quentin LEBASTARD <qlebastard@gmail.com>
|
||||
* Copyright 2022 Charly Delay <charly@codesink.dev> (@0xcharly)
|
||||
*
|
||||
* 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
|
||||
|
||||
/* Handedness. */
|
||||
#define MASTER_RIGHT
|
|
@ -1,21 +0,0 @@
|
|||
/*
|
||||
* Copyright 2022 Charly Delay <charly@codesink.dev> (@0xcharly)
|
||||
*
|
||||
* 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
|
||||
|
||||
/* Handedness. */
|
||||
#define MASTER_RIGHT
|
|
@ -17,11 +17,9 @@
|
|||
|
||||
#pragma once
|
||||
|
||||
/* Handedness. */
|
||||
#define MASTER_RIGHT
|
||||
|
||||
// To use the handedness pin, resistors need to be installed on the adapter PCB.
|
||||
// If so, uncomment the following code, and undefine MASTER_RIGHT above.
|
||||
// If so, uncomment the following code.
|
||||
// #define SPLIT_HAND_PIN GP13
|
||||
// #define SPLIT_HAND_PIN_LOW_IS_LEFT // High -> right, Low -> left.
|
||||
|
||||
|
|
|
@ -17,11 +17,9 @@
|
|||
|
||||
#pragma once
|
||||
|
||||
/* Handedness. */
|
||||
#define MASTER_RIGHT
|
||||
|
||||
// To use the handedness pin, resistors need to be installed on the adapter PCB.
|
||||
// If so, uncomment the following code, and undefine MASTER_RIGHT above.
|
||||
// If so, uncomment the following code.
|
||||
// #define SPLIT_HAND_PIN GP15
|
||||
// #define SPLIT_HAND_PIN_LOW_IS_LEFT // High -> right, Low -> left.
|
||||
|
||||
|
|
|
@ -17,11 +17,9 @@
|
|||
|
||||
#pragma once
|
||||
|
||||
/* Handedness. */
|
||||
#define MASTER_RIGHT
|
||||
|
||||
// To use the handedness pin, resistors need to be installed on the adapter PCB.
|
||||
// If so, uncomment the following code, and undefine MASTER_RIGHT above.
|
||||
// If so, uncomment the following code.
|
||||
// #define A0 PAL_LINE(GPIOA, 0)
|
||||
// #define SPLIT_HAND_PIN A0
|
||||
// #define SPLIT_HAND_PIN_LOW_IS_LEFT // High -> right, Low -> left.
|
||||
|
|
|
@ -1,22 +0,0 @@
|
|||
/*
|
||||
* Copyright 2021 Quentin LEBASTARD <qlebastard@gmail.com>
|
||||
* Copyright 2022 Charly Delay <charly@codesink.dev> (@0xcharly)
|
||||
*
|
||||
* 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
|
||||
|
||||
/* Handedness. */
|
||||
#define MASTER_RIGHT
|
|
@ -1,21 +0,0 @@
|
|||
/*
|
||||
* Copyright 2022 Charly Delay <charly@codesink.dev> (@0xcharly)
|
||||
*
|
||||
* 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
|
||||
|
||||
/* Handedness. */
|
||||
#define MASTER_RIGHT
|
|
@ -17,11 +17,9 @@
|
|||
|
||||
#pragma once
|
||||
|
||||
/* Handedness. */
|
||||
#define MASTER_RIGHT
|
||||
|
||||
// To use the handedness pin, resistors need to be installed on the adapter PCB.
|
||||
// If so, uncomment the following code, and undefine MASTER_RIGHT above.
|
||||
// If so, uncomment the following code.
|
||||
// #define SPLIT_HAND_PIN GP13
|
||||
// #define SPLIT_HAND_PIN_LOW_IS_LEFT // High -> right, Low -> left.
|
||||
|
||||
|
|
|
@ -17,11 +17,9 @@
|
|||
|
||||
#pragma once
|
||||
|
||||
/* Handedness. */
|
||||
#define MASTER_RIGHT
|
||||
|
||||
// To use the handedness pin, resistors need to be installed on the adapter PCB.
|
||||
// If so, uncomment the following code, and undefine MASTER_RIGHT above.
|
||||
// If so, uncomment the following code.
|
||||
// #define SPLIT_HAND_PIN GP15
|
||||
// #define SPLIT_HAND_PIN_LOW_IS_LEFT // High -> right, Low -> left.
|
||||
|
||||
|
|
|
@ -17,11 +17,9 @@
|
|||
|
||||
#pragma once
|
||||
|
||||
/* Handedness. */
|
||||
#define MASTER_RIGHT
|
||||
|
||||
// To use the handedness pin, resistors need to be installed on the adapter PCB.
|
||||
// If so, uncomment the following code, and undefine MASTER_RIGHT above.
|
||||
// If so, uncomment the following code.
|
||||
// #define A0 PAL_LINE(GPIOA, 0)
|
||||
// #define SPLIT_HAND_PIN A0
|
||||
// #define SPLIT_HAND_PIN_LOW_IS_LEFT // High -> right, Low -> left.
|
||||
|
|
|
@ -1,20 +0,0 @@
|
|||
/* Copyright 2021 SamuraiKek
|
||||
*
|
||||
* 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
|
||||
|
||||
|
||||
#define EE_HANDS
|
|
@ -1,18 +0,0 @@
|
|||
/* Copyright 2021 SamuraiKek
|
||||
*
|
||||
* 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
|
||||
#define EE_HANDS
|
|
@ -15,8 +15,6 @@
|
|||
*/
|
||||
#pragma once
|
||||
|
||||
#define EE_HANDS
|
||||
|
||||
// OLED driver
|
||||
#ifdef OLED_DRIVER_ENABLE
|
||||
#define OLED_DISPLAY_128X32
|
||||
|
|
|
@ -12,18 +12,15 @@
|
|||
// Apply the modifier on keys that are tapped during a short hold of a modtap
|
||||
#define PERMISSIVE_HOLD
|
||||
|
||||
// Using the right side as master
|
||||
#define MASTER_RIGHT
|
||||
|
||||
#ifdef HAPTIC_ENABLE
|
||||
// this configuration has no effect because the haptic exclusion is implemented with
|
||||
// __attribute__((weak)) bool get_haptic_enabled_key(uint16_t keycode, keyrecord_t *record)
|
||||
// in the default keymap and reacts only to mouse clicks.
|
||||
// in the default keymap and reacts only to mouse clicks.
|
||||
//#define NO_HAPTIC_MOD
|
||||
#define NO_HAPTIC_FN
|
||||
#define NO_HAPTIC_ALPHA
|
||||
#define NO_HAPTIC_PUNCTUATION
|
||||
#define NO_HAPTIC_NAV
|
||||
#define NO_HAPTIC_NAV
|
||||
#define NO_HAPTIC_NUMERIC
|
||||
#define DRV2605L_GREETING DRV2605L_EFFECT_750_MS_ALERT_100
|
||||
#define DRV2605L_DEFAULT_MODE DRV2605L_EFFECT_SHARP_TICK_1_100
|
||||
|
|
|
@ -7,4 +7,3 @@
|
|||
#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET // Activates the double-tap behavior
|
||||
#define RP2040_BOOTLOADER_DOUBLE_TAP_RESET_TIMEOUT 200U // In ms in which the double tap can occur
|
||||
|
||||
#define EE_HANDS
|
||||
|
|
|
@ -22,6 +22,4 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|||
#define OLED_TIMEOUT 30000
|
||||
#endif
|
||||
|
||||
#define EE_HANDS
|
||||
|
||||
#define LAYER_STATE_8BIT
|
||||
|
|
|
@ -1,21 +0,0 @@
|
|||
/*
|
||||
Copyright 2019 Tom Saleeba <ergoslab@techotom.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
|
||||
|
||||
/* Select hand configuration */
|
||||
#define MASTER_RIGHT
|
|
@ -17,8 +17,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|||
|
||||
#pragma once
|
||||
|
||||
//#define EE_HANDS
|
||||
|
||||
#define SPLIT_USB_DETECT
|
||||
#define SPLIT_USB_TIMEOUT 500
|
||||
|
||||
|
|
|
@ -1,20 +0,0 @@
|
|||
/* Copyright 2022 bojiguard (@bojiguard)
|
||||
*
|
||||
* 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
|
||||
|
||||
/* select keyboard master board - I2C or Serial communication master */
|
||||
#define MASTER_RIGHT
|
|
@ -27,9 +27,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|||
//4: about 26kbps
|
||||
//5: about 20kbps
|
||||
|
||||
// Right side has to be the master since 1, LED data is output from right side, and 2, Audio pin is prepared on right side as a reserve.
|
||||
#define MASTER_RIGHT
|
||||
|
||||
// for "Generic" Promicro to be detected correctly as lefthand side (slave)
|
||||
#define SPLIT_USB_DETECT
|
||||
|
||||
|
|
|
@ -1,22 +0,0 @@
|
|||
/*
|
||||
Copyright 2023 3araht
|
||||
|
||||
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
|
||||
|
||||
//#define USE_MATRIX_I2C
|
||||
|
||||
/* Select hand configuration */
|
||||
#define EE_HANDS
|
|
@ -1,6 +1,5 @@
|
|||
# A personal keymap for giabalanai with RGBLIGHT_ENABLE = yes in rules.mk, which 3araht is using.
|
||||
"2firmware" requires writing the firmware separately to left and right keyboards in order to have different functionality when USB cable is connected to the left side keyboard. It can be used without the right side.
|
||||
(EE_HANDS is defined in 2firmware/config.h).
|
||||
|
||||
When USB cable is connected to the left side keyboard, QWERTY layout is used by default.
|
||||
|
||||
|
|
|
@ -20,4 +20,3 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|||
#define PERMISSIVE_HOLD
|
||||
|
||||
#define USE_I2C
|
||||
#define MASTER_RIGHT
|
||||
|
|
|
@ -27,4 +27,3 @@
|
|||
#define SERIAL_USART_TX_PIN GP10
|
||||
#define SERIAL_USART_RX_PIN GP9
|
||||
|
||||
#define EE_HANDS
|
||||
|
|
|
@ -30,8 +30,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|||
#define MOUSEKEY_MAX_SPEED 7
|
||||
#define MOUSEKEY_WHEEL_DELAY 0
|
||||
|
||||
#define EE_HANDS
|
||||
|
||||
//#define SPLIT_HAND_PIN B7
|
||||
|
||||
/* Enables This makes it easier for fast typists to use dual-function keys */
|
||||
|
|
|
@ -16,8 +16,6 @@
|
|||
|
||||
#pragma once
|
||||
|
||||
#define MASTER_RIGHT
|
||||
|
||||
#define PERMISSIVE_HOLD
|
||||
|
||||
#define TAPPING_TERM 200
|
||||
|
|
|
@ -1,24 +0,0 @@
|
|||
/*
|
||||
This is the c configuration file for the keymap
|
||||
|
||||
Copyright 2012 Jun Wako <wakojun@gmail.com>
|
||||
Copyright 2015 Jack Humbert
|
||||
|
||||
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
|
||||
|
||||
/* Select hand configuration */
|
||||
#define EE_HANDS
|
|
@ -1,24 +0,0 @@
|
|||
/*
|
||||
This is the c configuration file for the keymap
|
||||
|
||||
Copyright 2012 Jun Wako <wakojun@gmail.com>
|
||||
Copyright 2015 Jack Humbert
|
||||
|
||||
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
|
||||
|
||||
/* Select hand configuration */
|
||||
#define EE_HANDS
|
|
@ -3,5 +3,4 @@
|
|||
|
||||
#pragma once
|
||||
|
||||
#define EE_HANDS
|
||||
#define SPLIT_USB_DETECT
|
||||
|
|
|
@ -1,24 +0,0 @@
|
|||
/*
|
||||
This is the c configuration file for the keymap
|
||||
|
||||
Copyright 2012 Jun Wako <wakojun@gmail.com>
|
||||
Copyright 2015 Jack Humbert
|
||||
|
||||
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
|
||||
|
||||
/* Select hand configuration */
|
||||
#define EE_HANDS
|
|
@ -1,24 +0,0 @@
|
|||
/*
|
||||
This is the c configuration file for the keymap
|
||||
|
||||
Copyright 2012 Jun Wako <wakojun@gmail.com>
|
||||
Copyright 2015 Jack Humbert
|
||||
|
||||
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
|
||||
|
||||
|
||||
#define EE_HANDS
|
|
@ -17,6 +17,4 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|||
|
||||
#pragma once
|
||||
|
||||
#define EE_HANDS
|
||||
|
||||
#define KINETIC_SPEED
|
||||
|
|
|
@ -17,6 +17,4 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|||
|
||||
#pragma once
|
||||
|
||||
#define EE_HANDS
|
||||
|
||||
#define KINETIC_SPEED
|
||||
|
|
|
@ -1,23 +0,0 @@
|
|||
/*
|
||||
Copyright 2012 Jun Wako <wakojun@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
|
||||
|
||||
#define MASTER_RIGHT
|
||||
// #define MASTER_RIGHT
|
||||
//#define EE_HANDS
|
||||
// Rows are doubled-up
|
|
@ -1,19 +0,0 @@
|
|||
/*
|
||||
Copyright 2020 Ralph Azucena <ralphie02@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
|
||||
#define MASTER_RIGHT
|
|
@ -19,5 +19,3 @@
|
|||
#define MOUSEKEY_WHEEL_DELAY 0
|
||||
|
||||
#define TAPPING_TERM 200
|
||||
|
||||
#define MASTER_RIGHT
|
||||
|
|
|
@ -15,6 +15,4 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|||
|
||||
#pragma once
|
||||
|
||||
#define EE_HANDS
|
||||
|
||||
# define RGBLIGHT_LAYERS
|
||||
#define RGBLIGHT_LAYERS
|
||||
|
|
|
@ -16,6 +16,4 @@
|
|||
|
||||
#pragma once
|
||||
|
||||
|
||||
#define EE_HANDS
|
||||
#define SPLIT_USB_DETECT
|
||||
|
|
|
@ -4,7 +4,6 @@
|
|||
|
||||
#define SELECT_SOFT_SERIAL_SPEED 1
|
||||
#define SPLIT_USB_DETECT
|
||||
#define EE_HANDS
|
||||
#define SPLIT_USB_TIMEOUT 1000
|
||||
|
||||
// OLED Display Config
|
||||
|
|
|
@ -32,17 +32,10 @@ The EEPROM approach requires additional setup (flashing the eeeprom) but allows
|
|||
The USB cable approach is easier to setup and if you just want the usb cable on the left board, you do not need to do anything extra.
|
||||
|
||||
### Setting the left hand as master
|
||||
If you always plug the usb cable into the left board, nothing extra is needed as this is the default. Comment out `EE_HANDS` and comment out `I2C_MASTER_RIGHT` or `MASTER_RIGHT` if for some reason it was set.
|
||||
If you always plug the usb cable into the left board, nothing extra is needed as this is the default.
|
||||
|
||||
### Setting the right hand as master
|
||||
If you always plug the usb cable into the right board, add an extra flag to your `config.h`
|
||||
```
|
||||
#define MASTER_RIGHT
|
||||
```
|
||||
|
||||
### Setting EE_hands to use either hands as master
|
||||
If you define `EE_HANDS` in your `config.h`, you will need to set the
|
||||
EEPROM for the left and right halves.
|
||||
### Using EEPROM to use either hands as master
|
||||
|
||||
The EEPROM is used to store whether the
|
||||
half is left handed or right handed. This makes it so that the same firmware
|
||||
|
@ -62,8 +55,6 @@ avrdude -p atmega32u4 -P $(COM_PORT) -c avr109 -U eeprom:w:"./quantum/split_comm
|
|||
|
||||
NOTE: replace `$(COM_PORT)` with the port of your device (e.g. `/dev/ttyACM0`)
|
||||
|
||||
After you have flashed the EEPROM, you then need to set `EE_HANDS` in your config.h, rebuild the hex files and reflash.
|
||||
|
||||
Note that you need to program both halves, but you have the option of using
|
||||
different keymaps for each half. You could program the left half with a QWERTY
|
||||
layout and the right half with a Colemak layout using bootmagic's default layout option.
|
||||
|
|
|
@ -1,37 +0,0 @@
|
|||
/*
|
||||
Copyright 2023 Cloud Chagnon <cloud.chagnon@ucalgary.ca>
|
||||
|
||||
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
|
||||
|
||||
/* left/right via compilation flag */
|
||||
#define EE_HANDS
|
||||
|
||||
/*
|
||||
* Feature disable options
|
||||
* These options are also useful to firmware size reduction.
|
||||
*/
|
||||
|
||||
/* disable debug print */
|
||||
// #define NO_DEBUG
|
||||
|
||||
/* disable print */
|
||||
// #define NO_PRINT
|
||||
|
||||
/* disable action features */
|
||||
// #define NO_ACTION_LAYER
|
||||
// #define NO_ACTION_TAPPING
|
||||
// #define NO_ACTION_ONESHOT
|
|
@ -19,6 +19,3 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|||
|
||||
#define USE_I2C
|
||||
|
||||
/* Select hand configuration */
|
||||
#define EE_HANDS
|
||||
|
||||
|
|
|
@ -19,9 +19,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|||
|
||||
#define USE_I2C
|
||||
|
||||
/* Select hand configuration */
|
||||
#define EE_HANDS
|
||||
|
||||
#define LCPO_KEYS KC_LCTL,KC_TRNS,KC_LBRC
|
||||
#define RCPC_KEYS KC_RCTL,KC_TRNS,KC_RBRC
|
||||
|
||||
|
|
|
@ -31,8 +31,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|||
#define DYNAMIC_KEYMAP_LAYER_COUNT 16
|
||||
#define LAYER_STATE_16BIT
|
||||
|
||||
#define EE_HANDS
|
||||
|
||||
/* disable action features */
|
||||
//#define NO_ACTION_LAYER
|
||||
//#define NO_ACTION_TAPPING
|
||||
|
|
|
@ -18,8 +18,5 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|||
|
||||
#pragma once
|
||||
|
||||
//#undef USE_I2C
|
||||
#define MASTER_RIGHT
|
||||
|
||||
/* PMW3360 Settings */
|
||||
#define POINTING_DEVICE_CS_PIN B0
|
||||
|
|
|
@ -20,7 +20,5 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|||
|
||||
#define AUDIO_PIN C6
|
||||
|
||||
#define EE_HANDS
|
||||
|
||||
/* PMW33XX Settings */
|
||||
#define PMW33XX_CS_PIN B6
|
||||
|
|
|
@ -23,7 +23,5 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|||
#define AUDIO_PIN C6
|
||||
#define AUDIO_PIN_ALT B7
|
||||
|
||||
#define EE_HANDS
|
||||
|
||||
/* PMW33XX Settings */
|
||||
#define PMW33XX_CS_PIN B0
|
||||
|
|
|
@ -1,19 +0,0 @@
|
|||
/*
|
||||
Copyright 2021 @kuriatsu
|
||||
|
||||
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
|
||||
#define MASTER_RIGHT
|
|
@ -111,18 +111,7 @@ The EEPROM approach requires additional setup (flashing the eeprom) but allows y
|
|||
|
||||
The USB cable approach is easier to setup and if you just want the usb cable on the left board, you do not need to do anything extra.
|
||||
|
||||
### Setting the left hand as master
|
||||
If you always plug the usb cable into the left board, nothing extra is needed as this is the default. Comment out `EE_HANDS` and comment out `I2C_MASTER_RIGHT` or `MASTER_RIGHT` if for some reason it was set.
|
||||
|
||||
### Setting the right hand as master
|
||||
If you always plug the usb cable into the right board, add an extra flag to your `config.h`
|
||||
```
|
||||
#define MASTER_RIGHT
|
||||
```
|
||||
|
||||
### Setting EE_hands to use either hands as master
|
||||
If you define `EE_HANDS` in your `config.h`, you will need to set the
|
||||
EEPROM for the left and right halves.
|
||||
### Using EEPROM to use either hands as master
|
||||
|
||||
The EEPROM is used to store whether the
|
||||
half is left handed or right handed. This makes it so that the same firmware
|
||||
|
@ -142,8 +131,6 @@ avrdude -p atmega32u4 -P $(COM_PORT) -c avr109 -U eeprom:w:"./quantum/split_comm
|
|||
|
||||
NOTE: replace `$(COM_PORT)` with the port of your device (e.g. `/dev/ttyACM0`)
|
||||
|
||||
After you have flashed the EEPROM, you then need to set `EE_HANDS` in your config.h, rebuild the hex files and reflash.
|
||||
|
||||
Note that you need to program both halves, but you have the option of using
|
||||
different keymaps for each half. You could program the left half with a QWERTY
|
||||
layout and the right half with a Colemak layout using bootmagic's default layout option.
|
||||
|
|
|
@ -1,21 +0,0 @@
|
|||
/*
|
||||
* Copyright 2020 Quentin LEBASTARD <qlebastard@gmail.com>
|
||||
* Copyright 2020 Anthony MARIN <anthony@hidtech.ca>
|
||||
*
|
||||
* 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
|
||||
|
||||
#define MASTER_RIGHT
|
|
@ -1,6 +0,0 @@
|
|||
// Copyright 2023 Idan Kamara (@idank)
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
||||
#pragma once
|
||||
|
||||
#define MASTER_RIGHT
|
|
@ -1,6 +0,0 @@
|
|||
// Copyright 2023 Idan Kamara (@idank)
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
||||
#pragma once
|
||||
|
||||
#define MASTER_RIGHT
|
|
@ -27,18 +27,13 @@ Input Club Infinity Ergodox](https://github.com/fredizzimo/infinity_ergodox/blob
|
|||
The Infinity is two completely independent keyboards, that can connect together.
|
||||
You have a few options in how you flash the firmware:
|
||||
|
||||
- Add `#define EE_HANDS` to your config.h, initialize the EEPROM values (see below),
|
||||
and then flash the same firmware to both halves.
|
||||
|
||||
- Flash with the instructions above, which assume the left hand is connected to USB.
|
||||
|
||||
- For minor changes such as changing only the keymap without having updated
|
||||
any part of the firmware code itself, you can program only the half connected to USB,
|
||||
but it is safest to program both halves.
|
||||
|
||||
### EE_HANDS initialization
|
||||
### EEPROM handedness
|
||||
|
||||
To initialize the EEPROM values for `EE_HANDS` to work properly, these steps should work.
|
||||
To setup the EEPROM properly, these steps should work.
|
||||
They only need to be done once, unless you reset the EEPROM later.
|
||||
|
||||
- Plug in the left keyboard half to the computer, and press its program button.
|
||||
|
@ -58,7 +53,7 @@ They only need to be done once, unless you reset the EEPROM later.
|
|||
- On the right half, press the top vertical 1.5U key (second from the top in the leftmost column) once,
|
||||
then the 1U key at the bottom in the opposite corner (bottom right corner).
|
||||
|
||||
- Add `#define EE_HANDS` to the config.h file of your keymap, and build your firmware using
|
||||
- build your firmware using
|
||||
`make input_club/ergodox_infinity:keymapname`.
|
||||
|
||||
- After this, you can flash both halves with the same firmware, _without_ risking a mirrored keyboard when connected the wrong way.
|
||||
|
|
|
@ -19,9 +19,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|||
|
||||
#define USE_I2C
|
||||
|
||||
/* Select hand configuration */
|
||||
#define EE_HANDS
|
||||
|
||||
// different Jian configs
|
||||
#define PHYSICAL_LEDS_ENABLE
|
||||
#define NUM_LOCK_LED_PIN C6
|
||||
|
|
|
@ -17,8 +17,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|||
*/
|
||||
#pragma once
|
||||
|
||||
//#define EE_HANDS
|
||||
|
||||
#define PHYSICAL_LEDS_ENABLE
|
||||
#define IOS_DEVICE_ENABLE
|
||||
|
||||
|
|
|
@ -1,21 +0,0 @@
|
|||
/*
|
||||
Copyright 2017 Danny Nguyen <danny@keeb.io>
|
||||
|
||||
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
|
||||
|
||||
// #define USE_I2C
|
||||
#define EE_HANDS
|
|
@ -4,7 +4,6 @@
|
|||
#pragma once
|
||||
|
||||
// Split Keyboard Stuff
|
||||
#define EE_HANDS // Sets the keyboard’s handedness using EEPROM
|
||||
#define SERIAL_USART_FULL_DUPLEX // Use full duplex communication (TRRS)
|
||||
#define SERIAL_USART_TX_PIN GP0 // USART TX pin
|
||||
#define SERIAL_USART_RX_PIN GP1 // USART RX pin
|
||||
|
|
|
@ -1,27 +0,0 @@
|
|||
/*
|
||||
This is the c configuration file for the keymap
|
||||
|
||||
Copyright 2012 Jun Wako <wakojun@gmail.com>
|
||||
Copyright 2015 Jack Humbert
|
||||
|
||||
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
|
||||
|
||||
// #define USE_I2C
|
||||
|
||||
/* Select hand configuration */
|
||||
// #define MASTER_RIGHT
|
||||
// #define EE_HANDS
|
|
@ -13,7 +13,7 @@ Example of flashing this keyboard:
|
|||
|
||||
make keebio/cepstrum/rev1:default:flash
|
||||
|
||||
Handedness detection is already hardwired onto the PCB, so no need to deal with `EE_HANDS` or flashing .eep files.
|
||||
Handedness detection is already hardwired onto the PCB.
|
||||
|
||||
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).
|
||||
|
||||
|
|
|
@ -13,7 +13,7 @@ Example of flashing this keyboard:
|
|||
|
||||
make keebio/kbo5000/rev1:default:flash
|
||||
|
||||
Handedness detection is already hardwired onto the PCB, so no need to deal with `EE_HANDS` or flashing .eep files.
|
||||
Handedness detection is already hardwired onto the PCB.
|
||||
|
||||
See [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) then the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information.
|
||||
|
||||
|
|
|
@ -1,28 +0,0 @@
|
|||
/*
|
||||
This is the c configuration file for the keymap
|
||||
|
||||
Copyright 2012 Jun Wako <wakojun@gmail.com>
|
||||
Copyright 2015 Jack Humbert
|
||||
Copyright 2018 Danny Nguyen <danny@keeb.io>
|
||||
|
||||
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
|
||||
|
||||
// #define USE_I2C
|
||||
|
||||
/* Select hand configuration */
|
||||
// #define MASTER_RIGHT
|
||||
// #define EE_HANDS
|
|
@ -15,7 +15,7 @@ Example of flashing this keyboard:
|
|||
|
||||
make keebio/quefrency/rev3:default:flash
|
||||
|
||||
Handedness detection is already hardwired onto the PCB, so no need to deal with `EE_HANDS` or flashing .eep files.
|
||||
Handedness detection is already hardwired onto the PCB.
|
||||
|
||||
See [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) then the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information.
|
||||
|
||||
|
|
|
@ -1,24 +0,0 @@
|
|||
/*
|
||||
Copyright 2018 Danny Nguyen <danny@keeb.io>
|
||||
|
||||
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
|
||||
|
||||
// #define USE_I2C
|
||||
|
||||
/* Select hand configuration */
|
||||
// #define MASTER_RIGHT
|
||||
// #define EE_HANDS
|
|
@ -13,7 +13,7 @@ Example of flashing this keyboard:
|
|||
|
||||
make keebio/sinc/rev1:default:flash
|
||||
|
||||
Handedness detection is already hardwired onto the PCB, so no need to deal with `EE_HANDS` or flashing .eep files.
|
||||
Handedness detection is already hardwired onto the PCB.
|
||||
|
||||
See [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) then the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information.
|
||||
|
||||
|
|
|
@ -19,11 +19,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|||
|
||||
// #define USE_I2C
|
||||
|
||||
/* Select hand configuration */
|
||||
|
||||
// #define MASTER_RIGHT
|
||||
// #define EE_HANDS
|
||||
|
||||
#undef RGBLIGHT_LED_COUNT
|
||||
#define RGBLIGHT_EFFECT_BREATHING
|
||||
#define RGBLIGHT_EFFECT_RAINBOW_MOOD
|
||||
|
|
|
@ -18,7 +18,6 @@
|
|||
|
||||
#pragma once
|
||||
|
||||
#define MASTER_RIGHT
|
||||
#define ENABLE_RGB_MATRIX_ALPHAS_MODS // Static dual hue, speed is hue for secondary hue
|
||||
#define ENABLE_RGB_MATRIX_RAINBOW_BEACON // Full tighter gradient spinning around center of keyboard
|
||||
|
||||
|
|
|
@ -1,22 +0,0 @@
|
|||
// Copyright 2022 Keyprez (https://github.com/keyprez)
|
||||
// SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
||||
#pragma once
|
||||
|
||||
#define MASTER_RIGHT
|
||||
|
||||
/*
|
||||
* Feature disable options
|
||||
* These options are also useful to firmware size reduction.
|
||||
*/
|
||||
|
||||
/* disable debug print */
|
||||
//#define NO_DEBUG
|
||||
|
||||
/* disable print */
|
||||
//#define NO_PRINT
|
||||
|
||||
/* disable action features */
|
||||
//#define NO_ACTION_LAYER
|
||||
//#define NO_ACTION_TAPPING
|
||||
//#define NO_ACTION_ONESHOT
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Reference in a new issue