Skip to content




The uLCD-32PTU is a compact and cost-effective Intelligent Display Module packed with plenty of features, ready to become the GUI for your target application. It is the perfect choice for many applications that require a front-end smart graphics interface.

Embedded at the heart of the design is the PICASO processor, which is driven by a highly optimised virtual core engine called EVE (Extensible Virtual Engine). An extensive range of hardware and software peripherals have been integrated into the design, to give the user freedom to adapt the module to suit almost any application.

The display module is an elegant combination of a 3.2" (240x320) LCD Screen, audio amplifier and speaker, micro-SD card connector, Lithium Ion and Polymer battery support, along with a group of general purpose input/output pins (GPIO's), including I2C and serial communications.

This display module serves as a perfect solution to be deployed at the forefront of any product design, requiring a brilliance of colour, animation or images on any application. This PICASO-driven Intelligent Display Module is a perfect example of where art meets technology.


The uLCD-32PTU has a 3.2" TFT LCD at the forefront of the design that showcases the power and capabilities of the PICASO processor. Combining a resolution of 240x320 pixels with 65K True-to-Life colours, this module is perfect for animations, slideshows and other multimedia presentations.

Audio support provided on the display module is supplied by the PICASO processor, an onboard audio amplifier and an 8Ω speaker. A simple instruction enables the user to play audio files while continuing the execution of the Users code, such as display updates, touch recognition, communications and much more.

The micro-SD card slot provides the user with expandable memory space suitable for multimedia file retrieval, including images, animations and movie clips, as well as data logging applications.

The module can be programmed in its native 4DGL language (similar to C), using the Workshop4 IDE software tool suite, or it can be configured as a serial slave device to use with your favourite host controller. Freedom is at your fingertips with this 3.2" intelligent micro LCD module.


The uLCD-32PTU module demonstrates class and finesse in the micro LCD range, featuring a 2.8'' 240x320 screen resolution that is the ideal size for displaying detailed graphics for many interactive touch applications.

Driving the display and peripherals is the PICASO processor, a very capable and powerful chip that enables stand-alone functionality, programmed using the 4D Systems Workshop 4 IDE Software. The Workshop IDE enables graphic solutions to be constructed rapidly and with ease due to its design being solely for 4D graphics processors.

The module has an array of features including PWM for Sound, Touch Detection, micro-SD memory storage, Lithium battery support, general purpose I/O, serial communications, an I2C interface and multiple millisecond resolution timers, amongst many more features.

uLCD-32PTU module


  • Low-cost 3.2" LCD-TFT display graphics user interface solution.
  • 240 x 320 VGA resolution, RGB 65K true-to-life colours, TFT screen with Integrated 4-Wire Resistive Touch Panel.
  • Easy 5-pin interface to any host device: VCC, TX, RX, GND, RESET
  • Powered by the 4D-Labs PICASO processor (also available as a separate OEM IC)
  • 14KB of flash memory for user code storage and 14KB of SRAM for user variables, or 14KB shared user code and program variables.
  • 2 x Asynchronous hardware serial ports (COM0, COM1), TTL interface, with 300 to 600K baud.
  • 1 x I2C interface (Master).
  • 8 x 16-bit timers with 1-millisecond resolution.
  • 13 x General Purpose I/O pins. Supports fast 8-bit parallel data transfer through Upper 8 bits.
  • On-board micro-SD memory card adaptor for multimedia storage and data logging purposes. HC memory card support is also available for cards larger than 4GB.
  • DOS-compatible file access (FAT16 format) as well as low-level access to card memory.
  • Lithium battery support, with built-in battery charger and automatic change-over.
  • A dedicated PWM Audio pin driven by WAV files from a micro-SD card.
  • On-board audio amplifier with a tiny 8Ω speaker for sound generation and WAV file playback.
  • Built-in extensive 4DGL graphics and system library functions.
  • Display full colour images, animations, icons and video clips.
  • Supports all available Windows fonts.
  • A 30-pin header for I/O expansion and future plug-in daughter boards.
  • 4.0V to 5.5V range operation (single supply).
  • Module dimensions: 56.32 x 79.69 x 15.9mm (including corner plates).
  • Weighing ~ 50g.
  • Display Viewing Area: 48.60 x 64.80mm
  • 4 x corner plates with 2.7mm holes for mechanical mounting.
  • RoHS Compliant

Pin Configuration and Summary

Pin Configuration

H2 Pinout (Programming Header)

