ESP32 2.01 Watch Arduino 15 Lesson Course Guide
CrowPanel 2.01-inch HMI ESP32 Watch Display¶
15-Lesson Arduino IDE Course Guide¶
240 × 296 IPS Touchscreen · ESP32-S3 · Arduino IDE
Product: CrowPanel 2.01inch-HMI ESP32 Watch Display 240×296 IPS Touch Screen
Lessons: 15
Development Platform: Arduino IDE + ESP32-S3
Learning Path: Environment Setup → Hardware Interaction → Wireless Communication → Sensors and Audio → Power Management
1. Course Overview¶
This course series is designed for the CrowPanel 2.01-inch HMI ESP32 Watch Display. It guides learners through the onboard hardware and common ESP32-S3 features in the following order: development environment → basic input → graphics and touch → communication → sensors → audio → power management.
The series begins with Arduino IDE configuration and then covers the BOOT button, IPS display, touch control, LVGL graphics, rotary encoder, real-time clock, Wi-Fi, BLE, accelerometer, vibration motor, battery monitoring, speaker, microphone, and low-power sleep. After completing all lessons, learners will have the foundation needed to independently develop watch interfaces, connected features, interactive controls, and low-power applications.
2. Before You Begin¶
- Hardware: CrowPanel 2.01-inch HMI ESP32 Watch Display
- USB Cable: A USB cable capable of data transfer
- Development Software: Arduino IDE 2.3.6 (recommended if other versions fail to compile)
- Board Package: Espressif Systems ESP32 3.3.3
- Test Device: A phone or computer supporting 2.4 GHz Wi-Fi and BLE
- Basic Configuration: Board, Flash, PSRAM, and partition settings completed in Lesson 01
3. Course Catalog¶
| Lesson | Title | Main Topic |
|---|---|---|
| 01 | Arduino IDE Setup and Serial Verification | Configure the ESP32-S3 environment and verify uploading and serial output |
| 02 | BOOT Button Event Detection | Detect press, single-click, double-click, and long-press events |
| 03 | Display, Touch, and LVGL | Drive the GC9309 display, AXS5106L touch controller, and LVGL 9.1 |
| 04 | Rotary Encoder and Push Button | Detect clockwise and counterclockwise rotation and button events |
| 05 | PCF8563 RTC Basics | Read the date, time, weekday, timestamp, and low-voltage flag |
| 06 | Wi-Fi Scanning and Connection | Scan wireless networks and connect in station mode |
| 07 | Wi-Fi and RTC Time Synchronization | Retrieve NTP time and write it to the PCF8563 RTC |
| 08 | BLE Communication | Create a BLE service and characteristic for reading, writing, and notifications |
| 09 | Accelerometer and Motion Detection | Read SC7A20HTR three-axis data and detect significant motion |
| 10 | Vibration Motor Control | Control vibration patterns using GPIO and non-blocking timing |
| 11 | Battery Voltage and Charging Status | Measure battery voltage with the ADC and read charging status |
| 12 | I2S Speaker Playback | Generate and play a 440 Hz sine-wave test tone |
| 13 | PDM Microphone Input | Capture audio and calculate peak and RMS levels |
| 14 | Audio Recording and Playback | Process a recording in OPI PSRAM and play it through the speaker |
| 15 | Power Management and Light Sleep | Power down peripherals, enter light sleep, and configure wake-up sources |
4. Lesson Links¶
Lesson 01|Set Up the Arduino IDE and Verify Serial Output¶
Lesson Link: View Lesson 01
Lesson 02|Read the BOOT Button and Print Events¶
Lesson Link: View Lesson 02
Lesson 03|GC9309 Display, AXS5106L Touch, and LVGL 9.1¶
Lesson Link: View Lesson 03
Lesson 04|Rotary Encoder and Push Button¶
Lesson Link: View Lesson 04
Lesson 05|Read the PCF8563 Real-Time Clock¶
Lesson Link: View Lesson 05
Lesson 06|Scan for Wi-Fi and Connect in Station Mode¶
Lesson Link: View Lesson 06
Lesson 07|Synchronize the PCF8563 RTC over NTP¶
Lesson Link: View Lesson 07
Lesson 08|BLE Services and Characteristic Communication¶
Lesson Link: View Lesson 08
Lesson 09|SC7A20HTR Accelerometer and Motion Detection¶
Lesson Link: View Lesson 09
Lesson 10|Control the Vibration Motor¶
Lesson Link: View Lesson 10
Lesson 11|Monitor Battery Voltage and Charging Status¶
Lesson Link: View Lesson 11
Lesson 12|Play an I2S Speaker Test Tone¶
Lesson Link: View Lesson 12
Lesson 13|Capture PDM Microphone Input and Measure Volume¶
Lesson Link: View Lesson 13
Lesson 14|Record Audio and Play It Back¶
Lesson Link: View Lesson 14
Lesson 15|Power Management and Light-Sleep Wake-Up¶
Lesson Link: View Lesson 15
5. Recommended Learning Order¶
Follow Lessons 01 through 15 in sequence:
- Development Foundation: Lesson 01 establishes the environment required by every later lesson.
- Hardware Interaction: Lessons 02–05 cover buttons, display, touch, rotary input, and the RTC.
- Wireless Communication: Lessons 06–08 cover Wi-Fi, NTP time synchronization, and BLE.
- Sensing and Feedback: Lessons 09–11 cover motion detection, vibration feedback, and battery monitoring.
- Audio Features: Lessons 12–14 cover speaker output, microphone input, and audio loopback.
- Low-Power Development: Lesson 15 provides an advanced introduction to power management and wake-up sources.