Skip to content

Commit e5b138d

Browse files
JianyuWang0623Alan C. Assis
authored andcommitted
boards/szpi-esp32s3: Enable touchscreen for LVGL
1. Rotate the video screen 90 degrees right. 2. Enable touchscreen for the LVGL configuration "lckfb-szpi-esp32s3:lvgl" and add lvgldemo autostart. Signed-off-by: wangjianyu3 <[email protected]>
1 parent 5671765 commit e5b138d

File tree

4 files changed

+51
-0
lines changed

4 files changed

+51
-0
lines changed

boards/xtensa/esp32s3/lckfb-szpi-esp32s3/Kconfig

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,4 +5,22 @@
55

66
if ARCH_BOARD_ESP32S3_LCKFB_SZPI
77

8+
config ARCH_BOARD_ESP32S3_LCKFB_SZPI_DISPLAY_XRES
9+
int
10+
default LCD_ST7789_XRES
11+
depends on LCD_ST7789
12+
13+
config ARCH_BOARD_ESP32S3_LCKFB_SZPI_DISPLAY_YRES
14+
int
15+
default LCD_ST7789_YRES
16+
depends on LCD_ST7789
17+
18+
config ARCH_BOARD_ESP32S3_LCKFB_SZPI_TOUCHSCREEN_MIRRORY
19+
bool "SZPI-ESP32-S3 Touchscreen mirror Y"
20+
depends on INPUT_TOUCHSCREEN
21+
22+
config ARCH_BOARD_ESP32S3_LCKFB_SZPI_TOUCHSCREEN_SWAPXY
23+
bool "SZPI-ESP32-S3 Touchscreen sway X/Y"
24+
depends on INPUT_TOUCHSCREEN
25+
826
endif # ARCH_BOARD_ESP32S3_LCKFB_SZPI

boards/xtensa/esp32s3/lckfb-szpi-esp32s3/configs/lvgl/defconfig

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,8 @@ CONFIG_ARCH="xtensa"
1313
CONFIG_ARCH_BOARD="lckfb-szpi-esp32s3"
1414
CONFIG_ARCH_BOARD_COMMON=y
1515
CONFIG_ARCH_BOARD_ESP32S3_LCKFB_SZPI=y
16+
CONFIG_ARCH_BOARD_ESP32S3_LCKFB_SZPI_TOUCHSCREEN_MIRRORY=y
17+
CONFIG_ARCH_BOARD_ESP32S3_LCKFB_SZPI_TOUCHSCREEN_SWAPXY=y
1618
CONFIG_ARCH_CHIP="esp32s3"
1719
CONFIG_ARCH_CHIP_ESP32S3=y
1820
CONFIG_ARCH_CHIP_ESP32S3WROOM1N16R8=y
@@ -49,17 +51,24 @@ CONFIG_ESP32S3_UART0=y
4951
CONFIG_ESPRESSIF_LEDC=y
5052
CONFIG_ESPRESSIF_LEDC_CHANNEL0_PIN=42
5153
CONFIG_ESPRESSIF_LEDC_TIMER0=y
54+
CONFIG_ETC_ROMFS=y
5255
CONFIG_EXAMPLES_FB=y
5356
CONFIG_EXAMPLES_LVGLDEMO=y
5457
CONFIG_EXAMPLES_PWM=y
58+
CONFIG_EXAMPLES_TOUCHSCREEN=y
5559
CONFIG_FS_PROCFS=y
60+
CONFIG_FS_ROMFS=y
61+
CONFIG_FT5X06_POLLMODE=y
62+
CONFIG_FT5X06_SINGLEPOINT=y
5663
CONFIG_GPIO_LOWER_HALF=y
5764
CONFIG_GRAPHICS_LVGL=y
5865
CONFIG_HAVE_CXX=y
5966
CONFIG_HAVE_CXXINITIALIZE=y
6067
CONFIG_IDLETHREAD_STACKSIZE=3072
6168
CONFIG_INIT_ENTRYPOINT="nsh_main"
6269
CONFIG_INIT_STACKSIZE=3072
70+
CONFIG_INPUT=y
71+
CONFIG_INPUT_FT5X06=y
6372
CONFIG_INTELHEX_BINARY=y
6473
CONFIG_IOEXPANDER=y
6574
CONFIG_IOEXPANDER_NPINS=8
@@ -71,6 +80,10 @@ CONFIG_LCD_PORTRAIT=y
7180
CONFIG_LCD_ST7789=y
7281
CONFIG_LCD_ST7789_DATA_ENDIAN_LITTLE=y
7382
CONFIG_LCD_ST7789_FREQUENCY=40000000
83+
CONFIG_LCD_ST7789_MIRRORV=y
84+
CONFIG_LCD_ST7789_MIRRORX=y
85+
CONFIG_LCD_ST7789_XRES=320
86+
CONFIG_LCD_ST7789_YRES=240
7487
CONFIG_LINE_MAX=64
7588
CONFIG_LV_USE_CLIB_MALLOC=y
7689
CONFIG_LV_USE_CLIB_SPRINTF=y
@@ -79,6 +92,7 @@ CONFIG_LV_USE_DEMO_WIDGETS=y
7992
CONFIG_LV_USE_LOG=y
8093
CONFIG_LV_USE_NUTTX=y
8194
CONFIG_LV_USE_NUTTX_LCD=y
95+
CONFIG_LV_USE_NUTTX_TOUCHSCREEN=y
8296
CONFIG_LV_USE_ST7789=y
8397
CONFIG_MM_REGIONS=2
8498
CONFIG_NSH_ARCHINIT=y
@@ -89,6 +103,7 @@ CONFIG_PREALLOC_TIMERS=4
89103
CONFIG_RAM_SIZE=114688
90104
CONFIG_RAM_START=0x20000000
91105
CONFIG_RR_INTERVAL=200
106+
CONFIG_SCHED_HPWORK=y
92107
CONFIG_SCHED_WAITPID=y
93108
CONFIG_SPI_CMDDATA=y
94109
CONFIG_START_DAY=6

