Skip to content

CrowPanel Advance 2.4inch Arduino Course V12

# CrowPanel Advance 2.4-inch HMI ESP32-S3 Screen ### Arduino IDE Course Guide **320 x 240 IPS Touchscreen | ESP32-S3 | Arduino IDE | V1.2** ---

Product Model: CrowPanel-Advance-2.4-HMI-ESP32-S3-AI-Powered-IPS-Touch-Screen
Hardware Version: V1.2
Number of Lessons: 9 lessons: Lessons 1-7, Lesson 9, and Lesson 10
Development Platform: Arduino IDE + ESP32-S3
Learning Path: Environment Setup -> Serial Verification -> Network Audio -> LVGL Interface -> SD Card Display -> Sensors -> Wireless Communication -> Microphone Recording and Playback

1. Course Overview

This course is designed for the CrowPanel Advance 2.4-inch HMI ESP32-S3 Screen V1.2, using Arduino IDE as the development platform. The course starts with serial output verification and gradually covers network audio playback, PWM and LVGL light control, SD card image slideshow, DHT20 temperature and humidity display, nRF24L01 communication, LoRaWAN AT parameter control, Zigbee light control, and microphone recording and playback.

After completing this course, users will understand the basic development workflow for this screen on the Arduino platform and will be able to extend their own HMI applications using the display, touch, audio, sensors, and wireless modules.

2. Preparation Before You Begin

  • Hardware: CrowPanel Advance 2.4-inch HMI ESP32-S3 Screen V1.2
  • USB Cable: Use a USB cable that supports data transfer
  • Development Software: Arduino IDE
  • Getting Started with Arduino IDE: https://www.elecrow.com/pub/wiki/arduino_advance.html
  • Board: ESP32S3 Dev Module
  • Flash Size: 16MB (128Mb)
  • PSRAM: OPI PSRAM
  • Partition Scheme: Huge APP (3MB No OTA/1MB SPIFFS)

The board package must be esp32 by Espressif Systems version 3.3.8.

3. Library Version Requirements

The course documentation requires importing the required course library files according to the instructions in Lesson 01 and keeping the library files consistent with the screen size. Based on the course documents in this directory, the 2.4 / 2.8-inch Arduino courses use the following libraries or components:

Library Import: Link to two ways to import third-party Arduino IDE libraries

Library / Component Version / Source Purpose
esp32 by Espressif Systems 3.3.8 ESP32-S3 Arduino Core, explicitly required by Lessons 01/03/09/10
lvgl 9.1.0 LVGL UI and SquareLine Studio exported projects
SD 1.3.0 SD card file reading and image display
TFT_eSPI 2.5.43 Arduino graphics display library
U8g2 2.36.19 Font / graphics display support
XPT2046_Touchscreen 1.4 Touchscreen support library
Crowbits_DHT20 Use the course-provided library files DHT20 temperature and humidity sensor
lv_conf.h Use the course-provided configuration file LVGL configuration file
ESP_I2S.h Built into Arduino-ESP32 3.3.8 Microphone recording and audio playback
Wire / SPI / FS / SD Built into Arduino / ESP32 Core I2C, SPI, file system, and SD card

Note: For LVGL projects, use LVGL 9.1.0. When creating a project in SquareLine Studio, you also need to select LVGL 9.1.0 and set the LVGL Include Path to lvgl.h.

4. Notes on ESP32S3_120M

After installing the ESP32 board package, you need to replace the corresponding files in the ESP32 framework directory. Download the officially provided ESP32S3_120M files:

ESP32S3_120M file

Copy the files in the ESP32S3_120M folder to the corresponding idf-release_* directory of the Arduino ESP32 framework, and replace the existing files when prompted. The directory name changes depending on the ESP32 Core version. Use the actual directory for esp32 by Espressif Systems version 3.3.8 installed on your computer:

C:\Users\your-username\AppData\Local\Arduino15\packages\esp32\tools\esp32-arduino-libs\idf-release_*

2.4inch_Arduino_01

ESP32S3_120M contains ESP32 framework files recompiled after enabling high-speed PSRAM communication mode. After replacement, the PSRAM frequency can be increased to 120 MHz, which helps improve display refresh performance and reduce screen flicker or jitter during operation.

5. Course Directory

Lesson Lesson Name Main Content
01 Serial Output and Monitor Serial output and monitor verification
02 Network Audio Playback Network audio playback
03 PWM and LVGL Light Control PWM and LVGL light control
04 SD Card Image Slideshow SD card image slideshow display
05 I2C and DHT20 Display I2C and DHT20 temperature and humidity display
06 nRF24L01 Communication nRF24L01 wireless communication
07 LoRaWAN AT Parameter Control LoRaWAN AT parameter control
09 Zigbee Light Control Zigbee light control
10 Microphone Record Playback Microphone recording and playback

This series does not include Lesson 8. Please study in the order of Lessons 1-7, Lesson 9, and Lesson 10.

Main Code Link: Arduino_Code

Lesson 01 | Serial Output and Monitor Verification

Lesson Link: https://www.elecrow.com/wiki/2.4_2.8_Arduino-01-Serial_Output_and_Monitor.html


Lesson 02 | Network Audio Playback

Lesson Link: https://www.elecrow.com/wiki/2.4_2.8_Arduino-02-Network_Audio_Playback.html


Lesson 03 | PWM and LVGL Light Control

Lesson Link: https://www.elecrow.com/wiki/2.4_2.8_Arduino-03-PWM_and_LVGL_Light_Control.html


Lesson 04 | SD Card Image Slideshow

Lesson Link: https://www.elecrow.com/wiki/2.4_2.8_Arduino-04-SD_Card_Image_Slideshow.html


Lesson 05 | I2C and DHT20 Temperature and Humidity Display

Lesson Link: https://www.elecrow.com/wiki/2.4_2.8_Arduino-05-I2C_and_DHT20_Display.html


Lesson 06 | nRF24L01 Wireless Communication

Lesson Link: https://www.elecrow.com/wiki/2.4_2.8_Arduino-06-nRF24L01_Communication.html


Lesson 07 | LoRaWAN AT Parameter Control

Lesson Link: https://www.elecrow.com/wiki/2.4_2.8_Arduino-07-LoRaWAN_AT_Parameter_Control.html


Lesson 09 | Zigbee Light Control

Lesson Link: https://www.elecrow.com/wiki/2.4_2.8_Arduino-09-Zigbee_Light_Control.html


Lesson 10 | Microphone Recording and Playback

Lesson Link: https://www.elecrow.com/wiki/2.4_2.8_Arduino-10-Microphone_Record_Playback.html


  1. Basic Verification: Complete Lesson 01 first to confirm that Arduino IDE, the board package, serial output, and program upload are working properly.
  2. Audio and Interface: Lessons 02-03 cover network audio playback, PWM output, and LVGL interface control.
  3. Peripheral Display: Lessons 04-05 cover SD card image display and DHT20 temperature and humidity data display.
  4. Wireless Expansion: Lessons 06-07 cover nRF24L01 and LoRaWAN AT parameter control.
  5. Application Expansion: Lessons 09-10 cover Zigbee light control and microphone recording and playback.

**Start with serial verification, then gradually complete display, audio, sensor, and wireless communication functions to build a complete foundation for Arduino HMI applications.**