Skip to content

Hardware & Pinout

Radovan Dvorský edited this page Sep 7, 2026 · 1 revision

Hardware & Pinout Reference

ESP-MeteoPlaneRadar is specifically engineered for the Waveshare ESP32-S3-Touch-LCD-2.1 development board. This board integrates a high-performance ESP32-S3 module, a round 2.1-inch 480x480 IPS display with ST7701 controller, capacitive touch via CST820, an I2C I/O expander, real-time clock, and IMU sensor.


📐 Board Overview & Specifications

Component Specification Description
SoC Espressif ESP32-S3-WROOM-1 Dual-core 32-bit Xtensa LX7 @ 240 MHz
Flash 16 MB SPI Flash High-capacity flash partitioned for dual 3.2MB OTA apps + NVS
PSRAM 8 MB Octal-SPI (OPI) PSRAM High-speed memory used for zero-copy double-buffered framebuffers and ADS-B caching
Display 2.1-inch Round IPS LCD 480 × 480 resolution, full 16-bit 65K colors (RGB565), wide viewing angles
Display Driver Sitronix ST7701 3-wire SPI for command setup + 16-bit parallel RGB interface for high-speed video DMA
Touchscreen Hynitron CST820 Capacitive touch controller with gesture and multi-point support
I/O Expander TCA9554PWR I2C GPIO expander driving LCD reset, touch reset, LCD chip select, and panel power
RTC NXP PCF85063 Ultra-low power real-time clock (I2C)
IMU QST QMI8658 6-axis inertial measurement unit (accelerometer + gyroscope)
Connectivity 2.4 GHz Wi-Fi (802.11 b/g/n) & BLE 5.0 Integrated PCB antenna
Power 5V DC via USB-C or headers Typical operating current: 280–420 mA

🔌 Pinout & Hardware Connections

1. Display Interface (ST7701)

The ST7701 utilizes a hybrid interface: SPI is used during boot initialization to configure registers, while a dedicated 16-bit RGB DMA bus continuously scans out pixels directly from ESP32-S3 PSRAM.

SPI Configuration Pins

Function GPIO Notes
LCD_CLK GPIO 2 Serial clock for ST7701 command register initialization
LCD_MOSI GPIO 1 Serial data out for ST7701 commands
LCD_CS EXIO 3 Chip Select driven via TCA9554 I/O Expander
LCD_RST EXIO 1 Hardware reset driven via TCA9554 I/O Expander
LCD_PWR EXIO 8 Display power rail control via TCA9554

16-Bit RGB Interface (esp_lcd_panel_rgb)

Signal GPIO Description
RGB_HSYNC GPIO 38 Horizontal sync signal
RGB_VSYNC GPIO 39 Vertical sync signal (VSYNC interrupt driver)
RGB_DE GPIO 40 Data enable signal
RGB_PCLK GPIO 41 Pixel clock (configured to 8 MHz for PSRAM bandwidth optimization)
RGB_D0 .. RGB_D4 (Blue) 5, 45, 48, 47, 21 Blue 5-bit color bus
RGB_D5 .. RGB_D10 (Green) 14, 13, 12, 11, 10, 9 Green 6-bit color bus
RGB_D11 .. RGB_D15 (Red) 46, 3, 8, 18, 17 Red 5-bit color bus

Backlight Control

Function GPIO Configuration
LCD_BL GPIO 6 Hardware LEDC PWM, 20 kHz frequency, 10-bit resolution (0–100% duty cycle)

2. I2C Bus & Peripherals

The I2C bus operates at 400 kHz (Wire interface) and connects all on-board digital sensors and controllers.

Peripheral I2C 7-bit Address Interrupt Pin / Extra Lines
TCA9554PWR (I/O Expander) 0x20 Controls board reset lines and LCD power
CST820 (Capacitive Touch) 0x15 GPIO 16 (Interrupt), EXIO 2 (Reset)
PCF85063 (RTC) 0x51 Backup battery powered real-time clock
QMI8658 (IMU 6-Axis) 0x6B Accelerometer & Gyroscope

TCA9554 I/O Expander Pin Assignment

  • EXIO 1: LCD_RST (Active LOW panel reset)
  • EXIO 2: TOUCH_RST (Active LOW touch reset)
  • EXIO 3: LCD_CS (ST7701 chip select)
  • EXIO 8: LCD_PWR (Power regulator enable for the panel)

⚡ Power Considerations

  1. USB-C Power: Use a stable 5V / 1A or higher power adapter and a good quality USB-C cable. Low voltage or noisy USB ports can cause Wi-Fi brownouts.
  2. Current Draw:
    • Idle screen on (100% brightness): ~280 mA
    • Wi-Fi transmission burst + radar download: ~380–430 mA
    • Night mode / dimmed backlight: ~150–200 mA
  3. Thermal Management: The ESP32-S3 runs cool under normal operation. If installed inside an enclosure or 3D printed housing, ensure ventilation slots are provided around the PCB.

Clone this wiki locally