Pin Symbol I/O Description
1, 2 +5V P Main Voltage Supply +ve input pin. Reverse polarity protected. The range is 4.0V to 5.5V, nominal 5.0V.
3, 4 TX O Asynchronous Serial Transmit pin, TTL level. Connect this pin to the Receive (Rx) signal of other serial devices. Used in conjunction with the RX pin for programming this micro LCD. This pin is tolerant up to 5.0V levels.
5, 6 RX I Asynchronous Serial Receive pin, TTL level. Connect this pin to the Transmit (Tx) signal of other serial devices. Used in conjunction with the TX pin for programming this micro LCD. This pin is tolerant up to 5.0V levels.
7, 8 GND P Supply Ground
9, 9 RES I Master Reset signal. Internally pulled up to 3.3V via a 10K resistor. An active Low pulse greater than 2 micro-seconds will reset the module. If the module needs to be reset externally, only use open collector-type circuits. This pin is not driven low by any internal conditions. The host should control this pin via one of its port pins using an open collector/drain arrangement.

P1 Pinout (Lithium Battery Header)

Pin Symbol I/O Description
1, 2 + P Lithium Ion or Polymer 3.7V Battery +ve Terminal
3, 4 N/C - Not connected
5, 6 - P Lithium Ion or Polymer 3.7V Battery -ve Terminal


Please refer to the Lithium Batteries section before using the Lithium Battery Header

I = Input, O = Output, P = Power

H1 Pinout (I/O Expansion Header)

Pin Symbol I/O Description
1 IO1 I/O General Purpose Input Output 1 Pin (alternatively used as Frame Mark pin when SB2 is closed)
2 SPK- O Speaker Output -ve, for external Speaker
3 IO2 I/O General Purpose Input Output 2 Pin (alternatively used as Battery Status pin pin when SB3 is closed)
4 SPK+ O Speaker Output +ve, for external Speaker
5 IO3 I/O General Purpose Input Output 3 Pin (alternatively used as Peripheral Supply pin when SB1 is closed)
6 SCL O I2C Clock Output
7 IO4 I/O General Purpose Input Output 4 Pin
8 SDA I/O I2C Bidirectional Data
9 IO5 I/O General Purpose Input Output 5 Pin
10 N/C - Not connected
11 GND P Supply Ground
12 N/C - Not connected
13 GND P Supply Ground
14 +5V P Supply Input +ve, 4.0V to 5.5V, 5.0V Nominal
15 BUS7 I/O IO Bus (BUS0..7) bit 7
16 AUDIO I/O Audio Input or Output, TTL Line level
17 BUS6 I/O IO Bus (BUS0..7) bit 6
18 AUDENB I Audio Amplified Enable, Active High (5V)
19 BUS5 I/O IO Bus (BUS0..7) bit 5
20 RES I Master Reset, Active Low (GND) (Refer H2 Pinout)
21 BUS4 I/O IO Bus (BUS0..7) bit 4
22 3.3V OUT P 3.3V Output, 20mA Max supply
23 BUS3 I/O IO Bus (BUS0..7) bit 3
24 RX0 I Asynchronous serial port 0 receive pin. COM0 (same as the RX pin on the H2 Programming Header)
25 BUS2 I/O IO Bus (BUS0..7) bit 2
26 TX0 O Asynchronous serial port 0 transmit pin. COM0 (same as the TX pin on the H2 Programming Header)
27 BUS1 I/O IO Bus (BUS0..7) bit 1
28 TX1 O Asynchronous serial port 1 transmit pin. COM1
29 BUS0 I/O IO Bus (BUS0..7) bit 0
30 RX1 I Asynchronous serial port 1 receive pin. COM1


I = Input, O = Output, P = Power

Hardware Interface - Pins

The uLCD-32PTU provides both a hardware and software interface. This section describes in detail the hardware interface pins of the device.

Serial Ports - TTL Level

The uLCD-32PTU has two dedicated hardware Asynchronous Serial ports that can communicate with external serial devices. These are referred to as the COM0 and the COM1 serial ports.

The primary features are:

  • Full-Duplex 8-bit data transmission and reception.
  • Data format: 8 bits, No Parity, 1 Stop bit.
  • Independent Baud rates from 300 baud up to 600K baud.
  • Single byte transmits and receives a fully buffered service. The buffered service feature runs in the background capturing and buffering serial data without the user application having to constantly poll any of the serial ports. This frees up the application to service other tasks.

TTL Level

