← All projects in the gallery

Hello LCD for ESP-IDF

by jonathan harrocks

The starting point for ESP-IDF on a Cheap Yellow Display. It is the same design as Hello LCD. A slider drives the arc and the number above it through a widget-to-widget binding, and the button writes a new caption into the status label. No sensors and no wiring, and you can press Play in the designer to try it without flashing anything. Exported, it is an idf.py project in C with nothing of Arduino in it. main.c drives the ILI9341 through esp_lcd and Espressif's own component for that panel, reads the XPT2046 touch panel itself, and runs LVGL in a task of its own. The screens are the same files the Arduino export writes, and ui_events.c is where your own code goes. The first time it starts it asks you to touch a few crosses to calibrate the touch panel, and keeps the result on the board. Set the target to esp32, then build and flash with idf.py. The README in the project says how, and how to build it with PlatformIO instead.

About this design

Hello LCD for ESP-IDF is an LVGL interface for the ESP32-2432S028R "Cheap Yellow Display" (ILI9341 320 x 240, XPT2046 touch), with 1 screen and 8 widgets, made for ESP-IDF (C) on LVGL 9.

Screens

  • Screen1

Hardware and build

Board
ESP32-2432S028R "Cheap Yellow Display"
MCU
ESP32 (WROOM / WROVER)
Display
ILI9341
Resolution
320 x 240
Touch
XPT2046
Graphics library
esp_lcd (ESP-IDF)
LVGL
v9
Exports to
ESP-IDF (C)

Notes from the author

The starter as an ESP-IDF project in C: a dial, a readout and a button on a Cheap Yellow Display.

Using it

Open a copy in the designer and it is yours to edit: restyle the screens, move it to another board, and export the ESP-IDF (C) project. Designing is free, and a copy needs no account. Open the designer.