Git Product home page Git Product logo

esp32_display_panel's People

Contributors

gsgill112 avatar lboue avatar lhyhorion avatar lzw655 avatar macchu0315-espressif avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

esp32_display_panel's Issues

LCD Display and Touch Only Work If "RESET" is Pressed During Power Up and Serial Monitor is Opened

Board: Waveshare ESP32-S3-Touch-LCD-7 with ESP32-S3-WROOM-1-N8R8
#define ESP_PANEL_LCD_NAME ST7262
#define ESP_PANEL_TOUCH_NAME GT911

Hi, I have encountered some weird issues with ESP32_Display_Panel. After uploading the code to ESP32-S3, it does not reset automatically and LCD display shows nothing. The error messages are something like this:

E (30) lcd_panel.io.i2c: panel_io_i2c_rx_buffer(135): i2c transaction failed
E (30) GT911: touch_gt911_read_cfg(362): GT911 read error!
E (31) GT911: esp_lcd_touch_new_i2c_gt911(128): GT911 init failed
E (37) GT911: Error (0xffffffff)! Touch controller GT911 initialization failed!

However, if I hold the "RESET" button when powering up and open serial monitor, then press "RESET" again, LCD starts showing content and the touch works fine as well. Here is some information which may help. The issue may be something related to UART.

GPIO Info:
------------------------------------------
  GPIO : BUS_TYPE[bus/unit][chan]
  --------------------------------------  
    19 : USB_DM
    20 : USB_DP
    43 : UART_TX[0]
    44 : UART_RX[0]

If anyone has any advice or comments, please let me know. Many thanks!

How to set the RGB Mode?

As shown in the figure below, how to set the RGB Mode to DE Mode in the SquareLine/v8/WiFiClock example?

image

Support st77903 controller.

Good day dear support.
Could you add support for displays with st77903 controller please? I need this for my project, and I think in the future it will be useful for other users of your library.
I hope for your understanding, thanks in advance :)

typo

Destory?? Or Destroy / Destroyed ;)

ESP32_Display_Panel/src/ESP_Panel.cpp:    ESP_LOGD(TAG, "Destory");
ESP32_Display_Panel/src/touch/FT5x06.cpp:    ESP_LOGD(TAG, "Destory");
ESP32_Display_Panel/src/touch/GT1151.cpp:    ESP_LOGD(TAG, "Destory");
ESP32_Display_Panel/src/touch/ST7123.cpp:    ESP_LOGD(TAG, "Destory");
ESP32_Display_Panel/src/touch/TT21100.cpp:    ESP_LOGD(TAG, "Destory");
ESP32_Display_Panel/src/touch/GT911.cpp:    ESP_LOGD(TAG, "Destory");
ESP32_Display_Panel/src/touch/CST816S.cpp:    ESP_LOGD(TAG, "Destory");
ESP32_Display_Panel/src/host/ESP_PanelHost.cpp:    ESP_LOGD(TAG, "Destory");
ESP32_Display_Panel/src/lcd/GC9B71.cpp:    ESP_LOGD(TAG, "Destory");
ESP32_Display_Panel/src/lcd/SH8601.cpp:    ESP_LOGD(TAG, "Destory");
ESP32_Display_Panel/src/lcd/ST77922.cpp:    ESP_LOGD(TAG, "Destory");
ESP32_Display_Panel/src/lcd/ST7796.cpp:    ESP_LOGD(TAG, "Destory");
ESP32_Display_Panel/src/lcd/ILI9341.cpp:    ESP_LOGD(TAG, "Destory");
ESP32_Display_Panel/src/lcd/GC9503.cpp:    ESP_LOGD(TAG, "Destory");
ESP32_Display_Panel/src/lcd/NV3022B.cpp:    ESP_LOGD(TAG, "Destory");
ESP32_Display_Panel/src/lcd/ST7701.cpp:    ESP_LOGD(TAG, "Destory");
ESP32_Display_Panel/src/lcd/SPD2010.cpp:    ESP_LOGD(TAG, "Destory");
ESP32_Display_Panel/src/lcd/ST7262.cpp:    ESP_LOGD(TAG, "Destory");
ESP32_Display_Panel/src/lcd/ST77916.cpp:    ESP_LOGD(TAG, "Destory");
ESP32_Display_Panel/src/lcd/ST7789.cpp:    ESP_LOGD(TAG, "Destory");
ESP32_Display_Panel/src/lcd/GC9A01.cpp:    ESP_LOGD(TAG, "Destory");
ESP32_Display_Panel/src/backlight/ESP_PanelBacklight.cpp:    ESP_LOGD(TAG, "Destory");
ESP32_Display_Panel/src/bus/I2C.cpp:    ESP_LOGD(TAG, "Destory");
ESP32_Display_Panel/src/bus/QSPI.cpp:    ESP_LOGD(TAG, "Destory");
ESP32_Display_Panel/src/bus/SPI.cpp:    ESP_LOGD(TAG, "Destory");
ESP32_Display_Panel/src/bus/RGB.cpp:    ESP_LOGD(TAG, "Destory");

ESP_Panel.cpp:44:49: error: 'ESP_PanelLcd_EK9716BD3' was not declared in this scope; did you mean 'ESP_PanelLcd_ST77916'?

Hello,

I am facing an issue building WiFiClock.ino for CrowPanel 7.0"

It fails at this error:
ESP_Panel.cpp:44:49: error: 'ESP_PanelLcd_EK9716BD3' was not declared in this scope; did you mean 'ESP_PanelLcd_ST77916'?

I don't quite understand why I have to define the controller model (ESP_PANEL_LCD_NAME) when it's a standard TTL 24-bit parallel RGB controller.

Could you help me correct this issue?

Log

d:\ESP32_Display_Panel_Crow_7\libraries\ESP32_Display_Panel\src\ESP_Panel.cpp: In member function 'bool ESP_Panel::init()':
d:\ESP32_Display_Panel_Crow_7\libraries\ESP32_Display_Panel\src\ESP_Panel.cpp:44:49: error: 'ESP_PanelLcd_EK9716BD3' was not declared in this scope; did you mean 'ESP_PanelLcd_ST77916'?
   44 | #define _CREATE_LCD(name, bus, cfg) make_shared<ESP_PanelLcd_##name>(bus, cfg)
      |                                                 ^~~~~~~~~~~~~
d:\ESP32_Display_Panel_Crow_7\libraries\ESP32_Display_Panel\src\ESP_Panel.cpp:45:37: note: in expansion of macro '_CREATE_LCD'
   45 | #define CREATE_LCD(name, bus, cfg)  _CREATE_LCD(name, bus, cfg)
      |                                     ^~~~~~~~~~~
d:\ESP32_Display_Panel_Crow_7\libraries\ESP32_Display_Panel\src\ESP_Panel.cpp:324:15: note: in expansion of macro 'CREATE_LCD'
  324 |     lcd_ptr = CREATE_LCD(ESP_PANEL_LCD_NAME, lcd_bus_ptr.get(), lcd_config);
      |               ^~~~~~~~~~
d:\ESP32_Display_Panel_Crow_7\libraries\ESP32_Display_Panel\src\ESP_Panel.cpp:44:69: error: no matching function for call to 'make_shared<<expression error> >(std::__shared_ptr<ESP_PanelBus, __gnu_cxx::_S_atomic>::element_type*, esp_lcd_panel_dev_config_t&)'
   44 | #define _CREATE_LCD(name, bus, cfg) make_shared<ESP_PanelLcd_##name>(bus, cfg)
      |                                     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~
d:\ESP32_Display_Panel_Crow_7\libraries\ESP32_Display_Panel\src\ESP_Panel.cpp:45:37: note: in expansion of macro '_CREATE_LCD'
   45 | #define CREATE_LCD(name, bus, cfg)  _CREATE_LCD(name, bus, cfg)
      |                                     ^~~~~~~~~~~
d:\ESP32_Display_Panel_Crow_7\libraries\ESP32_Display_Panel\src\ESP_Panel.cpp:324:15: note: in expansion of macro 'CREATE_LCD'
  324 |     lcd_ptr = CREATE_LCD(ESP_PANEL_LCD_NAME, lcd_bus_ptr.get(), lcd_config);
      |               ^~~~~~~~~~
In file included from c:\users\ludovic\appdata\local\arduino15\packages\esp32\tools\esp-xs3\2302\xtensa-esp32s3-elf\include\c++\12.2.0\memory:77,
                 from d:\ESP32_Display_Panel_Crow_7\libraries\ESP32_Display_Panel\src\lcd/ESP_PanelLcd.h:9,
                 from d:\ESP32_Display_Panel_Crow_7\libraries\ESP32_Display_Panel\src\ESP_Panel_Library.h:26,
                 from d:\ESP32_Display_Panel_Crow_7\libraries\ESP32_Display_Panel\src\ESP_Panel.cpp:7:
c:\users\ludovic\appdata\local\arduino15\packages\esp32\tools\esp-xs3\2302\xtensa-esp32s3-elf\include\c++\12.2.0\bits\shared_ptr.h:1005:5: note: candidate: 'template<class _Tp, class ... _Args> std::shared_ptr<std::_NonArray<_Tp> > std::make_shared(_Args&& ...)'
 1005 |     make_shared(_Args&&... __args)
      |     ^~~~~~~~~~~
c:\users\ludovic\appdata\local\arduino15\packages\esp32\tools\esp-xs3\2302\xtensa-esp32s3-elf\include\c++\12.2.0\bits\shared_ptr.h:1005:5: note:   template argument deduction/substitution failed:
d:\ESP32_Display_Panel_Crow_7\libraries\ESP32_Display_Panel\src\ESP_Panel.cpp:44:69: error: template argument 1 is invalid
   44 | #define _CREATE_LCD(name, bus, cfg) make_shared<ESP_PanelLcd_##name>(bus, cfg)
      |                                     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~
d:\ESP32_Display_Panel_Crow_7\libraries\ESP32_Display_Panel\src\ESP_Panel.cpp:45:37: note: in expansion of macro '_CREATE_LCD'
   45 | #define CREATE_LCD(name, bus, cfg)  _CREATE_LCD(name, bus, cfg)
      |                                     ^~~~~~~~~~~
d:\ESP32_Display_Panel_Crow_7\libraries\ESP32_Display_Panel\src\ESP_Panel.cpp:324:15: note: in expansion of macro 'CREATE_LCD'
  324 |     lcd_ptr = CREATE_LCD(ESP_PANEL_LCD_NAME, lcd_bus_ptr.get(), lcd_config);
      |               ^~~~~~~~~~
c:\users\ludovic\appdata\local\arduino15\packages\esp32\tools\esp-xs3\2302\xtensa-esp32s3-elf\include\c++\12.2.0\bits\shared_ptr.h:1037:5: note: candidate: 'template<class _Tp> std::shared_ptr<std::_UnboundedArray<_Tp> > std::make_shared(size_t)'
 1037 |     make_shared(size_t __n)
      |     ^~~~~~~~~~~
c:\users\ludovic\appdata\local\arduino15\packages\esp32\tools\esp-xs3\2302\xtensa-esp32s3-elf\include\c++\12.2.0\bits\shared_ptr.h:1037:5: note:   candidate expects 1 argument, 2 provided
c:\users\ludovic\appdata\local\arduino15\packages\esp32\tools\esp-xs3\2302\xtensa-esp32s3-elf\include\c++\12.2.0\bits\shared_ptr.h:1053:5: note: candidate: 'template<class _Tp> std::shared_ptr<std::_UnboundedArray<_Tp> > std::make_shared(size_t, remove_extent_t<_Iter>&)'
 1053 |     make_shared(size_t __n, const remove_extent_t<_Tp>& __u)
      |     ^~~~~~~~~~~
