GC9A01

Drives TFT Displays Up To 240x240 Pixels At 262K Colors (18bit)

The GC9A01 is a versatile TFT display driver IC commonly used for square or round displays (equal height and width) with resolutions of up to 240x240 pixels at full 18bit color (262 thousand different colors).

Its low power consumption and sleep mode make this driver ideal for medium or small size portable products such as digital cellular phones, smart phone, MP3 and PMP where long battery life is a major concern

Overview

This driver is used by many square and round TFT display boards up to a resolution of 240x240. This includes the popular watch-like shaped round displays.

The driver supports SPI and the Parallel interface, as well as some lesser-used options. In typical applications, it is controlled via SPI.

Item Description
Maximum Resolution 240(H)x240(V) pixels
Supported Resolutions 80x160, 120x120, 128x128, 160x160, 240x240
Maximum Color Depth 18bit (262K)
Reduced Color Mode Yes, 3bit (8 colors)
Source and Gate Lines 360/32
Memory 129,600 bytes GRAM
Voltage 2.5-3.3V
Power Consumption 14mA (with backlight)
Sleep-In Power Consumption In the range of uA (no exact value in datasheet)
Sleep Command 0x10 (enter), 0x11 (exit)
Interface SPI and Parallel

Power Saving

In battery-operated devices or other environments where low power consumption is a priority, the GC9A01 driver supports multiple power-saving modes. These modes reduce power consumption in five stages:

  1. Partial Mode: A part of the display is used with a maximum of 262,144 colors.
  2. Idle Mode: The full display is used with reduced colors (8 colors).
  3. A combination of Partial Mode and Idle Mode.
  4. Sleep Mode: The DC-DC converter, internal oscillator, and panel driver circuit are stopped. The MCU interface and memory continue to operate, and the contents of the memory are preserved.
  5. Power Off: Both VCI and IOVCC are cut off, meaning there is no communication with the driver and memory is lost.

Strategies

For many applications, using the 8-Color Mode is sufficient (e.g., indicator displays that only need a few colors) to reduce power consumption during normal operation.

If the driver is used with displays that do not use the maximum resolution, Partial Mode can turn off areas of the display that are not in use.

Before sending your microcontroller to deep sleep, issue command 0x10 to put the display driver into its own sleep mode. The content currently displayed will remain visible on the screen. Command 0x11 will wake the display (if necessary).

It is extremely important to manually send the display driver to its sleep state before putting the microcontroller into deep sleep. When the display is in sleep mode, typical deep sleep consumption of the system will be in the uA range. Without putting the display to sleep, its power consumption will be in the 10-20mA range.

Programming

ESPHome Support

In March 2024, ESPHome added long-requested support for the GC9A01 to the official ILI9xxx TFT LCD Component. Now, you no longer need external code or libraries for this display driver.

The ILI9xxx component, originally intended for ILI9xxx drivers (as the component name suggests), has expanded over the years to support a wide range of TFT drivers. As a result, this component now provides interchangeable support for various TFT displays, including the GC9A01.

This is particularly beneficial, as it makes ESPHome configurations compatible with a broad range of TFT displays.

At the time of writing, ESPHome documentation does not yet explicitly list GC9A01 as being supported by their ILI9xxx component.

PlatformIO/Arduino Support

Adafruit offers a free Adafruit library for GC9A01 drivers, and the GC9A01 driver is also supported by the TFT_eSPI library.

Slow Website?

This website is very fast, and pages should appear instantly. If this site is slow for you, then your routing may be messed up, and this issue does not only affect done.land, but potentially a few other websites and downloads as well. Here are simple steps to speed up your Internet experience and fix issues with slow websites and downloads..

Comments

Please do leave comments below. I am using utteran.ce, an open-source and ad-free light-weight commenting system.

Here is how your comments are stored

Whenever you leave a comment, a new github issue is created on your behalf.

  • All comments become trackable issues in the Github Issues section, and I (and you) can follow up on them.

  • There is no third-party provider, no disrupting ads, and everything remains transparent inside github.

Github Users Yes, Spammers No

To keep spammers out and comments attributable, all you do is log in using your (free) github account and grant utteranc.es the permission to submit issues on your behalf.

If you don’t have a github account yet, go get yourself one - it’s free and simple.

If for any reason you do not feel comfortable with letting the commenting system submit issues for you, then visit Github Issues directly, i.e. by clicking the red button Submit Issue at the bottom of each page, and submit your issue manually. You control everything.

Discussions

For chit-chat and quick questions, feel free to visit and participate in Discussions. They work much like classic forums or bulletin boards. Just keep in mind: your valued input isn’t equally well trackable there.

  Show on Github    Submit Issue

(content created Jan 07, 2025)