[Keyboard] Sweep swap hand feature and pin documentation (#15264)

Co-authored-by: filterpaper <filterpaper@localhost>
master
Albert Y 2021-11-29 16:19:00 +08:00 committed by GitHub
parent 35a18a8bcd
commit a7bc02bf69
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 39 additions and 4 deletions

View File

@ -8,9 +8,8 @@ A version of the Ferris keyboard that uses a daughterboard, designed by the fant
## Keyboard Info ## Keyboard Info
* Keyboard Maintainer: [Pierre Chevalier](https://github.com/pierrechevalier83) * Keyboard Maintainer: [Pierre Chevalier](https://github.com/pierrechevalier83)
* Hardware Supported: * Hardware Supported: [Sweep](https://github.com/davidphilipbarr/Sweep) (all versions)
* Ferris sweep (With pro-micro. Comes in a couple of PCB edge cuts shapes, but with identical pinout) * Hardware Availability: Print the PCB with gerber files from the repository
* Hardware Availability: @iamnotyourbroom in the 40% discord chat server may have some spares for you.
Make example for this keyboard (after setting up your build environment): Make example for this keyboard (after setting up your build environment):
@ -20,7 +19,7 @@ See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_to
## Setting Handedness ## Setting Handedness
Keyboard uses [handedness by EEPROM](https://docs.qmk.fm/#/feature_split_keyboard?id=handedness-by-eeprom) as default. The make commands are: Firmware uses [handedness by EEPROM](https://docs.qmk.fm/#/feature_split_keyboard?id=handedness-by-eeprom) as default and it must be *configured once* on each side. The make commands are:
make ferris/sweep:default:avrdude-split-left make ferris/sweep:default:avrdude-split-left
make ferris/sweep:default:avrdude-split-right make ferris/sweep:default:avrdude-split-right
@ -35,3 +34,22 @@ Enter the bootloader in 3 ways:
* **Physical reset button**: Briefly press the reset button soldered on the PCB. * **Physical reset button**: Briefly press the reset button soldered on the PCB.
* **Keycode in layout**: Press the key mapped to `RESET` if it is configured. * **Keycode in layout**: Press the key mapped to `RESET` if it is configured.
## Swapped Pins
If you printed one of the PCB variant with swapped letters `Q` and `B` / `P` and `N`, add the following code to your keymap's `config.h` to swap pins `E6` and `D7` in the firmware:
```c
#undef DIRECT_PINS
#define DIRECT_PINS { \
{ D7, F7, F6, F5, F4 }, \
{ B1, B3, B2, B6, D3 }, \
{ D1, D0, D4, C6, E6 }, \
{ B4, B5, NO_PIN, NO_PIN, NO_PIN } \
}
#undef DIRECT_PINS_RIGHT
#define DIRECT_PINS_RIGHT { \
{ F4, F5, F6, F7, D7 }, \
{ D3, B6, B2, B3, B1 }, \
{ E6, C6, D4, D0, D1 }, \
{ B5, B4, NO_PIN, NO_PIN, NO_PIN } \
}
```

View File

@ -14,3 +14,20 @@
* along with this program. If not, see <http://www.gnu.org/licenses/>. * along with this program. If not, see <http://www.gnu.org/licenses/>.
*/ */
#include "sweep.h" #include "sweep.h"
#ifdef SWAP_HANDS_ENABLE
__attribute__ ((weak))
const keypos_t PROGMEM hand_swap_config[MATRIX_ROWS][MATRIX_COLS] = {
// Left
{{4, 4}, {3, 4}, {2, 4}, {1, 4}, {0, 4}},
{{4, 5}, {3, 5}, {2, 5}, {1, 5}, {0, 5}},
{{4, 6}, {3, 6}, {2, 6}, {1, 6}, {0, 6}},
{{1, 7}, {0, 7}, {2, 7}, {3, 7}, {4, 7}},
// Right
{{4, 0}, {3, 0}, {2, 0}, {1, 0}, {0, 0}},
{{4, 1}, {3, 1}, {2, 1}, {1, 1}, {0, 1}},
{{4, 2}, {3, 2}, {2, 2}, {1, 2}, {0, 2}},
{{1, 3}, {0, 3}, {2, 3}, {3, 3}, {4, 3}}
};
#endif