The DM-TFT22-102 display module, specifications and other resources are available from

  • 2.2"
  • SD-card slot
  • 262K color depth
  • 128x160
  • SPI interface
  • 2 LED backlit

The display module has a 40-pin connector and requires a shield (DM-ADTAU-001) to be compatible with Arduino pinning.


The following pins are used (not including GND and VCC) when connected to the DM-ADTAU-001 adapter:

Arduino PinFunction
A2Display Reset
A3ChipSelect for display
A4Display Read/Write
A5Display Data/Command
D08-bit display interface
D18-bit display interface
D28-bit display interface
D38-bit display interface
D48-bit display interface
D58-bit display interface 1)
D68-bit display interface
D78-bit display interface
D10ChipSelect for SD Card and Touch Detect pin 2)
D11SPI MOSI for SD Card
D12SPI MISO for SD Card
D13SPI SCLK for SD Card

1) For LPC1549 some hardware settings are needed. Look at for details.

2) The functionallity of the D10 pin is controlled with the slider on the DM-ADTAU-001 adapter board. It must be in the SD_CS position for SD Card to work. The DM-TFT22-102 does not have touch support so the T_IRQ position just disables SD Card.


The display module has been tested with the following platforms:

LPCXpresso1549The LPC1549 uses ports D0 and D1 for printf (STDIO_UART_RX and STDIO_UART_TX). Those two pins are part of the display's 8-bit interface. The direct consequence is that printf cannot be used in any code that uses this display.
EA LPC4088 QuickStart Board
with a LPC4088 QSB Base Board
Add comment


There is a library to get you started with the displays:

Import libraryDmTftLibrary

Driver Library for our displays

To use the library:


#include "mbed.h"

#include "DmTftS6D0164.h"

DmTftS6D0164 tft;  /* DM_TFT22_102 */

int main() {
  tft.drawString(20, 20, "x:");
  tft.drawString(100, 20, "y:");
  while(true) {

To use the SD Card include the SDFileSystem library in your project and initialize like this:


#include "mbed.h"

#include "DmTftS6D0164.h"
#include "SDFileSystem.h"

/* Displays with adapter */
#define DM_PIN_CS_SDCARD     D10
#define DM_PIN_SD_SPI_MOSI   D11
#define DM_PIN_SD_SPI_MISO   D12
#define DM_PIN_SD_SPI_SCLK   D13

DmTftS6D0164 tft;  /* DM_TFT22_102 */

SDFileSystem sd(DM_PIN_SD_SPI_MOSI, DM_PIN_SD_SPI_MISO, DM_PIN_SD_SPI_SCLK, DM_PIN_CS_SDCARD, "sd"); // mosi,miso,clk,cs

DigitalInOut csSDCard(DM_PIN_CS_SDCARD, PIN_OUTPUT, PullUp, 1);

int main() {
  const char* fname = "/sd/logop565.bmp";

  while (true) {
    FILE *fp = fopen(fname, "r");
    if (fp != NULL) {

There are also some demo programs:

Import programdm_sdcard_with_adapter

Shows how to use a display and the onboard SD Card. Requires a display module with an adapter

Import programdm_main

Shows how to use the display. Draws a bitmap from internal flash, some geometric shapes and some text

Import programdm_bubbles

Shows how to use the display. Draws circles that bounce around on the display.

Please log in to post comments.