mirror of
https://github.com/qmk/qmk_userspace.git
synced 2025-12-20 12:40:22 -05:00
Sort TC36K matrix by physical columns then rows (Qwerty QAZ first)
This makes the first entry in the matrix (top-left) Qwerty 'Q' as conventional for a 36-key layout like this (and QMK boot magic). Note there are three scanning columns for the six thumb keys, only two keys each, making 13 scanning columns in total.
This commit is contained in:
parent
be63007d97
commit
a553ab2b41
2 changed files with 60 additions and 61 deletions
|
|
@ -11,8 +11,8 @@
|
||||||
"nkro": false
|
"nkro": false
|
||||||
},
|
},
|
||||||
"matrix_pins": {
|
"matrix_pins": {
|
||||||
"cols": ["GP11", "GP10", "GP3", "GP4", "GP7", "GP26", "GP27", "GP28", "GP15", "GP21", "GP19", "GP20", "GP16"],
|
"cols": ["GP20", "GP21", "GP28", "GP27", "GP26", "GP19", "GP16", "GP15", "GP7", "GP4", "GP3", "GP10", "GP11"],
|
||||||
"rows": ["GP12", "GP8", "GP9", "GP1", "GP6", "GP2", "GP22", "GP0", "GP13", "GP14", "GP18", "GP17", "GP5"]
|
"rows": ["GP5", "GP8", "GP17", "GP1", "GP14", "GP18", "GP0", "GP13", "GP12", "GP22", "GP2", "GP6", "GP9"]
|
||||||
},
|
},
|
||||||
"indicators": {
|
"indicators": {
|
||||||
"caps_lock": "GP25"
|
"caps_lock": "GP25"
|
||||||
|
|
@ -28,42 +28,42 @@
|
||||||
"layouts": {
|
"layouts": {
|
||||||
"LAYOUT_split_3x5_3": {
|
"LAYOUT_split_3x5_3": {
|
||||||
"layout": [
|
"layout": [
|
||||||
{"label": "q", "matrix": [12, 11], "x": 0, "y": 0.25},
|
{"label": "q", "matrix": [0, 0], "x": 0, "y": 0.25},
|
||||||
{"label": "w", "matrix": [3, 9], "x": 1, "y": 0.125},
|
{"label": "w", "matrix": [3, 1], "x": 1, "y": 0.125},
|
||||||
{"label": "e", "matrix": [7, 7], "x": 2, "y": 0},
|
{"label": "e", "matrix": [6, 2], "x": 2, "y": 0},
|
||||||
{"label": "r", "matrix": [7, 6], "x": 3, "y": 0.125},
|
{"label": "r", "matrix": [6, 3], "x": 3, "y": 0.125},
|
||||||
{"label": "t", "matrix": [5, 5], "x": 4, "y": 0.25},
|
{"label": "t", "matrix": [10, 4], "x": 4, "y": 0.25},
|
||||||
{"label": "y", "matrix": [5, 4], "x": 7, "y": 0.25},
|
{"label": "y", "matrix": [10, 8], "x": 7, "y": 0.25},
|
||||||
{"label": "u", "matrix": [3, 3], "x": 8, "y": 0.125},
|
{"label": "u", "matrix": [3, 9], "x": 8, "y": 0.125},
|
||||||
{"label": "i", "matrix": [7, 2], "x": 9, "y": 0},
|
{"label": "i", "matrix": [6, 10], "x": 9, "y": 0},
|
||||||
{"label": "o", "matrix": [5, 1], "x": 10, "y": 0.125},
|
{"label": "o", "matrix": [10, 11], "x": 10, "y": 0.125},
|
||||||
{"label": "p", "matrix": [1, 0], "x": 11, "y": 0.25},
|
{"label": "p", "matrix": [1, 12], "x": 11, "y": 0.25},
|
||||||
{"label": "a", "matrix": [1, 11], "x": 0, "y": 1.25},
|
{"label": "a", "matrix": [1, 0], "x": 0, "y": 1.25},
|
||||||
{"label": "s", "matrix": [9, 9], "x": 1, "y": 1.125},
|
{"label": "s", "matrix": [4, 1], "x": 1, "y": 1.125},
|
||||||
{"label": "d", "matrix": [8, 7], "x": 2, "y": 1},
|
{"label": "d", "matrix": [7, 2], "x": 2, "y": 1},
|
||||||
{"label": "f", "matrix": [0, 6], "x": 3, "y": 1.125},
|
{"label": "f", "matrix": [8, 3], "x": 3, "y": 1.125},
|
||||||
{"label": "g", "matrix": [6, 5], "x": 4, "y": 1.25},
|
{"label": "g", "matrix": [9, 4], "x": 4, "y": 1.25},
|
||||||
{"label": "h", "matrix": [4, 4], "x": 7, "y": 1.25},
|
{"label": "h", "matrix": [11, 8], "x": 7, "y": 1.25},
|
||||||
{"label": "j", "matrix": [12, 3], "x": 8, "y": 1.125},
|
{"label": "j", "matrix": [0, 9], "x": 8, "y": 1.125},
|
||||||
{"label": "k", "matrix": [3, 2], "x": 9, "y": 1},
|
{"label": "k", "matrix": [3, 10], "x": 9, "y": 1},
|
||||||
{"label": "l", "matrix": [1, 1], "x": 10, "y": 1.125},
|
{"label": "l", "matrix": [1, 11], "x": 10, "y": 1.125},
|
||||||
{"label": ";", "matrix": [9, 0], "x": 11, "y": 1.25},
|
{"label": ";", "matrix": [4, 12], "x": 11, "y": 1.25},
|
||||||
{"label": "z", "matrix": [11, 11], "x": 0, "y": 2.25},
|
{"label": "z", "matrix": [2, 0], "x": 0, "y": 2.25},
|
||||||
{"label": "x", "matrix": [10, 9], "x": 1, "y": 2.125},
|
{"label": "x", "matrix": [5, 1], "x": 1, "y": 2.125},
|
||||||
{"label": "c", "matrix": [11, 7], "x": 2, "y": 2},
|
{"label": "c", "matrix": [2, 2], "x": 2, "y": 2},
|
||||||
{"label": "v", "matrix": [6, 6], "x": 3, "y": 2.125},
|
{"label": "v", "matrix": [9, 3], "x": 3, "y": 2.125},
|
||||||
{"label": "b", "matrix": [10, 5], "x": 4, "y": 2.25},
|
{"label": "b", "matrix": [5, 4], "x": 4, "y": 2.25},
|
||||||
{"label": "n", "matrix": [8, 4], "x": 7, "y": 2.25},
|
{"label": "n", "matrix": [7, 8], "x": 7, "y": 2.25},
|
||||||
{"label": "m", "matrix": [4, 3], "x": 8, "y": 2.125},
|
{"label": "m", "matrix": [11, 9], "x": 8, "y": 2.125},
|
||||||
{"label": ",", "matrix": [2, 2], "x": 9, "y": 2},
|
{"label": ",", "matrix": [12, 10], "x": 9, "y": 2},
|
||||||
{"label": ".", "matrix": [2, 1], "x": 10, "y": 2.125},
|
{"label": ".", "matrix": [12, 11], "x": 10, "y": 2.125},
|
||||||
{"label": "/", "matrix": [0, 0], "x": 11, "y": 2.25},
|
{"label": "/", "matrix": [8, 12], "x": 11, "y": 2.25},
|
||||||
{"label": "L1", "matrix": [11, 10], "x": 2.5, "y": 3.25},
|
{"label": "L1", "matrix": [2, 5], "x": 2.5, "y": 3.25},
|
||||||
{"label": "L2", "matrix": [10, 10], "x": 3.5, "y": 3.5},
|
{"label": "L2", "matrix": [5, 5], "x": 3.5, "y": 3.5},
|
||||||
{"label": "L3", "matrix": [6, 12], "x": 4.5, "y": 3.75},
|
{"label": "L3", "matrix": [9, 6], "x": 4.5, "y": 3.75},
|
||||||
{"label": "R3", "matrix": [12, 12], "x": 6.5, "y": 3.75},
|
{"label": "R3", "matrix": [0, 6], "x": 6.5, "y": 3.75},
|
||||||
{"label": "R2", "matrix": [8, 8], "x": 7.5, "y": 3.5},
|
{"label": "R2", "matrix": [7, 7], "x": 7.5, "y": 3.5},
|
||||||
{"label": "R1", "matrix": [9, 8], "x": 8.5, "y": 3.25}
|
{"label": "R1", "matrix": [4, 7], "x": 8.5, "y": 3.25}
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -11,29 +11,28 @@ for background, although the final pin selection and trace routing changed).
|
||||||
|
|
||||||

|

|
||||||
|
|
||||||
This matrix shows the full 15×15 Tutte-Coxeter bipartite scanning matrix with the
|
This matrix shows the 13×13 partial Tutte-Coxeter bipartite scanning matrix
|
||||||
two unused rows and columns last (❌), and the further 9 keys this would allow (⭕)
|
in the physical column order (QAZ colunm first) with rows sorted to ensure Q
|
||||||
if using 30 GPIOs rather than just 26 for a 13×13 scanning matrix. The allocation
|
is top left as the first matrix entry. If using the full matrix this would
|
||||||
of keys to matrix elements and scanning matrix rows and columns to GPIO pins was
|
be 15x15 using 30 GPIOs and have another 9 keys making 45 in all.
|
||||||
arbitrary and down to how easy it was to layout the PCB traces:
|
The allocation of keys to matrix elements and scanning matrix rows and columns
|
||||||
|
to GPIO pins was arbitrary and down to how easy it was to layout the PCB traces:
|
||||||
|
|
||||||
| GP | 11 | 10 | 3 | 4 | 7 | 26 | 27 | 28 | 15 | 21 | 19 | 20 | 16 | ❌ | ❌ |
|
| GP | 20 | 21 | 28 | 27 | 26 | 19 | 16 | 15 | 7 | 4 | 3 | 10 | 11 |
|
||||||
|---:|:--:|:--:|:-:|:-:|:-:|:--:|:--:|:--:|:--:|:--:|:--:|:--:|:--:|:--:|:--:|
|
|---:|:--:|:--:|:--:|:--:|:--:|:--:|:--:|:--:|:-:|:-:|:-:|:--:|:--:|
|
||||||
| 12 | / | | | | | | F | | | | | | | | ⭕ |
|
| 5 | Q | | | | | | R1 | | | J | | | |
|
||||||
| 8 | P | L | | | | | | | | | | A | | | |
|
| 8 | A | | | | | | | | | | | L | P |
|
||||||
| 9 | | . | , | | | | | | | | | | | ⭕ | |
|
| 17 | Z | | C | | | L3 | | | | | | | |
|
||||||
| 1 | | | K | U | | | | | | W | | | | | |
|
| 1 | | W | | | | | | | | U | K | | |
|
||||||
| 6 | | | | M | H | | | | | | | | | | ⭕ |
|
| 14 | | S | | | | | | R3 | | | | | ; |
|
||||||
| 2 | | O | | | Y | T | | | | | | | | | |
|
| 18 | | X | | | B | L2 | | | | | | | |
|
||||||
| 22 | | | | | | G | V | | | | | | L1 | | |
|
| 0 | | | E | R | | | | | | | I | | |
|
||||||
| 0 | | | I | | | | R | E | | | | | | | |
|
| 13 | | | D | | | | | R2 | N | | | | |
|
||||||
| 13 | | | | | N | | | D | R2 | | | | | | |
|
| 12 | | | | F | | | | | | | | | / |
|
||||||
| 14 | ; | | | | | | | | R3 | S | | | | | |
|
| 22 | | | | V | G | | L1 | | | | | | |
|
||||||
| 18 | | | | | | B | | | | X | L2 | | | | |
|
| 2 | | | | | T | | | | Y | | | O | |
|
||||||
| 17 | | | | | | | | C | | | L3 | Z | | | |
|
| 6 | | | | | | | | | H | M | | | |
|
||||||
| 5 | | | | J | | | | | | | | Q | R1 | | |
|
| 9 | | | | | | | | | | | , | . | |
|
||||||
| ❌ | | | | | | | | | ⭕ | | | | ⭕ | ⭕ | |
|
|
||||||
| ❌ | | | | | | | | | | | ⭕ | | | ⭕ | ⭕ |
|
|
||||||
|
|
||||||
The keys here are labeled as per Qwerty, with L3, L2, L1, R1, R2, and R3 for the thumbs:
|
The keys here are labeled as per Qwerty, with L3, L2, L1, R1, R2, and R3 for the thumbs:
|
||||||
|
|
||||||
|
|
@ -67,6 +66,6 @@ See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_to
|
||||||
|
|
||||||
Enter the bootloader in 3 ways:
|
Enter the bootloader in 3 ways:
|
||||||
|
|
||||||
* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (bottom right key, Qwerty `/`) and plug in the keyboard
|
* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (top left key, Qwerty `Q`) and plug in the keyboard
|
||||||
* **Physical reset button**: Briefly press the button on the back of the controller (if physically accessible)
|
* **Physical reset button**: Briefly press the button on the back of the controller (if physically accessible)
|
||||||
* **Keycode in layout**: Press the key mapped to `QK_BOOT` if it is available
|
* **Keycode in layout**: Press the key mapped to `QK_BOOT` if it is available
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue