• sales

    +86-0755-88291180

ESP32-S3-Touch-LCD-1.85 User Guide

Introduction

Parameters

Parameter NameParameter
InterfaceUSB Type-C
Master chipESP32-S3
Display typeTFT
Display control chipsDisplay: ST77916
Touch: CST816
Onboard devicesPosture sensor: QMI8658
RTC clock: PCF85063
Micro SD
MIC
Buzzer
Battery recharging management module
Dimensions73.06 (H) mm x 50.54 (V) mm

Interfaces

  • I2C interface
PINOUTFUNCDescription
GNDGNDPower ground
3V33V3External output 3.3V
SCLSCL (GPIO10)I2C clock line, cannot be used as a regular GPIO
SDASDA (GPIO11)I2C data cable, cannot be used as a regular GPIO
  • UART interface
PINOUTFUNCDescription
GNDGNDPower ground
3V33V3External output 3.3V
TXDTXD (GPIO43)Transmit UART data or be used as a regular GPIO
RXDRXD(GPIO44)Receive UART data or be used as a regular GPIO

Onboard Function

Please note that when enabling all onboard devices through the provided example, if you want to continue using onboard Bluetooth devices, it is recommended to use other audio library files with smaller memory usage (otherwise it will cause excessive SRAM usage).

Internal hardware connection


LCD

LCD PinoutESP32S3
LCD_SDA0GPIO46
LCD_SDA1GPIO45
LCD_SDA2GPIO42
LCD_SDA3GPIO41
LCD_SCKGPIO40
LCD_CSGPIO21
LCD_TEGPIO18
LCD_RSTEXIO2
LCD_BLGPIO5
TP_SDAGPIO1
TP_SCLGPIO3
TP_INTGPIO4
TP_RSTEXIO1

SD Card

SD CardESP32S3
SD_D0 / MISOGPIO16
SD_CMD / MOSIGPIO17
SD_SCK / SCLKGPIO14
SD_D3 / CSEXIO3
SD_D1NC
SD_D2NC

QMI

QMI8658CESP32S3
IMU_SCLGPIO10
IMU_SDAGPIO11
IMU_INT1EXIO5
IMU_INT2EXIO4

RTC

PCF85063ATLESP32S3
RTC_SCLGPIO10
RTC_SDAGPIO11
RTC_INTGPIO9

MIC

BuzzerESP32S3
MIC_WSGPIO2
MIC_SCKGPIO15
MIC_SDGPIO39

Buzzer

PCF85063ATLESP32S3
Speak_DINGPIO47
Speak_LRCKGPIO38
Speak_BCKGPIO48

Usage in Arduino

  • Please note that ESP32 3.0.2 on Arduino is developed based on ESP-IDF v5.1, which is significantly different from the previous ones on ESP-IDF V4. X. After performing the following operations, programs that were originally able to run normally may need to be adjusted before they can be used.
  • Please note that the computer username must be in English, as using a Chinese username may result in compilation errors.

Environment Setting

  • Open Arduino IDE after installation
  • Enter Preferences page


  • Add one or more JSON links
https://espressif.github.io/arduino-esp32/package_esp32_index.json



  • Change the project folder to C:\Users\Waveshare\AppData\Local\Arduino15\packages (Waveshare is the computer username)


  • Enter development board manager, search for esp32, select Version 3.0.2 from esp32 by Espressif Systems below, and click INSTALL (if unable to install properly, you can try using a phone hotspot)


  • Restart Arduino IDE after installatio


Install Library Files

  • Please note whether the library has been installed before. If it has been installed, please archive the original library to prevent errors and failures when running other programs.
  • Enter the example folder ESP32_S3_Touch_LCD_1.85\LVGL_Arduino, and double click LVGL_Arduino.ino to open the example.
  • Search for lvgl library and install it (this operation is to set up a library folder in Arduino environment. If other libraries have already been installed before and following folder exists, this step is not necessary).



  • Enter the path of library file c:\Users\Waveshare\AppData\Local\Arduino15\packages\libraries (Waveshare is the computer username). If you are unsure which folder it is in, please go to Preferences to check.



  • If you don't know the path, you can check it as below:



  • Delete the downloaded lvgl library (if not installed earlier, ignore this step)
  • Install the two libraries provided and create a new Lib folder in the example path



  • Go on and install NTPClient library


  • Install SensorLib library


  • Complete library installation

Program Example

  • Reopen the example
  • Select model ESP32S3 Dev Module and port


  • Set board parameters


  • Compile and burn the example (Note: There will be two burning progresses during the burning. Please wait for the prompt to complete the burning before operating the device)
  • Two pages will appear after successful burning
  • Page 1 will display the following parameters:
ParameterFUNCDescription
SD CardDisplay the size of SD cardPlease note, only SD cards with 16GB and below are supported
Flash SizeDisplay the size of FlashCurrent onboard 16MB Flash
Angular deflectionDisplay board angular deflectionDisplay deflections in three directions
RTC TimeDisplay RTC timeDisplay current RTC time