A single-byte serial transmission consists of the start bit, 8 bits of data followed by the stop bit. The start bit is always 0, while a stop bit is always 1. The LSB (Least Significant Bit, Bit 0) is sent out first following the start bit. The figure below shows a single-byte transmission timing diagram.

Single-byte transmission timing diagram

COM0 is also the primary interface for 4DGL user program downloads and chip configuration PmmC programming. Once the compiled 4DGL application program (EVE byte-code) is downloaded and the user code starts executing, the serial port is then available to the user application. Refer to the PmmC/Firmware Programming section for more details.

TX0 pin (Serial Transmit COM0):

Asynchronous Serial port COM0 transmit pin, TX0. Connect this pin to the external serial device receive (Rx) signal. This pin is 5.0V tolerant.

RX0 pin (Serial Receive COM0):

Asynchronous Serial port COM0 receive pin, RX0. Connect this pin to an external serial device transmit (Tx) signal. This pin is 5.0V tolerant.

TX1 pin (Serial Transmit COM1):

Asynchronous Serial port COM1 transmit pin, TX1. Connect this pin to the external serial device receive (Rx) signal. This pin is 5.0V tolerant.

RX1 pin (Serial Receive COM1):

Asynchronous Serial port COM1 receive pin, RX1. Connect this pin to an external serial device transmit (Tx) signal. This pin is 5.0V tolerant.

General Purpose I/O

There are 13 general purpose Input/Output (GPIO) pins available to the user. These are grouped as IO1..IO5 (Note for IO1, IO2 and IO3 below) and BUS0..BUS7. Power-Up Reset default is all INPUTS.

The 5 I/O pins (IO1..IO5), provide flexibility for individual bit operations while the 8 pins (BUS0..BUS7), known as GPIO BUS, serve collectively for byte-wise operations. The IO4 and IO5 also act as strobing signals to control the GPIO Bus. GPIO Bus can be read or written by strobing a low pulse (50ns duration or greater) the IO4/BUS_RD or IO5/BUS_WR for read or write respectively.

Please refer to the PICASO Internal Functions Manual for detailed information.

IO1-IO5 pins:

General purpose I/O pins. Each pin can be individually set for INPUT or an OUTPUT.
IO1-IO3 have also optional functionality when its dedicated Solder Jumper is closed. Please read below for more information.

IO1 pin (Frame Mark pin):

The IO1 pin has 2 functions. It can be used as a GPIO pin (Default on HW >= 13.0 onward) but can also be used to detect the start of a Frame (Default on HW < 13.0). When used as a Frame Mark pin, simply solder its dedicated solder jumper SB2. When using IO1 for Frame Mark read the status of IO1 as an Input.

IO2 pin (Lithium Battery Status pin):

The IO2 pin has 2 functions. It can be used as a GPIO pin (Default on HW >= 13.0) but can also be used to tell when the Lithium battery has reached a low level (3.7V) and needs to be charged (Default on HW < 13.0). When used as a Lithium Battery Status pin, simply solder its dedicated solder jumper SB3. When using IO2 for Battery Status read the status of IO2 as an Input. (See the Lithium Batteries section for more information).

IO3 pin (Peripheral Supply pin):

The IO3 pin has 2 functions. It can be used as a GPIO pin (Default HW >= 13.0) but can also be used as a Peripheral Supply pin (Default HW < 13.0) when its dedicated solder jumper SB1 is closed.

IO3 set as a Peripheral Supply pin is controllable via the processor, or via the H2 Interface pin driven by an external circuit. If IO3 is set as OUTPUT and driven HIGH the uSD card and Display are enabled, and disabled when driven LO. Set as INPUT to use an external circuit to drive this pin.

IO4/BUS_RD pin (GPIO IO4 or BUS_RD pin):

General Purpose IO4 pin. Also used for BUS_RD signal to read and latch the data into the parallel GPIO BUS0..BUS7.

IO5/BUS_WR pin (GPIO IO5 or BUS_WR pin):

General Purpose IO5 pin. Also used for BUS_WR signal to write and latch the data to the parallel GPIO BUS0..BUS7.

BUS0-BUS7 pins (GPIO 8-Bit Bus):

8-bit parallel General purpose I/O Bus.


All GPIO pins are 5.0V tolerant.

System Pins

+5V (Module Voltage Input):

H1 pin 14, H2 pin 1 and 2:

