Hi,
I am going to divide this into few sections to make it easier to follow.
Components:
- Windows 11
- Arduino IDE 2.3.4
- ESP32-S3-Touch-LCD-1.85 (https://www.waveshare.com/wiki/ESP32-S3-Touch-LCD-1.85)
Testing:
I tried to test the ESP32-S3-Touch-LCD-1.85 with a very basic demo to make sure everything works before I do the actual project.
Unfortunately I stuck here with few problems which I was able to solve by reading different topics and learning the Arduino IDE at the same time.
Currently I stuck at the simple test which is:
code:
void setup() {
// put your setup code here, to run once:
Serial.begin(9600);
}
void loop() {
// put your main code here, to run repeatedly:
Serial.println("Hello, World!");
delay(2000);
}
I created new sketch with above code and saved it to my D:/ drive.
Next I Verified (Compiled) sketch with following result:
Sketch uses 282525 bytes (8%) of program storage space. Maximum is 3145728 bytes.
Global variables use 18128 bytes (5%) of dynamic memory, leaving 309552 bytes for local variables. Maximum is 327680 bytes.
Connection and settings:
With connected device to my Windows 11 laptop I have the device presented in Device Manager under Ports (COM & LPT) as follow:
USB Serial Device (COM3)
Properties of above USB Serial Device are:
Port Settings
- Bits per seconds: 9600
- Data bits: 8
- Parity: None
- Stop bits: 1
- Flow control: None
Driver
- Driver Provider: Microsoft
- Driver Data: 21/06/2026
- Driver Version: 10.0.26100.2454
In Arduino settings and other elements are set as follow:
Boards Manager:
- esp32 by Espressif Systems (tried with version 3.1.1, 3.0.7, 3.0.6, 2.0.7)
Library Manager:
- SD by Arduino, SparkFun v1.3.0
- Adafruit BusIO by Adafruit v1.17.0
- Adafruit GFX Library by Adafruit v1.12.0
- Adafruit ST7735 and ST7789 Library v1.11.0
- Adafruit seesaw Library by Adafruit v1.7.9
- TFT_eSPI by Bodmer v2.5.43
- lvgl by kisvegabor v9.2.2
Arduino IDE Selected Board and Port:
- Board: Waveshare ESP32-S3-Touch-LCD-1.85
- Port: COM3 Serial Port (USB) - This port matches the one from Device Manager
Arduino IDE Tools:
- USB CDC On Boot: "Disabled"
- CPU Frequency: "240MHz (WiFi)"
- Core Debug Level: "None"
- USB DFU On Boot: "Disabled"
- Erase All Flash Before Sketch Upload: "Disabled"
- Events Run On: "Core 0"
- Flash Mode: "QIO 120MHz"
- JTAG Adapter: "Disabled"
- Arduino Runs On: "Core 1"
- USB Firmware MSC On Boot: "Disabled"
- Partition Scheme: "16M Flash (3MB APP/9.9MB FATFS)" - changed from ESP SR 12M (3MB APP/7MB SPIFFS/2.9MB MODEL)
- PSRAM: "Enabled"
- Upload Mode: "UART0 / Hardware CDC"
- Upload Speed: "921600"
- USB Mode: "Hardware CDC and JTAG"
- Zigbee Mode: "Disabled"
Results:
When I upload above code I receive following results:
Output tab:
Sketch uses 282525 bytes (8%) of program storage space. Maximum is 3145728 bytes.
Global variables use 18128 bytes (5%) of dynamic memory, leaving 309552 bytes for local variables. Maximum is 327680 bytes.
esptool.py v4.6
Serial port COM3
Connecting...
Chip is ESP32-S3 (revision v0.2)
Features: WiFi, BLE
Crystal is 40MHz
MAC: e8:06:90:93:ff:f8
Uploading stub...
Running stub...
Stub running...
Changing baud rate to 921600
Changed.
Configuring flash size...
Flash will be erased from 0x00000000 to 0x00004fff...
Flash will be erased from 0x00008000 to 0x00008fff...
Flash will be erased from 0x0000e000 to 0x0000ffff...
Flash will be erased from 0x00010000 to 0x00055fff...
Compressed 19504 bytes to 12970...
Writing at 0x00000000... (100 %)
Wrote 19504 bytes (12970 compressed) at 0x00000000 in 0.4 seconds (effective 414.0 kbit/s)...
Hash of data verified.
Compressed 3072 bytes to 144...
Writing at 0x00008000... (100 %)
Wrote 3072 bytes (144 compressed) at 0x00008000 in 0.1 seconds (effective 386.3 kbit/s)...
Hash of data verified.
Compressed 8192 bytes to 47...
Writing at 0x0000e000... (100 %)
Wrote 8192 bytes (47 compressed) at 0x0000e000 in 0.1 seconds (effective 528.2 kbit/s)...
Hash of data verified.
Compressed 282896 bytes to 159470...
Writing at 0x00010000... (10 %)
Writing at 0x0001bd07... (20 %)
Writing at 0x0002454b... (30 %)
Writing at 0x00029e6e... (40 %)
Writing at 0x0002f282... (50 %)
Writing at 0x000346f8... (60 %)
Writing at 0x0003b2bf... (70 %)
Writing at 0x000450fc... (80 %)
Writing at 0x0004b4c4... (90 %)
Writing at 0x00050c32... (100 %)
Wrote 282896 bytes (159470 compressed) at 0x00010000 in 2.4 seconds (effective 949.7 kbit/s)...
Hash of data verified.
Leaving...
Hard resetting via RTS pin...
Serial Monitor tab:
nothing happens here, the expected result is to see "Hello, World!" printed every two seconds.
I started debugging and the result was as follow:
Error message:
OpenOCD: GDB Server Quit Unexpectedly. See gdb-server output for more details.
gdb-server tab:
Waiting for gdb server to start...[2025-02-26T19:29:20.519Z] SERVER CONSOLE DEBUG: onBackendConnect: gdb-server session connected. You can switch to "DEBUG CONSOLE" to see GDB interactions.
"C:\\Users\\<USER>\\AppData\\Local\\Arduino15\\packages\\esp32\\tools\\openocd-esp32\\v0.12.0-esp32-20240821/bin/openocd" -c "gdb_port 50000" -c "tcl_port 50001" -c "telnet_port 50002" -s "d:\\Software\\Arduino_IDE_sketches\\sketch_feb26a" -f "D:/Software/Arduino IDE/resources/app/plugins/cortex-debug/extension/support/openocd-helpers.tcl" -f board/esp32s3-builtin.cfg
Open On-Chip Debugger v0.12.0-esp32-20240821 (2024-08-21-14:45)
Licensed under GNU GPL v2
For bug reports, read
http://openocd.org/doc/doxygen/bugs.html
DEPRECATED! use 'gdb port', not 'gdb_port'
DEPRECATED! use 'tcl port' not 'tcl_port'
CDRTOSConfigure
Info : only one transport option; autoselecting 'jtag'
Info : esp_usb_jtag: VID set to 0x303a and PID to 0x1001
Info : esp_usb_jtag: capabilities descriptor set to 0x2000
Info : Listening on port 50001 for tcl connections
Info : Listening on port 50002 for telnet connections
Error: libusb_open() failed with LIBUSB_ERROR_NOT_FOUND
Error: esp_usb_jtag: could not find or open device!
C:/Users/<USER>/AppData/Local/Arduino15/packages/esp32/tools/openocd-esp32/v0.12.0-esp32-20240821/bin/../share/openocd/scripts/target/esp_common.cfg:9: Error:
at file "C:/Users/<USER>/AppData/Local/Arduino15/packages/esp32/tools/openocd-esp32/v0.12.0-esp32-20240821/bin/../share/openocd/scripts/target/esp_common.cfg", line 9
[2025-02-26T19:29:21.446Z] SERVER CONSOLE DEBUG: onBackendConnect: gdb-server session closed
GDB server session ended. This terminal will be reused, waiting for next session to start...
In the above log I can see these which looks not good to me:
Error: libusb_open() failed with LIBUSB_ERROR_NOT_FOUND
Error: esp_usb_jtag: could not find or open device!
Additionally I tried to flash with Python Demo project and it worked so definitely USB cable is working.
I wonder if anyone ran into something similar or can see some weirdness in my configureation or output log. Any help will be appreciated. I wonder if my device might be corrupted and needs to be replaced?
I feel like I tried a lot / all things so far.
Thank you for any help which might reveal some additional testing stages which could help me to find what is wrong with it.
Bart