forked from kofal.net/zmk
Removed the combined .dtsi file for each group of common layouts, and split the position map across the files in each group. This makes reading the position maps slightly more difficult, but it aligns the common layouts with the keyboard-specific ones such as foostan/corne.dtsi in that simply including each header adds the layout, with no need to set status = "okay".
122 lines
5.0 KiB
Plaintext
122 lines
5.0 KiB
Plaintext
/*
|
|
* Copyright (c) 2021 Polarity Works
|
|
*
|
|
* SPDX-License-Identifier: MIT
|
|
*/
|
|
|
|
/dts-v1/;
|
|
#include "bt60.dtsi"
|
|
#include <layouts/common/60percent/all1u.dtsi>
|
|
#include <layouts/common/60percent/ansi.dtsi>
|
|
#include <layouts/common/60percent/hhkb.dtsi>
|
|
#include <layouts/common/60percent/iso.dtsi>
|
|
|
|
|
|
/ {
|
|
chosen {
|
|
zmk,kscan = &kscan0;
|
|
zmk,physical-layout = &layout_60_ansi;
|
|
};
|
|
|
|
ansi_transform: keymap_transform_0 {
|
|
compatible = "zmk,matrix-transform";
|
|
columns = <15>;
|
|
rows = <5>;
|
|
map = <
|
|
RC(0,0) RC(0,1) RC(0,2) RC(0,3) RC(0,4) RC(0,5) RC(0,6) RC(0,7) RC(0,8) RC(0,9) RC(0,10) RC(0,11) RC(0,12) RC(0,13)
|
|
RC(1,0) RC(1,1) RC(1,2) RC(1,3) RC(1,4) RC(1,5) RC(1,6) RC(1,7) RC(1,8) RC(1,9) RC(1,10) RC(1,11) RC(1,12) RC(1,13)
|
|
RC(2,0) RC(2,1) RC(2,2) RC(2,3) RC(2,4) RC(2,5) RC(2,6) RC(2,7) RC(2,8) RC(2,9) RC(2,10) RC(2,11) RC(2,13)
|
|
RC(3,0) RC(3,2) RC(3,3) RC(3,4) RC(3,5) RC(3,6) RC(3,7) RC(3,8) RC(3,9) RC(3,10) RC(3,11) RC(3,12)
|
|
RC(4,0) RC(4,1) RC(4,2) RC(4,6) RC(4,10) RC(4,11) RC(4,12) RC(4,13) RC(4,14)
|
|
>;
|
|
};
|
|
|
|
hhkb_transform: keymap_transform_1 {
|
|
compatible = "zmk,matrix-transform";
|
|
columns = <15>;
|
|
rows = <5>;
|
|
map = <
|
|
RC(0,0) RC(0,1) RC(0,2) RC(0,3) RC(0,4) RC(0,5) RC(0,6) RC(0,7) RC(0,8) RC(0,9) RC(0,10) RC(0,11) RC(0,12) RC(0,13) RC(0,14)
|
|
RC(1,0) RC(1,1) RC(1,2) RC(1,3) RC(1,4) RC(1,5) RC(1,6) RC(1,7) RC(1,8) RC(1,9) RC(1,10) RC(1,11) RC(1,12) RC(1,13)
|
|
RC(2,0) RC(2,1) RC(2,2) RC(2,3) RC(2,4) RC(2,5) RC(2,6) RC(2,7) RC(2,8) RC(2,9) RC(2,10) RC(2,11) RC(2,13)
|
|
RC(3,0) RC(3,2) RC(3,3) RC(3,4) RC(3,5) RC(3,6) RC(3,7) RC(3,8) RC(3,9) RC(3,10) RC(3,11) RC(3,12) RC(3,14)
|
|
RC(4,0) RC(4,1) RC(4,2) RC(4,6) RC(4,10) RC(4,11) RC(4,12) RC(4,13)
|
|
>;
|
|
};
|
|
|
|
iso_transform: keymap_transform_2 {
|
|
compatible = "zmk,matrix-transform";
|
|
columns = <15>;
|
|
rows = <5>;
|
|
map = <
|
|
RC(0,0) RC(0,1) RC(0,2) RC(0,3) RC(0,4) RC(0,5) RC(0,6) RC(0,7) RC(0,8) RC(0,9) RC(0,10) RC(0,11) RC(0,12) RC(0,13)
|
|
RC(1,0) RC(1,1) RC(1,2) RC(1,3) RC(1,4) RC(1,5) RC(1,6) RC(1,7) RC(1,8) RC(1,9) RC(1,10) RC(1,11) RC(1,12)
|
|
RC(2,0) RC(2,1) RC(2,2) RC(2,3) RC(2,4) RC(2,5) RC(2,6) RC(2,7) RC(2,8) RC(2,9) RC(2,10) RC(2,11) RC(2,12) RC(2,13)
|
|
RC(3,0) RC(3,1) RC(3,2) RC(3,3) RC(3,4) RC(3,5) RC(3,6) RC(3,7) RC(3,8) RC(3,9) RC(3,10) RC(3,11) RC(3,12)
|
|
RC(4,0) RC(4,1) RC(4,2) RC(4,6) RC(4,10) RC(4,11) RC(4,12) RC(4,13)
|
|
>;
|
|
};
|
|
|
|
all_1u_transform: keymap_transform_3 {
|
|
compatible = "zmk,matrix-transform";
|
|
columns = <15>;
|
|
rows = <5>;
|
|
map = <
|
|
RC(0,0) RC(0,1) RC(0,2) RC(0,3) RC(0,4) RC(0,5) RC(0,6) RC(0,7) RC(0,8) RC(0,9) RC(0,10) RC(0,11) RC(0,12) RC(0,13)
|
|
RC(1,0) RC(1,1) RC(1,2) RC(1,3) RC(1,4) RC(1,5) RC(1,6) RC(1,7) RC(1,8) RC(1,9) RC(1,10) RC(1,11) RC(1,12) RC(1,13)
|
|
RC(2,0) RC(2,1) RC(2,2) RC(2,3) RC(2,4) RC(2,5) RC(2,6) RC(2,7) RC(2,8) RC(2,9) RC(2,10) RC(2,11) RC(2,13)
|
|
RC(3,0) RC(3,2) RC(3,3) RC(3,4) RC(3,5) RC(3,6) RC(3,7) RC(3,8) RC(3,9) RC(3,10) RC(3,11) RC(3,12) RC(3,13) RC(3,14)
|
|
RC(4,0) RC(4,1) RC(4,2) RC(4,6) RC(4,10) RC(4,11) RC(4,12) RC(4,13) RC(4,14)
|
|
>;
|
|
};
|
|
|
|
kscan0: kscan_0 {
|
|
compatible = "zmk,kscan-gpio-matrix";
|
|
wakeup-source;
|
|
|
|
diode-direction = "col2row";
|
|
|
|
col-gpios
|
|
= <&gpio1 13 GPIO_ACTIVE_HIGH>
|
|
, <&gpio1 10 GPIO_ACTIVE_HIGH>
|
|
, <&gpio1 11 GPIO_ACTIVE_HIGH>
|
|
, <&gpio1 15 GPIO_ACTIVE_HIGH>
|
|
, <&gpio0 3 GPIO_ACTIVE_HIGH>
|
|
, <&gpio0 2 GPIO_ACTIVE_HIGH>
|
|
, <&gpio0 28 GPIO_ACTIVE_HIGH>
|
|
, <&gpio0 29 GPIO_ACTIVE_HIGH>
|
|
, <&gpio0 30 GPIO_ACTIVE_HIGH>
|
|
, <&gpio0 31 GPIO_ACTIVE_HIGH>
|
|
, <&gpio0 5 GPIO_ACTIVE_HIGH>
|
|
, <&gpio0 7 GPIO_ACTIVE_HIGH>
|
|
, <&gpio1 9 GPIO_ACTIVE_HIGH>
|
|
, <&gpio0 12 GPIO_ACTIVE_HIGH>
|
|
, <&gpio0 23 GPIO_ACTIVE_HIGH>
|
|
;
|
|
|
|
row-gpios
|
|
= <&gpio1 0 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>
|
|
, <&gpio0 22 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>
|
|
, <&gpio0 19 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>
|
|
, <&gpio0 21 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>
|
|
, <&gpio1 2 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>
|
|
;
|
|
};
|
|
};
|
|
|
|
&layout_60_ansi {
|
|
transform = <&ansi_transform>;
|
|
};
|
|
|
|
&layout_60_iso {
|
|
transform = <&iso_transform>;
|
|
};
|
|
|
|
&layout_60_all1u {
|
|
transform = <&all_1u_transform>;
|
|
};
|
|
|
|
&layout_60_hhkb {
|
|
transform = <&hhkb_transform>;
|
|
};
|