Module supply voltage input pin. This pin must be connected to a regulated supply voltage in the range of 4.0 Volts* to 5.5 Volts DC. The nominal operating voltage is 5.0 Volts.

3.3V Out (3.3V Regulated Output):

H1 pin 22:

External circuitry that requires a regulated 3.3V supply can be powered up via this pin. The maximum available current is 150mA. Attempting to draw more can result in peripherals such as the microSD card, not working correctly.

GND (Module Ground):

H1 pin 11/13, H2 pin 7 and 8:

Device ground pins. These pins must be connected to the ground.

RESET (Module Master Reset):

H1 pin 20, H2 pin 9 and 10:

Module Master Reset pin. An active low pulse of greater than 2μs will reset the module. Internally pulled up to 3.3V via a 10K resistor. Only use open collector-type circuits to reset the device if an external reset is required.

SPK-/SPK+ (External Speaker Outputs):

H1 pin 2/4 Respectively:

External Speaker Outputs, designed to drive an 8Ω speaker to a maximum of 1.2W. These are connected in Parallel with the onboard speaker.

AUDENB (Audio Enable Output):

H1 pin 18:

Output dedicated to enabling or disabling an external amplifier if the onboard amplifier is not desirable to use. Controlled by the PICASO processor. When AUDENB is low, the onboard Amplifier is Enabled. When AUDENB is high, the onboard Amplifier is Disabled.

AUDIO (Audio Line Level Input/Output):

H1 pin 16:

Universal Input or Output specifically for Audio. This pin connects directly to the onboard amplifier, but also with the filtered PWM output from the PICASO Processor. This pin can be used to input a signal into the onboard amplifier to play audio from an external device using the onboard amplifier, or as a line-level output to drive an external amplifier with PICASO generated Audio. Note that AUDENB must be enabled (low) in PICASO for any input signal to be heard.

+/- (Lithium Battery Terminals):

P1 pins 1/2(+ve), 5/6(-ve):

These are the terminals of the Lithium Battery connector. These are to be connected only to a Lithium Ion or Polymer 3.7V Battery else the uLCD-32PTU may be damaged. See the Lithium Batteries section.

Lithium Battery connector

PmmC/Firmware Programming

The PICASO processor used in the uLCD-32PTU module is a custom graphics processor. All functionality including the high-level commands is built into the chip. This chip-level configuration is available as a Firmware/PmmC (Personality-module-micro-Code) file.

A PmmC file contains all of the low-level micro-code information (analogy of that of a soft silicon) which defines the characteristics and functionality of the device. The ability to program the device with a PmmC file provides an extremely flexible method of customising as well as upgrading it with future enhancements.

The Display Driver contains the initialisation and parameters associated with the particular display that is to be connected to the PICASO processor.

The PmmC file and Display Driver file can only be programmed into the device via the COM0 serial port with the aid of Workshop4, the 4D Systems IDE software.

Using a non-4D programming interface could damage your module, and void your Warranty.

Please refer to the Programming Cable/Adaptor section for more information on 4D programming interfaces.

4D programming interfaces

Module Features

The uLCD-32PTU module is designed to accommodate most applications. Some of the main features of the module are listed below.

Display - 3.2" TFT Touch Screen

The uLCD-32PTU module is equipped with a 3.2" TFT display. Details of the display are listed below:

  • Screen Size: 3.2" diagonal
  • Resolution: 240 x 320
  • Integrated 4-Wire Resistive Touch Screen
  • Screen Dimensions: 54.34 x 77.70 x 3.70mm
  • Viewing Area: 48.60 x 64.80mm
  • Pixel Pitch: 0.2025 x 0.2025mm
  • Brightness: 200cd/m2
  • Contrast Ratio: 350:1
  • Viewing Angle Above Centre: 60 degrees
  • Viewing Angle Below Centre: 60 degrees
  • Viewing Angle Left of Centre: 70 degrees
  • Viewing Angle Right of Centre: 70 degrees
  • Viewing Direction: 12 O'clock
  • 6 Parallel LEDs for Backlighting


The Displays used are the highest-rated 'Grade A' Displays, which allow for 0-4 defective pixels. A defective pixel could be solid Black (Dead), White, Red, Green or Blue.

PICASO Processor

PICASO Processor

The module is designed around the PICASO Graphics Processor from 4D-Labs.

The PICASO GPU is a smart Controller and the interface to the TFT-LCD displays is almost plug-n-play.

All of the data and control signals are provided by the chip to interface directly with the display.

