From 3e4f2a3dc3555be055d1ae6f1ab91c246438008c Mon Sep 17 00:00:00 2001 From: KemoNine Date: Tue, 5 Jan 2021 21:44:47 +0000 Subject: [PATCH] feat(tg4x): Add underglow support for tg4x + nice_nano --- app/boards/shields/tg4x/boards/nice_nano.conf | 7 ++++ .../shields/tg4x/boards/nice_nano.overlay | 34 +++++++++++++++++++ 2 files changed, 41 insertions(+) create mode 100644 app/boards/shields/tg4x/boards/nice_nano.conf create mode 100644 app/boards/shields/tg4x/boards/nice_nano.overlay diff --git a/app/boards/shields/tg4x/boards/nice_nano.conf b/app/boards/shields/tg4x/boards/nice_nano.conf new file mode 100644 index 00000000..7b077948 --- /dev/null +++ b/app/boards/shields/tg4x/boards/nice_nano.conf @@ -0,0 +1,7 @@ +# Copyright (c) 2020 The ZMK Contributors +# SPDX-License-Identifier: MIT + +# Enable underglow +CONFIG_ZMK_RGB_UNDERGLOW=y +# Use the STRIP config specific to the LEDs you're using +CONFIG_WS2812_STRIP=y \ No newline at end of file diff --git a/app/boards/shields/tg4x/boards/nice_nano.overlay b/app/boards/shields/tg4x/boards/nice_nano.overlay new file mode 100644 index 00000000..60492bec --- /dev/null +++ b/app/boards/shields/tg4x/boards/nice_nano.overlay @@ -0,0 +1,34 @@ +/* + * Copyright (c) 2020 The ZMK Contributors + * + * SPDX-License-Identifier: MIT + */ + +&spi1 { + compatible = "nordic,nrf-spim"; + status = "okay"; + mosi-pin = <8>; + // Unused pins, needed for SPI definition, but not used by the ws2812 driver itself. + sck-pin = <5>; + miso-pin = <7>; + + led_strip: ws2812@0 { + compatible = "worldsemi,ws2812-spi"; + label = "WS2812"; + + /* SPI */ + reg = <0>; /* ignored, but necessary for SPI bindings */ + spi-max-frequency = <4000000>; + + /* WS2812 */ + chain-length = <7>; /* number of LEDs */ + spi-one-frame = <0x70>; + spi-zero-frame = <0x40>; + }; +}; + +/ { + chosen { + zmk,underglow = &led_strip; + }; +};