From Geeetech Wiki
Jump to: navigation, search



HY-TFT220 is a 2.2 inch TFT LCD Screen module, 220*176 (resolution), 65K color, 28pins interface , not just a LCD breakout, but include the Touch screen, SD card. So it’s a powerful extension module for your project.

This Screen includes a controller HX8340, it’s 8 bit data interface, easy to drive by many MCU like STM32 ,AVR and 8051.HY-TFT220 is designed with a touch controller in it . The touch IC is XPT2046 , and touch interface is included in the 40 pins breakout. Another useful extension in this module is the SD Card socket . It use the SPI mode to operate the SD card, the SPI interface include in the 40pins breakout.

Application Ideas

  • Digital Photo Frame (DPF)
  • Video terminals
  • Instrumentation
  • GPS
  • Game consoles
  • Video phones and Portable VCD, DVD


  • 2.2" Color TFT LCD
  • 220 x 176 Resolution
  • 65,536 Colors (16 Bit)
  • Powerful 8 Bit Microcontroller(HX8340)
  • Built-in video RAM buffer
  • Integrated Resistive Touchscreen
  • Integrated SD card
  • 5V Operating Voltage
  • LED Backlight



The UTFT library is required to be installed to get this screen model display. This library is especially designed for TFT LCD screen model. The library requires the following connections.

  • Connect HY-TFT220 to Arduino Mega2560:

2.2TFT Mega.jpg

RS -> D38
WR -> D39
CS(pin6) -> D40
RSET-> D41
RD -> 3.3V
DB0->DB7 to D22->D29
  • Connect HY-TFT220 to Arduino UNO

2.2TFT UNO.jpg

DB0->DB7 to D0->D7
RD -> 3.3V

Note: The TFT controller model needs to be declared in the initializing statement. UTFT myGLCD(38,39,40,41) needs to be modified as myGLCD(ITDB22,38,39,40,41) when using Arduino Mega2560.UTFT myGLCD(ITDB22,19,18,17,16) needs to be commented when using Aduino UNO. Otherwise it just show a blank screen. In practice, RS, WR, CS, RSET can be connected to any free pin. But the pin number must be in accord with myGLCD(RS,WR,CS,RST).

Touch Screen:

The LCD has a 2.2" 4-wire resistive touch screen lying over it. The Touch library needs to be installed to get it works. This library is designed for 2.4’’ TFT, 2.8” TFT LCD screen module.

  • Interface the touchscreen to Arduino Mega2560:

Default pin number in example code:

CS(pin30) -> D5
IN -> D4
OUT-> D3
IRQ -> D2
  • Interface the touchscreen to Arduino UNO:

Default pin number in example code:

CS(pin30) -> D10
IN -> A0
OUT-> D9
IRQ -> D8

Note:TCLK, TCS, TDIN, TDOUT, IRQ also can be connected to any free pin. But the pin number must be in accord with the touch screen initializing statement myTouch(DCLK,CS,IN,OUT,IRQ).

Calibrate the touch screen: The default setting is not accurate for 2.2” TFT module, so you need to calibrate when using 2.2” TFT module. A program to calibrate the touch screen is included in the example. If you touch screen is inaccurate, you need to run touch_calibration. Follow the on-screen instruction to calibrate the touch screen. Better not use your finger to calibrate it, use your accessory touch pen to pressure the frontsight with stength. Then record the calibration parameters and apply them in ITDB02_Touch.cpp in your touch screen library.

How to buy it

Click here to buy 2.2"TFT LCD