Powerful graphics, text, images, animation and countless more features are built right inside the chip.

For more information read the PICASO Processor datasheet.


Audio playback support in the PICASO Processor enables the uLCD-32PTU module to play audio WAV files stored in the micro-SD memory card. PWM and an onboard audio amplifier with 8Ω speaker ensure ample audio output capability. A simple instruction enables the user to play/pause/stop audio files while continuing the execution of the user application code, such as display updates, touch recognition, communications, etc. The audio system also allows real-time pitch change of audio samples.

For a complete list of audio commands please refer to the PICASO 4DGL Internal Functions.


The onboard speaker is a small device designed to project into an audio cavity. It is not very loud by itself. To enable louder audio, it is recommended to use a larger external 8Ω speaker. See the System Pins section for more information.

Lithium Batteries

The uLCD-32PTU module includes a battery charging circuit suitable for Lithium Ion (LiIon) and Lithium Polymer (LiPo) batteries, which is designed to work only with 3.7V batteries. If anything other than a LiIon or LiPo 3.7V battery is connected the module could be damaged. Features current sensing and reverse discharge protection using an onboard Lithium charge management controller.

When the Lithium battery is connected and an external source (4.5V minimum) is connected to either of the +5V pins, the Lithium battery will be charged automatically. If the 5V source is disconnected, the Lithium battery will be switched in the circuit and continue to power the module automatically.

Charge voltage = 4.2V, Charge current = ~210mA

When running from the Lithium battery, when the battery level drops down to ~3.7V, the Status input (connected to IO2) into the PICASO will be triggered indicating the battery is discharged. The display should then be connected to an external 5V source for charging. When the battery is at this cut-off voltage, μSD card read and write operations should be avoided, as they may fail due to low voltage. It is up to the User to handle the operation of the display module when using a Lithium Battery.


There is a large range of Lithium batteries available on the market. Some include safety circuits built in, while others do not. Lithium batteries can explode if short-circuited, overcharged, if they get too hot, and can leak if they sit fully discharged for a prolonged period.

4D Systems recommends whenever Lithium batteries are used that caution and due diligence should be exercised to ensure the safety of the user and nearby people. While the chances of explosion or leakage may be minimal, 4D Systems recommends safe practices at all times when dealing with these batteries.

If Lithium Batteries are powering the module, it is highly recommended to periodically monitor the STAT pin. If the module is put to sleep, periodically wake the module to check the STAT pin.

SD/SDHC Memory Cards

SD/SDHC Memory Cards

The module supports micro-SD memory cards via the onboard micro-SD connector. The memory card is used for all multimedia file retrieval such as images, animations and movie clips. The memory card can also be used as general-purpose storage for data logging applications. Support is available for off-the-shelf micro-SD and high-capacity HC memory cards (4GB and above).


A microSD card capable of SPI is a requirement for all 4D Systems' display modules powered by GOLDELOX, PICASO or DIABLO-16 Processors. If a non-SPI compatible card is used, it will simply fail to mount, or may cause intermittent issues resulting in lockups and crashing of the application. Please refer to the 4D Systems website for microSD cards offered by 4D Systems.


The uLCD-32PTU uses off-the-shelf standard SDHC/SD/micro-SD memory cards with up to 4GB capacity usable with FAT16 formatting. For any FAT file-related operations, before the memory card can be used it must first be formatted with the FAT16 option. The formatting of the card can be done on any PC system with a card reader. Select the appropriate drive and choose the FAT16 (or just FAT in some systems) option when formatting. The card is now ready to be used in the PICASO-based application.

The uLCD-32PTU also supports high-capacity HC memory cards (4GB and above). The available capacity of SD-HC cards varies according to the way the card is partitioned and the commands used to access it.

The FAT partition is always first (if it exists) and can be up to the maximum size permitted by FAT16. Windows 7 will format FAT16 up to 4GB. Windows XP will format FAT16 up to 2GB and the Windows XP command prompt will format FAT16 up to 4GB.

Display Precautions

  • Avoid having to display the same image/object on the screen for lengthy periods. This will cause a burn-in which is a common problem with all types of display technologies. Blank the screen after a while or dim it very low by adjusting the contrast. Better still; implement a screen saver feature.
  • Moisture and water can damage the display. Moisture on the surface of a powered display will cause the electrodes to corrode. Wipe off any moisture gently or let the display dry before usage.
  • Dirt from fingerprint oil and fat can easily stain the surface of the display. Gently wipe off any stains with a soft lint-free cloth.
  • The performance of the display will degrade under high temperatures and humidity. Avoid such conditions when storing.
  • Do not tamper with the display flex cable that is connected to the control board. This may affect the connection between the display and the driving circuitry and cause failure.
  • Displays are susceptible to mechanical shock and any force exerted on the module may result in deformed zebra stripes, a cracked display cell and a broken backlight
  • Always use the mounting holes on the module's corner plates to mount the display.

