feat(shields): Add Studio support to boardsource3x4 (#3154)

* feat(shields): Add Studio support to boardsource3x4

* rename default transform

* add position maps
This commit is contained in:
snoyer
2025-12-28 12:32:42 +04:00
committed by GitHub
parent a9e0befcb6
commit 40e06f3c00
4 changed files with 107 additions and 3 deletions

View File

@@ -0,0 +1,70 @@
/*
* Copyright (c) 2025 The ZMK Contributors
*
* SPDX-License-Identifier: MIT
*/
#include <physical_layouts.dtsi>
/ {
horizontal_physical_layout: horizontal_physical_layout {
compatible = "zmk,physical-layout";
display-name = "Horizontal Layout";
keys
= <&key_physical_attrs 100 100 0 0 0 0 0>
, <&key_physical_attrs 100 100 100 0 0 0 0>
, <&key_physical_attrs 100 100 200 0 0 0 0>
, <&key_physical_attrs 100 100 300 0 0 0 0>
, <&key_physical_attrs 100 100 0 100 0 0 0>
, <&key_physical_attrs 100 100 100 100 0 0 0>
, <&key_physical_attrs 100 100 200 100 0 0 0>
, <&key_physical_attrs 100 100 300 100 0 0 0>
, <&key_physical_attrs 100 100 0 200 0 0 0>
, <&key_physical_attrs 100 100 100 200 0 0 0>
, <&key_physical_attrs 100 100 200 200 0 0 0>
, <&key_physical_attrs 100 100 300 200 0 0 0>
;
};
vertical_physical_layout: vertical_physical_layout {
compatible = "zmk,physical-layout";
display-name = "Vertical Layout";
keys
= <&key_physical_attrs 100 100 0 0 0 0 0>
, <&key_physical_attrs 100 100 100 0 0 0 0>
, <&key_physical_attrs 100 100 200 0 0 0 0>
, <&key_physical_attrs 100 100 0 100 0 0 0>
, <&key_physical_attrs 100 100 100 100 0 0 0>
, <&key_physical_attrs 100 100 200 100 0 0 0>
, <&key_physical_attrs 100 100 0 200 0 0 0>
, <&key_physical_attrs 100 100 100 200 0 0 0>
, <&key_physical_attrs 100 100 200 200 0 0 0>
, <&key_physical_attrs 100 100 0 300 0 0 0>
, <&key_physical_attrs 100 100 100 300 0 0 0>
, <&key_physical_attrs 100 100 200 300 0 0 0>
;
};
position_map {
compatible = "zmk,physical-layout-position-map";
horizontal_map: horizontal {
// A 7 8 9
// B 4 5 6
// C 1 2 3
physical-layout = <&horizontal_physical_layout>;
positions = </* 0 */ 1 2 3 4 5 6 7 8 /* 9 10 11 */>;
};
vertical_map: verctical {
// A B C
// 7 8 9
// 4 5 6
// 1 2 3
physical-layout = <&vertical_physical_layout>;
positions = </* 0 */ 3 4 5 1 6 7 8 2 /* 9 10 11 */>;
};
};
};