This commit is contained in:
Bartosz Nowak 2025-12-05 15:24:13 +08:00 committed by GitHub
commit cfe2b43751
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
7 changed files with 514 additions and 15 deletions

View File

@ -0,0 +1,425 @@
/*
* Copyright (c) 2020 The ZMK Contributors
*
* SPDX-License-Identifier: MIT
*/
#include <physical_layouts.dtsi>
/ {
chosen {
zmk,physical-layout = &ergodash_physical_layout_4key;
};
ergodash_physical_layout_4key: ergodash_physical_layout_4key {
compatible = "zmk,physical-layout";
display-name = "LAYOUT_4key";
kscan = <&kscan0>;
transform = <&default_transform>;
keys// w h x y rot rx ry
// row0
= <&key_physical_attrs 100 100 0 38 0 0 0>
, <&key_physical_attrs 100 100 100 38 0 0 0>
, <&key_physical_attrs 100 100 200 12 0 0 0>
, <&key_physical_attrs 100 100 300 0 0 0 0>
, <&key_physical_attrs 100 100 400 12 0 0 0>
, <&key_physical_attrs 100 100 500 25 0 0 0>
, <&key_physical_attrs 100 100 600 75 0 0 0>
, <&key_physical_attrs 100 100 1150 75 0 0 0>
, <&key_physical_attrs 100 100 1250 25 0 0 0>
, <&key_physical_attrs 100 100 1350 12 0 0 0>
, <&key_physical_attrs 100 100 1450 0 0 0 0>
, <&key_physical_attrs 100 100 1550 12 0 0 0>
, <&key_physical_attrs 100 100 1650 38 0 0 0>
, <&key_physical_attrs 100 100 1750 38 0 0 0>
// row1
, <&key_physical_attrs 100 100 0 138 0 0 0>
, <&key_physical_attrs 100 100 100 138 0 0 0>
, <&key_physical_attrs 100 100 200 112 0 0 0>
, <&key_physical_attrs 100 100 300 100 0 0 0>
, <&key_physical_attrs 100 100 400 112 0 0 0>
, <&key_physical_attrs 100 100 500 125 0 0 0>
, <&key_physical_attrs 100 100 600 175 0 0 0>
, <&key_physical_attrs 100 100 1150 175 0 0 0>
, <&key_physical_attrs 100 100 1250 125 0 0 0>
, <&key_physical_attrs 100 100 1350 112 0 0 0>
, <&key_physical_attrs 100 100 1450 100 0 0 0>
, <&key_physical_attrs 100 100 1550 112 0 0 0>
, <&key_physical_attrs 100 100 1650 138 0 0 0>
, <&key_physical_attrs 100 100 1750 138 0 0 0>
// row2
, <&key_physical_attrs 100 100 0 238 0 0 0>
, <&key_physical_attrs 100 100 100 238 0 0 0>
, <&key_physical_attrs 100 100 200 212 0 0 0>
, <&key_physical_attrs 100 100 300 200 0 0 0>
, <&key_physical_attrs 100 100 400 212 0 0 0>
, <&key_physical_attrs 100 100 500 225 0 0 0>
, <&key_physical_attrs 100 100 600 275 0 0 0>
, <&key_physical_attrs 100 100 1150 275 0 0 0>
, <&key_physical_attrs 100 100 1250 225 0 0 0>
, <&key_physical_attrs 100 100 1350 212 0 0 0>
, <&key_physical_attrs 100 100 1450 200 0 0 0>
, <&key_physical_attrs 100 100 1550 212 0 0 0>
, <&key_physical_attrs 100 100 1650 238 0 0 0>
, <&key_physical_attrs 100 100 1750 238 0 0 0>
// row3
, <&key_physical_attrs 100 100 0 338 0 0 0>
, <&key_physical_attrs 100 100 100 338 0 0 0>
, <&key_physical_attrs 100 100 200 312 0 0 0>
, <&key_physical_attrs 100 100 300 300 0 0 0>
, <&key_physical_attrs 100 100 400 312 0 0 0>
, <&key_physical_attrs 100 100 500 325 0 0 0>
, <&key_physical_attrs 100 100 600 400 0 0 0>
, <&key_physical_attrs 100 100 1150 400 0 0 0>
, <&key_physical_attrs 100 100 1250 325 0 0 0>
, <&key_physical_attrs 100 100 1350 312 0 0 0>
, <&key_physical_attrs 100 100 1450 300 0 0 0>
, <&key_physical_attrs 100 100 1550 312 0 0 0>
, <&key_physical_attrs 100 100 1650 338 0 0 0>
, <&key_physical_attrs 100 100 1750 338 0 0 0>
// row4
, <&key_physical_attrs 100 100 0 438 0 0 0>
, <&key_physical_attrs 100 100 100 438 0 0 0>
, <&key_physical_attrs 100 100 200 412 0 0 0>
, <&key_physical_attrs 100 100 300 400 0 0 0>
, <&key_physical_attrs 100 100 500 500 0 0 0>
, <&key_physical_attrs 100 100 600 500 0 0 0>
, <&key_physical_attrs 100 200 700 400 0 0 0>
, <&key_physical_attrs 100 200 1050 400 0 0 0>
, <&key_physical_attrs 100 100 1150 500 0 0 0>
, <&key_physical_attrs 100 100 1250 500 0 0 0>
, <&key_physical_attrs 100 100 1450 400 0 0 0>
, <&key_physical_attrs 100 100 1550 412 0 0 0>
, <&key_physical_attrs 100 100 1650 438 0 0 0>
, <&key_physical_attrs 100 100 1750 438 0 0 0>
;
};
ergodash_physical_layout_4key_2u_inner: ergodash_physical_layout_4key_2u_inner {
compatible = "zmk,physical-layout";
display-name = "LAYOUT_4key_2u_inner";
kscan = <&kscan0>;
transform = <&default_transform>;
keys // w h x y rot rx ry
= <&key_physical_attrs 100 100 0 38 0 0 0>
, <&key_physical_attrs 100 100 100 38 0 0 0>
, <&key_physical_attrs 100 100 200 12 0 0 0>
, <&key_physical_attrs 100 100 300 0 0 0 0>
, <&key_physical_attrs 100 100 400 12 0 0 0>
, <&key_physical_attrs 100 100 500 25 0 0 0>
, <&key_physical_attrs 100 100 600 75 0 0 0>
, <&key_physical_attrs 100 100 1150 75 0 0 0>
, <&key_physical_attrs 100 100 1250 25 0 0 0>
, <&key_physical_attrs 100 100 1350 12 0 0 0>
, <&key_physical_attrs 100 100 1450 0 0 0 0>
, <&key_physical_attrs 100 100 1550 12 0 0 0>
, <&key_physical_attrs 100 100 1650 38 0 0 0>
, <&key_physical_attrs 100 100 1750 38 0 0 0>
, <&key_physical_attrs 100 100 0 138 0 0 0>
, <&key_physical_attrs 100 100 100 138 0 0 0>
, <&key_physical_attrs 100 100 200 112 0 0 0>
, <&key_physical_attrs 100 100 300 100 0 0 0>
, <&key_physical_attrs 100 100 400 112 0 0 0>
, <&key_physical_attrs 100 100 500 125 0 0 0>
, <&key_physical_attrs 100 100 600 175 0 0 0>
, <&key_physical_attrs 100 100 1150 175 0 0 0>
, <&key_physical_attrs 100 100 1250 125 0 0 0>
, <&key_physical_attrs 100 100 1350 112 0 0 0>
, <&key_physical_attrs 100 100 1450 100 0 0 0>
, <&key_physical_attrs 100 100 1550 112 0 0 0>
, <&key_physical_attrs 100 100 1650 138 0 0 0>
, <&key_physical_attrs 100 100 1750 138 0 0 0>
, <&key_physical_attrs 100 100 0 238 0 0 0>
, <&key_physical_attrs 100 100 100 238 0 0 0>
, <&key_physical_attrs 100 100 200 212 0 0 0>
, <&key_physical_attrs 100 100 300 200 0 0 0>
, <&key_physical_attrs 100 100 400 212 0 0 0>
, <&key_physical_attrs 100 100 500 225 0 0 0>
, <&key_physical_attrs 100 100 600 275 0 0 0>
, <&key_physical_attrs 100 100 1150 275 0 0 0>
, <&key_physical_attrs 100 100 1250 225 0 0 0>
, <&key_physical_attrs 100 100 1350 212 0 0 0>
, <&key_physical_attrs 100 100 1450 200 0 0 0>
, <&key_physical_attrs 100 100 1550 212 0 0 0>
, <&key_physical_attrs 100 100 1650 238 0 0 0>
, <&key_physical_attrs 100 100 1750 238 0 0 0>
, <&key_physical_attrs 100 100 0 338 0 0 0>
, <&key_physical_attrs 100 100 100 338 0 0 0>
, <&key_physical_attrs 100 100 200 312 0 0 0>
, <&key_physical_attrs 100 100 300 300 0 0 0>
, <&key_physical_attrs 100 100 400 312 0 0 0>
, <&key_physical_attrs 100 100 500 325 0 0 0>
, <&key_physical_attrs 100 100 700 400 0 0 0>
, <&key_physical_attrs 100 100 1050 400 0 0 0>
, <&key_physical_attrs 100 100 1250 325 0 0 0>
, <&key_physical_attrs 100 100 1350 312 0 0 0>
, <&key_physical_attrs 100 100 1450 300 0 0 0>
, <&key_physical_attrs 100 100 1550 312 0 0 0>
, <&key_physical_attrs 100 100 1650 338 0 0 0>
, <&key_physical_attrs 100 100 1750 338 0 0 0>
, <&key_physical_attrs 100 100 0 438 0 0 0>
, <&key_physical_attrs 100 100 100 438 0 0 0>
, <&key_physical_attrs 100 100 200 412 0 0 0>
, <&key_physical_attrs 100 100 300 400 0 0 0>
, <&key_physical_attrs 100 100 500 500 0 0 0>
, <&key_physical_attrs 100 200 600 400 0 0 0>
, <&key_physical_attrs 100 100 700 500 0 0 0>
, <&key_physical_attrs 100 100 1050 500 0 0 0>
, <&key_physical_attrs 100 200 1150 400 0 0 0>
, <&key_physical_attrs 100 100 1250 500 0 0 0>
, <&key_physical_attrs 100 100 1450 400 0 0 0>
, <&key_physical_attrs 100 100 1550 412 0 0 0>
, <&key_physical_attrs 100 100 1650 438 0 0 0>
, <&key_physical_attrs 100 100 1750 438 0 0 0>
;
};
ergodash_physical_layout_3key_2us: ergodash_physical_layout_3key_2us {
compatible = "zmk,physical-layout";
display-name = "LAYOUT_3key_2us";
kscan = <&kscan0>;
transform = <&default_transform_3key_alt>;
keys // w h x y rot rx ry
// row0
= <&key_physical_attrs 100 100 0 38 0 0 0>
, <&key_physical_attrs 100 100 100 38 0 0 0>
, <&key_physical_attrs 100 100 200 12 0 0 0>
, <&key_physical_attrs 100 100 300 0 0 0 0>
, <&key_physical_attrs 100 100 400 12 0 0 0>
, <&key_physical_attrs 100 100 500 25 0 0 0>
, <&key_physical_attrs 100 100 600 75 0 0 0>
, <&key_physical_attrs 100 100 1150 75 0 0 0>
, <&key_physical_attrs 100 100 1250 25 0 0 0>
, <&key_physical_attrs 100 100 1350 12 0 0 0>
, <&key_physical_attrs 100 100 1450 0 0 0 0>
, <&key_physical_attrs 100 100 1550 12 0 0 0>
, <&key_physical_attrs 100 100 1650 38 0 0 0>
, <&key_physical_attrs 100 100 1750 38 0 0 0>
// row1
, <&key_physical_attrs 100 100 0 138 0 0 0>
, <&key_physical_attrs 100 100 100 138 0 0 0>
, <&key_physical_attrs 100 100 200 112 0 0 0>
, <&key_physical_attrs 100 100 300 100 0 0 0>
, <&key_physical_attrs 100 100 400 112 0 0 0>
, <&key_physical_attrs 100 100 500 125 0 0 0>
, <&key_physical_attrs 100 100 600 175 0 0 0>
, <&key_physical_attrs 100 100 1150 175 0 0 0>
, <&key_physical_attrs 100 100 1250 125 0 0 0>
, <&key_physical_attrs 100 100 1350 112 0 0 0>
, <&key_physical_attrs 100 100 1450 100 0 0 0>
, <&key_physical_attrs 100 100 1550 112 0 0 0>
, <&key_physical_attrs 100 100 1650 138 0 0 0>
, <&key_physical_attrs 100 100 1750 138 0 0 0>
// row2
, <&key_physical_attrs 100 100 0 238 0 0 0>
, <&key_physical_attrs 100 100 100 238 0 0 0>
, <&key_physical_attrs 100 100 200 212 0 0 0>
, <&key_physical_attrs 100 100 300 200 0 0 0>
, <&key_physical_attrs 100 100 400 212 0 0 0>
, <&key_physical_attrs 100 100 500 225 0 0 0>
, <&key_physical_attrs 100 100 600 275 0 0 0>
, <&key_physical_attrs 100 100 1150 275 0 0 0>
, <&key_physical_attrs 100 100 1250 225 0 0 0>
, <&key_physical_attrs 100 100 1350 212 0 0 0>
, <&key_physical_attrs 100 100 1450 200 0 0 0>
, <&key_physical_attrs 100 100 1550 212 0 0 0>
, <&key_physical_attrs 100 100 1650 238 0 0 0>
, <&key_physical_attrs 100 100 1750 238 0 0 0>
// row3
, <&key_physical_attrs 100 100 0 338 0 0 0>
, <&key_physical_attrs 100 100 100 338 0 0 0>
, <&key_physical_attrs 100 100 200 312 0 0 0>
, <&key_physical_attrs 100 100 300 300 0 0 0>
, <&key_physical_attrs 100 100 400 312 0 0 0>
, <&key_physical_attrs 100 100 500 325 0 0 0>
, <&key_physical_attrs 100 100 1250 325 0 0 0>
, <&key_physical_attrs 100 100 1350 312 0 0 0>
, <&key_physical_attrs 100 100 1450 300 0 0 0>
, <&key_physical_attrs 100 100 1550 312 0 0 0>
, <&key_physical_attrs 100 100 1650 338 0 0 0>
, <&key_physical_attrs 100 100 1750 338 0 0 0>
// row4
, <&key_physical_attrs 100 100 0 438 0 0 0>
, <&key_physical_attrs 100 100 100 438 0 0 0>
, <&key_physical_attrs 100 100 200 412 0 0 0>
, <&key_physical_attrs 100 100 300 400 0 0 0>
, <&key_physical_attrs 100 100 500 500 0 0 0>
, <&key_physical_attrs 100 200 600 400 0 0 0>
, <&key_physical_attrs 100 200 700 400 0 0 0>
, <&key_physical_attrs 100 200 1050 400 0 0 0>
, <&key_physical_attrs 100 200 1150 400 0 0 0>
, <&key_physical_attrs 100 100 1250 500 0 0 0>
, <&key_physical_attrs 100 100 1450 400 0 0 0>
, <&key_physical_attrs 100 100 1550 412 0 0 0>
, <&key_physical_attrs 100 100 1650 438 0 0 0>
, <&key_physical_attrs 100 100 1750 438 0 0 0>
;
};
ergodash_physical_layout_3key_1us: ergodash_physical_layout_3key_1us {
compatible = "zmk,physical-layout";
display-name = "LAYOUT_3key_1us";
kscan = <&kscan0>;
transform = <&default_transform_3key>;
keys // w h x y rot rx ry
= <&key_physical_attrs 100 100 0 38 0 0 0>
, <&key_physical_attrs 100 100 100 38 0 0 0>
, <&key_physical_attrs 100 100 200 12 0 0 0>
, <&key_physical_attrs 100 100 300 0 0 0 0>
, <&key_physical_attrs 100 100 400 12 0 0 0>
, <&key_physical_attrs 100 100 500 25 0 0 0>
, <&key_physical_attrs 100 100 600 75 0 0 0>
, <&key_physical_attrs 100 100 1150 75 0 0 0>
, <&key_physical_attrs 100 100 1250 25 0 0 0>
, <&key_physical_attrs 100 100 1350 12 0 0 0>
, <&key_physical_attrs 100 100 1450 0 0 0 0>
, <&key_physical_attrs 100 100 1550 12 0 0 0>
, <&key_physical_attrs 100 100 1650 38 0 0 0>
, <&key_physical_attrs 100 100 1750 38 0 0 0>
// row1
, <&key_physical_attrs 100 100 0 138 0 0 0>
, <&key_physical_attrs 100 100 100 138 0 0 0>
, <&key_physical_attrs 100 100 200 112 0 0 0>
, <&key_physical_attrs 100 100 300 100 0 0 0>
, <&key_physical_attrs 100 100 400 112 0 0 0>
, <&key_physical_attrs 100 100 500 125 0 0 0>
, <&key_physical_attrs 100 100 600 175 0 0 0>
, <&key_physical_attrs 100 100 1150 175 0 0 0>
, <&key_physical_attrs 100 100 1250 125 0 0 0>
, <&key_physical_attrs 100 100 1350 112 0 0 0>
, <&key_physical_attrs 100 100 1450 100 0 0 0>
, <&key_physical_attrs 100 100 1550 112 0 0 0>
, <&key_physical_attrs 100 100 1650 138 0 0 0>
, <&key_physical_attrs 100 100 1750 138 0 0 0>
// row2
, <&key_physical_attrs 100 100 0 238 0 0 0>
, <&key_physical_attrs 100 100 100 238 0 0 0>
, <&key_physical_attrs 100 100 200 212 0 0 0>
, <&key_physical_attrs 100 100 300 200 0 0 0>
, <&key_physical_attrs 100 100 400 212 0 0 0>
, <&key_physical_attrs 100 100 500 225 0 0 0>
, <&key_physical_attrs 100 100 600 275 0 0 0>
, <&key_physical_attrs 100 100 1150 275 0 0 0>
, <&key_physical_attrs 100 100 1250 225 0 0 0>
, <&key_physical_attrs 100 100 1350 212 0 0 0>
, <&key_physical_attrs 100 100 1450 200 0 0 0>
, <&key_physical_attrs 100 100 1550 212 0 0 0>
, <&key_physical_attrs 100 100 1650 238 0 0 0>
, <&key_physical_attrs 100 100 1750 238 0 0 0>
// row3
, <&key_physical_attrs 100 100 0 338 0 0 0>
, <&key_physical_attrs 100 100 100 338 0 0 0>
, <&key_physical_attrs 100 100 200 312 0 0 0>
, <&key_physical_attrs 100 100 300 300 0 0 0>
, <&key_physical_attrs 100 100 400 312 0 0 0>
, <&key_physical_attrs 100 100 500 325 0 0 0>
, <&key_physical_attrs 100 100 600 400 0 0 0>
, <&key_physical_attrs 100 100 1150 400 0 0 0>
, <&key_physical_attrs 100 100 1250 325 0 0 0>
, <&key_physical_attrs 100 100 1350 312 0 0 0>
, <&key_physical_attrs 100 100 1450 300 0 0 0>
, <&key_physical_attrs 100 100 1550 312 0 0 0>
, <&key_physical_attrs 100 100 1650 338 0 0 0>
, <&key_physical_attrs 100 100 1750 338 0 0 0>
// row4
, <&key_physical_attrs 100 100 0 438 0 0 0>
, <&key_physical_attrs 100 100 100 438 0 0 0>
, <&key_physical_attrs 100 100 200 412 0 0 0>
, <&key_physical_attrs 100 100 300 400 0 0 0>
, <&key_physical_attrs 100 100 500 500 0 0 0>
, <&key_physical_attrs 100 100 600 500 0 0 0>
, <&key_physical_attrs 100 100 1150 500 0 0 0>
, <&key_physical_attrs 100 100 1250 500 0 0 0>
, <&key_physical_attrs 100 100 1450 400 0 0 0>
, <&key_physical_attrs 100 100 1550 412 0 0 0>
, <&key_physical_attrs 100 100 1650 438 0 0 0>
, <&key_physical_attrs 100 100 1750 438 0 0 0>
;
};
ergodash_physical_layout_2key: ergodash_physical_layout_2key {
compatible = "zmk,physical-layout";
display-name = "LAYOUT_2key";
kscan = <&kscan0>;
transform = <&default_transform_2key>;
keys // w h x y rot rx ry
= <&key_physical_attrs 100 100 0 38 0 0 0>
, <&key_physical_attrs 100 100 100 38 0 0 0>
, <&key_physical_attrs 100 100 200 12 0 0 0>
, <&key_physical_attrs 100 100 300 0 0 0 0>
, <&key_physical_attrs 100 100 400 12 0 0 0>
, <&key_physical_attrs 100 100 500 25 0 0 0>
, <&key_physical_attrs 100 100 600 75 0 0 0>
, <&key_physical_attrs 100 100 1150 75 0 0 0>
, <&key_physical_attrs 100 100 1250 25 0 0 0>
, <&key_physical_attrs 100 100 1350 12 0 0 0>
, <&key_physical_attrs 100 100 1450 0 0 0 0>
, <&key_physical_attrs 100 100 1550 12 0 0 0>
, <&key_physical_attrs 100 100 1650 38 0 0 0>
, <&key_physical_attrs 100 100 1750 38 0 0 0>
, <&key_physical_attrs 100 100 0 138 0 0 0>
, <&key_physical_attrs 100 100 100 138 0 0 0>
, <&key_physical_attrs 100 100 200 112 0 0 0>
, <&key_physical_attrs 100 100 300 100 0 0 0>
, <&key_physical_attrs 100 100 400 112 0 0 0>
, <&key_physical_attrs 100 100 500 125 0 0 0>
, <&key_physical_attrs 100 100 600 175 0 0 0>
, <&key_physical_attrs 100 100 1150 175 0 0 0>
, <&key_physical_attrs 100 100 1250 125 0 0 0>
, <&key_physical_attrs 100 100 1350 112 0 0 0>
, <&key_physical_attrs 100 100 1450 100 0 0 0>
, <&key_physical_attrs 100 100 1550 112 0 0 0>
, <&key_physical_attrs 100 100 1650 138 0 0 0>
, <&key_physical_attrs 100 100 1750 138 0 0 0>
, <&key_physical_attrs 100 100 0 238 0 0 0>
, <&key_physical_attrs 100 100 100 238 0 0 0>
, <&key_physical_attrs 100 100 200 212 0 0 0>
, <&key_physical_attrs 100 100 300 200 0 0 0>
, <&key_physical_attrs 100 100 400 212 0 0 0>
, <&key_physical_attrs 100 100 500 225 0 0 0>
, <&key_physical_attrs 100 100 600 275 0 0 0>
, <&key_physical_attrs 100 100 1150 275 0 0 0>
, <&key_physical_attrs 100 100 1250 225 0 0 0>
, <&key_physical_attrs 100 100 1350 212 0 0 0>
, <&key_physical_attrs 100 100 1450 200 0 0 0>
, <&key_physical_attrs 100 100 1550 212 0 0 0>
, <&key_physical_attrs 100 100 1650 238 0 0 0>
, <&key_physical_attrs 100 100 1750 238 0 0 0>
, <&key_physical_attrs 100 100 0 338 0 0 0>
, <&key_physical_attrs 100 100 100 338 0 0 0>
, <&key_physical_attrs 100 100 200 312 0 0 0>
, <&key_physical_attrs 100 100 300 300 0 0 0>
, <&key_physical_attrs 100 100 400 312 0 0 0>
, <&key_physical_attrs 100 100 500 325 0 0 0>
, <&key_physical_attrs 100 100 1250 325 0 0 0>
, <&key_physical_attrs 100 100 1350 312 0 0 0>
, <&key_physical_attrs 100 100 1450 300 0 0 0>
, <&key_physical_attrs 100 100 1550 312 0 0 0>
, <&key_physical_attrs 100 100 1650 338 0 0 0>
, <&key_physical_attrs 100 100 1750 338 0 0 0>
, <&key_physical_attrs 100 100 0 438 0 0 0>
, <&key_physical_attrs 100 100 100 438 0 0 0>
, <&key_physical_attrs 100 100 200 412 0 0 0>
, <&key_physical_attrs 100 100 300 400 0 0 0>
, <&key_physical_attrs 100 100 500 500 0 0 0>
, <&key_physical_attrs 100 200 600 400 0 0 0>
, <&key_physical_attrs 100 200 1150 400 0 0 0>
, <&key_physical_attrs 100 100 1250 500 0 0 0>
, <&key_physical_attrs 100 100 1450 400 0 0 0>
, <&key_physical_attrs 100 100 1550 412 0 0 0>
, <&key_physical_attrs 100 100 1650 438 0 0 0>
, <&key_physical_attrs 100 100 1750 438 0 0 0>
;
};
};

