awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
Bodmer avatar

Bodmer/TFT_eSPI

0
View on GitHub↗
4,805 stars·1,380 forks·C·19 views

TFT ESPI

TFT_eSPI is an Arduino TFT display library and anti-aliased graphics engine used to drive displays via SPI or parallel interfaces on ESP32, ESP8266, STM32, and RP2040 microcontrollers. It provides a DMA-accelerated display driver to increase frame rates and a sprite-based frame buffer to prevent visual flickering.

The library features an integrated touch screen interface for processing input from SPI-based controllers. It distinguishes itself with a rendering system capable of drawing anti-aliased shapes and high-quality Unicode fonts to eliminate jagged edges.

The project covers a broad range of graphics capabilities, including compressed PNG decoding, proportional text rendering, and hardware-abstraction for various display driver chips. It also manages hardware-level optimizations such as SPI bus sharing between displays and SD cards, as well as 8-bit parallel communication.

Features

  • TFT Display Drivers - Serves as a comprehensive graphics library and driver for various TFT displays across multiple microcontroller architectures.
  • Embedded Display Drivers - Provides low-level firmware for controlling various TFT screen driver chips via SPI or parallel interfaces.
  • Embedded - Enables the creation of visual user interfaces with anti-aliased shapes and flicker-free graphics on microcontrollers.
  • Anti-Aliasing Techniques - Provides a rendering engine that uses anti-aliasing to create smooth shapes and fonts without jagged edges.
  • Rasterization Techniques - Implements a rendering system that calculates sub-pixel coverage to eliminate jagged edges in shapes and fonts.
  • Embedded Graphics Engines - Uses DMA and PIO hardware to accelerate image transfers and render compressed PNGs on resource-constrained devices.
  • Anti-Aliased - Renders arcs, circles, lines, and rounded rectangles using anti-aliasing to eliminate jagged edges.
  • Off-Screen Rendering - Renders graphics to a dedicated off-screen RAM buffer before pushing them to the screen to prevent visual flickering.
  • Hardware Abstraction Layers - Provides a unified API that translates generic drawing commands into chip-specific instructions for various driver ICs.
  • Touch Controller Integration - Integrates and processes input from SPI-based touch screen controllers to enable user interaction.
  • DMA-Capable Drivers - Utilizes direct memory access to transfer image data to the display, significantly increasing frame rates.
  • Low-Latency Pixel Transfers - Utilizes direct memory access for high-speed, low-latency pixel transfers to the display hardware.
  • Anti-Aliased Typography - Displays high-quality typography using custom font files that support Unicode characters and anti-aliasing.
  • Frame Buffers - Implements off-screen RAM buffers for graphics rendering to eliminate visual flickering during screen updates.
  • Unicode Typography Renderers - Draws proportional and Unicode characters to the screen using various sizes to support multiple languages.
  • Image Decoding - Decodes and renders PNG compressed images directly onto the visual display.
  • Real-Time Image Decoding - Decompresses image data in real time from storage and renders it directly to the display buffer.
  • Parallel Communication Interfaces - Transmits pixel data across multiple 8-bit hardware lines to increase throughput compared to serial communication.
  • Parallel RGB Display Connections - Implements 8-bit parallel communication to drive displays, providing an alternative to serial SPI interfaces.
  • SPI Bus Drivers - Coordinates the use of a single SPI bus for both a display and an SD card reader.
  • Bus Arbitration - Manages a single SPI interface by toggling chip-select pins to coordinate between a display and an SD card.
  • Bus-Sharing Arbitration - Coordinates a single SPI bus to be shared between the TFT display and an SD card reader.
  • Display Data Acceleration - Increases frame rates by using DMA controllers to move image data directly to the display hardware.
  • Touch Controller Drivers - Provides a hardware abstraction layer to integrate and retrieve coordinates from SPI-based touch screen controllers.
  • Touch Event Processors - Processes raw touch events from SPI controllers to enable interactive user interface elements.
  • Typography Smoothing - Displays anti-aliased text using block-by-block updates to reduce flicker during rapid value changes.

Star history

Star history chart for bodmer/tft_espiStar history chart for bodmer/tft_espi

How this analysis was created: This summary and feature list are AI-generated from collected project material and can contain mistakes. Stars, license and language are imported from GitHub. Inclusion does not mean that we have tested or audited this project. Check the source documentation for any feature you depend on. Learn more on our About page.

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Projects sharing features with TFT ESPI

