Arduino IDE 2.3.3 Waveshare ESP32S3 1.28 Display

The new display definition work ok with version 2.3.3 however I can't get the serial channel working from the display. If I set the device type to ESP32S3USBOTG the serial channel works fine. Any idea why the serial channel does not work with the proper Waveshare ESP32 S3 Display 1.28 ??

Which board did you exactly select in the IDE?

The board is the:-

Waveshare ESP32S3 Touch LCD 128"

In the Arduino.h definition the description is:-

`#define USB_VID          0x1A86
#define USB_PID          0x55D3
#define USB_MANUFACTURER "Waveshare"
#define USB_PRODUCT      "ESP32-S3 Touch LCD 1.28"
#define USB_SERIAL       ""  // Empty string for MAC address`

Forgot to say
OS is MacOS Sequoia 15.1 on a MacBook Pro M2 Pro.

Note in advance: I do not have your board so can't test.

If "Waveshare ESP32S3 Touch LCD 128" is the board that you selected this might be caused by the following line in boards.txt which, to my knowledge, indicates that the CDC is used for serial prints and not the WCH chip (I could not find vid/pid 1A86/55D3 on the web).

waveshare_esp32s3_touch_lcd_128.build.cdc_on_boot=1

What you can try is to change it to

waveshare_esp32s3_touch_lcd_128.build.cdc_on_boot=0

Note: make a backup of the file.

To find where that boards.txt is, enable verbose output during compilation under file/preferences in the IDE. Compile a code and check the first few lines of the output.

I'm not a Mac user, this is the output for Windows.

FQBN: esp32:esp32:esp32s2
Using board 'esp32s2' from platform in folder: C:\Users\bugge\AppData\Local\Arduino15\packages\esp32\hardware\esp32\3.0.7
Using core 'esp32' from platform in folder: C:\Users\bugge\AppData\Local\Arduino15\packages\esp32\hardware\esp32\3.0.7
  1. Close the IDE.
  2. Navigate to the directory that you find (above it the directory is C:\Users\bugge\AppData\Local\Arduino15\packages\esp32\hardware\esp32\3.0.7) and open the file boards.txt with a normal text editor.
  3. Search for Waveshare ESP32S3 Touch LCD 128. You will find waveshare_esp32s3_touch_lcd_128.name=Waveshare ESP32S3 Touch LCD 128.
  4. Scroll a bit down (you can also straight away search for the line that need modification) and find the line waveshare_esp32s3_touch_lcd_128.build.cdc_on_boot=1 and change it to waveshare_esp32s3_touch_lcd_128.build.cdc_on_boot=0.
  5. Save the file.

Next you need to find the directory arduino-ide on your system; I can not tell you where it is. The content will look like

Delete that directory (or its content) and start the IDE; it's safe to delete that directory, if in doubt make a backup. Upload your problematic code and check if you now get serial output.

Note:
Changes that you make to boards.txt will be wiped when you downgrade/upgrade the board package.

It looks like it is the WCH CH343:

1 Like

I need to improve my search skills :frowning:

Similarly, ESP32C3 boards come in two types: with CDC and with CH-343 USB-UART

Tried your suggestion.
Works fine.
Many thanks.

Great.

You can mark the topic as having a solution by clicking the checkbox under the most useful reply. This will let others with the same problem or those that want to help know that a solution was provided.

image

Can you tell me where you found the arduino-ide directory on your Mac? Just for my records.

You can add it to the menu to have a choice, but all this until the Core is updated :grinning:

It is here on macOS machines:

/Users/<username>/Library/Application Support/arduino-ide/

(where <username> is the macOS username)


:exclamation: The Library folder is hidden by default. You can make it visible by pressing the Command+Shift+. keyboard shortcut.


It worked on my Mac but I deleted the contents of this folder instead:-

/Users//.arduinoIDE

I couldn't find the arduino-ide folder

See above :wink:

The .arduinoIDE directory contains other stuff. But maybe the arduino-ide directory was updated because you deleted the .arduinoIDE.

@sterretje Thanks for your assistance with this problem and prompt suggestions and resolution.

1 Like