173 lines
3.6 KiB
Plaintext
173 lines
3.6 KiB
Plaintext
|
/*
|
||
|
* Copyright (c) 2022 Tony Grosinger
|
||
|
*
|
||
|
* SPDX-License-Identifier: MIT
|
||
|
*/
|
||
|
|
||
|
/dts-v1/;
|
||
|
#include <nordic/nrf52840_qiaa.dtsi>
|
||
|
|
||
|
#include <dt-bindings/zmk/matrix_transform.h>
|
||
|
|
||
|
/ {
|
||
|
model = "pseudacris";
|
||
|
compatible = "pseudacris";
|
||
|
|
||
|
chosen {
|
||
|
zephyr,code-partition = &code_partition;
|
||
|
zephyr,sram = &sram0;
|
||
|
zephyr,flash = &flash0;
|
||
|
zephyr,console = &cdc_acm_uart;
|
||
|
zmk,kscan = &kscan0;
|
||
|
zmk,matrix_transform = &default_transform;
|
||
|
};
|
||
|
|
||
|
default_transform: keymap_transform_0 {
|
||
|
compatible = "zmk,matrix-transform";
|
||
|
columns = <10>;
|
||
|
rows = <7>;
|
||
|
map = <
|
||
|
RC(0,0) RC(0,1) RC(0,2) RC(0,3) RC(0,4) RC(3,5) RC(3,6) RC(3,7) RC(3,8) RC(3,9)
|
||
|
RC(1,0) RC(1,1) RC(1,2) RC(1,3) RC(1,4) RC(4,5) RC(4,6) RC(4,7) RC(4,8) RC(4,9)
|
||
|
RC(2,0) RC(2,1) RC(2,2) RC(2,3) RC(2,4) RC(5,5) RC(5,6) RC(5,7) RC(5,8) RC(5,9)
|
||
|
RC(6,2) RC(6,3) RC(6,4) RC(6,5) RC(6,6) RC(6,7)
|
||
|
>;
|
||
|
};
|
||
|
|
||
|
kscan0: kscan {
|
||
|
compatible = "zmk,kscan-gpio-matrix";
|
||
|
label = "KSCAN";
|
||
|
|
||
|
diode-direction = "row2col";
|
||
|
/*
|
||
|
* P0.13 - Left Matrix Top
|
||
|
* P0.22 - Left Matrix Middle
|
||
|
* P1.06 - Left Matrix Bottom
|
||
|
*
|
||
|
* P0.30 - Right Matrix Top
|
||
|
* P0.31 - Right Matrix Middle
|
||
|
* P1.11 - Right Matrix Bottom
|
||
|
*
|
||
|
* P0.10 - Thumbs
|
||
|
*/
|
||
|
row-gpios
|
||
|
= <&gpio0 13 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>
|
||
|
, <&gpio0 22 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>
|
||
|
, <&gpio1 6 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>
|
||
|
|
||
|
, <&gpio0 30 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>
|
||
|
, <&gpio0 31 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>
|
||
|
, <&gpio1 11 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>
|
||
|
|
||
|
, <&gpio0 10 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>
|
||
|
;
|
||
|
|
||
|
|
||
|
/*
|
||
|
* P0.09 - Left Pinky
|
||
|
* P1.04 - Left Ring
|
||
|
* P1.02 - Left Middle
|
||
|
* P1.00 - Left Pointer
|
||
|
* P0.24 - Left Inner
|
||
|
|
||
|
* P0.29 - Right Inner
|
||
|
* P0.02 - Right Pointer
|
||
|
* P1.13 - Right Middle
|
||
|
* P0.28 - Right Ring
|
||
|
* P0.03 - Right Pinky
|
||
|
*/
|
||
|
col-gpios
|
||
|
= <&gpio0 9 GPIO_ACTIVE_HIGH>
|
||
|
, <&gpio1 4 GPIO_ACTIVE_HIGH>
|
||
|
, <&gpio1 2 GPIO_ACTIVE_HIGH>
|
||
|
, <&gpio1 0 GPIO_ACTIVE_HIGH>
|
||
|
, <&gpio0 24 GPIO_ACTIVE_HIGH>
|
||
|
|
||
|
, <&gpio0 29 GPIO_ACTIVE_HIGH>
|
||
|
, <&gpio0 2 GPIO_ACTIVE_HIGH>
|
||
|
, <&gpio1 13 GPIO_ACTIVE_HIGH>
|
||
|
, <&gpio0 28 GPIO_ACTIVE_HIGH>
|
||
|
, <&gpio0 3 GPIO_ACTIVE_HIGH>
|
||
|
;
|
||
|
};
|
||
|
|
||
|
ext-power {
|
||
|
compatible = "zmk,ext-power-generic";
|
||
|
label = "EXT_POWER";
|
||
|
control-gpios = <&gpio1 9 GPIO_ACTIVE_HIGH>;
|
||
|
};
|
||
|
};
|
||
|
|
||
|
&gpiote {
|
||
|
status = "okay";
|
||
|
};
|
||
|
|
||
|
&gpio0 {
|
||
|
status = "okay";
|
||
|
};
|
||
|
|
||
|
&gpio1 {
|
||
|
status = "okay";
|
||
|
};
|
||
|
|
||
|
&i2c0 {
|
||
|
compatible = "nordic,nrf-twi";
|
||
|
sda-pin = <15>;
|
||
|
scl-pin = <17>;
|
||
|
};
|
||
|
|
||
|
&uart0 {
|
||
|
compatible = "nordic,nrf-uarte";
|
||
|
tx-pin = <6>;
|
||
|
rx-pin = <8>;
|
||
|
};
|
||
|
|
||
|
&usbd {
|
||
|
status = "okay";
|
||
|
cdc_acm_uart: cdc_acm_uart {
|
||
|
compatible = "zephyr,cdc-acm-uart";
|
||
|
label = "CDC_ACM_0";
|
||
|
};
|
||
|
};
|
||
|
|
||
|
&flash0 {
|
||
|
/*
|
||
|
* For more information, see:
|
||
|
* http://docs.zephyrproject.org/latest/devices/dts/flash_partitions.html
|
||
|
*/
|
||
|
partitions {
|
||
|
compatible = "fixed-partitions";
|
||
|
#address-cells = <1>;
|
||
|
#size-cells = <1>;
|
||
|
|
||
|
sd_partition: partition@0 {
|
||
|
label = "softdevice";
|
||
|
reg = <0x00000000 0x00026000>;
|
||
|
};
|
||
|
|
||
|
code_partition: partition@26000 {
|
||
|
label = "code_partition";
|
||
|
reg = <0x00026000 0x000c6000>;
|
||
|
};
|
||
|
|
||
|
/*
|
||
|
* The flash starting at 0x000ec000 and ending at
|
||
|
* 0x000f3fff is reserved for use by the application.
|
||
|
*/
|
||
|
|
||
|
/*
|
||
|
* Storage partition will be used by FCB/LittleFS/NVS
|
||
|
* if enabled.
|
||
|
*/
|
||
|
storage_partition: partition@ec000 {
|
||
|
label = "storage";
|
||
|
reg = <0x000ec000 0x00008000>;
|
||
|
};
|
||
|
|
||
|
boot_partition: partition@f4000 {
|
||
|
label = "adafruit_boot";
|
||
|
reg = <0x000f4000 0x0000c000>;
|
||
|
};
|
||
|
};
|
||
|
};
|