Adafruit
Adafruit Qualia ESP32-S3 for RGB-666 TFT Displays
· MPN: ADA5800
Built for larger TTL-interface TFTs, this development board makes it much easier to experiment with 40-pin RGB-666 displays using an ESP32-S3. It is aimed at...
Built for larger TTL-interface TFTs, this development board makes it much easier to experiment with 40-pin RGB-666 displays using an ESP32-S3. It is aimed at panels that go beyond the usual SPI-driven sizes and resolutions, including square, round and bar-style displays that need continuous pixel data rather than an onboard frame buffer.
At the heart of the board is an ESP32-S3 module with plenty of memory for display work, using the chip's built-in RGB display peripheral to drive the panel with fast full-screen updates. Adafruit routes the TFT connection for 5-6-5 colour data along with HSync, VSync, Data Enable and Pixel Clock, making it suitable for graphics, images, animation and similar display-heavy projects.
The 40-pin connector pinout also supports capacitive touch overlays, with touch lines wired to the shared I2C bus. A PCA9554 I/O expander helps free up the ESP32-S3's pins for display reset and initialisation duties, while still leaving a 4-pin SPI port, two additional analog GPIO pins, hardware UART TX for debugging, and a STEMMA QT / Qwiic connector for adding sensors or other I2C devices.
Power and programming are handled over USB-C, and the onboard TPS61169 constant-current driver provides backlight control for compatible TFTs. This is the development board only, so you will need to supply your own RGB-666 display and set up the panel's initialisation code, dimensions and timing values in Arduino or CircuitPython. Adafruit notes known-working examples including 2.1" 480x480 round panels, 4" 720x720 square and round panels, and a 4.6" 960x320 bar display.
Features:
- Display interface: Designed for displays that use the 40-pin RGB-666 connector.
- Common panel types: This pin order is most commonly seen on square, round and bar displays.
- Controller: Uses an ESP32-S3 module with 16 MB of Flash and 8 MB of octal PSRAM.
- RGB output: Uses the ESP32-S3's built-in RGB display peripheral.
- TFT signals: 16 pins are connected to the TFT for 5-6-5 RGB colour, plus HSync, VSync, Data Enable and Pixel Clock.
- Touch support: The connector includes pins for a capacitive touch overlay.
- Touch wiring: Capacitive touch is wired to the ESP32-S3's I2C port.
- Backlight driver: Includes a TPS61169 constant current backlight control circuit.
- Backlight range: The backlight circuit can get up to 30V forward voltage and can be configured for 25mA-200mA in 25mA increments (default is 25mA).
- USB connectivity: Power and programming is provided over a USB C connector.
- Native USB: The USB C connector is wired to the ESP32-S3's native USB port.
- Debug access: The hardware UART TX pin is available for debugging.
- I/O expander: Includes a PCA9554 I/O expander on the shared I2C bus.
- Display control: Arduino or CircuitPython can be instructed to use the expander to reset and initialise the display if necessary.
- Button inputs: Remaining expander pins are connected to two right-angle buttons.
- Backlight control: Remaining expander pins are connected to the display backlight.
- SPI breakout: The expander allows a full 4-pin SPI port to be available.
- Extra GPIO: Two more analog GPIO pins are available.
- Expansion port: Includes a shared I2C port with a STEMMA QT / Qwiic connector.
- Software ecosystem: Known-working displays can be used in Arduino or CircuitPython.
- Important note: You will need to program the driver initialisation code, dimensions, and pulse widths for your display.
- Included in the box: This is just the development board; a display is not included.
Specifications:
- Product Dimensions: 57.3mm x 44.4mm x 7.1mm / 2.3" x 1.7" x 0.3"
- Product Weight: 13.3g / 0.5oz
A solid choice for custom UI projects, instrument panels, media demos and other builds that need a bigger, brighter TFT than typical SPI displays can handle.
Jargon buster
Plain-language definitions for the technical terms used above.
- breakout
- A breakout is a small circuit board that makes a tiny or hard-to-solder component easier to connect to with standard pins. It matters because this OLED module can be wired into a microcontroller project without needing to solder directly to the display’s fine contacts.
- CircuitPython
- A beginner-friendly version of Python designed to run directly on microcontroller boards. If a product supports CircuitPython, you can often program it by copying code files onto the board rather than setting up a more complex toolchain.
- constant-current driver
- A constant-current driver supplies a set current even as the load voltage changes. For a TFT backlight, this helps keep brightness stable and prevents the LEDs from being overdriven.
- Data Enable
- Data Enable is a display timing signal that marks when the pixel data lines contain active image data. It matters because many RGB TFT panels rely on this signal to know which clocked data should appear on the screen.
- ESP32
- ESP32 is a family of microcontroller modules with built-in wireless features such as Bluetooth and WiFi. Knowing this product uses an ESP32-based module helps explain how it provides wireless serial communication and firmware update features.
- frame buffer
- A frame buffer is memory that stores a complete image before it is shown on a display. Displays without their own frame buffer need the controller to continuously send pixel data, which affects the choice of microcontroller and software library.
- GPIO
- General-purpose input/output pins are microcontroller pins you can set in software to read signals, switch devices on and off, or connect to peripherals. The number of GPIO pins matters because it limits how many buttons, LEDs, sensors, and other parts you can wire directly to the board.
- HSync
- Horizontal sync is a timing signal that tells a display when a new row of pixels is starting. It matters when setting up RGB TFT panels because the wrong timing can give a shifted, rolling, or blank image.
- I/O expander
- An I/O expander is a chip that provides extra input and output pins controlled through a bus such as I2C. It matters when a board has many display signals, because it helps manage buttons, resets, or control lines without using up scarce microcontroller pins.
- I2C
- I2C is a two-wire communication bus used by many sensors and small modules. It matters because several I2C devices can share the same two wires, but each device needs a compatible address and your controller must support I2C.
- native USB
- Native USB means the microcontroller itself handles USB communication, rather than using a separate USB-to-serial chip. This matters for programming, debugging, and projects that need the board to act directly as a USB device.
- octal PSRAM
- Octal PSRAM is external pseudo-static RAM that uses an eight-line data interface for higher bandwidth than simpler memory connections. It matters for display projects because large screens and animations can need more working memory than the microcontroller has built in.
- PCA9554
- The PCA9554 is an I/O expander chip that adds extra digital input and output pins over an I2C bus. On a display driver board, it can handle support signals such as reset, buttons, or backlight control while leaving the main microcontroller pins free.
- Pixel Clock
- The pixel clock is the timing pulse that tells a display when to read each pixel’s colour data. It matters because the clock rate must match the panel’s resolution and timing requirements for the image to display correctly.
- Qwiic
- Qwiic is a plug-in connector system for I2C devices that uses small 4-pin cables, so you can connect compatible sensors without soldering. It matters because your controller or adapter also needs Qwiic, or you will need a cable or breakout to wire it up.
- RGB
- Short for red, green and blue, usually referring to an LED that can mix those three colours. It matters because controlling an RGB LED teaches how separate outputs combine to create different colours.
- RGB display peripheral
- A built-in hardware block in some microcontrollers that generates the parallel RGB data and timing signals needed by certain LCD panels. It matters because it can drive larger displays more smoothly than trying to create those signals entirely in software.
- RGB-666
- A parallel display colour interface that sends 6 bits each for red, green and blue, using many pins to stream pixel data to a screen. It matters because RGB-666 panels need a driver board with the right connector, timing signals, and software setup, rather than the simpler wiring used by small SPI displays.
- SPI
- A fast serial communication bus often used for displays, memory cards, and sensors. It matters because SPI devices need specific pins for clock and data, plus a separate chip-select line for each device.
- STEMMA
- A plug-and-cable connection system used on some maker electronics boards to make wiring simpler. If a product uses STEMMA, you need the matching cable or connector type to plug it in without soldering.
- STEMMA QT
- A small plug-in connector system for I2C boards that lets you connect compatible sensors and controllers without soldering. It matters because it can make wiring faster and less error-prone, especially when adding several small modules to a project.
- TFT
- A thin-film transistor display is a common type of colour LCD used for graphics screens. Knowing a product is for TFTs helps you check that the driver board matches the display’s connector, resolution, backlight, and signalling method.
- TPS61169
- The TPS61169 is a boost-style LED backlight driver chip used to power display backlights at a controlled current. It matters because TFT backlights often need a higher voltage and regulated current rather than being powered directly from a microcontroller pin.
- UART
- UART is a simple serial connection that sends data over separate transmit and receive wires, often labelled TX and RX. It matters because this module is designed to replace a wired UART cable with a wireless link while keeping the same serial data format.
- USB-C
- A modern reversible USB connector used for power and data connections. On this product it matters because it can connect directly to a computer as well as to a microcontroller project.
- VSync
- Vertical sync is a timing signal that tells a display when a new full screen frame is starting. It matters because RGB TFT panels often require the correct VSync timing for stable full-screen updates.
Find this product in
Microcontrollers
Supplier page — adafruit.com
Supplier Description · 1.4 MB · Click any page to view full size
PCA9554 Datasheet
Datasheet · 1.6 MB · Click any page to view full size
ESP32-S3 Datasheet
Datasheet · 1.0 MB · Click any page to view full size
RGB-666 Datasheet
Datasheet · 2.3 MB · Click any page to view full size