The reason why RTC time is inconsistent with current time is that data cannot be retained in a power-off state. To maintain correct RTC time, RTC battery needs to be connected to update the RTC time.

Wireless numberDisplay the number of scanned WIFI devicesThe word "Scan Finish" will be displayed at the end when the scan finishes
  • Page 2 is the UI page for playing MP3 audio from the root directory of the SD card
  • This program defaults to enabling voice recognition, with the wake-up word "hi ESP". After waking up, the command can be spoken when the backlight turns dark (if the backlight does not turn dark, it means it has not been woken up. The recognition requirements are strict, and the pronunciation needs to be standard with a slower speaking speed)
  • MIC Test audio has provided several formats of MIC test audio. (Please note that if hi ESP wake-up fails, please adjust the audio to the wake-up word playback location and replay)
  • Please do not use voice recognition when playing audio through the speaker
  • The reason why the wake-up word is played twice in the test audio is that the current firmware version requires the device to be woken up for the first time (similar to device focusing), and the current firmware does not allow this function to be turned off
// Commands
Turn on the backlight
Turn off the backlight
Backlight is brightest
Backlight is darkest
  • Below examples describes environment configurations and program instructions of some modules

Example Processing Instructions

MIC


Implement English recognition --> (click on the right to expand)

   English recognition environment setting

  • The initial state of the environment defaults to English recognition environment. If it is not converted to Chinese, the following modifications will not be made
  • If it has been modified to Chinese recognition before, download the provided program file Use_the_English_model_program
  • Enter the path C:\Users\Waveshare\AppData\Local\Arduino15\packages\esp32\hardware\esp32\3.0.2\libraries\ESP_SR\src (Waveshare is the computer user name)
  • Use the downloaded file to replace esp32-hal-sr.c in this path
  • Download English model English_model_-_wake-up_words (hi_esp)
  • Enter the path C:\Users\Waveshare\AppData\Local\Arduino15\packages\esp32\tools\esp32-arduino-libs\idf-release_v5.1-bd2b9390ef\esp32s3\esp_sr (Waveshare is the computer user name)
  • Use the downloaded file to replace srmodels.bin in this path
  • Modify the recognition instructions in the program to English instructions (phonemes)


   Generate English phonemes

  • Download Generate_English_command file
  • Click Win + R to enter the command window, and use "cd path" to enter the downloaded folder
  • Install en_g2p
pip install en_g2p
  • Execute miltinet_g2p.py file
python miltinet_g2p.py
  • Execute gen_sr_commands.py to generate phoneme instructions
python gen_sr_commands.py "English to be converted into phonemes"
Example: python gen_sr_commands.py "hello word"



Implement Chinese recognition -->(click on the right to expand)

   Chinese recognition environment setting

  • The initial state of the environment defaults to English recognition environment. If it has not been modified to Chinese recognition before, download the provided program file Use_the_Chinese_model_program
  • Enter the path C:\Users\Waveshare\AppData\Local\Arduino15\packages\esp32\hardware\esp32\3.0.2\libraries\ESP_SR\src (Waveshare is the computer user name)
  • Use the downloaded file to replace esp32-hal-sr.c in this path
  • Download Chinese model Chinese_model_-_wake-up_words (hi_乐鑫)
  • Enter the path C:\Users\Waveshare\AppData\Local\Arduino15\packages\esp32\tools\esp32-arduino-libs\idf-release_v5.1-bd2b9390ef\esp32s3\esp_sr (Waveshare is the computer user name)
  • Use the downloaded file to replace srmodels.bin in this path
  • Modify the recognition instructions in the program to Chinese instructions (pinyin)


   Generate Chinese pinyin

  • Download Generate_Chinese_command file
  • Click Win + R to enter the command window, and use "cd path" to enter the downloaded folder
  • Execute multinet_pinyin.py to generate Chinese pinyin
python multinet_pinyin.py "Chinese to be converted to pinyin"
Example: python multinet_pinyin.py "你好新中国"


Resource

Document

Schematic Diagram

ESP32-S3-Touch-LCD-1.85 Schematic diagram

Demo

   lvgl Library
   audioI2S Library
   Demo

FAQ

Question:The module keeps resetting, and the recognition status will flicker when viewed from the device manager?

 Answer:

This situation may be due to the instability of USB port caused by a blank Flash. To solve this problem, long press BOOT button and press RESET at the same time, then release RESET, and then release BOOT button. At this time, the module will enter download mode to burn firmware (program) to solve the problem.


Question:If you redownloaded the module program after you had downloaded it before, sometimes the serial port cannot be connected or the burning failed?

 Answer:

You can long press BOOT button and press RESET at the same time, then release RESET, and then release BOOT button. At this time, the module will enter download mode, which can solve most of the problems related to inability to download.


Support

Monday-Friday (9:30-6:30) Saturday (9:30-5:30)

Mobile: +86  13434470212

Email: services01@spotpear.com