Hi,
I'm using nrf Connect SDK 3.1.0 and want to control three WS2812B LEDs with the LED strip driver. Therefore, I created the devicetree entry similar to the sample:
&spi00 {
status = "okay";
compatible = "nordic,nrf-spim";
pinctrl-0 = <&spi00_default>;
pinctrl-1 = <&spi00_sleep>;
pinctrl-names = "default", "sleep";
led_strip: ws2812@0 {
compatible = "worldsemi,ws2812-spi";
/* SPI */
reg = <0>;
spi-max-frequency = <4000000>;
/* WS2812 */
chain-length = <3>;
color-mapping = <LED_COLOR_ID_GREEN
LED_COLOR_ID_RED
LED_COLOR_ID_BLUE>;
// jedes Bit entspricht bei 4Mhz Übertragungsgeschwindigkeit einer Zeitspanne von 250ns
// Laut Datenblatt wird eine "0" durch min. 400ns an und 850ns aus dargestellt
// Eine "1" wird durch min. 800ns an und 450ns aus dargestellt
spi-zero-frame = <0x40>;
spi-one-frame = <0x70>;
};
};
The MOSI pin is defined here:
spi00_default: spi00_default {
group1 {
psels = <NRF_PSEL_DISCONNECTED(SPIM_MISO)>,
<NRF_PSEL(SPIM_MOSI, 2, 4)>,
<NRF_PSEL_DISCONNECTED(SPIM_SCK)>;
};
};
spi00_sleep: spi00_sleep {
group1 {
psels = <NRF_PSEL_DISCONNECTED(SPIM_SCK)>,
<NRF_PSEL(SPIM_MOSI, 2, 4)>,
<NRF_PSEL_DISCONNECTED(SPIM_MISO)>;
low-power-enable;
};
};
When using led_strip_update_rgb(led_strip, pixels, STRIP_NUM_PIXELS); the LEDs doesn't light up. I already checked the output pin with an oscilloscope and there's no output data on that pin.
Can anyone help me with this issue?
Best regards,
Christian