ESP Terminal with 3.5inch SPI Capacitive Touch Display

From Elecrow
Jump to navigation Jump to search

Description

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.With the 2M pixel camera, it can easily realize face/object/scene recognition and provide more creativity in cutting-edge projects such as speech recognition/voice control. The equipped screen adopts SPI serial screen with 320*480 resolution, and the size of 3.5 inches is the best choice as a handheld/pocket terminal. The frame rate of the screen is up to 20FPS, which is sufficient for most application scenarios. If you have higher requirements for the screen, you can try this RGB screen: xxxxxxRGB link. The whole terminal is surrounded by a perfect acrylic shell, which makes the whole product look more beautiful. At the same time, it can also be fixed in other ways. With two M3 screw mounting holes, you can mount it on the wall or PLC rail. Its compatibility with the Crowtail system can provide your project with an easier implementation method and the convenience of one-stop shopping.


Esp32spi 1.png Esp32spi 2.png

Hardware Overview

Esp32spi 3.png

  • REST button. Press this button to reset the system.
  • LiPo port. Lithium battery charging interface (lithium battery not included)
  • BOOT button. Hold down the Boot button and press the RESET button to initiate firmware download mode. Users can download firmware through the serial port
  • 5V Power/Type C interface. It serves as the power supply for the development board and the communication interface between the PC and ESP-WROOM-32.
  • 6 Crowtail interfaces(2*Ana,2*Dig,1*UART,1*IIC). Users can program the ESP32-S3 to communicate with peripherals connected to the Crowtail interface.

Feature

  • Integrated ESP32-S3 module, which is support 2.4 GHz Wi-Fi and Bluetooth 5 (LE)
  • 3.5 inch TFT 320*480 resolution touch LCD display
  • Support, USB, UART, SPI, I2C, PWM, I2S communication protocols
  • Supports 1T1R mode, data rate up to 150 Mbps, Wireless Multimedia (WMM)
  • Compatible with Arduino/Micropython/Python
  • Supports hardware accelerated encryption (AES, SHA2, ECC, RSA-4096)
  • Support TYPE-C USB power supply and polymer lithium battery power supplyWith 6 Crowtail interfaces (4P 2.0 connector) , plug and play with various Crowtail sensor


Specification

Esp32spi 4.png


Schematic diagram of IO port

Esp32spi 35.png


Development environment configuration

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

https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json
Esp32spi 7.png

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

Esp32spi 8.png

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.

Download process

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

Esp32spi 10.png Esp32spi 11.png

  • 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

Example

  • Example 1 Display the screen color of the LCD
  • After the A-LCD.INO code is downloaded, the restart screen will be in a different color.

Esp32spi 16.png

  • Running result:

Esp32spi 17.png

  • Example 2 Display pictures and read TF card pictures
  • After the A-TF-PIC.INO code is downloaded, the restart screen will display the picture screen.

Esp32spi 18.png

  • Running result:

Esp32spi 19.png

  • Example 3 touch function display
  • After the A-TOUCH.INO code is downloaded, the restart screen will automatically display the XY coordinates of the touch, and the corresponding X Y values will be displayed when touching different positions

Esp32spi 20.png

  • Running result:

Esp32spi 21.png

  • Example 4 camera function display
  • After downloading the A-Camera.INO code, restart the screen and enter the camera screen.

Esp32spi 22.png

  • Running result:

Esp32spi 23.png

  • Example 5 connect GPIO port, I2C port, UART port
  • After downloading the A-A_D_PORT.INO code, restart the screen, automatically light up the LED on the GPIO port, and read the analog value from the analog port.

Esp32spi 24.png

  • Running result:

Esp32spi 25.png

  • Example 6 Connect I2C port
  • After downloading the A-IIC.INO code, restart the screen, and the I2C port peripheral will display "ELECROW".

Esp32spi 26.png

  • Running result:

Esp32spi 27.png

  • Example 7 Buzzer function
  • After the A-BUZZER.INO code is downloaded, restart the screen and the buzzer will sound.

Esp32spi 28.png

  • Example 8 Microphone
  • After downloading the A_AUDIO.INO code, restart the screen.

Esp32spi 29.png

  • Note: Here you need to choose esp32 2.0.3 version.

①Select Boards Manager in Tools.
Spi-1.png

②Select version 2.0.3.
Spi-2.png

③Complete as follows.
Spi-3.png

  • After burning, connect the arduino serial port tool, and select "serial plotter" in the tool drop-down menu.

Esp32spi 29 1.png

  • Running result:

Esp32spi 30 1.png Esp32spi 30 2.png

  • Example 9 LVGL function
  • After downloading the LVGL_SPI_test.INO code, restart the screen, and you can see various function module icons.

Esp32spi 31.png

  • Running result:

Esp32spi 32.png Esp32spi 33.png Esp32spi 34.png

Resource