View File

@ -9,27 +9,99 @@
/ {
chosen {
zmk,kscan = &kscan0;
zmk,matrix-transform = &default_transform;
};
// NOTE: Thumb cluster electrical connections:
// Bellow you can find physical key positions as well as their
// corresponding switch numbers (SWxx) based on the rev 1.2 schema
//
// | SW28 1u --> SW39 1u | row 3 col 6 (this means you need to use at least one 2u key on the thumb cluster)
// | SW36 2u | SW41 2u | SW36 + SW35 are connected to row 4 col 5
// | V | V | SW41 + SW40 is connected to row 4 col 6
// | SW35 1u | SW40 1u |
//
// 4key thumb cluster layout transform
default_transform: keymap_transform_0 {
compatible = "zmk,matrix-transform";
columns = <14>;
rows = <5>;
// Numbering based on rev 1.2 schema
// * keys that can be in different positions are denoted as MW
// * MW40 can be broken off
// | SW1 | SW5 | SW9 | SW13 | SW17 | SW21 | SW25 | | | | SW25 | SW21 | SW17 | SW13 | SW9 | SW5 | SW1 |
// | SW2 | SW6 | SW10 | SW14 | SW18 | SW22 | SW26 | | | | SW26 | SW22 | SW18 | SW14 | SW10 | SW6 | SW2 |
// | SW3 | SW7 | SW11 | SW15 | SW19 | SW23 | SW27 | | | | SW27 | SW23 | SW19 | SW15 | SW11 | SW7 | SW3 |
// | SW4 | SW8 | SW12 | SW16 | SW20 | SW24 | | MW28 | | MW28 | | SW24 | SW20 | SW16 | SW12 | SW8 | SW4 |
// | SW30 | SW31 | SW32 | MW33 | SW34 | | MW35 | MW40 | | MW40 | MW35 | | SW34 | MW33 | SW32 | SW31 | SW30 |
map = <
RC(0,0) RC(0,1) RC(0,2) RC(0,3) RC(0,4) RC(0,5) RC(0,6) RC(0,13) RC(0,12) RC(0,11) RC(0,10) RC(0,9) RC(0,8) RC(0,7)
RC(1,0) RC(1,1) RC(1,2) RC(1,3) RC(1,4) RC(1,5) RC(1,6) RC(1,13) RC(1,12) RC(1,11) RC(1,10) RC(1,9) RC(1,8) RC(1,7)
RC(2,0) RC(2,1) RC(2,2) RC(2,3) RC(2,4) RC(2,5) RC(2,6) RC(2,13) RC(2,12) RC(2,11) RC(2,10) RC(2,9) RC(2,8) RC(2,7)
RC(3,0) RC(3,1) RC(3,2) RC(3,3) RC(3,4) RC(3,5) RC(3,6) RC(3,13) RC(3,12) RC(3,11) RC(3,10) RC(3,9) RC(3,8) RC(3,7)
RC(4,0) RC(4,1) RC(4,2) RC(4,3) RC(4,4) RC(4,5) RC(4,6) RC(4,13) RC(4,12) RC(4,11) RC(4,10) RC(4,9) RC(4,8) RC(4,7)
RC(0,0) RC(0,1) RC(0,2) RC(0,3) RC(0,4) RC(0,5) RC(0,6) RC(0,13) RC(0,12) RC(0,11) RC(0,10) RC(0,9) RC(0,8) RC(0,7)
RC(1,0) RC(1,1) RC(1,2) RC(1,3) RC(1,4) RC(1,5) RC(1,6) RC(1,13) RC(1,12) RC(1,11) RC(1,10) RC(1,9) RC(1,8) RC(1,7)
RC(2,0) RC(2,1) RC(2,2) RC(2,3) RC(2,4) RC(2,5) RC(2,6) RC(2,13) RC(2,12) RC(2,11) RC(2,10) RC(2,9) RC(2,8) RC(2,7)
RC(3,0) RC(3,1) RC(3,2) RC(3,3) RC(3,4) RC(3,5) RC(3,6) RC(3,13) RC(3,12) RC(3,11) RC(3,10) RC(3,9) RC(3,8) RC(3,7)
RC(4,0) RC(4,1) RC(4,2) RC(4,3) RC(4,4) RC(4,5) RC(4,6) RC(4,13) RC(4,12) RC(4,11) RC(4,10) RC(4,9) RC(4,8) RC(4,7)
>;
};
default_transform_3key: keymap_transform_3key {
compatible = "zmk,matrix-transform";
columns = <14>;
rows = <5>;
// Numbering based on rev 1.2 schema
// * keys that can be in different positions are denoted as MW
// | SW1 | SW5 | SW9 | SW13 | SW17 | SW21 | SW25 | | | | SW25 | SW21 | SW17 | SW13 | SW9 | SW5 | SW1 |
// | SW2 | SW6 | SW10 | SW14 | SW18 | SW22 | SW26 | | | | SW26 | SW22 | SW18 | SW14 | SW10 | SW6 | SW2 |
// | SW3 | SW7 | SW11 | SW15 | SW19 | SW23 | SW27 | | | | SW27 | SW23 | SW19 | SW15 | SW11 | SW7 | SW3 |
// | SW4 | SW8 | SW12 | SW16 | SW20 | SW24 | | MW28 | | MW28 | | SW24 | SW20 | SW16 | SW12 | SW8 | SW4 |
// | SW30 | SW31 | SW32 | MW33 | SW34 | | MW35 | | | | MW35 | | SW34 | MW33 | SW32 | SW31 | SW30 |
map = <
RC(0,0) RC(0,1) RC(0,2) RC(0,3) RC(0,4) RC(0,5) RC(0,6) RC(0,13) RC(0,12) RC(0,11) RC(0,10) RC(0,9) RC(0,8) RC(0,7)
RC(1,0) RC(1,1) RC(1,2) RC(1,3) RC(1,4) RC(1,5) RC(1,6) RC(1,13) RC(1,12) RC(1,11) RC(1,10) RC(1,9) RC(1,8) RC(1,7)
RC(2,0) RC(2,1) RC(2,2) RC(2,3) RC(2,4) RC(2,5) RC(2,6) RC(2,13) RC(2,12) RC(2,11) RC(2,10) RC(2,9) RC(2,8) RC(2,7)
RC(3,0) RC(3,1) RC(3,2) RC(3,3) RC(3,4) RC(3,5) RC(3,6) RC(3,13) RC(3,12) RC(3,11) RC(3,10) RC(3,9) RC(3,8) RC(3,7)
RC(4,0) RC(4,1) RC(4,2) RC(4,3) RC(4,4) RC(4,5) RC(4,12) RC(4,11) RC(4,10) RC(4,9) RC(4,8) RC(4,7)
>;
};
// with 2x 2u thumb key
default_transform_3key_alt: keymap_transform_3key_alt {
compatible = "zmk,matrix-transform";
columns = <14>;
rows = <5>;
// Numbering based on rev 1.2 schema
// * keys that can be in different positions are denoted as MW
// | SW1 | SW5 | SW9 | SW13 | SW17 | SW21 | SW25 | | | | SW25 | SW21 | SW17 | SW13 | SW9 | SW5 | SW1 |
// | SW2 | SW6 | SW10 | SW14 | SW18 | SW22 | SW26 | | | | SW26 | SW22 | SW18 | SW14 | SW10 | SW6 | SW2 |
// | SW3 | SW7 | SW11 | SW15 | SW19 | SW23 | SW27 | | | | SW27 | SW23 | SW19 | SW15 | SW11 | SW7 | SW3 |
// | SW4 | SW8 | SW12 | SW16 | SW20 | SW24 | | | | | | SW24 | SW20 | SW16 | SW12 | SW8 | SW4 |
// | SW30 | SW31 | SW32 | MW33 | SW34 | | MW35 | MW40 | | MW40 | MW35 | | SW34 | MW33 | SW32 | SW31 | SW30 |
map = <
RC(0,0) RC(0,1) RC(0,2) RC(0,3) RC(0,4) RC(0,5) RC(0,6) RC(0,13) RC(0,12) RC(0,11) RC(0,10) RC(0,9) RC(0,8) RC(0,7)
RC(1,0) RC(1,1) RC(1,2) RC(1,3) RC(1,4) RC(1,5) RC(1,6) RC(1,13) RC(1,12) RC(1,11) RC(1,10) RC(1,9) RC(1,8) RC(1,7)
RC(2,0) RC(2,1) RC(2,2) RC(2,3) RC(2,4) RC(2,5) RC(2,6) RC(2,13) RC(2,12) RC(2,11) RC(2,10) RC(2,9) RC(2,8) RC(2,7)
RC(3,0) RC(3,1) RC(3,2) RC(3,3) RC(3,4) RC(3,5) RC(3,12) RC(3,11) RC(3,10) RC(3,9) RC(3,8) RC(3,7)
RC(4,0) RC(4,1) RC(4,2) RC(4,3) RC(4,4) RC(4,5) RC(4,6) RC(4,13) RC(4,12) RC(4,11) RC(4,10) RC(4,9) RC(4,8) RC(4,7)
>;
};
default_transform_2key: keymap_transform_2key {
compatible = "zmk,matrix-transform";
columns = <14>;
rows = <5>;
// Numbering based on rev 1.2 schema
// * keys that can be in different positions are denoted as MW
// | SW1 | SW5 | SW9 | SW13 | SW17 | SW21 | SW25 | | | | SW25 | SW21 | SW17 | SW13 | SW9 | SW5 | SW1 |
// | SW2 | SW6 | SW10 | SW14 | SW18 | SW22 | SW26 | | | | SW26 | SW22 | SW18 | SW14 | SW10 | SW6 | SW2 |
// | SW3 | SW7 | SW11 | SW15 | SW19 | SW23 | SW27 | | | | SW27 | SW23 | SW19 | SW15 | SW11 | SW7 | SW3 |
// | SW4 | SW8 | SW12 | SW16 | SW20 | SW24 | | | | | | SW24 | SW20 | SW16 | SW12 | SW8 | SW4 |
// | SW30 | SW31 | SW32 | MW33 | SW34 | | MW35 | | | | MW35 | | SW34 | MW33 | SW32 | SW31 | SW30 |
map = <
RC(0,0) RC(0,1) RC(0,2) RC(0,3) RC(0,4) RC(0,5) RC(0,6) RC(0,13) RC(0,12) RC(0,11) RC(0,10) RC(0,9) RC(0,8) RC(0,7)
RC(1,0) RC(1,1) RC(1,2) RC(1,3) RC(1,4) RC(1,5) RC(1,6) RC(1,13) RC(1,12) RC(1,11) RC(1,10) RC(1,9) RC(1,8) RC(1,7)
RC(2,0) RC(2,1) RC(2,2) RC(2,3) RC(2,4) RC(2,5) RC(2,6) RC(2,13) RC(2,12) RC(2,11) RC(2,10) RC(2,9) RC(2,8) RC(2,7)
RC(3,0) RC(3,1) RC(3,2) RC(3,3) RC(3,4) RC(3,5) RC(3,12) RC(3,11) RC(3,10) RC(3,9) RC(3,8) RC(3,7)
RC(4,0) RC(4,1) RC(4,2) RC(4,3) RC(4,4) RC(4,5) RC(4,12) RC(4,11) RC(4,10) RC(4,9) RC(4,8) RC(4,7)
>;
};

View File

@ -33,11 +33,11 @@
* .----------------------------------------------------------------------------------------------------------------------.
*/
bindings = <
&kp GRAVE &kp N1 &kp N2 &kp N3 &kp N4 &kp N5 &kp LBKT &kp RBKT &kp N6 &kp N7 &kp N8 &kp N9 &kp N0 &kp PSCRN
&kp ESC &kp Q &kp W &kp E &kp R &kp T &kp MINUS &kp EQUAL &kp Y &kp U &kp I &kp O &kp P &kp BSLH
&kp TAB &kp A &kp S &kp D &kp F &kp G &kp DEL &kp BSPC &kp H &kp J &kp K &kp L &kp SEMI &kp SQT
&kp LSHFT &kp Z &kp X &kp C &kp V &kp B &kp END &kp HOME &kp N &kp M &kp COMMA &kp DOT &kp SLASH &kp RSHFT
&kp LCTRL &none &kp PG_DN &kp LMETA &kp LALT &kp SPACE &mo LOWER &mo RAISE &kp RET &kp RALT &none &kp PG_UP &kp INS &kp RCTRL
&kp GRAVE &kp N1 &kp N2 &kp N3 &kp N4 &kp N5 &kp LBKT &kp RBKT &kp N6 &kp N7 &kp N8 &kp N9 &kp N0 &kp PSCRN
&kp ESC &kp Q &kp W &kp E &kp R &kp T &kp MINUS &kp EQUAL &kp Y &kp U &kp I &kp O &kp P &kp BSLH
&kp TAB &kp A &kp S &kp D &kp F &kp G &kp DEL &kp BSPC &kp H &kp J &kp K &kp L &kp SEMI &kp SQT
&kp LSHFT &kp Z &kp X &kp C &kp V &kp B &kp END &kp HOME &kp N &kp M &kp COMMA &kp DOT &kp SLASH &kp RSHFT
&kp LCTRL &studio_unlock &kp PG_DN &kp LMETA &kp LALT &kp SPACE &mo LOWER &mo RAISE &kp RET &kp RALT &none &kp PG_UP &kp INS &kp RCTRL
>;
};
lower_layer {
@ -58,7 +58,7 @@
&kp F11 &kp F1 &kp F2 &kp F3 &kp F4 &kp F5 &none &none &kp F6 &kp F7 &kp F8 &kp F9 &kp F10 &kp F12
&none &none &none &none &none &none &none &none &none &none &none &none &none &none
&none &none &none &none &none &none &none &none &none &none &none &none &none &none
&trans &bootloader &sys_reset &none &none &none &none &none &none &none &none &none &none &trans
&trans &bootloader &sys_reset &none &none &none &none &none &none &none &none &none &none &trans
&trans &none &none &trans &trans &none &trans &trans &none &trans &none &none &none &trans
>;
};
@ -80,7 +80,7 @@
&none &bt BT_SEL 0 &bt BT_SEL 1 &bt BT_SEL 2 &bt BT_SEL 3 &none &bt BT_CLR &none &none &none &none &none &none &none
&none &none &none &none &none &none &none &none &none &none &none &none &none &none
&none &none &none &none &none &none &none &none &none &none &none &none &none &none
&trans &none &none &none &none &none &none &none &none &none &none &bootloader &sys_reset &trans
&trans &none &none &none &none &none &none &none &none &none &none &bootloader &sys_reset &trans
&trans &none &none &trans &trans &none &trans &trans &none &trans &none &none &none &trans
>;
};

View File

@ -6,6 +6,7 @@ url: https://github.com/omkbd/ErgoDash
requires: [pro_micro]
features:
- keys
- studio
siblings:
- ergodash_left
- ergodash_right

View File

@ -4,5 +4,5 @@
* SPDX-License-Identifier: MIT
*/
#include "ergodash-layouts.dtsi"
#include "ergodash.dtsi"

View File

@ -4,6 +4,7 @@
* SPDX-License-Identifier: MIT
*/
#include "ergodash-layouts.dtsi"
#include "ergodash.dtsi"
&default_transform {