Hardware Tools

The following hardware tools are required for full control of the uLCD-32PTU module.

Programming Cable/Adaptor

The 4D Programming Cable and uUSB-PA5/uUSB-PA5-II Programming Adaptors are essential hardware tools to program, customise and test the PICASO Processor.

Either the 4D Programming Cable or the uUSB-PA5 Programming Adaptor can be used.

The 4D programming interfaces are used to program a new Firmware/PmmC, Display Driver and for downloading compiled 4DGL code into the processor. They even serve as an interface for communicating serial data to the PC.


In addition to these modules, the gen4-PA and 4D-UPA can also be used.

Using a non-4D programming interface could damage your processor, and void your Warranty. These programming interfaces are available from the 4D Systems website.

Programming Language

The uLCD-32PTU uses the PICASO processor, which belongs to a family of processors powered by a highly optimised softcore virtual engine, EVE (Extensible Virtual Engine).

EVE is a proprietary, high-performance virtual machine with an extensive byte-code instruction set optimised to execute compiled 4DGL programs. 4DGL (4D Graphics Language) was specifically developed from the ground up for the EVE engine core. It is a high-level language that is easy to learn and simple to understand yet powerful enough to tackle many embedded graphics applications.

4DGL is a graphics-oriented language allowing rapid application development, and the syntax structure was designed using elements of popular languages such as C, Basic, Pascal and others.

Programmers familiar with these languages will feel right at home with 4DGL. It includes many familiar instructions such as IF..ELSE..ENDIF, WHILE..WEND, REPEAT..UNTIL, GOSUB..ENDSUB, GOTO, PRINT as well as some specialised instructions SERIN, SEROUT, GFX_LINE, GFX_CIRCLE and many more.

For detailed information about the 4DGL language, please refer to the following documents:

To assist with the development of 4DGL applications, the Workshop4 IDE combines a full-featured editor, a compiler, a linker and a downloader into a single PC-based application. It's all you need to code, test and run your applications.

4DGL is available to be written in two of the four environments offered by the Workshop4 IDE, Designer and ViSi. The other two environments, Serial and ViSi-Genie do not directly use 4DGL by the User (Except in Workshop4 Pro, for ViSi-Genie), however, it is present in the background. Serial is an application that runs, and that is written in 4DGL. ViSi-Genie automatically generates 4DGL itself based on what is configured in the GUI.

Workshop4 IDE

Workshop4 is a comprehensive software IDE that provides an integrated software development platform for all of the 4D family of processors and modules. The IDE combines the Editor, Compiler, Linker and Downloader to develop complete 4DGL application code. All user application code is developed within the Workshop4 IDE.

Workshop4 IDE

The Workshop4 IDE supports multiple development environments for the user, to cater to different user requirements and skill levels.

  • The Designer environment enables the user to write 4DGL code in its natural form to program the range of 4D System's intelligent displays.
  • A visual programming experience, suitably called ViSi, enables drag-and-drop type placement of objects to assist with 4DGL code generation and allows the user to visualise how the display will look while being developed.
  • An advanced environment called ViSi-Genie doesn't require any 4DGL coding at all, it is all done automatically for you. Simply lay the display out with the objects you want, set the events to drive them and the code is written for you automatically. This can be extended with additional features when a Workshop4 PRO license is purchased from the 4D Systems website. Extended Advanced features for ViSi-Genie are available in the PRO version of WS4. Further details are explained in the ViSi Genie section of the Workshop4 documentation.
  • A Serial environment is also provided to transform the display module into a slave serial module, allowing the user to control the display from any host microcontroller or device with a serial port.

For more information regarding these environments, refer to the Workshop4 manuals.

The Workshop 4 IDE is available from the 4D Systems website.

PmmC Programming

The Picaso processor is a custom graphics processor. All functionality including the high level commands are built into the chip. This chip level configuration is available as a PmmC (Personality-module-micro-Code) file, which can be likened to traditional Firmware.

