ESP32-S3-Touch-LCD-1.85

From Waveshare Wiki
Jump to: navigation, search
ESP32-S3-Touch-LCD-1.85
ESP32-S3-Touch-LCD-1.85

1.85 inch, I2C QSPI
360×360
{{{name2}}}

{{{name3}}}

{{{name4}}}

{{{name5}}}

{{{name6}}}

Overview

Introduction

Parameters

Parameter Name Parameter
Interface USB Type-C
Master chip ESP32-S3
Display type TFT
Display control chips Display: ST77916
Touch: CST816
Onboard devices Posture sensor: QMI8658
RTC clock: PCF85063
Micro SD
MIC
Buzzer
Battery recharging management module
Dimensions 73.06 (H) mm x 50.54 (V) mm

Interfaces

  • I2C interface
PINOUT FUNC Description
GND GND Power ground
3V3 3V3 External output 3.3V
SCL SCL (GPIO10) I2C clock line, cannot be used as regular GPIO
SDA SDA (GPIO11) I2C data cable, cannot be used as regular GPIO
  • UART interface
PINOUT FUNC Description
GND GND Power ground
3V3 3V3 External output 3.3V
TXD TXD (GPIO43) Transmit UART data or be used as regular GPIO
RXD RXD(GPIO44) Receive UART data or be used as 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 audio library files with smaller memory usage (otherwise it will cause excessive SRAM usage).

Internal hardware connection

LCD

LCD Pinout ESP32S3
LCD_SDA0 GPIO46
LCD_SDA1 GPIO45
LCD_SDA2 GPIO42
LCD_SDA3 GPIO41
LCD_SCK GPIO40
LCD_CS GPIO21
LCD_TE GPIO18
LCD_RST EXIO2
LCD_BL GPIO5
TP_SDA GPIO1
TP_SCL GPIO3
TP_INT GPIO4
TP_RST EXIO1

SD Card

SD Card ESP32S3
SD_D0 / MISO GPIO16
SD_CMD / MOSI GPIO17
SD_SCK / SCLK GPIO14
SD_D3 / CS EXIO3
SD_D1 NC
SD_D2 NC

QMI

QMI8658C ESP32S3
IMU_SCL GPIO10
IMU_SDA GPIO11
IMU_INT1 EXIO5
IMU_INT2 EXIO4

RTC

PCF85063ATL ESP32S3
RTC_SCL GPIO10
RTC_SDA GPIO11
RTC_INT GPIO9

MIC

Buzzer ESP32S3
MIC_WS GPIO2
MIC_SCK GPIO15
MIC_SD GPIO39

Buzzer

PCF85063ATL ESP32S3
Speak_DIN GPIO47
Speak_LRCK GPIO38
Speak_BCK GPIO48

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

ESP32-Arduino-3.0.2 1.png

  • Open Arduino IDE after installation

ESP32-Arduino-3.0.2 2.png

  • Enter Preferences page

ESP32-Arduino-3.0.2 3.png

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

ESP32-Arduino-3.0.2 4.png
ESP32-Arduino-3.0.2 5.png

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

ESP32-Arduino-3.0.2 6.png

  • 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)

ESP32-Arduino-3.0.2 7.png
ESP32-Arduino-3.0.2 8.png

  • Restart Arduino IDE after installation

ESP32-Arduino-3.0.2 9.png

Click to expand if installation fails

  • Installation of Version 3.0.2 failed

ESP32-Arduino-3.0.2 Fail 1.png

Platform Link
Google https://drive.google.com/file/d/148TjmwMdjqJjDl9GTHsibB_Hl6eUMEuI/view?usp=drive_link

ESP32-Arduino-3.0.2 Fail 2.png

  • Enter from resource manager at the path "c:\Users\Waveshare\AppData\Local\Arduino15\staging\packages" (Waveshare is the computer username and hidden files need to be displayied)

ESP32-Arduino-3.0.2 Fail 3.png

  • Uncompress the downloaded file above to the packages folder

ESP32-Arduino-3.0.2 Fail 4.png

  • Perform installation operation again

ESP32-Arduino-3.0.2 7.png

  • Restart Arduino IDE after installation

ESP32-Arduino-3.0.2 9.png

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).

ESP32-S3-Touch-LCD-1.85 Lib 1.png

ESP32-S3-Touch-LCD-1.85 Lib 2.png

  • 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.

ESP32-S3-Touch-LCD-1.85 Lib 3.png

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

ESP32-S3-LCD-1.47 Lib 4.png
ESP32-S3-LCD-1.47 Lib 5.png

  • Delete the downloaded lvgl library (if not installed earlier, ignore this step)

ESP32-S3-Touch-LCD-1.85 Lib 4.png

  • Install the two libraries provided and create a new Lib folder in the example path

ESP32-S3-Touch-LCD-1.85 Lib 5.png

ESP32-S3-Touch-LCD-1.85 Lib 6.png

  • Go on and install NTPClient library

ESP32-S3-Touch-LCD-1.85 Lib 7.png

  • Install SensorLib library

ESP32-S3-Touch-LCD-1.85 Lib 8.png

  • Complete library installation

Program Example

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

ESP32-S3-Touch-LCD-1.85 example 1.png

  • Set board parameters

ESP32-S3-Touch-LCD-1.85 example 2.png

  • 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)

ESP32-S3-Touch-LCD-1.85 example 3.png

  • Two pages will appear after successful burning
  • Page 1 will display the following parameters:
Parameter FUNC Description
SD Card Display the size of SD card Please note, only SD cards with 16GB and below are supported
Flash Size Display the size of Flash Current onboard 16MB Flash
Angular deflection Display board angular deflection Display deflections in three directions
RTC Time Display RTC time Display 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 number Display the number of scanned WIFI devices The 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)

ESP32-S3-Touch-LCD-1.85 Program parsing 1.png
   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"

ESP32-S3-Touch-LCD-1.85 Program parsing 3.png

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)

ESP32-S3-Touch-LCD-1.85 Program parsing 2.png
   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 "你好新中国"

ESP32-S3-Touch-LCD-1.85 Program parsing 4.png

Resource

Document

Schematic Diagram

ESP32-S3-Touch-LCD-1.85 Schematic diagram

Demo

   lvgl library
   audioI2S library
   Demo

FAQ

 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.


 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



Technical Support

If you need technical support or have any feedback/review, please click the Submit Now button to submit a ticket, Our support team will check and reply to you within 1 to 2 working days. Please be patient as we make every effort to help you to resolve the issue.
Working Time: 9 AM - 6 PM GMT+8 (Monday to Friday)