1
+ ; ***************************************************;
2
+ ; Waveshare ESP32-S3-Touch-LCD-4 ;
3
+ ; - 16-bit RGB TFT ;
4
+ ; - GT911 touch controller ;
5
+ ; ***************************************************;
6
+
7
+
8
+ [ws_esp32_s3_touch]
9
+ extends = arduino_esp32s3_v2, flash_8mb
10
+ board = esp32-s3-devkitc-1
11
+ ; board = esp32-s3-devkitc-1-n16r8v
12
+ board_build.arduino.memory_type = qio_opi
13
+
14
+ build_flags =
15
+ ${arduino_esp32s3_v2.build_flags}
16
+ ${esp32s3.ps_ram}
17
+ -DARDUINO_ESP32S3_DEV,
18
+ -DBOARD_HAS_PSRAM,
19
+ -DARDUINO_USB_MODE =1,
20
+ -DARDUINO_USB_CDC_ON_BOOT =1
21
+
22
+
23
+ ; region -- ArduinoGFX build options ------------------------
24
+ -D HASP_USE_ARDUINOGFX =1
25
+ -D HASP_LV_USE_SW_ROTATE =1
26
+ ; endregion
27
+
28
+ lib_deps =
29
+ ${arduino_esp32s3_v2.lib_deps}
30
+ ${arduinogfx.lib_deps}
31
+ Arduino_RPi_DPI_RGBPanel_mod
32
+ ${goodix.lib_deps}
33
+
34
+ [env:ws_esp32_s3_touch_lcd_4]
35
+ extends = ws_esp32_s3_touch
36
+
37
+ build_flags =
38
+ -D HASP_MODEL =" Waveshare ESP32-S3-Touch-LCD-4 Rev 3.0"
39
+ ; ${ws_esp32_s3_touch.build_flags}
40
+ ${arduino_esp32s3_v2.build_flags}
41
+ ${esp32s3.ps_ram}
42
+ -D TFT_DC =GFX_NOT_DEFINED
43
+ -D TFT_CS =42
44
+ -D TFT_SCLK =2
45
+ -D TFT_MISO =GFX_NOT_DEFINED
46
+ -D TFT_MOSI =1
47
+ ; -DARDUINO_USB_CDC_ON_BOOT
48
+ ; -DUSE_USB_CDC_CONSOLE
49
+ ; region -- ArduinoGFX build options ------------------------
50
+ -D HASP_USE_ARDUINOGFX =1
51
+ ; Bus Settings
52
+ -D LV_VDB_SIZE =76800 ; 10% of full framebuffer
53
+ -D ST7701_DRIVER =1
54
+ -D TFT_CS =42
55
+ ; --- Display ---
56
+ -D TFT_WIDTH =480
57
+ -D TFT_HEIGHT =480
58
+ -D TFT_DE =40
59
+ -D TFT_VSYNC =39
60
+ -D TFT_HSYNC =38
61
+ -D TFT_PCLK =41
62
+ -D TFT_B0 =5
63
+ -D TFT_B1 =45
64
+ -D TFT_B2 =48
65
+ -D TFT_B3 =47
66
+ -D TFT_B4 =47
67
+ -D TFT_G0 =14
68
+ -D TFT_G1 =13
69
+ -D TFT_G2 =12
70
+ -D TFT_G3 =11
71
+ -D TFT_G4 =10
72
+ -D TFT_G5 =9
73
+ -D TFT_R0 =46
74
+ -D TFT_R1 =3
75
+ -D TFT_R2 =8
76
+ -D TFT_R3 =18
77
+ -D TFT_R4 =17
78
+ -D TFT_BCKL =6
79
+ -D TFT_HSYNC_POLARITY =1
80
+ -D TFT_HSYNC_FRONT_PORCH =10
81
+ -D TFT_HSYNC_PULSE_WIDTH =8
82
+ -D TFT_HSYNC_BACK_PORCH =50
83
+ -D TFT_VSYNC_POLARITY =1
84
+ -D TFT_VSYNC_FRONT_PORCH =10
85
+ -D TFT_VSYNC_PULSE_WIDTH =8
86
+ -D TFT_VSYNC_BACK_PORCH =20
87
+ -D TFT_PCLK_ACTIVE_NEG =0
88
+ -D TFT_PREFER_SPEED =16000000
89
+ -D TFT_AUTO_FLUSH =1
90
+ ; --- Touch ---
91
+ -D TOUCH_WIDTH =480
92
+ -D TOUCH_HEIGHT =480
93
+ -D TOUCH_DRIVER =0x911
94
+ -D TOUCH_SCL =7
95
+ -D TOUCH_SDA =15
96
+ -D TOUCH_IRQ =-1
97
+ -D TOUCH_RST =-1
98
+ -D I2C_TOUCH_ADDRESS =0x5d ; or 0x5D
99
+ -D I2C_TOUCH_FREQUENCY =400000
100
+ -D BACKLIGHT_FREQUENCY =1000 ; adopted frerquency for MP3302DJ-LF-Z (200 to 1000Hz) ->higher is better for sound!
101
+
102
+ lib_deps =
103
+ lib_deps =
104
+ ${arduino_esp32s3_v2.lib_deps}
105
+ ${arduinogfx.lib_deps}
106
+ ${goodix.lib_deps}
0 commit comments