Skip to main content

User Guide

To help users quickly understand the various functions of the product, we provide a series of test examples to familiarize customers with the use of each interface. Besides the ESP32-S3-Touch-LCD-4.3 host and the included cables, the following items are required to run the example:

Component Preparation

  • ESP32-S3-Touch-LCD-4.3 ×1
  • TF card ×1 (not required, needed only for TF card examples)
  • USB cable Type-A male → Type-C male ×1
  • USB to RS485 Bidirectional Converter ×1 (not required, needed only for RS485 interface examples)
  • USB to CAN Adapter / Analyzer ×1 (not required, needed only for CAN interface examples)

ESP32-Arduino-47

Precautions

  • The development board features an automatic download circuit. The Type C port labeled UART is used for program download and log printing. After downloading the program, press the RESET button to run it.

  • When using, pay attention to the PCB antenna area. Avoid having other metal or plastic parts in contact with the PCB antenna.

  • The TF card can use SPI/MMC communication. Note that the SD_CS pin must be driven by EXIO4 of the CH422G.

  • The development board uses PH2.0 header to bring out ADC, CAN, I2C, and RS485 peripheral pins. Use PH2.0 to 2.54mm male wire to connect sensors.

  • CAN and RS485 peripherals are connected to 120 Ω termination resistors via jumpers by default. NC can be selected to remove the termination resistor connection.

  • The 4.3inch screen occupies most GPIOs. The development board uses the CH422G chip to expand IOs for reset, backlight on/off, and other controls.

  • The PH1.25 lithium battery connector supports only a single-cell 3.7 V lithium battery. Do not connect multiple battery packs simultaneously for charging or discharging. A single-cell capacity of 2000 mAh or less is recommended.

  • The CH422G and touch of the board occupy the following I²C slave addresses. Do not use I²C devices with the same addresses:

         0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f
    00: - - - - - - - - - - - - - - - -
    10: - - - - - - - - - - - - - - - -
    20: 20 21 22 23 24 25 26 27 - - - - - - - -
    30: 30 31 32 33 34 35 36 37 38 39 3a 3b 3c 3d 3e 3f
    40: - - - - - - - - - - - - - - - -
    50: - - - - - - - - - - - - - - 5d -
    60: - - - - - - - - - - - - - - - -
    70: - - - - - - - - - - - - - - - -

⚠️ USB Download Precautions (Important)

Programming the development board via USB

If the port is not recognized, please enter Boot mode:

  1. Press and hold the BOOT button
  2. Connect the USB cable to the computer
  3. Release the BOOT button

After the download is complete, press the RESET button to run the program.

Performance Notes (ESP-IDF & LVGL)

Currently, under the ESP-IDF v5.3 environment, using single-core to run the LVGL benchmark example:

  • Average frame rate limit: 26 FPS
  • Interface frame rate: 41 FPS
  • PCLK: 21 MHz

The following options must be configured in menuconfig before compilation:

CONFIG_FREERTOS_HZ=1000
CONFIG_ESP_DEFAULT_CPU_FREQ_MHZ_240=y
CONFIG_ESPTOOLPY_FLASHMODE_QIO=y
CONFIG_ESPTOOLPY_FLASHFREQ_120M=y # Must be consistent with PSRAM
CONFIG_SPIRAM_MODE_OCT=y
CONFIG_IDF_EXPERIMENTAL_FEATURES=y
CONFIG_SPIRAM_SPEED_120M=y # Must be consistent with FLASH
CONFIG_SPIRAM_FETCH_INSTRUCTIONS=y
CONFIG_SPIRAM_RODATA=y
CONFIG_ESP32S3_DATA_CACHE_LINE_64B=y
CONFIG_COMPILER_OPTIMIZATION_PERF=y

The following LVGL configuration items also help improve the frame rate (LVGL v8.3):

#define LV_MEM_CUSTOM 1
#define LV_MEMCPY_MEMSET_STD 1
#define LV_ATTRIBUTE_FAST_MEM IRAM_ATTR

For detailed LCD and LVGL performance descriptions, please refer to Performance Documentation