Creative Commons images are CC BY-NC-SA 3.0

Description: Most widgets could benefit from a shiny touchscreen interface. Unfortunately, it’s usually not easy to hook up a touchscreen and driving a display is often too taxing on your controller. 4D Systems has solved this problem by creating a series of touchscreens with on-board controllers then combining them with adapters for popular platforms like Raspberry Pi and Arduino!

The Arduino Display Module customizes the ULCD-43-PT Display specifically for interfacing with the Arduino, to provide a quick and easy interface without any wiring hassles. It enables you to quickly connect the 4D Arduino Adapter Shield to their Arduino, connect the 5 way cable between the Adapter and the Display Module, and be connected in seconds to start programming!

The ULCD-43-PT-AR has a comprehensive range of serial commands ready to be received from the Arduino, to draw primitives such as lines, rectangles, circles and text, displaying images, playing sound and logging data to uSD card. You can also use the Visi-Genie in Workshop 4 combined with the Arduino Library to create a graphical interface in minutes!

Like the other displays from 4D Systems you will need a USB Serial adapter to program this module. Unfortunately, our FTDI Basic Breakout won’t work. Check the recommended items below for 4D Systems' FT232RQ breakout.


  • µLCD-43-PT Display Module with Resistive Touch
  • 4D Arduino Adaptor Shield
  • 5 way ribbon cable (this is not the Programming Cable)
  • Display Module powered directly off the Arduino 5V bus
  • Serial commands from the Arduino
  • Comprehensive Arduino Library (see Description Tab for more information)


Customers Also Purchased