c:\users\ludovic\appdata\local\arduino15\packages\esp32\tools\esp-xs3\2302\xtensa-esp32s3-elf\include\c++\12.2.0\bits\shared_ptr.h:1053:5: note:   template argument deduction/substitution failed:
d:\ESP32_Display_Panel_Crow_7\libraries\ESP32_Display_Panel\src\ESP_Panel.cpp:44:69: error: template argument 1 is invalid
   44 | #define _CREATE_LCD(name, bus, cfg) make_shared<ESP_PanelLcd_##name>(bus, cfg)
      |                                     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~
d:\ESP32_Display_Panel_Crow_7\libraries\ESP32_Display_Panel\src\ESP_Panel.cpp:45:37: note: in expansion of macro '_CREATE_LCD'
   45 | #define CREATE_LCD(name, bus, cfg)  _CREATE_LCD(name, bus, cfg)
      |                                     ^~~~~~~~~~~
d:\ESP32_Display_Panel_Crow_7\libraries\ESP32_Display_Panel\src\ESP_Panel.cpp:324:15: note: in expansion of macro 'CREATE_LCD'
  324 |     lcd_ptr = CREATE_LCD(ESP_PANEL_LCD_NAME, lcd_bus_ptr.get(), lcd_config);
      |               ^~~~~~~~~~
c:\users\ludovic\appdata\local\arduino15\packages\esp32\tools\esp-xs3\2302\xtensa-esp32s3-elf\include\c++\12.2.0\bits\shared_ptr.h:1080:5: note: candidate: 'template<class _Tp> std::shared_ptr<std::_BoundedArray<_Tp> > std::make_shared()'
 1080 |     make_shared()
      |     ^~~~~~~~~~~
c:\users\ludovic\appdata\local\arduino15\packages\esp32\tools\esp-xs3\2302\xtensa-esp32s3-elf\include\c++\12.2.0\bits\shared_ptr.h:1080:5: note:   candidate expects 0 arguments, 2 provided
c:\users\ludovic\appdata\local\arduino15\packages\esp32\tools\esp-xs3\2302\xtensa-esp32s3-elf\include\c++\12.2.0\bits\shared_ptr.h:1095:5: note: candidate: 'template<class _Tp> std::shared_ptr<std::_BoundedArray<_Tp> > std::make_shared(remove_extent_t<_Iter>&)'
 1095 |     make_shared(const remove_extent_t<_Tp>& __u)
      |     ^~~~~~~~~~~
c:\users\ludovic\appdata\local\arduino15\packages\esp32\tools\esp-xs3\2302\xtensa-esp32s3-elf\include\c++\12.2.0\bits\shared_ptr.h:1095:5: note:   candidate expects 1 argument, 2 provided
"C:\\Users\\User\\AppData\\Local\\Arduino15\\packages\\esp32\\tools\\esp-xs3\\2302/bin/xtensa-esp32s3-elf-gcc" -MMD -c "@C:\\Users\\User\\AppData\\Local\\Arduino15\\packages\\esp32\\tools\\esp32-arduino-libs\\idf-release_v5.1-dc859c1e67\\esp32s3/flags/c_flags" -w -Os -DF_CPU=240000000L -DARDUINO=10607 -DARDUINO_ESP32S3_DEV -DARDUINO_ARCH_ESP32 "-DARDUINO_BOARD=\"ESP32S3_DEV\"" "-DARDUINO_VARIANT=\"esp32s3\"" -DARDUINO_PARTITION_huge_app "-DARDUINO_HOST_OS=\"windows\"" "-DARDUINO_FQBN=\"esp32:esp32:esp32s3:UploadSpeed=921600,USBMode=hwcdc,CDCOnBoot=default,MSCOnBoot=default,DFUOnBoot=default,UploadMode=default,CPUFreq=240,FlashMode=qio,FlashSize=4M,PartitionScheme=huge_app,DebugLevel=debug,PSRAM=opi,LoopCore=1,EventsCore=1,EraseFlash=none,JTAGAdapter=default,ZigbeeMode=default\"" -DESP32 -DCORE_DEBUG_LEVEL=4 -DARDUINO_RUNNING_CORE=1 -DARDUINO_EVENT_RUNNING_CORE=1 -DBOARD_HAS_PSRAM -DARDUINO_USB_MODE=1 -DARDUINO_USB_CDC_ON_BOOT=0 -DARDUINO_USB_MSC_ON_BOOT=0 -DARDUINO_USB_DFU_ON_BOOT=0 "@C:\\Users\\User\\AppData\\Local\\Arduino15\\packages\\esp32\\tools\\esp32-arduino-libs\\idf-release_v5.1-dc859c1e67\\esp32s3/flags/defines" "-ID:\\ESP32_Display_Panel_Crow_7\\ESP32_Display_Panel-master\\examples\\SquareLine\\v8\\WiFiClock" -iprefix "C:\\Users\\User\\AppData\\Local\\Arduino15\\packages\\esp32\\tools\\esp32-arduino-libs\\idf-release_v5.1-dc859c1e67\\esp32s3/include/" "@C:\\Users\\User\\AppData\\Local\\Arduino15\\packages\\esp32\\tools\\esp32-arduino-libs\\idf-release_v5.1-dc859c1e67\\esp32s3/flags/includes" "-IC:\\Users\\User\\AppData\\Local\\Arduino15\\packages\\esp32\\tools\\esp32-arduino-libs\\idf-release_v5.1-dc859c1e67\\esp32s3/qio_opi/include" "-IC:\\Users\\User\\AppData\\Local\\Arduino15\\packages\\esp32\\hardware\\esp32\\3.0.3\\cores\\esp32" "-IC:\\Users\\User\\AppData\\Local\\Arduino15\\packages\\esp32\\hardware\\esp32\\3.0.3\\variants\\esp32s3" "-Id:\\ESP32_Display_Panel_Crow_7\\libraries\\ESP32_Display_Panel\\src" "-Id:\\ESP32_Display_Panel_Crow_7\\libraries\\ESP32_IO_Expander\\src" "-Id:\\ESP32_Display_Panel_Crow_7\\libraries\\lvgl\\src" "-Id:\\ESP32_Display_Panel_Crow_7\\libraries\\ui\\src" "-Id:\\ESP32_Display_Panel_Crow_7\\libraries\\NTPClient" "-IC:\\Users\\User\\AppData\\Local\\Arduino15\\packages\\esp32\\hardware\\esp32\\3.0.3\\libraries\\WiFi\\src" "-IC:\\Users\\User\\AppData\\Local\\Arduino15\\packages\\esp32\\hardware\\esp32\\3.0.3\\libraries\\Network\\src" "-Id:\\ESP32_Display_Panel_Crow_7\\libraries\\ArduinoJson\\src" "-IC:\\Users\\User\\AppData\\Local\\Arduino15\\packages\\esp32\\hardware\\esp32\\3.0.3\\libraries\\HTTPClient\\src" "-IC:\\Users\\User\\AppData\\Local\\Arduino15\\packages\\esp32\\hardware\\esp32\\3.0.3\\libraries\\NetworkClientSecure\\src" "@C:\\Users\\User\\AppData\\Local\\Temp\\arduino\\sketches\\CDE03991EDD06825BAFC03007A832A31/build_opt.h" "@C:\\Users\\User\\AppData\\Local\\Temp\\arduino\\sketches\\CDE03991EDD06825BAFC03007A832A31/file_opts" "d:\\ESP32_Display_Panel_Crow_7\\libraries\\ESP32_Display_Panel\\src\\lcd\\base\\esp_lcd_gc9503.c" -o "C:\\Users\\User\\AppData\\Local\\Temp\\arduino\\sketches\\CDE03991EDD06825BAFC03007A832A31\\libraries\\ESP32_Display_Panel\\lcd\\base\\esp_lcd_gc9503.c.o"

Using library ESP32_Display_Panel at version 0.1.5 in folder: D:\ESP32_Display_Panel_Crow_7\libraries\ESP32_Display_Panel 
Using library ESP32_IO_Expander at version 0.0.3 in folder: D:\ESP32_Display_Panel_Crow_7\libraries\ESP32_IO_Expander 
Using library lvgl at version 8.3.11 in folder: D:\ESP32_Display_Panel_Crow_7\libraries\lvgl 
Using library ui at version 1.0 in folder: D:\ESP32_Display_Panel_Crow_7\libraries\ui 
Using library NTPClient at version 3.2.1 in folder: D:\ESP32_Display_Panel_Crow_7\libraries\NTPClient 
Using library WiFi at version 3.0.3 in folder: C:\Users\User\AppData\Local\Arduino15\packages\esp32\hardware\esp32\3.0.3\libraries\WiFi 
Using library Networking at version 3.0.3 in folder: C:\Users\User\AppData\Local\Arduino15\packages\esp32\hardware\esp32\3.0.3\libraries\Network 
Using library ArduinoJson at version 6.21.5 in folder: D:\ESP32_Display_Panel_Crow_7\libraries\ArduinoJson 
Using library HTTPClient at version 3.0.3 in folder: C:\Users\User\AppData\Local\Arduino15\packages\esp32\hardware\esp32\3.0.3\libraries\HTTPClient 
Using library NetworkClientSecure at version 3.0.3 in folder: C:\Users\User\AppData\Local\Arduino15\packages\esp32\hardware\esp32\3.0.3\libraries\NetworkClientSecure 
exit status 1

Compilation error: exit status 1

Arduino RGB example error for ESP32 S3 to run ST7262 display

Hello,

I installed this library and I solved first library requirement which is esp_io_expander.h

Then I got this error, where esp_memory_utils.h is located in esp-idf-master.

In file included from E:\Programs_Files\Arduino\libraries\ESP32_Display_Panel-master\src/ESP_PanelLog.h:9,
                 from E:\Programs_Files\Arduino\libraries\ESP32_Display_Panel-master\src\lcd\ESP_PanelLcd.cpp:8:
E:\Programs_Files\Arduino\libraries\ESP32_Display_Panel-master\src/ESP_Panel_Conf_Internal.h:51:35: error: operator '!' has no right operand
 #if !ESP_PANEL_CONF_INCLUDE_INSIDE
                                   ^
E:\Programs_Files\Arduino\libraries\ESP32_Display_Panel-master\src\lcd\ESP_PanelLcd.cpp:13:10: fatal error: esp_memory_utils.h: No such file or directory
 #include "esp_memory_utils.h"
          ^~~~~~~~~~~~~~~~~~~~
compilation terminated.
exit status 1
Error compiling for board ESP32S3 Dev Module.

So how to solve these two errors ?

`'ST7262_PANEL_IO_3WIRE_SPI_CONFIG' was not declared in this scope` using a ST7262 RGB screen

Hello,

I have a ST7262 LCD screen and I am trying to build an example but I am facing another error:
'ST7262_PANEL_IO_3WIRE_SPI_CONFIG' was not declared in this scope
I don't understand why I'm getting this error with regarding a 3 wire SPI bus when I'm using an RGB screen.

