Multi-Touch Display Shield Reference Manual


The Multi-Touch Display Shield has been retired and is no longer for sale in our store.

The Multi-Touch Display Shield is a gorgeous 2.8“ touchscreen display with a powerful on-board microcontroller that performs graphics processing tasks. The display is a capacitive touchscreen with QVGA resolution (320×240) and 2 finger multi-touch support.

The most compelling aspect of the Multi-Touch Display Shield is the programming experience provided by its Multi-Touch Display System (MTDS) Firmware and the associated libraries. These allow you to design sleek, stylish user interfaces very quickly and with very little code. The timing dependent tasks are handled by the firmware, so integrating the display into existing projects is also a snap. Some of the key functionality provided by the libraries include the ability to draw basic shapes and text, draw images stored on microSD with binary transparency, draw buttons and easily check if they have been pressed, and check the status and location of the user's two fingers. The libraries are supported in Arduino IDE and Xilinx SDK, and have been tested with Ardiuno, chipKIT and Arty host boards.

Download This Reference Manual
  • Coming Soon


  • 2.8” Display with QVGA resolution (320×240)
  • 2 Finger Capacitive touch panel
  • Powerful PIC32MZ Microcontroller
  • Design a beautiful UI with only a few lines of code using libraries for Arduino IDE and Xilinx SDK
  • Easily draw images with binary transparency from files stored on microSD
  • Drop stylish buttons and check their status at will using intuitive function calls
  • Standard Arduino Shield header for SPI control
  • For use with Arduino, chipKIT and Arty platforms

Functional Description

The Multi-Touch Display Shield has an on-board PIC32MZ microncontroller that is running the MTDS firmware. To communicate with the device, you must use the MTDS and MyDisp libraries available and documented on the MTDS resource center. This library requires that the host SPI controller pinout matches Figure 1 below (this is not required for Zynq or FPGA based host boards). Arduino and chipKIT host boards should use the Arduino IDE libraries, and Xilinx FPGA or Zynq based host boards should use the PmodMTDS IP core and the libraries included with it. For information on downloading and using the PmodMTDS IP core see the MTDS resource center.

Figure 1. Shield Pinout

Signal Description Shield Pin
SPI Bus Signals
MISO SPI Master In, Slave Out SPI MISO
MOSI SPI Master Out, Slave In SPI MOSI
CS Chip Select 10
ALT_CS Alternative Chip Select 8
Power and Control
RESET Reset signal from host. Resets the firmware RST
VCC3V3 3.3V Power input from host. Required for operation 3V3
VCC5V0 5.0V Power input from host. Required for operation 5V0

Table 1. Pinout Descriptions

JP1 is used to select which shield pin to use for chip select. When it is in the “Host” position, the normal chip select pin is used (digital pin 10). When it is in the “Alt” position, the alternative chip select pin is used (digital pin 8).

The microSD connector allows the MTDS firmware to draw and save images to an attached microSD card. In order to work properly, the microSD card must be formatted as FAT32. Image files should be saved as Windows Bitmap files (.bmp). For more information see the MTDS documentation available on the MTDS resource center.

The Multi-Touch Display Shield is designed to work with hosts that use 3.3V or 5.0V I/O signaling.

Additional Information

The schematics of the Multi-Touch Display Shield are available here.

The Multi-Touch Display System requires the use of the MTDS and/or the MyDisp libraries, which are available and documented at the MTDS resource center.

If you have any questions or comments about the Multi-Touch Display Shield, feel free to post them under the appropriate section (“Add-on Boards”) of the Digilent Forum.