A PmmC file contains all of the low-level micro-code information (analogy of that of a soft silicon) which defines the characteristics and functionality of the device. The ability of programming the device with a PmmC file provides an extremely flexible method of customising as well as upgrading it with future enhancements.

It also contains the initialisation and parameters associated with the particular display that is to be connected to the Picaso processor, along with product specific settings and parameters.

The PmmC file can only be programmed into the device via the COM0 serial port with the aid of Workshop 4, the 4D Systems IDE software.

Solutions, which remove the need to use Workshop4 to program the display modules, are available for commercial customers requiring batch programming or production line programming. These solutions are practical for production staff and minimize the chance of unwanted or unauthorised modifications on the production line.

Three solutions come with the Workshop4 IDE, which can be separated for production line computers if required, ScriptC, PmmC Loader and Program Loader.

ScriptC is a command line interface that can be controlled from a Batch Script or similar, useful for repetitive loading or when controlled from an external application. Example scripts are provided, showing how to load PmmC, Display Drivers and Applications using a batch script.

Program Loader is a GUI interface designed to download Applications to either Flash or RAM, useful for testing or production loading, without the need for Workshop4 itself.

Program Loader

PmmC Loader is a GUI interface designed to download PmmC's and Drivers to 4D Systems Processors. It can automatically update existing PmmC's and Drivers present on a module, or manually change or force download to a blank processor or module, overwriting anything written in previously.

PmmC Loader

Please contact our Support Team for more information on what we can provide. Some solutions also exist for external processor-based loading, if there is a requirement for that. This solution is available under NDA. Using a non-4D programming interface could damage your module, and void your warranty.

File Transfer

The PICASO processor is capable of transferring files over the serial UART from the PC.

The process of loading a micro-SD card can take some time, depending on the size of the files needing to be transferred, and it is often faster to remove the micro-SD card from the display module, place it into your PC using a Media/Card reader, and copying the files directly. However in cases where this is not possible, transferring over the serial UART is available.

Additional to Workshop4 natively using File Transfer during its programming phase, File Transfer can also be run manually by opening the File Transfer application from the Windows Start Menu, or from the /DEP folder inside the Workshop4 installation folder.

File Transfer Tool

When actioning the programming process from Workshop4, the appropriate file transfer configuration will be loaded based on your hardware and software settings.

If using the 4D Programming Cable, some software modifications to the USB chip inside the cable are required in order to transfer at full speed. Please refer to THIS POST on the 4D Systems Forum, for details on the change.

When using the 4D-UPA, uUSB-PA5-II or gen4-PA, this is not required, it only relates to the 4D Programming Cable.

Starter Kit

4D Systems highly recommends all first-time buyers of 4D Systems' displays, to purchase the Starter Kit when purchasing their first 4D Systems display solution.

The Starter Kit provides all the hardware that is required to get the user up and running.

Not all development environments and features will be needed by every user, however, purchasing the display solution in a Starter Kit, ensures that if you want to take full advantage of the 4D Systems display solution and try out each of the 4D Workshop4 Environments, upgrade PmmC/firmware, you can.

The Designer environment can use every feature of the display, however, depending on the user requirements, a micro-SD (uSD) card may not be required. The uSD card is used when displaying images/video/sound, along with data logging to uSD, and a programming cable is required for downloading compiled code and PmmC/Firmware updates.

The ViSi environment is the same as Designer in terms of feature utilisation, but is image based so requires a uSD card, along with a programming cable.

The ViSi-Genie environment is also image-based, and therefore requires a uSD card and programming cable also.

The Serial environment does not require either a uSD or Programming cable to be used, however, can use both depending on the user's requirements. The uSD card can be used for such things as storage of multimedia files and data logging, and the Programming cable for PmmC/Firmware updates, or changing to one of the other three programming environments.

The Starter Kit includes:

  • uLCD-32PTU Display Module
  • 4GB MicroSD Card
  • uUSB-PA5-II Programming Adaptor
  • 150mm 5-way Female-Female jumper cable, for quick connection to another device or breadboard
  • 5-way Male-Male adaptor (for converting the Female-Female cable to be Male-Female)

Simply select the Starter Kit option when purchasing the chosen display module on the 4D Systems shopping cart, or from your local distributor.

Mechanical Details

Mechanical Details

Schematic Diagram

Schematic Diagram


Absolute Maximum Ratings