c:\Users\user\Documents\Arduino\libraries\ESP32_Display_Panel\src\ESP_Panel.cpp: In member function 'bool ESP_Panel::init()':
C:\Users\user\Documents\Arduino\Waveshare\PanelTest_LBO\PanelTest_LBO/ESP_Panel_Board_Custom.h:32:37: error: 'ST7262_PANEL_IO_3WIRE_SPI_CONFIG' was not declared in this scope; did you mean 'ST7701_PANEL_IO_3WIRE_SPI_CONFIG'?
   32 | #define ESP_PANEL_LCD_NAME          ST7262
      |                                     ^~~~~~
c:\Users\user\Documents\Arduino\libraries\ESP32_Display_Panel\src\ESP_Panel.cpp:40:57: note: in definition of macro '_LCD_PANEL_IO_3WIRE_SPI_CONFIG'
   40 |                                                         name##_PANEL_IO_3WIRE_SPI_CONFIG(line_config, scl_active_edge)
      |                                                         ^~~~
c:\Users\user\Documents\Arduino\libraries\ESP32_Display_Panel\src\ESP_Panel.cpp:213:9: note: in expansion of macro 'LCD_PANEL_IO_3WIRE_SPI_CONFIG'
  213 |         LCD_PANEL_IO_3WIRE_SPI_CONFIG(ESP_PANEL_LCD_NAME, line_config, ESP_PANEL_LCD_3WIRE_SPI_SCL_ACTIVE_EDGE);
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
c:\Users\user\Documents\Arduino\libraries\ESP32_Display_Panel\src\ESP_Panel.cpp:213:39: note: in expansion of macro 'ESP_PANEL_LCD_NAME'
  213 |         LCD_PANEL_IO_3WIRE_SPI_CONFIG(ESP_PANEL_LCD_NAME, line_config, ESP_PANEL_LCD_3WIRE_SPI_SCL_ACTIVE_EDGE);
      |                                       ^~~~~~~~~~~~~~~~~~
"C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\esp32\\tools\\xtensa-esp32s3-elf-gcc\\esp-12.2.0_20230208/bin/xtensa-esp32s3-elf-gcc" -MMD -c "@C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\esp32\\tools\\esp32-arduino-libs\\idf-release_v5.1-442a798083/esp32s3/flags/c_flags" -w -Os -DF_CPU=240000000L -DARDUINO=10607 -DARDUINO_ESP32S3_DEV -DARDUINO_ARCH_ESP32 "-DARDUINO_BOARD=\"ESP32S3_DEV\"" "-DARDUINO_VARIANT=\"esp32s3\"" -DARDUINO_PARTITION_default_8MB "-DARDUINO_HOST_OS=\"windows\"" "-DARDUINO_FQBN=\"esp32:esp32:esp32s3:UploadSpeed=921600,USBMode=hwcdc,CDCOnBoot=default,MSCOnBoot=default,DFUOnBoot=default,UploadMode=default,CPUFreq=240,FlashMode=qio,FlashSize=8M,PartitionScheme=default,DebugLevel=none,PSRAM=opi,LoopCore=1,EventsCore=1,EraseFlash=none,JTAGAdapter=default,ZigbeeMode=default\"" -DESP32 -DCORE_DEBUG_LEVEL=0 -DARDUINO_RUNNING_CORE=1 -DARDUINO_EVENT_RUNNING_CORE=1 -DBOARD_HAS_PSRAM -DARDUINO_USB_MODE=1 -DARDUINO_USB_CDC_ON_BOOT=0 -DARDUINO_USB_MSC_ON_BOOT=0 -DARDUINO_USB_DFU_ON_BOOT=0 "@C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\esp32\\tools\\esp32-arduino-libs\\idf-release_v5.1-442a798083/esp32s3/flags/defines" "-IC:\\Users\\user\\Documents\\Arduino\\Waveshare\\PanelTest_LBO\\PanelTest_LBO" -iprefix "C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\esp32\\tools\\esp32-arduino-libs\\idf-release_v5.1-442a798083/esp32s3/include/" "@C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\esp32\\tools\\esp32-arduino-libs\\idf-release_v5.1-442a798083/esp32s3/flags/includes" "-IC:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\esp32\\tools\\esp32-arduino-libs\\idf-release_v5.1-442a798083/esp32s3/qio_opi/include" "-IC:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\esp32\\hardware\\esp32\\3.0.0-rc3\\cores\\esp32" "-IC:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\esp32\\hardware\\esp32\\3.0.0-rc3\\variants\\esp32s3" "-Ic:\\Users\\user\\Documents\\Arduino\\libraries\\ESP32_Display_Panel\\src" "-Ic:\\Users\\user\\Documents\\Arduino\\libraries\\ESP32_IO_Expander\\src" "@C:\\Users\\user\\AppData\\Local\\Temp\\arduino\\sketches\\CBB42693422360DC1E6A7709D194CD0D/build_opt.h" "@C:\\Users\\user\\AppData\\Local\\Temp\\arduino\\sketches\\CBB42693422360DC1E6A7709D194CD0D/file_opts" "c:\\Users\\user\\Documents\\Arduino\\libraries\\ESP32_Display_Panel\\src\\lcd\\base\\esp_lcd_gc9503.c" -o "C:\\Users\\user\\AppData\\Local\\Temp\\arduino\\sketches\\CBB42693422360DC1E6A7709D194CD0D\\libraries\\ESP32_Display_Panel\\lcd\\base\\esp_lcd_gc9503.c.o"


Using library ESP32_Display_Panel at version 0.1.1 in folder: C:\Users\user\Documents\Arduino\libraries\ESP32_Display_Panel 
Using library ESP32_IO_Expander at version 0.0.3 in folder: C:\Users\user\Documents\Arduino\libraries\ESP32_IO_Expander 
exit status 1

Compilation error: 'ST7262_PANEL_IO_3WIRE_SPI_CONFIG' was not declared in this scope; did you mean 'ST7701_PANEL_IO_3WIRE_SPI_CONFIG'?

ESP_Panel_Board_Custom.h config

  1. I have a ST7262 LCD screen so I set ESP_PANEL_LCD_NAME to ST7262
  2. I set ESP_PANEL_USE_LCD to 1
#if ESP_PANEL_USE_CUSTOM_BOARD

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//////////////////////////// Please update the following macros to configure the LCD panel /////////////////////////////
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/* Set to 1 when using an LCD panel */
#define ESP_PANEL_USE_LCD           (1)     // 0/1

#if ESP_PANEL_USE_LCD
/**
 * LCD Controller Name. Choose one of the following:
 *      - GC9A01, GC9B71, GC9503
 *      - ILI9341
 *      - NV3022B
 *      - SH8601
 *      - SPD2010
 *      - ST7262, ST7701, ST7789, ST7796, ST77916, ST77922
 */
#define ESP_PANEL_LCD_NAME          ST7262

/* LCD resolution in pixels */
#define ESP_PANEL_LCD_WIDTH         (800)
#define ESP_PANEL_LCD_HEIGHT        (480)

/* LCD Bus Settings */
/**
 * If set to 1, the bus will skip to initialize the corresponding host. Users need to initialize the host in advance.
 * It is useful if other devices use the same host. Please ensure that the host is initialized only once.
 */
#define ESP_PANEL_LCD_BUS_SKIP_INIT_HOST    (0)     // 0/1
/**
 * LCD Bus Type. Choose one of the following:
 *      - ESP_PANEL_BUS_TYPE_I2C (not ready)
 *      - ESP_PANEL_BUS_TYPE_SPI
 *      - ESP_PANEL_BUS_TYPE_QSPI
 *      - ESP_PANEL_BUS_TYPE_I80 (not ready)
 *      - ESP_PANEL_BUS_TYPE_RGB (only supported for ESP32-S3)
 */
#define ESP_PANEL_LCD_BUS_TYPE      (ESP_PANEL_BUS_TYPE_RGB)
/**
 * LCD Bus Parameters.
 *
 * Please refer to https://docs.espressif.com/projects/esp-idf/en/latest/esp32s3/api-reference/peripherals/lcd.html and
 * https://docs.espressif.com/projects/esp-iot-solution/en/latest/display/lcd/index.html for more details.
 *
 */
#if ESP_PANEL_LCD_BUS_TYPE == ESP_PANEL_BUS_TYPE_SPI

    #define ESP_PANEL_LCD_BUS_HOST_ID           (1)     // Typically set to 1
    #define ESP_PANEL_LCD_SPI_IO_CS             (5)
#if !ESP_PANEL_LCD_BUS_SKIP_INIT_HOST
    #define ESP_PANEL_LCD_SPI_IO_SCK            (7)
    #define ESP_PANEL_LCD_SPI_IO_MOSI           (6)
    #define ESP_PANEL_LCD_SPI_IO_MISO           (-1)    // -1 if not used
#endif
    #define ESP_PANEL_LCD_SPI_IO_DC             (4)
    #define ESP_PANEL_LCD_SPI_MODE              (0)     // 0/1/2/3, typically set to 0
    #define ESP_PANEL_LCD_SPI_CLK_HZ            (40 * 1000 * 1000)
                                                        // Should be an integer divisor of 80M, typically set to 40M
    #define ESP_PANEL_LCD_SPI_TRANS_QUEUE_SZ    (10)    // Typically set to 10
    #define ESP_PANEL_LCD_SPI_CMD_BITS          (8)     // Typically set to 8
    #define ESP_PANEL_LCD_SPI_PARAM_BITS        (8)     // Typically set to 8

#elif ESP_PANEL_LCD_BUS_TYPE == ESP_PANEL_BUS_TYPE_QSPI

    #define ESP_PANEL_LCD_BUS_HOST_ID           (1)     // Typically set to 1
    #define ESP_PANEL_LCD_SPI_IO_CS             (5)
#if !ESP_PANEL_LCD_BUS_SKIP_INIT_HOST
    #define ESP_PANEL_LCD_SPI_IO_SCK            (9)
    #define ESP_PANEL_LCD_SPI_IO_DATA0          (10)
    #define ESP_PANEL_LCD_SPI_IO_DATA1          (11)
    #define ESP_PANEL_LCD_SPI_IO_DATA2          (12)
    #define ESP_PANEL_LCD_SPI_IO_DATA3          (13)
#endif
    #define ESP_PANEL_LCD_SPI_MODE              (0)     // 0/1/2/3, typically set to 0
    #define ESP_PANEL_LCD_SPI_CLK_HZ            (40 * 1000 * 1000)
                                                        // Should be an integer divisor of 80M, typically set to 40M
    #define ESP_PANEL_LCD_SPI_TRANS_QUEUE_SZ    (10)    // Typically set to 10
    #define ESP_PANEL_LCD_SPI_CMD_BITS          (32)    // Typically set to 32
    #define ESP_PANEL_LCD_SPI_PARAM_BITS        (8)     // Typically set to 8