boards/xtensa/esp32s3/lckfb-szpi-esp32s3/src/esp32s3_ft5x06.c

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@
3333
#include <nuttx/arch.h>
3434
#include <nuttx/board.h>
3535
#include <nuttx/input/ft5x06.h>
36+
#include <nuttx/input/touchscreen.h>
3637

3738
#include "esp32s3_i2c.h"
3839
#include "esp32s3-szpi.h"
@@ -55,6 +56,19 @@ static const struct ft5x06_config_s g_ft5x06_config =
5556
{
5657
.address = FT5X06_I2C_ADDRESS,
5758
.frequency = FT5X06_FREQUENCY,
59+
.lower =
60+
{
61+
.xres = CONFIG_ARCH_BOARD_ESP32S3_LCKFB_SZPI_DISPLAY_XRES,
62+
.yres = CONFIG_ARCH_BOARD_ESP32S3_LCKFB_SZPI_DISPLAY_YRES,
63+
.flags = 0
64+
#ifdef CONFIG_ARCH_BOARD_ESP32S3_LCKFB_SZPI_TOUCHSCREEN_SWAPXY
65+
| TOUCH_FLAG_SWAPXY
66+
#endif
67+
#ifdef CONFIG_ARCH_BOARD_ESP32S3_LCKFB_SZPI_TOUCHSCREEN_MIRRORY
68+
| TOUCH_FLAG_MIRRORY
69+
#endif
70+
,
71+
},
5872
};
5973

6074
/****************************************************************************

boards/xtensa/esp32s3/lckfb-szpi-esp32s3/src/etc/init.d/rcS

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,3 +29,7 @@ adbd &
2929
#ifdef CONFIG_SYSTEM_FASTBOOTD
3030
fastbootd &
3131
#endif
32+
33+
#ifdef CONFIG_EXAMPLES_LVGLDEMO
34+
lvgldemo widgets &
35+
#endif

0 commit comments

Comments
 (0)