These projects share indexed features with TFT ESPI. Shared tags can include platform or build tooling; verify the primary use case before treating a result as a replacement.
  • rust-embedded/embedded-halrust-embedded avatar

    rust-embedded/embedded-hal

    2,600View on GitHub↗

    Embedded-hal is a hardware abstraction layer for embedded microcontrollers that defines common traits allowing peripheral drivers to remain entirely independent of specific hardware platforms. The library provides platform-agnostic interfaces that decouple driver logic from microcontroller architectures, utilizing zero-cost trait abstractions that compile down to direct hardware register manipulations without runtime overhead or memory allocation. The project features asynchronous execution support and synchronous-to-asynchronous adaptation, enabling non-blocking peripheral operations and coo

    Rust
    View on GitHub↗2,600
  • witnessmenow/esp32-cheap-yellow-displaywitnessmenow avatar

    witnessmenow/ESP32-Cheap-Yellow-Display

    4,123View on GitHub↗

    This project is an ESP32 display driver library and touchscreen UI framework. It provides a collection of hardware configurations and software drivers designed to control ESP32-based touchscreen displays. The repository serves as an embedded hardware pinout map, providing a guide for mapping the physical pins of the display module. It specifically enables the use of these displays as controllable touch panels within home automation hardware interfaces. The project covers embedded graphics development, including the rendering of visual interfaces and the integration of ESP32 display modules f

    Rust
    View on GitHub↗4,123
  • byrantech/laptopbyrantech avatar

    byrantech/laptop

    4,105View on GitHub↗

    This project provides open-source hardware designs for a high-end, repairable laptop. It defines a modular architecture centered on a precision-milled CNC aluminum chassis and a hardware layout that prioritizes accessibility and user-replaceable parts for long-term maintenance. The design is distinguished by the integration of a 4K AMOLED display and a custom wireless mechanical keyboard utilizing low-profile switches. The system employs a modular approach that allows the input system to be detached and used as a standalone peripheral. The technical scope covers high-performance motherboard

    KiCad Layouthardwarekeyboardlaptop
    View on GitHub↗4,105
  • espressif/arduino-esp32espressif avatar

    espressif/arduino-esp32

    16,984View on GitHub↗

    This project is an implementation of the Arduino framework for ESP32 microcontrollers, providing a core that enables firmware development using a familiar API. It functions as a microcontroller hardware abstraction layer and a firmware toolchain integration, bridging external development environments to the hardware for compilation and flashing. The system includes an embedded real-time operating system wrapper to manage multi-core execution and task scheduling, alongside a wireless communication suite for TCP/IP networking and Bluetooth Low Energy. It distinguishes itself by providing an obj

    C++
    View on GitHub↗16,984
Compare all 30 related projects→

Frequently asked questions

What does bodmer/tft_espi do?

TFT_eSPI is an Arduino TFT display library and anti-aliased graphics engine used to drive displays via SPI or parallel interfaces on ESP32, ESP8266, STM32, and RP2040 microcontrollers. It provides a DMA-accelerated display driver to increase frame rates and a sprite-based frame buffer to prevent visual flickering.

What are the main features of bodmer/tft_espi?

The main features of bodmer/tft_espi are: TFT Display Drivers, Embedded Display Drivers, Embedded, Anti-Aliasing Techniques, Rasterization Techniques, Embedded Graphics Engines, Anti-Aliased, Off-Screen Rendering.

Which projects share features with bodmer/tft_espi?

Projects with overlapping indexed features include: rust-embedded/embedded-hal — Embedded-hal is a hardware abstraction layer for embedded microcontrollers that defines common traits allowing… witnessmenow/esp32-cheap-yellow-display — This project is an ESP32 display driver library and touchscreen UI framework. It provides a collection of hardware… byrantech/laptop — This project provides open-source hardware designs for a high-end, repairable laptop. It defines a modular… espressif/arduino-esp32 — This project is an implementation of the Arduino framework for ESP32 microcontrollers, providing a core that enables… jrowberg/i2cdevlib — i2cdevlib is a collection of peripheral drivers and hardware abstraction layers designed for I2C devices. It provides… faiface/pixel — Pixel is a 2D game library and graphics engine for the Go programming language. It provides a hardware-accelerated…