Dear,
I recently upgraded my project from NCS 2.4.0 to NCS 2.9.0 and encountered an issue with the ST7789V display driver.
Previously, I used SPI0 to interface with the ST7789V display, and the configuration in my device tree worked fine. However, after upgrading to NCS 2.9.0, I noticed that the driver type for ST7789V has changed to MIPI-DBI, and my previous device tree configuration is no longer applicable.
I have reviewed the nRF Connect SDK documentation, but I could not find any clear guidance on how to correctly configure MIPI-DBI for ST7789V in the new version. Below is my previous device tree configuration that worked in NCS 2.4.0:
&spi0 { st7789v@0 { compatible = "sitronix,st7789v"; reg = <0x0>; cmd-data-gpios = <&gpio0 31 GPIO_ACTIVE_LOW>; label = "ST7789V"; status = "okay"; spi-max-frequency = <2000000>; width = <240>; height = <280>; x-offset = <0>; y-offset = <20>; vcom = <0x32>; gctrl = <0x35>; vrhs = <0x15>; mdac = <0x00>; gamma = <0x01>; colmod = <0x55>; lcm = <0x2c>; porch-param = [0c 0c 00 33 33]; cmd2en-param = [5a 69 02 01]; pwctrl1-param = [a4 a1]; pvgam-param = [d0 08 0e 09 09 05 31 33 48 17 14 15 31 34]; nvgam-param = [d0 08 0e 09 09 15 31 33 48 17 14 15 31 34]; ram-param = [00 f8]; rgb-param = [cd 08 14]; vdvs = <0x20>; reset-gpios = <&gpio0 28 GPIO_ACTIVE_LOW>; supply-gpios = <&gpio0 29 GPIO_ACTIVE_LOW>; }; status = "okay"; cs-gpios = <&gpio0 30 GPIO_ACTIVE_LOW>; }; &spi0_default { group1 { psels = <NRF_PSEL(SPIM_SCK, 0, 3)>, <NRF_PSEL(SPIM_MOSI, 0, 4)>; }; }; / { chosen { zephyr,display = &{/soc/spi@40003000/st7789v@0/}; }; };
Could you please advise on:
- How to correctly configure the device tree for ST7789V using MIPI-DBI in NCS 2.9.0?
- Are there any specific changes in the SPI or display subsystem that I need to consider?
- Is there an example or reference documentation available for migrating from the old driver to the new one?
I appreciate your support and look forward to your guidance.
Best regards,
emmovo