#elif ESP_PANEL_LCD_BUS_TYPE == ESP_PANEL_BUS_TYPE_RGB

    #define ESP_PANEL_LCD_RGB_CLK_HZ            (16 * 1000 * 1000)
    #define ESP_PANEL_LCD_RGB_HPW               (40)
    #define ESP_PANEL_LCD_RGB_HBP               (40)
    #define ESP_PANEL_LCD_RGB_HFP               (48)
    #define ESP_PANEL_LCD_RGB_VPW               (23)
    #define ESP_PANEL_LCD_RGB_VBP               (32)
    #define ESP_PANEL_LCD_RGB_VFP               (13)
    #define ESP_PANEL_LCD_RGB_PCLK_ACTIVE_NEG   (0)     // 0: rising edge, 1: falling edge
    #define ESP_PANEL_LCD_RGB_DATA_WIDTH        (16)    //  8 | 16
    #define ESP_PANEL_LCD_RGB_PIXEL_BITS        (24)    // 24 | 16
    #define ESP_PANEL_LCD_RGB_FRAME_BUF_NUM     (1)     // 1/2/3
    #define ESP_PANEL_LCD_RGB_BOUNCE_BUF_SIZE   (0)     // Bounce buffer size in bytes. This function is used to avoid screen drift.
                                                        // To enable the bounce buffer, set it to a non-zero value. Typically set to `ESP_PANEL_LCD_WIDTH * 10`
                                                        // The size of the Bounce Buffer must satisfy `width_of_lcd * height_of_lcd = size_of_buffer * N`,
                                                        // where N is an even number.
    #define ESP_PANEL_LCD_RGB_IO_HSYNC          (46)
    #define ESP_PANEL_LCD_RGB_IO_VSYNC          (3)
    #define ESP_PANEL_LCD_RGB_IO_DE             (5)   // -1 if not used
    #define ESP_PANEL_LCD_RGB_IO_PCLK           (7)
    #define ESP_PANEL_LCD_RGB_IO_DISP           (-1)    // -1 if not used
    #define ESP_PANEL_LCD_RGB_IO_DATA0          (1)
    #define ESP_PANEL_LCD_RGB_IO_DATA1          (2)
    #define ESP_PANEL_LCD_RGB_IO_DATA2          (42)
    #define ESP_PANEL_LCD_RGB_IO_DATA3          (41)
    #define ESP_PANEL_LCD_RGB_IO_DATA4          (40)
    #define ESP_PANEL_LCD_RGB_IO_DATA5          (14)
    #define ESP_PANEL_LCD_RGB_IO_DATA6          (38)
    #define ESP_PANEL_LCD_RGB_IO_DATA7          (18)
#if ESP_PANEL_LCD_RGB_DATA_WIDTH > 8
    #define ESP_PANEL_LCD_RGB_IO_DATA8          (17)
    #define ESP_PANEL_LCD_RGB_IO_DATA9          (10)
    #define ESP_PANEL_LCD_RGB_IO_DATA10         (39)
    #define ESP_PANEL_LCD_RGB_IO_DATA11         (0)
    #define ESP_PANEL_LCD_RGB_IO_DATA12         (45)
    #define ESP_PANEL_LCD_RGB_IO_DATA13         (48)
    #define ESP_PANEL_LCD_RGB_IO_DATA14         (47)
    #define ESP_PANEL_LCD_RGB_IO_DATA15         (21)
#endif
#if !ESP_PANEL_LCD_BUS_SKIP_INIT_HOST
    #define ESP_PANEL_LCD_3WIRE_SPI_IO_CS               (0)
    #define ESP_PANEL_LCD_3WIRE_SPI_IO_SCK              (1)
    #define ESP_PANEL_LCD_3WIRE_SPI_IO_SDA              (2)
    #define ESP_PANEL_LCD_3WIRE_SPI_CS_USE_EXPNADER     (0)     // 0/1
    #define ESP_PANEL_LCD_3WIRE_SPI_SCL_USE_EXPNADER    (0)     // 0/1
    #define ESP_PANEL_LCD_3WIRE_SPI_SDA_USE_EXPNADER    (0)     // 0/1
    #define ESP_PANEL_LCD_3WIRE_SPI_SCL_ACTIVE_EDGE     (0)     // 0: rising edge, 1: falling edge
    #define ESP_PANEL_LCD_FLAGS_AUTO_DEL_PANEL_IO       (0)     // Delete the panel IO instance automatically if set to 1.
                                                                // If the 3-wire SPI pins are sharing other pins of the RGB interface to save GPIOs,
                                                                // Please set it to 1 to release the panel IO and its pins (except CS signal).
    #define ESP_PANEL_LCD_FLAGS_MIRROR_BY_CMD           (!ESP_PANEL_LCD_FLAGS_AUTO_DEL_PANEL_IO)
                                                                // The `mirror()` function will be implemented by LCD command if set to 1.
#endif

Did I miss something?

Regards

How to enable serial port for the Platform IO

My current ESP32 can run LVGL code normally, but the serial port cannot print properly. It only automatically prints the following:

ESP-ROM:esp32s3-20210327
Build: Mar 27 2021
rst:0x1 (POWERON), boot:0x8 (SPI_FAST_FLASH_BOOT)
SPIWP:0xee
mode: DIO, clock div:1
load:0x3fce3818, len:0x508
load:0x403c9700, len:0x4
load:0x403c9704, len:0xad0
load:0x403cc700, len:0x29e4
entry 0x403c9880

Other LVGL functions work fine; I guess I missed something in the config, but I don't know what happened. I also tried the Porting function for the Arduino IDE; it can print the expected information, and I tried enabling the ESP_PANEL_ENABLE_LOG in the ESP_Panel_Conf; it can print the information correctly,
here is my ini:
[env:ESP-LCD]
platform = [email protected]
board = ESP-LCD
framework = arduino
platform_packages =
platformio/framework-arduinoespressif32@https://github.com/espressif/arduino-esp32.git
platformio/framework-arduinoespressif32-libs@https://github.com/espressif/esp32-arduino-libs.git#idf-release/v5.1
upload_speed = 921600
monitor_speed = 115200
build_flags =
-DBOARD_HAS_PSRAM
-DLV_CONF_INCLUDE_SIMPLE
-DDISABLE_ALL_LIBRARY_WARNINGS
-DARDUINO_USB_CDC_ON_BOOT=1
-DCORE_DEBUG_LEVEL=1
-DLV_LVGL_H_INCLUDE_SIMPLE
-I src
-D VN=1
-D ESP32S3=1
-DCONFIG_SPIRAM_TYPE_OPI
lib_deps =
https://github.com/esp-arduino-libs/ESP32_Display_Panel.git
https://github.com/esp-arduino-libs/ESP32_IO_Expander.git
https://github.com/lvgl/lvgl.git#release/v8.3

I guess my board file is probably correct since the LVGL function can work
{
"build": {
"arduino": {
"ldscript": "esp32s3_out.ld",
"partitions": "default_8MB.csv",
"memory_type": "qio_opi"
},
"core": "esp32",
"extra_flags": [
"-DBOARD_HAS_PSRAM",
"-DARDUINO_USB_MODE=1",
"-DARDUINO_RUNNING_CORE=1",
"-DARDUINO_EVENT_RUNNING_CORE=1"
],
"f_cpu": "240000000L",
"f_flash": "80000000L",
"flash_mode": "qio",
"hwids": [["0x303A", "0x1001"]],
"mcu": "esp32s3",
"variant": "esp32s3"
},
"connectivity": ["wifi"],
"debug": {
"default_tool": "esp-builtin",
"onboard_tools": ["esp-builtin"],
"openocd_target": "esp32s3.cfg"
},
"frameworks": ["arduino", "espidf"],
"name": "ESP-LCD (8M QIO Flash & OPI PSRAM)",
"upload": {
"flash_size": "8MB",
"maximum_ram_size": 327680,
"maximum_size": 8388608,
"require_upload_port": true,
"speed": 921600
},
"url": "",
"vendor": "ESP-LCD"
}

Can the v9 version of the LVGL library be used?

I only see the v8 version of the LVGL library in the examples, and the configuration files in the v9 version have been significantly changed and are quite different from those in v8. So, can it be used?

I tried using the v9 version of the library, but the program didn't run correctly. So, I'm unsure if it's because of my configuration or if the current ESP32 panel library is incompatible with the v9 library.

ESP_PANEL_LCD_RGB_IO_DATAx pins mapping to display RGB pins

For a custom board, the GPIO pin layout is specified in the ESP_Panel_Board_Custom.h file. These pins are named ESP_PANEL_LCD_RGB_IO_DATA0 up to ESP_PANEL_LCD_RGB_IO_DATA15. For a board such as the Waveshare ESP32-S3 4.3 inch display module, the LCD pin layout is described in terms of R, G and B pins. Below is an extract from the above site:

RGB pins

How do these pins (R3-R7, G2-G7 and B3-B7) map to the pins ESP_PANEL_LCD_RGB_IO_DATAx (x = 0 to 15) in ESP_Panel_Board_Custom.h?

PanelTest.ino --> Compilation error: 'ESP_Panel' does not name a type; did you mean 'ESP_PanelLcd'?

Hello,

I am trying to build PanelTest.ino but I am facing this error. Can you help me to fix it?

