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. In addition to the ESP32-S3-Touch-LCD-5 main unit and its included cables, the following components are required to run the examples:

Component Preparation

Required Components

Precautions

  • 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 mode. Note that the SD_CS pin must be driven by EXIO4 of the CH422G.

  • The development board uses 3.5 mm terminal blocks to bring out peripheral pins such as CAN, I2C, RS485, and isolated I/O, facilitating on-site wiring.

  • CAN and RS485 peripherals are not connected to 120 Ω termination resistors via a switch by default. Optionally turn the switch ON to enable termination resistor connection.

  • The 5inch screen occupies most GPIOs. The development board uses the CH422G IO expander chip for reset, backlight on/off, and other controls.

  • Isolated I/O is controlled via the CH422G. For specific usage, refer to the IO_Test example. To understand the driver principles, please refer to the ESP32-S3-Touch-LCD-5 example code package or the relevant datasheet.

  • The PH2.0 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 is recommended.

  • The board's CH422G and touch controller 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: - 51 - - - - - - - - - - - - 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          // or CONFIG_LV_MEM_CUSTOM=y
#define LV_MEMCPY_MEMSET_STD 1 // or CONFIG_LV_MEMCPY_MEMSET_STD=y
#define LV_ATTRIBUTE_FAST_MEM IRAM_ATTR // or CONFIG_LV_ATTRIBUTE_FAST_MEM=y

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