ESP32 Cheap Yellow Display: Projects, Pinout, and Community Documentation
Building a community around a cheap ESP32 Display with a touch screen
At a glance
- What is it?
- The ESP32 Cheap Yellow Display (CYD) repository is a community-maintained documentation hub built around the ESP32-2432S028R, a $15 ESP32 module with a 2.8-inch resistive touchscreen. The repository does not ship a software library; it provides setup guides, example code in multiple frameworks, pin reference, troubleshooting pages, and 3D printable cases.
- Who is it for?
- The CYD repository is most useful for anyone who has the hardware in hand and needs a reliable starting point. The setup guide, pin reference, and Basics examples reduce the time from unboxing to a working display significantly compared to tracking down scattered vendor documentation.
- Can I use it commercially?
- Yes. MIT is a permissive licence: you can use, modify and sell software built on it, as long as you keep its copyright and licence notices.
- Is it still maintained?
- Yes. The repository last received commits 13 days ago.
- What is it written in?
- Mainly Rust, according to GitHub's language statistics.
Answers come from the project's GitHub data, last synced on September 30, 2026, and from our analysis. They are not legal advice.
Editorial analysis
What the CYD Is and Why the Vendor Documentation Falls Short
The ESP32-2432S028R is sold under various names by multiple vendors on AliExpress and through Makerfabs, but the name does not roll off the tongue, as the README puts it. The unofficial name Cheap Yellow Display, or CYD, was proposed in this repository to give the hardware a consistent identifier for community discussion.
The hardware combines an ESP32 microcontroller with WiFi and Bluetooth, a 320 by 240 pixel 2.8-inch LCD, a resistive touch screen, a USB port for power and programming, an SD card slot, an onboard LED, and additional GPIO pins. The price is approximately $15 delivered, which positions it as an accessible entry point for display projects without soldering or assembling discrete components.
The problem the repository exists to solve is that the vendor-supplied documentation consists of a single link to a zip file on a random website, as the README states. The repository owner previously created a similar community around the ESP32 Trinity board and applied the same approach here: comprehensive documentation, working example code, and a place for the community to share projects.
Repository Layout: Guides, Examples, and Hardware Reference
The repository is organised around reference pages and an Examples directory rather than a single software package. The top-level files and directories serve specific purposes.
SETUP.md is the intended entry point for anyone who just received the hardware. It covers environment setup, driver installation, and the first steps to get code running on the device. PINS.md documents which GPIO pins are used internally by the display, touch controller, SD card, and LED, and which pins are free for external use. This matters because some pins that appear available are actually wired to internal peripherals.
TROUBLESHOOTING.md addresses common problems, ADDONS.md lists hardware add-ons that expand the CYD's capabilities, and Mods/README.md covers hardware modifications to the board itself.
The Examples directory contains subdirectories for different frameworks and libraries:
- Examples/Basics: example code using the TFT_eSPI library, which is the default and recommended starting point. - Examples/AlternativeLibraries: examples using other Arduino-compatible display libraries. - Examples/ESPHome: configuration examples for ESPHome, which allows integrating the CYD with Home Assistant. - Examples/LVGL8 and Examples/LVGL9: examples using the LVGL embedded graphics library. - Examples/Micropython: examples for MicroPython users. - Examples/NanoFramework: examples for the .NET nanoFramework. - Examples/Rust: examples for the Rust embedded ecosystem. - Examples/ESP-IDF: examples using Espressif's native IDF framework. - Examples/openHASP: examples for the openHASP project. - Examples/Projects: community-contributed complete projects.
The 3dModels directory provides printable stands and cases. The DisplayConfig directory contains display configuration files for different CYD variants, since hardware revisions exist with slightly different pin assignments.
Getting Started: TFT_eSPI, the Default Library
The Basics examples use TFT_eSPI as the display library, and SETUP.md describes the configuration steps for it. TFT_eSPI requires a User_Setup.h file that sets the pin numbers for the SPI bus, the chip select lines for the display and touch controller, and the display driver chip. The CYD uses the ILI9341 driver for the display and the XPT2046 chip for resistive touch.
The setup page documents which values to use in User_Setup.h specifically for the CYD. This is one of the most common pain points when using any TFT_eSPI project on new hardware, and having a pre-documented configuration removes a significant amount of trial and error.
The repository does not contain a library distribution or a package.json/library.json that would make it installable directly through a package manager. Users clone the repository to access the examples and reference files, then follow the instructions in SETUP.md to configure their Arduino IDE or PlatformIO environment. A library.json file is present at the top level, suggesting PlatformIO registry integration is available, but the setup documentation covers the manual configuration path in detail.
Variants, Revisions, and Identifying Your Hardware
The README includes a section on identifying whether a given board is actually a CYD. The hardware is sold under several product names and has gone through revisions with different pinouts. The Variants directory in the repository covers the known variations, and the DisplayConfig directory holds configuration files for each.
The Makerfabs listing is noted in the README as typically including a 16GB SD card. Makerfabs also notes an EU import duty for orders from that supplier. The AliExpress listings include both affiliate links and a direct link, and the README specifies to look for the 2.8-inch version when searching, since similar boards with different sizes exist.
This variation in hardware revisions is a real constraint. A configuration that works on one production batch may need pin adjustments for another. PINS.md and the DisplayConfig directory exist specifically to address this, but users should check which variant they have before assuming any example code will run without modification.
Limitations: Resistive Touch, No Native Package, Community Maintenance
The CYD uses a resistive touchscreen, not a capacitive one. Resistive touch requires physical pressure and does not support multi-touch gestures. It is adequate for selecting menu items and tapping buttons in simple interfaces, but it is not the right technology for fluid gesture-based UIs.
The repository is community documentation rather than a software library with a versioned API. There are no GitHub releases. Updates are pushed to the main branch without tagged versions, so a project that depends on a specific example file has no mechanism to pin to a known-good state other than a commit hash.
The OriginalDocumentation directory in the repository contains vendor-supplied files that are not covered by the MIT licence. The README states explicitly that those files carry a different licence that the repository owner does not have the right to grant. Any use of files from that directory requires checking the vendor's original terms.
The hardware is sold by third-party vendors and is not an officially supported Espressif product. Hardware quality, delivery times, and whether the exact pinout matches the documentation depend on which vendor and batch the board came from.
CYD vs. M5Stack: Budget Community Hardware vs. Integrated Product
M5Stack is an ESP32-based hardware family from a manufacturer that designs its own enclosures, connectors, and software stack. M5Stack devices are more expensive than the CYD, but they come with a manufacturer-backed SDK, official documentation, and a consistent hardware revision that does not vary by vendor batch.
The CYD is cheaper and simpler in scope. It is a single bare PCB with a display, not a modular system. The software support around it is community-maintained rather than vendor-maintained. This makes the CYD the better choice when the goal is a low-cost display for a custom project and the user is comfortable reading community documentation and potentially debugging hardware quirks. M5Stack is the better choice when predictable hardware, official SDK support, and manufacturer-provided examples are more important than the lowest possible unit cost.
Maintenance, Translations, and MIT Licence
The repository was last pushed on 2026-09-18, and the README and supporting documents are updated as the community contributes. There are no tagged releases, but the project has community translations into French, German, Traditional Chinese, Russian, Portuguese, and Spanish, hosted in separate forks.
A Discord server is linked in the README for community discussion. The repository owner states they are no longer creating hardware products but is maintaining this documentation project to serve the community.
The project is licensed under MIT, with the explicit exception of the OriginalDocumentation directory, which contains vendor-supplied files outside the owner's rights to licence. The MIT licence applies to all other files in the repository, permitting use, modification, and redistribution with attribution.
Editorial conclusion
The CYD repository is most useful for anyone who has the hardware in hand and needs a reliable starting point. The setup guide, pin reference, and Basics examples reduce the time from unboxing to a working display significantly compared to tracking down scattered vendor documentation. Engineers who want polished out-of-the-box software, a manufacturer-backed SDK, or certified hardware should look at a more premium ESP32 module. If the primary goal is building a custom display project with minimal hardware cost and a community that has already solved the common problems, clone the repository, read SETUP.md first, and check PINS.md before wiring anything external.
Frequently asked questions
How much does the ESP32 Cheap Yellow Display cost?
The README describes the ESP32-2432S028R as costing about $15 delivered. It is available through AliExpress listings and through Makerfabs, with prices varying slightly by vendor.
What can I do with a Cheap Yellow Display?
The README describes it as useful for people getting started with hardware, for experienced makers who want to build projects without assembling hardware from scratch, and for anyone who wants to build display-based projects quickly. The Examples directory includes projects for home automation via ESPHome, LVGL-based interfaces, and complete community projects.
What connector does the Cheap Yellow Display use for programming?
The CYD uses USB for both power and programming, according to the hardware features listed in the README. No additional programmer hardware is required.
Official sources
Add this badge to your README
If you maintain this project, the badge below links readers to this analysis and shows its maintenance status from the daily GitHub snapshot. Paste the markdown into your README; add ?metric=license or ?metric=stars to the image URL for a different field.
[](https://hysenlabs.com/projects/witnessmenow-esp32-cheap-yellow-display)