Generating function prototypes...
C:\Users\user\AppData\Local\Arduino15\packages\esp32\tools\xtensa-esp32s3-elf-gcc\esp-12.2.0_20230208/bin/xtensa-esp32s3-elf-g++ -c @C:\Users\user\AppData\Local\Arduino15\packages\esp32\tools\esp32-arduino-libs\idf-release_v5.1-442a798083/esp32s3/flags/cpp_flags -w -Os -w -x c++ -E -CC -DF_CPU=240000000L -DARDUINO=10607 -DARDUINO_ESP32S3_DEV -DARDUINO_ARCH_ESP32 -DARDUINO_BOARD="ESP32S3_DEV" -DARDUINO_VARIANT="esp32s3" -DARDUINO_PARTITION_default_8MB -DARDUINO_HOST_OS="windows" -DARDUINO_FQBN="esp32:esp32:esp32s3:UploadSpeed=921600,USBMode=hwcdc,CDCOnBoot=default,MSCOnBoot=default,DFUOnBoot=default,UploadMode=default,CPUFreq=240,FlashMode=qio,FlashSize=8M,PartitionScheme=default,DebugLevel=none,PSRAM=opi,LoopCore=1,EventsCore=1,EraseFlash=none,JTAGAdapter=default,ZigbeeMode=default" -DESP32 -DCORE_DEBUG_LEVEL=0 -DARDUINO_RUNNING_CORE=1 -DARDUINO_EVENT_RUNNING_CORE=1 -DBOARD_HAS_PSRAM -DARDUINO_USB_MODE=1 -DARDUINO_USB_CDC_ON_BOOT=0 -DARDUINO_USB_MSC_ON_BOOT=0 -DARDUINO_USB_DFU_ON_BOOT=0 @C:\Users\user\AppData\Local\Arduino15\packages\esp32\tools\esp32-arduino-libs\idf-release_v5.1-442a798083/esp32s3/flags/defines -IC:\Users\user\AppData\Local\Temp\.arduinoIDE-unsaved2024417-368-1odpf7z.43k\PanelTest -iprefix C:\Users\user\AppData\Local\Arduino15\packages\esp32\tools\esp32-arduino-libs\idf-release_v5.1-442a798083/esp32s3/include/ @C:\Users\user\AppData\Local\Arduino15\packages\esp32\tools\esp32-arduino-libs\idf-release_v5.1-442a798083/esp32s3/flags/includes -IC:\Users\user\AppData\Local\Arduino15\packages\esp32\tools\esp32-arduino-libs\idf-release_v5.1-442a798083/esp32s3/qio_opi/include -IC:\Users\user\AppData\Local\Arduino15\packages\esp32\hardware\esp32\3.0.0-rc3\cores\esp32 -IC:\Users\user\AppData\Local\Arduino15\packages\esp32\hardware\esp32\3.0.0-rc3\variants\esp32s3 -Ic:\Users\user\Documents\Arduino\libraries\ESP32_Display_Panel\src -Ic:\Users\user\Documents\Arduino\libraries\ESP32_IO_Expander\src @C:\Users\user\AppData\Local\Temp\arduino\sketches\9AB4D0BAFE0CD43D82EA97D153E60905/build_opt.h @C:\Users\user\AppData\Local\Temp\arduino\sketches\9AB4D0BAFE0CD43D82EA97D153E60905/file_opts C:\Users\user\AppData\Local\Temp\arduino\sketches\9AB4D0BAFE0CD43D82EA97D153E60905\sketch\PanelTest.ino.cpp -o C:\Users\user\AppData\Local\Temp\3035903189\sketch_merged.cpp
C:\Users\user\AppData\Local\Arduino15\packages\builtin\tools\ctags\5.8-arduino11/ctags -u --language-force=c++ -f - --c++-kinds=svpf --fields=KSTtzns --line-directives C:\Users\user\AppData\Local\Temp\3035903189\sketch_merged.cpp
Compiling sketch...
"C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\esp32\\tools\\xtensa-esp32s3-elf-gcc\\esp-12.2.0_20230208/bin/xtensa-esp32s3-elf-g++" -MMD -c "@C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\esp32\\tools\\esp32-arduino-libs\\idf-release_v5.1-442a798083/esp32s3/flags/cpp_flags" -w -Os -DF_CPU=240000000L -DARDUINO=10607 -DARDUINO_ESP32S3_DEV -DARDUINO_ARCH_ESP32 "-DARDUINO_BOARD=\"ESP32S3_DEV\"" "-DARDUINO_VARIANT=\"esp32s3\"" -DARDUINO_PARTITION_default_8MB "-DARDUINO_HOST_OS=\"windows\"" "-DARDUINO_FQBN=\"esp32:esp32:esp32s3:UploadSpeed=921600,USBMode=hwcdc,CDCOnBoot=default,MSCOnBoot=default,DFUOnBoot=default,UploadMode=default,CPUFreq=240,FlashMode=qio,FlashSize=8M,PartitionScheme=default,DebugLevel=none,PSRAM=opi,LoopCore=1,EventsCore=1,EraseFlash=none,JTAGAdapter=default,ZigbeeMode=default\"" -DESP32 -DCORE_DEBUG_LEVEL=0 -DARDUINO_RUNNING_CORE=1 -DARDUINO_EVENT_RUNNING_CORE=1 -DBOARD_HAS_PSRAM -DARDUINO_USB_MODE=1 -DARDUINO_USB_CDC_ON_BOOT=0 -DARDUINO_USB_MSC_ON_BOOT=0 -DARDUINO_USB_DFU_ON_BOOT=0 "@C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\esp32\\tools\\esp32-arduino-libs\\idf-release_v5.1-442a798083/esp32s3/flags/defines" "-IC:\\Users\\user\\AppData\\Local\\Temp\\.arduinoIDE-unsaved2024417-368-1odpf7z.43k\\PanelTest" -iprefix "C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\esp32\\tools\\esp32-arduino-libs\\idf-release_v5.1-442a798083/esp32s3/include/" "@C:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\esp32\\tools\\esp32-arduino-libs\\idf-release_v5.1-442a798083/esp32s3/flags/includes" "-IC:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\esp32\\tools\\esp32-arduino-libs\\idf-release_v5.1-442a798083/esp32s3/qio_opi/include" "-IC:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\esp32\\hardware\\esp32\\3.0.0-rc3\\cores\\esp32" "-IC:\\Users\\user\\AppData\\Local\\Arduino15\\packages\\esp32\\hardware\\esp32\\3.0.0-rc3\\variants\\esp32s3" "-Ic:\\Users\\user\\Documents\\Arduino\\libraries\\ESP32_Display_Panel\\src" "-Ic:\\Users\\user\\Documents\\Arduino\\libraries\\ESP32_IO_Expander\\src" "@C:\\Users\\user\\AppData\\Local\\Temp\\arduino\\sketches\\9AB4D0BAFE0CD43D82EA97D153E60905/build_opt.h" "@C:\\Users\\user\\AppData\\Local\\Temp\\arduino\\sketches\\9AB4D0BAFE0CD43D82EA97D153E60905/file_opts" "C:\\Users\\user\\AppData\\Local\\Temp\\arduino\\sketches\\9AB4D0BAFE0CD43D82EA97D153E60905\\sketch\\PanelTest.ino.cpp" -o "C:\\Users\\user\\AppData\\Local\\Temp\\arduino\\sketches\\9AB4D0BAFE0CD43D82EA97D153E60905\\sketch\\PanelTest.ino.cpp.o"
C:\Users\user\AppData\Local\Temp\.arduinoIDE-unsaved2024417-368-1odpf7z.43k\PanelTest\PanelTest.ino:46:1: error: 'ESP_Panel' does not name a type; did you mean 'ESP_PanelLcd'?
   46 | ESP_Panel *panel = nullptr;
      | ^~~~~~~~~
      | ESP_PanelLcd
C:\Users\user\AppData\Local\Temp\.arduinoIDE-unsaved2024417-368-1odpf7z.43k\PanelTest\PanelTest.ino: In function 'void setup()':
C:\Users\user\AppData\Local\Temp\.arduinoIDE-unsaved2024417-368-1odpf7z.43k\PanelTest\PanelTest.ino:74:5: error: 'panel' was not declared in this scope
   74 |     panel = new ESP_Panel();
      |     ^~~~~
C:\Users\user\AppData\Local\Temp\.arduinoIDE-unsaved2024417-368-1odpf7z.43k\PanelTest\PanelTest.ino:74:17: error: expected type-specifier before 'ESP_Panel'
   74 |     panel = new ESP_Panel();
      |                 ^~~~~~~~~

Using library ESP32_Display_Panel at version 0.1.1 in folder: C:\Users\user\Documents\Arduino\libraries\ESP32_Display_Panel 
Using library ESP32_IO_Expander at version 0.0.3 in folder: C:\Users\user\Documents\Arduino\libraries\ESP32_IO_Expander 
exit status 1

Compilation error: 'ESP_Panel' does not name a type; did you mean 'ESP_PanelLcd'?

Setup env

Build log
PanelTest_build.log

Bootloop running PanelTest example on M5CORES3: E (275) FT5x06: esp_lcd_touch_new_i2c_ft5x06(161): FT5x06 init failed

Bootloop running PanelTest example on M5CORES3

Bootloop running PanelTest example on M5CORES3.

  • Autoconfiguration doesn't seem to work because the wrong touch controller is selected.
  • It should be FT6336U

Config
ESP_Panel_Board_Supported.h

#define ESP_PANEL_USE_SUPPORTED_BOARD       (1)         // 0/1

#define BOARD_M5STACK_M5CORES3

Bootlog

ESP-ROM:esp32s3-20210327
Build:Mar 27 2021
rst:0xc (RTC_SW_CPU_RST),boot:0x28 (SPI_FAST_FLASH_BOOT)
Saved PC:0x4037ae5e
SPIWP:0xee
mode:DIO, clock div:1
load:0x3fce3818,len:0x508
load:0x403c9700,len:0x4
load:0x403c9704,len:0xad0
load:0x403cc700,len:0x29e4
entry 0x403c9880
[   510][W][STA.cpp:533] disconnect(): STA already disconnected.
D (59) ESP_PanelHost: Add host SPI[1]
D (60) ESP_PanelHost: Add host I2C[0]
D (60) ESP_PanelHost: Initialize host I2C[0]
D (61) ESP_PanelHost: Initialize host SPI[1]
D (65) ESP_PanelHost: Destroyed
D (79) ESP_PanelBus_SPI: Create panel io @0x3fcb1a4c
D (79) ili9341: new ili9341 panel @0x3fcb1fb8
I (80) ili9341: LCD panel create success, version: 2.0.0
D (105) ESP_PanelLcd: Begin start
D (206) ili9341: send init commands success
D (206) ESP_PanelLcd: Begin end
D (206) ESP_PanelBus_I2C: Panel IO @0x3fcb20c0 created
D (206) ESP_PanelTouch: Disable interruption
E (210) lcd_panel.io.i2c: panel_io_i2c_tx_buffer(177): i2c transaction failed
E (217) lcd_panel.io.i2c: panel_io_i2c_tx_buffer(177): i2c transaction failed
E (224) lcd_panel.io.i2c: panel_io_i2c_tx_buffer(177): i2c transaction failed
E (231) lcd_panel.io.i2c: panel_io_i2c_tx_buffer(177): i2c transaction failed
E (238) lcd_panel.io.i2c: panel_io_i2c_tx_buffer(177): i2c transaction failed
E (245) lcd_panel.io.i2c: panel_io_i2c_tx_buffer(177): i2c transaction failed
E (252) lcd_panel.io.i2c: panel_io_i2c_tx_buffer(177): i2c transaction failed
E (259) lcd_panel.io.i2c: panel_io_i2c_tx_buffer(177): i2c transaction failed
E (265) lcd_panel.io.i2c: panel_io_i2c_tx_buffer(177): i2c transaction failed
E (272) FT5x06: esp_lcd_touch_new_i2c_ft5x06(161): FT5x06 init failed
E (278) FT5x06: Error (0xffffffff)! Touch controller FT5x06 initialization failed!
E (286) FT5x06_CPP: [ESP_FAIL] begin(43): New driver failed
Guru Meditation Error: Core  1 panic'ed (LoadProhibited). Exception was unhandled.

Core  1 register dump:
PC      : 0x400556d5  PS      : 0x00060130  A0      : 0x820ecc4e  A1      : 0x3fcebbe0  
A2      : 0x0000021c  A3      : 0x00000218  A4      : 0x000000ff  A5      : 0x0000ff00  
A6      : 0x00ff0000  A7      : 0xff000000  A8      : 0x00000000  A9      : 0x3fcebba0  
A10     : 0x00000000  A11     : 0x3c110a0a  A12     : 0x00000000  A13     : 0x00000000  
A14     : 0x00000000  A15     : 0xff000000  SAR     : 0x00000004  EXCCAUSE: 0x0000001c  
EXCVADDR: 0x0000021c  LBEG    : 0x400556d5  LEND    : 0x400556e5  LCOUNT  : 0xffffffff  


Backtrace: 0x400556d2:0x3fcebbe0 0x420ecc4b:0x3fcebbf0 0x420f46c2:0x3fcebf10 0x420f46fe:0x3fcebfa0 0x4203af91:0x3fcebfe0 0x4207a670:0x3fcec020 0x42005629:0x3fcec0a0 0x42004aaa:0x3fcec0f0 0x4203c067:0x3fcec120




ELF file SHA256: c1c34d99c0adac5e

platformio可以使用这个库吗

我用arduino IDE 开发,编译有点慢,想转到vscode。platformio里也有一个esp32_display_panel库,发现不同步的,用不了。platformio可以使用这个库吗?

error: no matching function for call to 'construct_at(ESP_PanelTouch_GT911*&, ESP_PanelBus*, esp_lcd_touch_config_t&, int)'

Steps to reproduce:

  1. Download WiFiClock example
  2. Copy ESP_Panel_Board_Custom.h from here
  3. Check that ESP_PANEL_TOUCH_I2C_ADDRESS is set
    #define ESP_PANEL_TOUCH_I2C_ADDRESS (0x14)
  4. Build WiFiClockexample
  5. Flash Waveshare ESP32-S3 4.3inch Capacitive with WiFiClock example

Logs