Operating ambient temperature -20°C to +70°C
Storage temperature -30°C to +80°C
Voltage on any digital input pin with respect to GND -0.3V to 6.0V
Voltage on SWITCH pin with respect to GND -0.3V to 6.0V
Voltage on VCC with respect to GND -0.3V to 6.0V


Stresses above those listed here may cause permanent damage to the device. This is a stress rating only and functional operation of the device at those or any other conditions above those indicated in the recommended operation listings of this specification is not implied. Exposure to maximum rating conditions for extended periods may affect device reliability.

Recommended Operating Conditions

Parameter Conditions Min Typ Max Units
Supply Voltage (VCC) 4.0 5.0 5.5 V
Processor voltage (VP) -- 3.3 -- V
Operating Temperature -10 -- +60 °C
Input Low Voltage (VIL) all pins 0 -- 0.2VP V
Input High Voltage (VIH) non 5V tolerant pins 0.8VP -- 3.3 V
Input High Voltage (VIH) All GPIO pins, RX0 and TX0 pins 0.8VP -- 5.5 V
Reset Pulse External Open Collector 2.0 -- -- µs
Operational Delay Power-Up or External Reset 500 -- 3000 ms

Global Characteristics Based on Operating Conditions

Parameter Conditions Min Typ Max Units
Supply Current (ICC) VCC = 5.0V, heavily depends on screen usage conditions, sleep mode 10 155 215 mA
Output Low Voltage (VOL) VCC = 5.0V, IOL = 3.4mA -- -- 0.4 V
Output High Voltage (VOH) VCC = 5.0V, IOL = -2.0mA 3.2 -- -- V
Capacitive Loading All pins -- -- 50 pF
Flash Memory Endurance PICASO PmmC Programming -- 10000 -- E/W

Touchscreen Characteristics

Parameter Conditions Min Typ Max Units
Linearity -- -- <1.5 %
Terminal Resistance X X film side 300 400 800 Ohm
Terminal Resistance Y Y film side 300 600 800 Ohm
Durability – Scratch Test Stylus Pen or Finger Sliding 100 -- -- K
Durability – Tap Test Stylus Pen or Finger Press 1 -- -- Million
Transparency Non Glare 80 -- -- %

Optical Characteristics

Parameter Conditions Min Typ Max Units
Contrast ratio (Centre point) Backlight On -- 250 -- --
Luminance of white (Centre point) 160 200 230 cd/m2
White Uniformity 80 -- -- %
Response Time
Rising + Falling (Tr + Tf)
-- 30 ms
Colour Chromaticity
(CIE 1931)
White, Wx
White, Wy
Red, Rx
Red, Ry
Green, Gx
Green, Gy
Blue, Bx
Blue, By
Viewing Angle
(Contrast Ratio > 10)
Vertical above Centre
Vertical below Centre
Horizontal Left of Centre
Horizontal Right of Centre

Order Information

Order Code: uLCD-32PTU
Package: 105mm x 65mm x 30mm
Packaging: Module sealed in antistatic foam padded 4D Systems Box

Revision History

Hardware Revision

Revision Number Date Description
6 12/06/2012 Initial release of PTU revision
8 10/07/2012 R29 / R32 / R6 /R44 have changed values
11.1 19/02/2013 - Resistor R46 has been implemented to enable GPIO usage for IO3 if removed
- Resistor R22 is no longer mounted
- Resistors R8, R28, R29, R32, R44 have changed values
11.2 26/02/2013 R18 specified as 1M2, must be Do Not Mount (DNM) and not inserted during SMT
12.1 23/04/2014 Battery charging circuit has been improved
13.0 29/04/2015 - Resistors R7, R28, R46 have been removed and replaced with solder jumpers (SB1 / SB2 /SB3)
- Both sides of the H2 Programming Header are now connected to its dedicated signals
- Audio Amplifier circuitry has been improved to remove background noise
- Power circuit has been changed: U2 & U5 are different components now and L3 and L4 have been added. 30Pin Header 3.3V output can deliver 150mA instead of 20mA. The R4 current limiting resistor has been removed. SD Card circuit has been changed: R18 is now a 10k Resistor.
14.0 18/04/2019 - Standardising of components, changing from 0603 passives to 0402 size, in line with other product ranges.
- Functionality unchanged.

Datasheet Revision

Revision Number Date Description
2.2 14/06/2013 Initial Public Release Version
2.3 04/03/2019 Cosmetic changes, removed clutters
2.4 13/01/2023 Modified datasheet for web-based documentation
2.5 07/03/2024 Updated formatting for resource centre redesign