diff --git a/app/boards/arm/bdn9/bdn9_rev2.dts b/app/boards/arm/bdn9/bdn9_rev2.dts index 43854a16..715b8b21 100644 --- a/app/boards/arm/bdn9/bdn9_rev2.dts +++ b/app/boards/arm/bdn9/bdn9_rev2.dts @@ -6,6 +6,7 @@ /dts-v1/; #include +#include / { model = "Keeb.io BDN9 rev2"; @@ -17,24 +18,24 @@ zmk,kscan = &kscan; /* TODO: Enable once the GPIO bitbanging driver supports STM32 zmk,underglow = &led_strip; - */ + */ }; - + kscan: kscan { compatible = "zmk,kscan-gpio-direct"; label = "KSCAN"; input-gpios - = <&gpiob 12 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)> - , <&gpiob 5 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)> - , <&gpiob 6 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)> - , <&gpiob 14 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)> - , <&gpiob 4 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)> - , <&gpiob 7 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)> - , <&gpioa 3 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)> - , <&gpiof 1 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)> - , <&gpiof 0 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)> - ; + = <&gpiob 12 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)> + , <&gpiob 5 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)> + , <&gpiob 6 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)> + , <&gpiob 14 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)> + , <&gpiob 4 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)> + , <&gpiob 7 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)> + , <&gpioa 3 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)> + , <&gpiof 1 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)> + , <&gpiof 0 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)> + ; }; /* @@ -46,7 +47,7 @@ chain-length = <9>; }; - */ + */ left_encoder: encoder_left { compatible = "alps,ec11"; @@ -91,7 +92,7 @@ &flash0 { /* * For more information, see: - * http://docs.zephyrproject.org/latest/guides/dts/index.html#flash-partitions + * http: //docs.zephyrproject.org/latest/guides/dts/index.html#flash-partitions */ partitions { compatible = "fixed-partitions"; diff --git a/app/boards/arm/nice60/nice60.dts b/app/boards/arm/nice60/nice60.dts index f50f94a3..7bdd4b2f 100644 --- a/app/boards/arm/nice60/nice60.dts +++ b/app/boards/arm/nice60/nice60.dts @@ -6,6 +6,8 @@ /dts-v1/; #include +#include + #include / { @@ -26,11 +28,11 @@ columns = <14>; 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,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,13) -RC(4,0) RC(4,1) RC(4,2) RC(4,5) RC(4,9) RC(4,10) RC(4,11) RC(4,13) + 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,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,13) + RC(4,0) RC(4,1) RC(4,2) RC(4,5) RC(4,9) RC(4,10) RC(4,11) RC(4,13) >; }; @@ -40,28 +42,28 @@ RC(4,0) RC(4,1) RC(4,2) RC(4,5) R diode-direction = "col2row"; row-gpios - = <&gpio1 14 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)> - , <&gpio1 13 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)> - , <&gpio1 12 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)> - , <&gpio1 11 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)> - , <&gpio1 10 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)> - ; + = <&gpio1 14 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)> + , <&gpio1 13 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)> + , <&gpio1 12 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)> + , <&gpio1 11 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)> + , <&gpio1 10 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)> + ; col-gpios - = <&gpio1 15 GPIO_ACTIVE_HIGH> - , <&gpio0 29 GPIO_ACTIVE_HIGH> - , <&gpio0 31 GPIO_ACTIVE_HIGH> - , <&gpio0 30 GPIO_ACTIVE_HIGH> - , <&gpio0 28 GPIO_ACTIVE_HIGH> - , <&gpio0 2 GPIO_ACTIVE_HIGH> - , <&gpio0 3 GPIO_ACTIVE_HIGH> - , <&gpio1 3 GPIO_ACTIVE_HIGH> - , <&gpio1 7 GPIO_ACTIVE_HIGH> - , <&gpio1 4 GPIO_ACTIVE_HIGH> - , <&gpio1 6 GPIO_ACTIVE_HIGH> - , <&gpio1 5 GPIO_ACTIVE_HIGH> - , <&gpio1 1 GPIO_ACTIVE_HIGH> - , <&gpio1 2 GPIO_ACTIVE_HIGH> - ; + = <&gpio1 15 GPIO_ACTIVE_HIGH> + , <&gpio0 29 GPIO_ACTIVE_HIGH> + , <&gpio0 31 GPIO_ACTIVE_HIGH> + , <&gpio0 30 GPIO_ACTIVE_HIGH> + , <&gpio0 28 GPIO_ACTIVE_HIGH> + , <&gpio0 2 GPIO_ACTIVE_HIGH> + , <&gpio0 3 GPIO_ACTIVE_HIGH> + , <&gpio1 3 GPIO_ACTIVE_HIGH> + , <&gpio1 7 GPIO_ACTIVE_HIGH> + , <&gpio1 4 GPIO_ACTIVE_HIGH> + , <&gpio1 6 GPIO_ACTIVE_HIGH> + , <&gpio1 5 GPIO_ACTIVE_HIGH> + , <&gpio1 1 GPIO_ACTIVE_HIGH> + , <&gpio1 2 GPIO_ACTIVE_HIGH> + ; }; leds { @@ -123,6 +125,9 @@ RC(4,0) RC(4,1) RC(4,2) RC(4,5) R chain-length = <12>; /* LED strip length */ spi-one-frame = <0x70>; spi-zero-frame = <0x40>; + color-mapping = ; }; }; @@ -133,7 +138,7 @@ RC(4,0) RC(4,1) RC(4,2) RC(4,5) R &flash0 { /* * For more information, see: - * http://docs.zephyrproject.org/latest/devices/dts/flash_partitions.html + * http: //docs.zephyrproject.org/latest/devices/dts/flash_partitions.html */ partitions { compatible = "fixed-partitions"; diff --git a/app/boards/shields/corne/boards/nice_nano.overlay b/app/boards/shields/corne/boards/nice_nano.overlay index 83ebae04..32e4e393 100644 --- a/app/boards/shields/corne/boards/nice_nano.overlay +++ b/app/boards/shields/corne/boards/nice_nano.overlay @@ -1,3 +1,5 @@ +#include + &spi1 { compatible = "nordic,nrf-spim"; /* Cannot be used together with i2c0. */ @@ -19,6 +21,9 @@ chain-length = <6>; /* There are per-key RGB, but the first 6 are underglow */ spi-one-frame = <0x70>; spi-zero-frame = <0x40>; + color-mapping = ; }; }; diff --git a/app/boards/shields/helix/boards/nice_nano.overlay b/app/boards/shields/helix/boards/nice_nano.overlay index 78576d13..322fba18 100644 --- a/app/boards/shields/helix/boards/nice_nano.overlay +++ b/app/boards/shields/helix/boards/nice_nano.overlay @@ -4,6 +4,8 @@ * SPDX-License-Identifier: MIT */ +#include + &spi1 { compatible = "nordic,nrf-spim"; status = "okay"; @@ -24,6 +26,9 @@ chain-length = <32>; /* number of LEDs */ spi-one-frame = <0x70>; spi-zero-frame = <0x40>; + color-mapping = ; }; }; diff --git a/app/boards/shields/jorne/boards/nice_nano.overlay b/app/boards/shields/jorne/boards/nice_nano.overlay index 03b868ce..36694fb3 100644 --- a/app/boards/shields/jorne/boards/nice_nano.overlay +++ b/app/boards/shields/jorne/boards/nice_nano.overlay @@ -1,3 +1,5 @@ +#include + &spi1 { compatible = "nordic,nrf-spim"; /* Cannot be used together with i2c0. */ @@ -19,6 +21,9 @@ chain-length = <6>; /* There are per-key RGB, but the first 6 are underglow */ spi-one-frame = <0x70>; spi-zero-frame = <0x40>; + color-mapping = ; }; }; diff --git a/app/boards/shields/kyria/boards/nice_nano.overlay b/app/boards/shields/kyria/boards/nice_nano.overlay index 8be964b5..62d0653a 100644 --- a/app/boards/shields/kyria/boards/nice_nano.overlay +++ b/app/boards/shields/kyria/boards/nice_nano.overlay @@ -1,3 +1,5 @@ +#include + &spi1 { compatible = "nordic,nrf-spim"; status = "okay"; @@ -18,6 +20,9 @@ chain-length = <10>; /* arbitrary; change at will */ spi-one-frame = <0x70>; spi-zero-frame = <0x40>; + color-mapping = ; }; }; diff --git a/app/boards/shields/kyria/boards/nrfmicro_11.overlay b/app/boards/shields/kyria/boards/nrfmicro_11.overlay index b88573b6..288c5099 100644 --- a/app/boards/shields/kyria/boards/nrfmicro_11.overlay +++ b/app/boards/shields/kyria/boards/nrfmicro_11.overlay @@ -1,3 +1,5 @@ +#include + &spi1 { compatible = "nordic,nrf-spim"; status = "okay"; @@ -18,6 +20,9 @@ chain-length = <10>; /* arbitrary; change at will */ spi-one-frame = <0x70>; spi-zero-frame = <0x40>; + color-mapping = ; }; }; diff --git a/app/boards/shields/kyria/boards/nrfmicro_11_flipped.overlay b/app/boards/shields/kyria/boards/nrfmicro_11_flipped.overlay index c6a24665..fe6951b0 100644 --- a/app/boards/shields/kyria/boards/nrfmicro_11_flipped.overlay +++ b/app/boards/shields/kyria/boards/nrfmicro_11_flipped.overlay @@ -1,3 +1,5 @@ +#include + &spi1 { compatible = "nordic,nrf-spim"; status = "okay"; @@ -18,6 +20,9 @@ chain-length = <10>; /* arbitrary; change at will */ spi-one-frame = <0x70>; spi-zero-frame = <0x40>; + color-mapping = ; }; }; diff --git a/app/boards/shields/kyria/boards/nrfmicro_13.overlay b/app/boards/shields/kyria/boards/nrfmicro_13.overlay index c6a24665..fe6951b0 100644 --- a/app/boards/shields/kyria/boards/nrfmicro_13.overlay +++ b/app/boards/shields/kyria/boards/nrfmicro_13.overlay @@ -1,3 +1,5 @@ +#include + &spi1 { compatible = "nordic,nrf-spim"; status = "okay"; @@ -18,6 +20,9 @@ chain-length = <10>; /* arbitrary; change at will */ spi-one-frame = <0x70>; spi-zero-frame = <0x40>; + color-mapping = ; }; }; diff --git a/app/boards/shields/lily58/boards/nice_nano.overlay b/app/boards/shields/lily58/boards/nice_nano.overlay index 0d28726d..c1e88a4f 100644 --- a/app/boards/shields/lily58/boards/nice_nano.overlay +++ b/app/boards/shields/lily58/boards/nice_nano.overlay @@ -4,6 +4,8 @@ * SPDX-License-Identifier: MIT */ +#include + &spi1 { compatible = "nordic,nrf-spim"; status = "okay"; @@ -24,6 +26,9 @@ chain-length = <5>; /* number of LEDs */ spi-one-frame = <0x70>; spi-zero-frame = <0x40>; + color-mapping = ; }; }; diff --git a/app/boards/shields/microdox/boards/nice_nano.overlay b/app/boards/shields/microdox/boards/nice_nano.overlay index 1b84b6b5..a4f07b11 100644 --- a/app/boards/shields/microdox/boards/nice_nano.overlay +++ b/app/boards/shields/microdox/boards/nice_nano.overlay @@ -3,6 +3,9 @@ * * SPDX-License-Identifier: MIT */ + +#include + &spi1 { compatible = "nordic,nrf-spim"; /* Cannot be used together with i2c0. */ @@ -24,6 +27,9 @@ chain-length = <6>; /* There are per-key RGB, but the first 6 are underglow */ spi-one-frame = <0x70>; spi-zero-frame = <0x40>; + color-mapping = ; }; }; diff --git a/app/boards/shields/nibble/boards/nice_nano.overlay b/app/boards/shields/nibble/boards/nice_nano.overlay index 8da95ac1..d48a74fc 100644 --- a/app/boards/shields/nibble/boards/nice_nano.overlay +++ b/app/boards/shields/nibble/boards/nice_nano.overlay @@ -4,6 +4,8 @@ * SPDX-License-Identifier: MIT */ +#include + &spi1 { compatible = "nordic,nrf-spim"; status = "okay"; @@ -24,6 +26,9 @@ chain-length = <10>; /* number of LEDs */ spi-one-frame = <0x70>; spi-zero-frame = <0x40>; + color-mapping = ; }; }; diff --git a/app/boards/shields/reviung41/boards/nice_nano.overlay b/app/boards/shields/reviung41/boards/nice_nano.overlay index b6c89e80..a3dd055c 100644 --- a/app/boards/shields/reviung41/boards/nice_nano.overlay +++ b/app/boards/shields/reviung41/boards/nice_nano.overlay @@ -1,3 +1,5 @@ +#include + &spi1 { compatible = "nordic,nrf-spim"; status = "okay"; @@ -18,6 +20,9 @@ chain-length = <11>; /* arbitrary; change at will */ spi-one-frame = <0x70>; spi-zero-frame = <0x40>; + color-mapping = ; }; }; diff --git a/app/boards/shields/romac_plus/boards/nice_nano.overlay b/app/boards/shields/romac_plus/boards/nice_nano.overlay index 17d11927..4b169a08 100644 --- a/app/boards/shields/romac_plus/boards/nice_nano.overlay +++ b/app/boards/shields/romac_plus/boards/nice_nano.overlay @@ -1,3 +1,5 @@ +#include + &spi1 { compatible = "nordic,nrf-spim"; status = "okay"; @@ -18,6 +20,9 @@ chain-length = <10>; /* arbitrary; change at will */ spi-one-frame = <0x70>; spi-zero-frame = <0x40>; + color-mapping = ; }; }; diff --git a/app/boards/shields/tg4x/boards/nice_nano.overlay b/app/boards/shields/tg4x/boards/nice_nano.overlay index 60492bec..8f1b5ac6 100644 --- a/app/boards/shields/tg4x/boards/nice_nano.overlay +++ b/app/boards/shields/tg4x/boards/nice_nano.overlay @@ -4,6 +4,8 @@ * SPDX-License-Identifier: MIT */ +#include + &spi1 { compatible = "nordic,nrf-spim"; status = "okay"; @@ -24,6 +26,9 @@ chain-length = <7>; /* number of LEDs */ spi-one-frame = <0x70>; spi-zero-frame = <0x40>; + color-mapping = ; }; }; diff --git a/app/boards/shields/tidbit/boards/nice_nano.overlay b/app/boards/shields/tidbit/boards/nice_nano.overlay index 762a7403..3e6aad1d 100644 --- a/app/boards/shields/tidbit/boards/nice_nano.overlay +++ b/app/boards/shields/tidbit/boards/nice_nano.overlay @@ -4,6 +4,8 @@ * SPDX-License-Identifier: MIT */ +#include + &spi1 { compatible = "nordic,nrf-spim"; status = "okay"; @@ -24,6 +26,9 @@ chain-length = <8>; /* number of LEDs */ spi-one-frame = <0x70>; spi-zero-frame = <0x40>; + color-mapping = ; }; }; diff --git a/docs/docs/features/underglow.md b/docs/docs/features/underglow.md index a093ecac..e949efdf 100644 --- a/docs/docs/features/underglow.md +++ b/docs/docs/features/underglow.md @@ -67,6 +67,8 @@ To identify which pin number you need to put in the config you need do to a bit Here's an example on a definition that uses P0.06: ``` +#include + &spi1 { compatible = "nordic,nrf-spim"; status = "okay"; @@ -87,6 +89,9 @@ Here's an example on a definition that uses P0.06: chain-length = <10>; /* number of LEDs */ spi-one-frame = <0x70>; spi-zero-frame = <0x40>; + color-mapping = ; }; }; ``` @@ -105,6 +110,8 @@ For other boards, you must select an SPI definition that has the `MOSI` pin as y Here's another example for a non-nRF52 board on `spi1`: ``` +#include + &spi1 { led_strip: ws2812@0 { @@ -119,6 +126,9 @@ Here's another example for a non-nRF52 board on `spi1`: chain-length = <10>; /* number of LEDs */ spi-one-frame = <0x70>; /* make sure to configure this properly for your SOC */ spi-zero-frame = <0x40>; /* make sure to configure this properly for your SOC */ + color-mapping = ; }; }; ```