d:\Waveshare\libraries\ESP32_Display_Panel\src\ESP_Panel.cpp:421:9:   required from here
c:\users\Waveshare\appdata\local\arduino15\packages\esp32\tools\esp-xs3\2302\xtensa-esp32s3-elf\include\c++\12.2.0\bits\stl_construct.h:96:17: error: no matching function for call to 'ESP_PanelTouch_GT911::ESP_PanelTouch_GT911(ESP_PanelBus*, esp_lcd_touch_config_t&, int)'
   96 |     -> decltype(::new((void*)0) _Tp(std::declval<_Args>()...))
      |                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from d:\Waveshare\libraries\ESP32_Display_Panel\src\ESP_Panel_Library.h:45:
d:\Waveshare\libraries\ESP32_Display_Panel\src\touch/GT911.h:38:5: note: candidate: 'ESP_PanelTouch_GT911::ESP_PanelTouch_GT911(ESP_PanelBus*, const esp_lcd_touch_config_t&)'
   38 |     ESP_PanelTouch_GT911(ESP_PanelBus *bus, const esp_lcd_touch_config_t &config);
      |     ^~~~~~~~~~~~~~~~~~~~
d:\Waveshare\libraries\ESP32_Display_Panel\src\touch/GT911.h:38:5: note:   candidate expects 2 arguments, 3 provided
d:\Waveshare\libraries\ESP32_Display_Panel\src\touch/GT911.h:29:5: note: candidate: 'ESP_PanelTouch_GT911::ESP_PanelTouch_GT911(ESP_PanelBus*, uint16_t, uint16_t, int, int)'
   29 |     ESP_PanelTouch_GT911(ESP_PanelBus *bus, uint16_t width, uint16_t height, int rst_io = -1, int int_io = -1);
      |     ^~~~~~~~~~~~~~~~~~~~
d:\Waveshare\libraries\ESP32_Display_Panel\src\touch/GT911.h:29:54: note:   no known conversion for argument 2 from 'esp_lcd_touch_config_t' to 'uint16_t' {aka 'short unsigned int'}
   29 |     ESP_PanelTouch_GT911(ESP_PanelBus *bus, uint16_t width, uint16_t height, int rst_io = -1, int int_io = -1);
      |                                             ~~~~~~~~~^~~~~
