Kaynağa Gözat

Merge remote-tracking branch 'origin/master' into develop

QMK Bot 4 yıl önce
ebeveyn
işleme
5bd3e9e806

+ 22 - 1
keyboards/a_dux/a_dux.c

@@ -1,4 +1,8 @@
-/* Copyright 2018-2020 ENDO Katsuhiro <ka2hiro@curlybracket.co.jp> David Philip Barr <@davidphilipbarr> Pierre Chevalier <pierrechevalier83@gmail.com>
+/* Copyright 2018-2020
+ * ENDO Katsuhiro <ka2hiro@curlybracket.co.jp>
+ * David Philip Barr <@davidphilipbarr>
+ * Pierre Chevalier <pierrechevalier83@gmail.com>
+ * @filterpaper
  *
  * 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
@@ -14,3 +18,20 @@
  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
  */
 #include "a_dux.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
+

+ 1 - 1
keyboards/a_dux/readme.md

@@ -28,7 +28,7 @@ See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_to
 
 ## 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 a_dux:default:dfu-split-left
     make a_dux:default:dfu-split-right

+ 18 - 0
keyboards/cradio/cradio.c

@@ -2,6 +2,7 @@
  * ENDO Katsuhiro <ka2hiro@curlybracket.co.jp>
  * David Philip Barr <@davidphilipbarr>
  * Pierre Chevalier <pierrechevalier83@gmail.com>
+ * @filterpaper
  *
  * 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
@@ -18,3 +19,20 @@
  */
 
 #include "cradio.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
+

+ 24 - 2
keyboards/cradio/readme.md

@@ -8,7 +8,8 @@ Cradio are low-profile 34-key split-keyboards designed by [@davidphilipbarr](htt
 
 * Keyboard Maintainer: [davidphilipbarr](https://github.com/davidphilipbarr)
 * Hardware Supported:
-    * [Sweep](https://github.com/davidphilipbarr/Sweep) (all versions)
+    * [Cradio](https://github.com/davidphilipbarr/36keys/tree/master/34Keys)
+    * [Sweep](https://github.com/davidphilipbarr/Sweep)
     * [Hypergarlic](https://github.com/davidphilipbarr/hypergolic/tree/main/hypergarlic)
     * [Paroxysm](https://github.com/davidphilipbarr/hypergolic/tree/main/paroxysm)
     * Variants of the same 34-key direct pin PCB
@@ -22,7 +23,7 @@ See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_to
 
 ## 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 cradio:default:dfu-split-left
     make cradio:default:dfu-split-right
@@ -36,3 +37,24 @@ Enter the bootloader in 3 ways:
 * **Bootmagic reset**: Hold down the top left key on the left half (or the top right right key on the right half) and plug in the controller on that side.
 * **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.
+
+## Swapped Pins
+
+If you have 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 } \
+}
+```
+