Lesson01 Introduction to ESP32 terminal screen

From Elecrow
Jump to navigation Jump to search

HMI (human-machine interface)

HMI (Human-Machine Interface) refers to the interface that interacts between humans and machines or equipment through software and hardware. It can help people easily grasp the running status of machines or equipment, control their execution actions, etc., making human-computer interaction simpler and more intuitive. HMI is commonly used in industrial and automation control systems to monitor and control production processes and equipment. The components of HMI include: display, touch screen, control buttons, indicator lights, alarm system, data transmission interface, etc. In terms of software, HMI is mainly composed of human-computer interaction interface, control logic program, communication protocol and so on. Users can control the running status of the equipment through the touch screen, control buttons and other operation interfaces, and at the same time observe the feedback information such as the running status of the equipment. The advantage of HMI is that it can make the control system more efficient, accurate, and reliable, while saving human resources and time costs. HMIs are also often used in home automation systems, such as smart home control panels, to allow occupants to control home devices more conveniently. In short, HMI is an interface that realizes the interaction between human and machine or equipment through the combination of software and hardware. It can help users better grasp and control the operating status of equipment, and improve work efficiency and performance.

Introduction to compatible hardware for this series of courses

ESP32 Terminal Series
A: ESP32 Terminal- 3.5inch RGB Display
This Elecrow terminal is a microcontroller based on the ESP32 master. It adopts Xtensa 32-bit LX7 dual-core processor with a main frequency of up to 240Mhz, supports 2.4GHz Wi-Fi and Bluetooth 5 (LE), and can easily handle common edge terminal device application scenarios, such as industrial control, agricultural production environment detection and processing, intelligent logistics monitoring, smart home scenarios and more. This terminal also has a 3.5-inch parallel RGB interface capacitive touch screen with a resolution of 320*480 to ensure perfect image output at a frame rate (FPS) of 60. On the back of this terminal, we have introduced 4 Crowtail interfaces, which can be used with our Crowtail series sensors, plug and play, and create more interesting projects quickly and conveniently. In addition, it is also equipped with an SD card slot for extended storage (SPI leads) and a buzzer function. It support ESP-IDF and Arduino IDE development, and is compatible with Python/Micropython/Arduino. It also support LVGL, which is the most popular free and open-source embedded graphics library to create beautiful UIs for any MCU, MPU and display type.

Esp32rgb 1.png

B :ESP32 Terminal- 3.5inch SPI Display
This handheld terminal is based on the ESP32 controller, equipped with a powerful ESP32-S3 chip, and supports 2.4GHz Wi-Fi and Bluetooth 5 (LE), providing more powerful computing and processing capabilities for IoT terminal applications. It is suitable for various scenarios, such as industrial IoT control terminals, smart agricultural terminals, personal smart home monitoring terminals, and personal DIY projects. Thanks to the scalability of the ESP32-S3-N16RB module, it can lead to various interfaces. It not only has Crowtail's digital port, analog port, UART, and IIC interface, but also integrates a MEMS microphone, camera interface, and buzzer function. It supports ESP-IDF and Arduino IDE development and is compatible with Python/Micropython/Arduino. It also supports LVGL, which is the most popular free and open-source embedded graphics library to create beautiful UIs for any MCU, MPU, and display type.

Esp32spi 1.png Esp32spi 2.png

Wizee ESP32 Display Series
A: xxx
B: xxx

Development environment configuration

1)software download

  • 1. Please go to the official website https://www.arduino.cc/ to download the Arduino IDE development tool and download the corresponding library file, install the tool, click the start icon: open as shown in the figure:

Esp32spi 5.png

  • 2. Click the "File" menu, select "Preferences" in the drop-down menu, and then the picture will appear: Unzip the downloaded library file and put it in the libraries folder.

Esp32spi 6.png

  • Add the ESP32 S3 URL as follows:

Esp32spi 7.png

  • The tool automatically downloads and updates the corresponding model, check the steps as shown in the figure:

Esp32spi 8.png

2)Software settings

  • Set as shown

Esp32spi 9.png

  • warn:

If the CH340G driver is not installed on your PC, please install the CH340G driver first, or switch the SWITCH switch to the USB position and connect it with a USB cable.

3)Download process

  • 1. Connect the motherboard and computer through a USB to type-c data cable;


  • 2. Click on the tool on the arduino software and select the corresponding serial port number;

Esp32spi 12.png

  • 3.Click to open the serial port assistant, then click the boot button on the motherboard, and then press the reset button until the serial port assistant displays "waiting for download".

Esp32spi 13.png

  • 4. Click "upload" to upload the program to the ESP32 motherboard

Esp32spi 14.png

  • Until the prompt upload is successful, as shown in the figure:

Esp32spi 15.png


In the first lesson, we learned the basic concepts and applications of the Human Machine Interface (HMI), while introducing the related ESP32 terminal screen family. We also learned how to configure the Arduino environment, which is an important step in the development of ESP32, which provides us with a convenient development platform. By using these screens and the related software environment, we can easily develop various graphical interfaces and user interfaces. In the following lessons, we will learn more deeply how to use various software and ESP32 to build various applications, so as to achieve richer and more complex functions.