Using LVGL with 3-Wire SPI controller


Hello, Ive got my hands on display controller with 3-Wire SPI interface and wondering if this requires a lot of modifications to make it work with LVGL or does this all apply on how I decide to implement the display drivers?

What MCU/Processor/Board and compiler are you using?

STM32L4 series, ST7735

What LVGL version are you using?


What do you want to achieve?

Using the LVGL suite with 3 -Wire SPI display

What have you tried so far?

Only used LVGL together with a previous 4-Wire display controller which wont be used

The controller also supports 8-bit parallel, so should I stick with the 3-wire or go for 8-bit parallel. Which would be less hassle with lvgl

For lvgl it doesn’t matter whether you use 8-bit parallel or SPI interface.
All the transmission has do be done in the flush call back function.
It’s just your decision. It depends on how many interface lines you will spend, and how is the performance SPI against 8-bit parallel.

LVGL doesn’t require a MOSI pin to function. You need to write the driver and setting/rounding callbacks yourself, so AFAIK your display’s comm protocol and driver IC shouldn’t matter much. You may be able to use this as a reference for the driver code, but if you want to get a prototype up and running quickly you can try Zephyr’s display sample. It should work more or less out-of-the-box, assuming your board is supported on Zephyr.