Customer Comments

  • This is really cheap if you think about it… By the time you buy a 4.3 touch LCD screen, LCD controller, Graphics controller, PCB + extras. Then write all the code / library’s to make it work, you will be a couple hundred in.(Your time isn’t free)

    We use it for robotics and it is a really nice display with the new Visi-Genie. We used the display before w/o the Visi-Genie and it was a lot of code to make it work. (3+ weeks) With the new software we had the interface designed and implemented in a few hours. :)

  • 4D Systems has made an App Note for the Danger Shield, which is based on this video but features a few new features, uses the new ViSi-Genie library and is compatible with the Cap Sense provided you use the Version 2 Arduino Adaptor Shield which has been shipping for a while. All explained in the App Note and also in the Arduino Code. Arduino Code and WS4 Code provided, along with a PDF App Note.

    More app notes available on the 4D Systems Website.

  • Are you guys going to actually sell these things? Ever since they have been announced, then demo’d, they have been sold out. You are killing the idea of an impulse or obsession buy.

    I have gone through the “Oooooh I have the perfect project I could use that in right now… I want it. No… need it. Do I really need it?, Yes, because I can… No because it… But it… But then again, it… Yeah but… Okay, I need it. (clicks on SF page to buy) AND THEN…(wait for it…) sold out!!! Oh never mind” phase 3 or 4 times now.

    • We never put things on our storefront unless we have stock to sell; these were very popular and sold out fast. If you know you want one, backordering is the best way to save your place in line (we don’t charge you until it actually ships). If you still want to think about it before hitting checkout, the “notify” button above will send you an email (never spam) the moment we have more in stock.

      • I knew I wanted one the moment I watched that blasted video. Totally forgot about the notify. Done. Thanks.

    • You could impulsively hit the backorder button. Or you can check again on or around May 20th when they believe they should have some more in stock (new feature on product pages, very nice!).

  • Can you please add the new video demo and it’s code to this page for us all. :) I’ll be your best friend in the whole world.

  • It’s kinda funny how you can buy a very competent 7" Android tablet for the same kind of money as one of these displays.

  • If i use this screen with an atmega328/ arduino uno is it posible to also hook something else on the serial bus? For example a bluetooth ez-link?

    • Yes and no. First you really never want more than one device talking to a device over serial, the 2 strings will get jumbled. Second, you can’t change the information, so both devices would receive the information (this may be a problem if you have to configure the devices). If you just want to broadcast the exact same data string over Bluetooth it would work, otherwise I recommend using software serial for one of the devices.

  • What’s the difference between this one and the one on 4D’s website listed for $99.00?

    • The one on 4D’s website is advertising all 3 variants. 1) no touch, 2) resistive touch, and 3) capacitive touch. The non-touch version is $99, while the one above is the resistive touch. The $5 price difference ($139 vs $144) seems to be SparkFun’s included Arduino shield.

  • hi sparkfun a while back I bought a 4d systems 32ptu and I’ve watched nicks video a few times and I could never find any way to format the sd card to fat 16 and I found very poor resources online a new formatted sd card product or tutorial maybe? Thanks!

  • Can I program the display using arduino like USB to serial bridge?

    • You’d have to program the display and Arduino separately - details for these are present in the Application Notes for ViSi-Genie.

  • Can I use Visi-Genie to read some text from a file and then display it on the screen? Can I change the text by using the keyboard object and then save to the microSD card?

  • What is the performance of the built in controller? Fast enough to draw a thousand line at 30+ FPS for a virtual instrument panel? Or really just good for a static display of something?

  • Has anyone tried this touchscreen with a YUN board? Any gotchas or workarounds required?

  • I just received this kit and I’m a little puzzled. In the product video that I had seen it showed a little usb to serial board to program the screen. Is it , or is it not required (it wasn’t included in the kit) for programming when using the screen with arduino?

    I’m running late to a class otherwise I would try to find the answer myself, so hopefully I get useful responses….

    • You need the usb to serial adapter to program the display; the Arduino has to be programmed separately prior to interfacing the display to the Arduino using the display shield.

  • Hi, just wondering if someone could tell me if this works with the Arduino ethernet sheild? (The shield communicates on the SPI bus over pins 10, 11, 12, and 13 on the uno.) Couldn’t figure out from the datasheet which IO this uses. Cheers

  • Is it possible to make multiple pages for this screen? Say, being able to make a main menu, then go into other menus with different options.

  • Would love to use this on my boat for display and electronics control. Is it possible to waterproof but keep the touchscreen working? Was thinking of mounting it to a thin glass pane and siliconing it into the dash but unsure if the touch will read through any layer or if water will effect it?

  • Will this shield and communication work on the Arduino Mega as seen in the introduction video?

  • Can we use this with the Due??

  • When will this be back in stock?

  • Not that i want to speak bad about 4D systems , but the language this serial display uses is horrible compared to Reach Tech displays . I have used many 4D systems OLED displays and i like the displays but the protocol is awful , the old protocol was a bit simpler but the new “Serial” is more clumsy than the old one , this applies to the OLED displays , these new displays come only in “Serial” = new protocol . It does not survive a few bad transmission but crashes the display , never happened with Reach Tech displays , the price is a bit higher but so is the quality of the firmware .

    • Hi Karstikko,

      We realize a change is not always welcomed but we feel it’s the best way to move forward. The new Workshop4 IDE supports 4 development environments, to cater for different user requirements and skill levels and the Serial environment you’ve mentioned is one of them. The Serial environment is basically a 4DGL application that uses a very simple protocol and makes the display act as a slave and it works well when the host and the display are in close proximity, i.e. both on the same application PCB or the distance of the host is within a foot or two from the display. In most cases this works real well as long as the transmission path is free of external noise. There are many high end commercial products designed by many thousands of customers using just the serial platform. If the environment is noisy or the distance between the display and the host is far apart, then why not use the Designer environment and roll out your own top notch serial protocol with many different levels of error checking? Many customers also employ this method. A good outcome for any application always starts by proper understanding of what’s required and a good feasibility study of all the factors involved. You mention you’ve used many of our displays (thank you for your support), but have you tried seeking help from our very helpful team of tech support engineers? If not, please do so, I’m sure you’ll find they’ll be able to resolve most of your problems.

      Edit: I have just been informed that a user reported a crashing problem on Friday the 22nd of February, he was supplied with a Fix on Saturday the 23rd and Workshop was shipping with the fix integrated on Monday the 25th. If you are that user we apologize for any inconvenience. This problem was only limited to the Goldelox based displays and not on the Picaso.

      • Well i may have been a bit harsh . Usually change and development is good , but i would have welcomed if the old protocol would have worked also with the new one . I got frustrated because i had a simple project that should not taken more than a few hours to build … copying bits and peaces from old programs to the new , but when i discovered the old commands would not work with my new display batch , i did not have time to research and implement the new protocol … Just later i found that i could use the V3 workshop to update the G2 displays to the old serial protocol . In my opinion , i would like a display that is easy to use , preferably ascii commands ( this is just my preference ) , has some built in fonts ( adding your own is great but i would rather buy a display with some pre installed fonts ) , and has input buffer ( this would be welcome !! ) ( and getting rid of the reset line would be an asset too ! )

        I meant with the bad transmission that my program decided not to wait any longer for the ACK and issue a new command to the display causing it to crash , this is not the displays fault but my programming . ( Reach displays have a 512 byte input buffer , You can send continuous data to the display @19.2kbps with just a TX line without any lost commands . ( of course You should read the ACK , but not necessary with a big input buffer ))

        I have a 1.7" OLED display housed in a water tight enclosure in my sauna installed at a height of 2m ( temp about 70-90'c ) , it has performed very well in my abuse test for 3 years now . Now that i know it can withstand high temperatures i will install a lot more to my friends saunas .

        I did not realize you could write your own protocol , all i see and hear is the serial protocol . Do people use the other modes ? Standalone anyone ??

        • I understand your situation. You can do so much with 4DGL (Designer or Visi environments in Workshop4 IDE). The 4DGL syntax is very similar to C, it gives you full control over all of the Goldelox resources. As I’ve mentioned earlier, the new Serial platform is a nifty little 4DGL application running on the processor and if you’re not happy with it you’re welcomed to roll out your own.

          The uOLED-XXX-G2 hardware is exactly the same as the uOLED-XXX-G1, which means the old SGC serial platform will run on the G2. If it gets you out of trouble, all you need to do is program the same PmmC configuration file you’ve been using on the G1 in to the G2 module. However, please note, we will not be supporting the old SGC platform for much longer.

  • I dont use arduino IDE, im using Atmel Studio 6. will the library for this screen work on AS6 IDE

    • From the looks of things (had a quick browse) most of it should be alright as long as you are using a similar mcu with RX int enabled ( ISR(USART0_RX_vect) ) the best thing to do is add the .h and .cpp files (rename .cpp to .c) and include stdint.h in avr studio for the use of uint8_t in the .cpp file try a compile and see how it goes. If it fails there is something small Ive missed that you may have to change or another include etc, shouldn’t be to hard in other words because it will come up as an error which is easy to change. I use avr studio 4 for all my programming, and it should be similar to 6, but Ive used a few of the arduino libraries after small mods, and i mostly use the 328P mcu

  • Nice item, though i’m breaking my head on how i can buy a 1080p HD screen for the same price, or an entire netbook, or, a nexus 7.

    • No kidding, I was checking out the cost and it almost looks like I could get TWO 3.2" screens for roughly the same price as one 4.3" screen. Surely, a 1.1inch increase in screen size couldn’t cost that much more..?

      • Not that this is the only factor, but surface area: 3.2" diagonal = 5.12 in2. 4.3" diagonal = 9.25 in2.

    • I think the cost of particular items is often driven by demand, components are cheaper in larger numbers, as is manufacturing.

  • does anbody know if the usart interface could be used easily with a pic MCU, does anybody have access to the RAW command structure?

    • It’s a completely standard UART so there’s no reason you couldn’t use it with other platforms. The Arduino libraries are also plain text and open source, so you should be able to read them to get the command structure, or even port them to your platform.

  • Thanks for including the 4D Arduino Adaptor Shield this time around.

    Are you guys going to make a vid that show how to program it using the Arduino?

  • 5 way cable? I think you meant 5 pin.

  • Apart from the “adaptor shield”, is this the same product as the equivalent for the raspberry pi? If so, any chance of carrying the adaptors separately also?

  • Resolution: 480x272 for the uLCD-43 by the way

Customer Reviews

No reviews yet.