d:\Waveshare\libraries\ESP32_Display_Panel\src\touch/GT911.h:18:7: note: candidate: 'ESP_PanelTouch_GT911::ESP_PanelTouch_GT911(const ESP_PanelTouch_GT911&)'
   18 | class ESP_PanelTouch_GT911 : public ESP_PanelTouch {
      |       ^~~~~~~~~~~~~~~~~~~~
d:\Waveshare\libraries\ESP32_Display_Panel\src\touch/GT911.h:18:7: note:   candidate expects 1 argument, 3 provided
c:\users\Waveshare\appdata\local\arduino15\packages\esp32\tools\esp-xs3\2302\xtensa-esp32s3-elf\include\c++\12.2.0\bits\stl_construct.h: In instantiation of 'constexpr void std::_Construct(_Tp*, _Args&& ...) [with _Tp = ESP_PanelTouch_GT911; _Args = {ESP_PanelBus*, esp_lcd_touch_config_t&, int}]':
c:\users\Waveshare\appdata\local\arduino15\packages\esp32\tools\esp-xs3\2302\xtensa-esp32s3-elf\include\c++\12.2.0\bits\alloc_traits.h:635:19:   required from 'static constexpr void std::allocator_traits<std::allocator<void> >::construct(allocator_type&, _Up*, _Args&& ...) [with _Up = ESP_PanelTouch_GT911; _Args = {ESP_PanelBus*, esp_lcd_touch_config_t&, int}; allocator_type = std::allocator<void>]'
c:\users\Waveshare\appdata\local\arduino15\packages\esp32\tools\esp-xs3\2302\xtensa-esp32s3-elf\include\c++\12.2.0\bits\shared_ptr_base.h:604:39:   required from 'std::_Sp_counted_ptr_inplace<_Tp, _Alloc, _Lp>::_Sp_counted_ptr_inplace(_Alloc, _Args&& ...) [with _Args = {ESP_PanelBus*, esp_lcd_touch_config_t&, int}; _Tp = ESP_PanelTouch_GT911; _Alloc = std::allocator<void>; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]'
c:\users\Waveshare\appdata\local\arduino15\packages\esp32\tools\esp-xs3\2302\xtensa-esp32s3-elf\include\c++\12.2.0\bits\shared_ptr_base.h:971:16:   required from 'std::__shared_count<_Lp>::__shared_count(_Tp*&, std::_Sp_alloc_shared_tag<_Alloc>, _Args&& ...) [with _Tp = ESP_PanelTouch_GT911; _Alloc = std::allocator<void>; _Args = {ESP_PanelBus*, esp_lcd_touch_config_t&, int}; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]'
c:\users\Waveshare\appdata\local\arduino15\packages\esp32\tools\esp-xs3\2302\xtensa-esp32s3-elf\include\c++\12.2.0\bits\shared_ptr_base.h:1712:14:   required from 'std::__shared_ptr<_Tp, _Lp>::__shared_ptr(std::_Sp_alloc_shared_tag<_Tp>, _Args&& ...) [with _Alloc = std::allocator<void>; _Args = {ESP_PanelBus*, esp_lcd_touch_config_t&, int}; _Tp = ESP_PanelTouch_GT911; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]'
c:\users\Waveshare\appdata\local\arduino15\packages\esp32\tools\esp-xs3\2302\xtensa-esp32s3-elf\include\c++\12.2.0\bits\shared_ptr.h:464:59:   required from 'std::shared_ptr<_Tp>::shared_ptr(std::_Sp_alloc_shared_tag<_Tp>, _Args&& ...) [with _Alloc = std::allocator<void>; _Args = {ESP_PanelBus*, esp_lcd_touch_config_t&, int}; _Tp = ESP_PanelTouch_GT911]'
c:\users\Waveshare\appdata\local\arduino15\packages\esp32\tools\esp-xs3\2302\xtensa-esp32s3-elf\include\c++\12.2.0\bits\shared_ptr.h:1009:14:   required from 'std::shared_ptr<std::_NonArray<_Tp> > std::make_shared(_Args&& ...) [with _Tp = ESP_PanelTouch_GT911; _Args = {ESP_PanelBus*, esp_lcd_touch_config_t&, int}; _NonArray<_Tp> = ESP_PanelTouch_GT911]'
d:\Waveshare\libraries\ESP32_Display_Panel\src\ESP_Panel.cpp:421:9:   required from here
c:\users\Waveshare\appdata\local\arduino15\packages\esp32\tools\esp-xs3\2302\xtensa-esp32s3-elf\include\c++\12.2.0\bits\stl_construct.h:119:7: error: no matching function for call to 'ESP_PanelTouch_GT911::ESP_PanelTouch_GT911(ESP_PanelBus*, esp_lcd_touch_config_t&, int)'
  119 |       ::new((void*)__p) _Tp(std::forward<_Args>(__args)...);
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
d:\Waveshare\libraries\ESP32_Display_Panel\src\touch/GT911.h:38:5: note: candidate: 'ESP_PanelTouch_GT911::ESP_PanelTouch_GT911(ESP_PanelBus*, const esp_lcd_touch_config_t&)'
   38 |     ESP_PanelTouch_GT911(ESP_PanelBus *bus, const esp_lcd_touch_config_t &config);
      |     ^~~~~~~~~~~~~~~~~~~~
d:\Waveshare\libraries\ESP32_Display_Panel\src\touch/GT911.h:38:5: note:   candidate expects 2 arguments, 3 provided
d:\Waveshare\libraries\ESP32_Display_Panel\src\touch/GT911.h:29:5: note: candidate: 'ESP_PanelTouch_GT911::ESP_PanelTouch_GT911(ESP_PanelBus*, uint16_t, uint16_t, int, int)'
   29 |     ESP_PanelTouch_GT911(ESP_PanelBus *bus, uint16_t width, uint16_t height, int rst_io = -1, int int_io = -1);
      |     ^~~~~~~~~~~~~~~~~~~~
d:\Waveshare\libraries\ESP32_Display_Panel\src\touch/GT911.h:29:54: note:   no known conversion for argument 2 from 'esp_lcd_touch_config_t' to 'uint16_t' {aka 'short unsigned int'}
   29 |     ESP_PanelTouch_GT911(ESP_PanelBus *bus, uint16_t width, uint16_t height, int rst_io = -1, int int_io = -1);
      |                                             ~~~~~~~~~^~~~~
d:\Waveshare\libraries\ESP32_Display_Panel\src\touch/GT911.h:18:7: note: candidate: 'ESP_PanelTouch_GT911::ESP_PanelTouch_GT911(const ESP_PanelTouch_GT911&)'
   18 | class ESP_PanelTouch_GT911 : public ESP_PanelTouch {
      |       ^~~~~~~~~~~~~~~~~~~~
d:\Waveshare\libraries\ESP32_Display_Panel\src\touch/GT911.h:18:7: note:   candidate expects 1 argument, 3 provided

Using library ESP32_Display_Panel at version 0.1.5 in folder: D:\Waveshare\libraries\ESP32_Display_Panel 
Using library ESP32_IO_Expander at version 0.0.3 in folder: D:\Waveshare\libraries\ESP32_IO_Expander 
Using library lvgl at version 8.3.11 in folder: D:\Waveshare\libraries\lvgl 
Using library ui at version 1.0 in folder: D:\Waveshare\libraries\ui 
Using library NTPClient at version 3.2.1 in folder: D:\Waveshare\libraries\NTPClient 
Using library WiFi at version 3.0.3 in folder: C:\Users\Ludovic\AppData\Local\Arduino15\packages\esp32\hardware\esp32\3.0.3\libraries\WiFi 
Using library Networking at version 3.0.3 in folder: C:\Users\Ludovic\AppData\Local\Arduino15\packages\esp32\hardware\esp32\3.0.3\libraries\Network 
Using library ArduinoJson at version 6.21.5 in folder: D:\Waveshare\libraries\ArduinoJson 
Using library HTTPClient at version 3.0.3 in folder: C:\Users\Ludovic\AppData\Local\Arduino15\packages\esp32\hardware\esp32\3.0.3\libraries\HTTPClient 
Using library NetworkClientSecure at version 3.0.3 in folder: C:\Users\Ludovic\AppData\Local\Arduino15\packages\esp32\hardware\esp32\3.0.3\libraries\NetworkClientSecure 
exit status 1

Compilation error: exit status 1

Log file

Waveshare_test.log

Support SC7283 driver IC ?

I have successfully tested the WiFiClock example using the ST7262 driver IC with an 800x480 LCD. Now, I'm attempting to make the same RGB interface work with an SC7283 driver IC and a 480x272 LCD. However, due to the difference in resolution, the display appears in the bottom right corner, showing only a quarter of the screen.

When I modify the
#define ESP_PANEL_LCD_WIDTH (480)
#define ESP_PANEL_LCD_HEIGHT (272)
the following error appears :
13:55:55.308 -> Build:Mar 27 2021
13:55:55.308 -> rst:0xc (RTC_SW_CPU_RST),boot:0x8 (SPI_FAST_FLASH_BOOT)
13:55:55.342 -> Saved PC:0x4037b8ee
13:55:55.342 -> SPIWP:0xee
13:55:55.342 -> mode:DIO, clock div:1
13:55:55.342 -> load:0x3fce3818,len:0x508
13:55:55.342 -> load:0x403c9700,len:0x4
13:55:55.342 -> load:0x403c9704,len:0xad0
13:55:55.342 -> load:0x403cc700,len:0x29d8
13:55:55.342 -> entry 0x403c9880
13:55:55.782 -> Squareline WiFi clock example start
13:55:55.857 -> Initialize panel device
13:55:55.857 -> D (79) ESP_Panel: Panel init start
13:55:55.857 -> D (79) ESP_Panel: Use LCD
13:55:55.857 -> D (79) ESP_Panel: Use RGB bus
13:55:55.857 -> D (79) ESP_Panel: Create LCD bus
13:55:55.891 -> D (81) ESP_Panel: Create LCD device
13:55:55.891 -> D (84) ESP_Panel: Initialize host
13:55:55.891 -> D (87) ESP_Panel: Panel init end
13:55:55.891 -> D (90) ESP_PanelHost: Destory
13:55:55.891 -> D (93) ESP_Panel: Panel begin start
13:55:55.891 -> D (96) ESP_Panel: Begin LCD
13:55:55.891 -> E (99) lcd_panel.rgb: esp_lcd_new_rgb_panel(251): fb size must be even multiple of bounce buffer size
13:55:55.891 ->
13:55:55.974 -> assert failed: virtual bool ESP_PanelLcd_ST7262::init() C:\Users\jerry\projects\arduinov3\portable\libraries\ESP32_Display_Panel\src\lcd\ST7262.cpp:65 ((esp_lcd_new_rgb_panel(vendor_config.rgb_config
13:55:55.974 ->
13:55:55.974 ->
13:55:55.974 -> Backtrace: 0x4037742a:0x3fcebdb0 0x4037e46d:0x3fcebdd0 0x403847dd:0x3fcebdf0 0x42006bda:0x3fcebf⸮⸮⸮

In the case of using the same RGB interface, can some parameters modified for the ST7262 be applied to the SC7283? Or is there support provided for the SC7283?

How to correctly add other I2C component libraries?

When adding additional components such as RTC and Sensor to the same I2C BUS, they have their own independent arduino libraries (using wire.h). Any suggestions when integrating into this library? Thanks !

Can not find ESP_IOExander.h?

I compiled 3wireSPI_RGB example, but reported "Can not find ESP_IOExpander.h" error, I checked the library files, there is no ESP_IOExpander.h file, should I delete this line in RGB.h?
6

Issue Erupted with update 2 days back

hello there,
Great lib incorporating multiple LCD and touch drivers...Great work

kindly help out in my issue.
i am trying to run LVGL squareline ui on a Waveshare share 4.3 inch RGB display,GT911 touch drivers running on Esp32S3 SOC
(ram:8,flash:8) using platform io IDE.

i am using a custom board and have necessary includes in code as far i could figure out.

Found Success Running the code with tearing down effect for RGB panel with previous version of library But was not able to use Bounce Buffer in PlatformIO

but with latest update pio compiler Even fails to compile with error codes described below

kindly help...

necessary details included below..

thanks in advance.

"esp_memory_utils.h"

Good Day Guys when loading the Squareline porting example on the new update I am experiencing the following error not sure why and there's no Library for it?

`c:\Users\esp\Desktop\sqaure2\libraries\ESP32_Display_Panel\src\lcd\ESP_PanelLcd.cpp:13:10: fatal error: esp_memory_utils.h: No such file or directory
#include "esp_memory_utils.h"
^~~~~~~~~~~~~~~~~~~~
compilation terminated.

exit status 1

Compilation error: exit status 1`

'LVGL_PORT_ROTATION_DEGREE' was not declared in this scope

Hello,

I am facing an issue building WiFiClock.ino for CrowPanel 7.0"

It fails at this error:
'LVGL_PORT_ROTATION_DEGREE' was not declared in this scope #74

Log

D:\ESP32_Display_Panel_Crow_7\ESP32_Display_Panel-master\examples\SquareLine\v8\WiFiClock\lvgl_port_v8.cpp:491:2: error: #else without #if
  491 | #else
      |  ^~~~
D:\ESP32_Display_Panel_Crow_7\ESP32_Display_Panel-master\examples\SquareLine\v8\WiFiClock\lvgl_port_v8.cpp:494:2: error: #endif without #if
  494 | #endif
      |  ^~~~~
In file included from d:\ESP32_Display_Panel_Crow_7\libraries\ESP32_Display_Panel\src/board/ESP_PanelBoard.h:51,
                 from d:\ESP32_Display_Panel_Crow_7\libraries\ESP32_Display_Panel\src/ESP_Panel_Board_Internal.h:85,
                 from d:\ESP32_Display_Panel_Crow_7\libraries\ESP32_Display_Panel\src/ESP_Panel_Library.h:10,
                 from D:\ESP32_Display_Panel_Crow_7\ESP32_Display_Panel-master\examples\SquareLine\v8\WiFiClock\lvgl_port_v8.cpp:7:
d:\ESP32_Display_Panel_Crow_7\libraries\ESP32_Display_Panel\src/board/elecrow/CROWPANEL_7_0.h:221:5: error: expected unqualified-id before '{' token
  221 |     {  \
      |     ^
In file included from d:\esp32_display_panel_crow_7\libraries\lvgl\src/misc/lv_log.h:16,
                 from d:\esp32_display_panel_crow_7\libraries\lvgl\lvgl.h:25,
                 from d:\ESP32_Display_Panel_Crow_7\libraries\lvgl\src/lvgl.h:17,
                 from D:\ESP32_Display_Panel_Crow_7\ESP32_Display_Panel-master\examples\SquareLine\v8\WiFiClock\lvgl_port_v8.cpp:8:
d:\esp32_display_panel_crow_7\libraries\lvgl\src\lv_conf_internal.h:46:120: note: '#pragma message: Possible failure to include lv_conf.h, please read the comment in this file if you get errors'
   46 |         #pragma message("Possible failure to include lv_conf.h, please read the comment in this file if you get errors")
      |                                                                                                                        ^
D:\ESP32_Display_Panel_Crow_7\ESP32_Display_Panel-master\examples\SquareLine\v8\WiFiClock\lvgl_port_v8.cpp: In function 'lv_disp_t* display_init(ESP_PanelLcd*)':
D:\ESP32_Display_Panel_Crow_7\ESP32_Display_Panel-master\examples\SquareLine\v8\WiFiClock\lvgl_port_v8.cpp:488:9: error: 'LVGL_PORT_ROTATION_DEGREE' was not declared in this scope
  488 |     if (LVGL_PORT_ROTATION_DEGREE == 90) || (LVGL_PORT_ROTATION_DEGREE == 270)
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~
D:\ESP32_Display_Panel_Crow_7\ESP32_Display_Panel-master\examples\SquareLine\v8\WiFiClock\lvgl_port_v8.cpp:488:42: error: expected primary-expression before '||' token
  488 |     if (LVGL_PORT_ROTATION_DEGREE == 90) || (LVGL_PORT_ROTATION_DEGREE == 270)
      |                                          ^~
In file included from d:\ESP32_Display_Panel_Crow_7\libraries\ESP32_Display_Panel\src/board/ESP_PanelBoard.h:51,
                 from d:\ESP32_Display_Panel_Crow_7\libraries\ESP32_Display_Panel\src/ESP_Panel_Board_Internal.h:85,
                 from d:\ESP32_Display_Panel_Crow_7\libraries\ESP32_Display_Panel\src/ESP_Panel_Library.h:10,
                 from D:\ESP32_Display_Panel_Crow_7\ESP32_Display_Panel-master\examples\SquareLine\v8\WiFiClock\WiFiClock.ino:81:
d:\ESP32_Display_Panel_Crow_7\libraries\ESP32_Display_Panel\src/board/elecrow/CROWPANEL_7_0.h:221:5: error: expected unqualified-id before '{' token
  221 |     {  \
      |     ^
In file included from d:\esp32_display_panel_crow_7\libraries\lvgl\src/misc/lv_log.h:16,
                 from d:\esp32_display_panel_crow_7\libraries\lvgl\lvgl.h:25,
                 from d:\ESP32_Display_Panel_Crow_7\libraries\lvgl\src/lvgl.h:17,
                 from D:\ESP32_Display_Panel_Crow_7\ESP32_Display_Panel-master\examples\SquareLine\v8\WiFiClock\WiFiClock.ino:82:
d:\esp32_display_panel_crow_7\libraries\lvgl\src\lv_conf_internal.h:46:120: note: '#pragma message: Possible failure to include lv_conf.h, please read the comment in this file if you get errors'
   46 |         #pragma message("Possible failure to include lv_conf.h, please read the comment in this file if you get errors")
      |                                                                                                                        ^

Using library ESP32_Display_Panel at version 0.1.5 in folder: D:\ESP32_Display_Panel_Crow_7\libraries\ESP32_Display_Panel 
Using library ESP32_IO_Expander at version 0.0.3 in folder: D:\ESP32_Display_Panel_Crow_7\libraries\ESP32_IO_Expander 
Using library lvgl at version 8.3.11 in folder: D:\ESP32_Display_Panel_Crow_7\libraries\lvgl 
Using library ui at version 1.0 in folder: D:\ESP32_Display_Panel_Crow_7\libraries\ui 
Using library NTPClient at version 3.2.1 in folder: D:\ESP32_Display_Panel_Crow_7\libraries\NTPClient 
Using library WiFi at version 3.0.3 in folder: C:\Users\Ludovic\AppData\Local\Arduino15\packages\esp32\hardware\esp32\3.0.3\libraries\WiFi 
Using library Networking at version 3.0.3 in folder: C:\Users\Ludovic\AppData\Local\Arduino15\packages\esp32\hardware\esp32\3.0.3\libraries\Network 
Using library ArduinoJson at version 6.21.5 in folder: D:\ESP32_Display_Panel_Crow_7\libraries\ArduinoJson 
Using library HTTPClient at version 3.0.3 in folder: C:\Users\Ludovic\AppData\Local\Arduino15\packages\esp32\hardware\esp32\3.0.3\libraries\HTTPClient 
Using library NetworkClientSecure at version 3.0.3 in folder: C:\Users\Ludovic\AppData\Local\Arduino15\packages\esp32\hardware\esp32\3.0.3\libraries\NetworkClientSecure 
exit status 1

Compilation error: #else without #if

Full log
WiFiClock_Build.log

Unable to light up the screen while running wifi clock

I am using ESP32-S3-Touch-LCD-4.3, and when running the example WiFiClock in ESP32_Siald_Panel, the serial port keeps outputting, but the screen does not respond. I would like to know where the problem lies.
}Q%TD%}R%K 0JQ27Z0$KJ3
The serial debugger keeps looping out this information.

LCD RGB Element Order different between examples

LCD RGB Element Order different between examples

LCD RGB Element Order is different between examples. For example with LCD/RGB/RGB.ino and LVGL/v8/Porting/Porting.ino

LCD RGB example

* Draw color bar from top left to bottom right, the order is B - G - R

LVGL v8 Porting example

  • Defaut "LCD RGB Element Order" for Porting.ino is RGB.

* LCD RGB Element Order. Choose one of the following:
* - 0: RGB
* - 1: BGR
*/
#define ESP_PANEL_LCD_BGR_ORDER (0) // 0/1

Is there a way to simplify by homogenizing? This would avoid errors for users.

Regards

GT911 touch screen controller : esp_lcd_touch_xpt2046.h:25:50: error: 'ESP_PANEL_TOUCH_XPT2046_Z_THRESHOLD' undeclared (first use in this function)

Hello,

I am trying to build the I2C Touch Example for a GT911 touch screen controller and I am getting this error:

In file included from c:\Users\user\Documents\Arduino\libraries\ESP32_Display_Panel\src\touch\base\esp_lcd_touch_xpt2046.c:25:
c:\Users\user\Documents\Arduino\libraries\ESP32_Display_Panel\src\touch\base\esp_lcd_touch_xpt2046.c: In function 'xpt2046_read_data':
c:\Users\user\Documents\Arduino\libraries\ESP32_Display_Panel\src\touch\base\esp_lcd_touch_xpt2046.h:25:50: error: 'ESP_PANEL_TOUCH_XPT2046_Z_THRESHOLD' undeclared (first use in this function)
   25 | #define CONFIG_XPT2046_Z_THRESHOLD              (ESP_PANEL_TOUCH_XPT2046_Z_THRESHOLD)
      |                                                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
c:\Users\user\Documents\Arduino\libraries\ESP32_Display_Panel\src\touch\base\esp_lcd_touch_xpt2046.h:25:50: note: in definition of macro 'CONFIG_XPT2046_Z_THRESHOLD'
   25 | #define CONFIG_XPT2046_Z_THRESHOLD              (ESP_PANEL_TOUCH_XPT2046_Z_THRESHOLD)
      |                                                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
c:\Users\user\Documents\Arduino\libraries\ESP32_Display_Panel\src\touch\base\esp_lcd_touch_xpt2046.h:25:50: note: each undeclared identifier is reported only once for each function it appears in
   25 | #define CONFIG_XPT2046_Z_THRESHOLD              (ESP_PANEL_TOUCH_XPT2046_Z_THRESHOLD)
      |                                                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
c:\Users\user\Documents\Arduino\libraries\ESP32_Display_Panel\src\touch\base\esp_lcd_touch_xpt2046.h:25:50: note: in definition of macro 'CONFIG_XPT2046_Z_THRESHOLD'
   25 | #define CONFIG_XPT2046_Z_THRESHOLD              (ESP_PANEL_TOUCH_XPT2046_Z_THRESHOLD)
      |                                                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Using library ESP32_Display_Panel at version 0.1.1 in folder: C:\Users\user\Documents\Arduino\libraries\ESP32_Display_Panel 
Using library ESP32_IO_Expander at version 0.0.3 in folder: C:\Users\user\Documents\Arduino\libraries\ESP32_IO_Expander 
exit status 1

Config

#define EXAMPLE_TOUCH_NAME              GT911
#define EXAMPLE_TOUCH_WIDTH             (480)
#define EXAMPLE_TOUCH_HEIGHT            (480)
#define EXAMPLE_TOUCH_I2C_FREQ_HZ       (400 * 1000)
#define EXAMPLE_TOUCH_READ_POINTS_NUM   (5)

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//////////////////// Please update the following configuration according to your board spec ////////////////////////////
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
#define EXAMPLE_TOUCH_PIN_NUM_I2C_SCL   (9)
#define EXAMPLE_TOUCH_PIN_NUM_I2C_SDA   (8)
#define EXAMPLE_TOUCH_PIN_NUM_RST       (-1)
#define EXAMPLE_TOUCH_PIN_NUM_INT       (-1)

I don't understand why I'm getting an error referring to a different type of controller: XPT2046 is a 4-wire resistive touch screen controller.
Could you help me to fix it?

Regards

PlatformIO ini file problem

When I am trying to use the PlatformIO example, the ini seems could be configured correctly, I just used the default in provided, but it gives this below:
Resolving ESP-LCD dependencies...
Error! Failed to extract upstream toolchainconfigurations:
Bad package version esp-12.2.0_20230208
You can disable this feature via the board_build.arduino.upstream_packages = no setting in your platformio.ini file.

PanelTest.ino --> Compilation error: 'ESP_Panel' does not name a type (new version, same issue)

I am experiencing the exact same issue that @lboue had in Issue 26, although with ESP32_Display_Panel at version 0.1.4 and ESP32_IO_Expander at version 0.0.2.

The suggestion in that issue of setting the macro ESP_PANEL_USE_CUSTOM_BOARD to 1 in the file ESP_Panel_Board_Custom.h didn't fix the problem. Clearly something else is wrong. What is the root cause of this compilation error?

Any help will be greatly appreciated, thanks.

ESP-IDF Support

I want to build my project using esp idf plugin for vscode, for this I wrote idf_component.yml where I included the commits of the latest tags of the necessary dependencies, however, on the side I get
Failed to resolve component 'esp-io-expander'.

idf_component.yml
dependencies: espressif/arduino-esp32: git: https://github.com/espressif/arduino-esp32.git version: b3ad98cbf6162b07719c6f9e587cdef0ed00ea2b lzw655/esp32_io_expander: git: https://github.com/esp-arduino-libs/ESP32_IO_Expander.git version: e5378da3345a9ddbecb710d868a0ee1b382e576f lzw655/esp32_display_panel: git: https://github.com/esp-arduino-libs/ESP32_Display_Panel.git version: 4a7d5a0bdd455cf6456987b1c560e43d7788d687 lvgl/lvgl: "=8.3.11" idf: version: "=5.1.4"

error:
-- Found Git: C:/Users/Valera/.espressif/tools/idf-git/2.39.2/cmd/git.exe (found version "2.39.2.windows.1") -- Component directory C:/Users/Valera/Documents/Lesha/test/components/arduino-esp32 does not contain a CMakeLists.txt file. No component will be added -- The C compiler identification is GNU 12.2.0 -- The CXX compiler identification is GNU 12.2.0 -- The ASM compiler identification is GNU -- Found assembler: C:/Users/Valera/.espressif/tools/xtensa-esp32s3-elf/esp-12.2.0_20230208/xtensa-esp32s3-elf/bin/xtensa-esp32s3-elf-gcc.exe -- Detecting C compiler ABI info -- Detecting C compiler ABI info - done -- Check for working C compiler: C:/Users/Valera/.espressif/tools/xtensa-esp32s3-elf/esp-12.2.0_20230208/xtensa-esp32s3-elf/bin/xtensa-esp32s3-elf-gcc.exe - skipped -- Detecting C compile features -- Detecting C compile features - done -- Detecting CXX compiler ABI info -- Detecting CXX compiler ABI info - done -- Check for working CXX compiler: C:/Users/Valera/.espressif/tools/xtensa-esp32s3-elf/esp-12.2.0_20230208/xtensa-esp32s3-elf/bin/xtensa-esp32s3-elf-g++.exe - skipped -- Detecting CXX compile features -- Detecting CXX compile features - done -- Building ESP-IDF components for target esp32s3 Processing 25 dependencies: [1/25] chmorgan/esp-libhelix-mp3 (1.0.3) [2/25] espressif/arduino-esp32 (b3ad98cbf6162b07719c6f9e587cdef0ed00ea2b) [3/25] espressif/cbor (0.6.0~1) [4/25] espressif/esp-dsp (1.4.12) [5/25] espressif/esp-sr (1.7.1) [6/25] espressif/esp-zboss-lib (1.3.2) [7/25] espressif/esp-zigbee-lib (1.3.2) [8/25] espressif/esp_diag_data_store (1.0.1) [9/25] espressif/esp_diagnostics (1.1.0) [10/25] espressif/esp_insights (1.1.0) [11/25] espressif/esp_modem (1.1.0) [12/25] espressif/esp_rainmaker (1.1.0) [13/25] espressif/esp_schedule (1.1.1) [14/25] espressif/esp_secure_cert_mgr (2.4.1) [15/25] espressif/jsmn (1.1.0) [16/25] espressif/json_generator (1.1.2) [17/25] espressif/json_parser (1.0.3) [18/25] espressif/mdns (1.3.1) [19/25] espressif/qrcode (0.1.0~2) [20/25] espressif/rmaker_common (1.4.5) [21/25] idf (5.1.4) [22/25] joltwallet/littlefs (1.14.4) [23/25] lvgl/lvgl (8.3.11) [24/25] lzw655/esp32_display_panel (4a7d5a0bdd455cf6456987b1c560e43d7788d687) [25/25] lzw655/esp32_io_expander (e5378da3345a9ddbecb710d868a0ee1b382e576f) CMake Error at C:/Users/Valera/esp/v5.1.4/esp-idf/tools/cmake/build.cmake:266 (message): Failed to resolve component 'esp-io-expander'. Call Stack (most recent call first): C:/Users/Valera/esp/v5.1.4/esp-idf/tools/cmake/build.cmake:302 (__build_resolve_and_add_req) C:/Users/Valera/esp/v5.1.4/esp-idf/tools/cmake/build.cmake:309 (__build_expand_requirements) C:/Users/Valera/esp/v5.1.4/esp-idf/tools/cmake/build.cmake:595 (__build_expand_requirements) C:/Users/Valera/esp/v5.1.4/esp-idf/tools/cmake/project.cmake:604 (idf_build_process) CMakeLists.txt:6 (project)

Use 24-bit LCD panel

My panel has an integrated ESP32-S3 (ESP32-8048S050, ST7262 driver chip) and as far as I can make out from the documentation, addresses the panel in 24-bit mode. At least 24 GPIO's are mentioned in the documentation, R0-7, G0-7 and B0-7.
Can I use this panel/EPS combination with the ESP32_Display_Panel library? I've seen that the definitions for the GPIO's both in the config file as in ESP_Panel.cpp only list 16 GPIO's.

Thanks!

error running panel test on ESP32-4848S040C_I_Y_3

I get this error: Compilation error: 'ESP_Panel' does not name a type; did you mean 'ESP_PanelLcd'?
when trying to compile PanelTest.ino

I followed the instructions, and I have this board activated and made all the setting as required in Arduino IDE2

How to extend display to entire screen on an 800x480 screen

Question

Is there a way to set up the display to take up all the space on an 800x480 screen with the Squareline Simple Wi-Fi Clock Example?

It is stated that the example is suitable for 800x480 resolution, but this does not appear to be the case. In fact, the graphic interface occupies only the central part of the screen.

This example implements a simple Wi-Fi clock demo, which UI is created by Squareline Studio. And this example applies to LCDs with resolutions between *320x240* and *800x480*.

Tested with CrowPanel 7.0" board

image

How to get the source code for ST7262 ?

Hi,

I have the ESP32-8048S043 which is using ST7262 display driver.

I want to get the c code for this driver, I tried to derive it from the lcd folder but it's not clear.

I want to use the c source code for another project.

Thanks,

Add XPT2046

Hello,

AliExpress vendors often fail to correctly describe (datasheets) the products they sell. That is very annoying ;) Anyway,

common small TFT like this :
https://www.aliexpress.com/item/1005006042124570.html
say ILI9341 or ST7735, good, supported by the lib.

But they say nothing about the Touchscreen driver !

On some HiRes photo, I can see XPT2046 :
https://www.buydisplay.com/download/ic/XPT2046.pdf

This one is not clearly listed as a driver.
Can you add it ?

Maybe it can be an alias for one of CST816S, FT5x06 , GT911, GT1151 or TT21100 touch driver ?

Apparently, it is a known chip from Espressif :
https://github.com/espressif/esp-iot-solution/blob/272ec0e4122d2f74f66a2d93467acc9f9f4b811b/components/display/touch_panel/xpt2046/xpt2046.c

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.