3.2″ TFT connection to Arduino Due (UPDATE!!)

In this post I talked about the 3.2″ 240×400 TFT and how it can be connected to a MEGA or Due.

Since then I realised that I might have made things a bit more difficult than they need to be, so I decided to give it another go, this time making a (relatively) foolproof guide. So here goes.

The finished assembly should look something like this:

finished_cable_1

What you need:
– An old 40 pin IDE cable. If you can’t get your hands on a ready-made IDE cable, you will need to find some 40 pin ribbon cable and a 40 pin connector (you can find it as “IDC40 IDE FEMALE CONNECTOR”) so you can roll your own. You will also need a small vise to press the connector.
– A 2×13 (or larger) pin header.
– A 1×4 (or larger) pin header.
– Some heat-shrink tubing.
– A soldering iron, etc.

We will be connecting only the wires necessary for operating the TFT as a display, so no SD card reader or touchscreen. You should keep that in mind.

Also, this cable only works with the Due, since it uses 3.3V logic. In order for it to work with the MEGA, 10K resistors should be connected in series with all the signal cables (except of course for the Vcc, LED-A and GND lines).

Let’s begin.

You start by cutting your IDE cable to the necessary length (or in case you’re making your cable from scratch, using as much ribbon cable as you need). The connectors on most IDE cables have one of the pin holes blocked, so you should use a small drill to open it up.

The pin numbering always starts from the red wire, so it goes like this:

IDC40_pin_numbering

I prefer to cut off the unnecessary wires. This way there is less clutter, plus it is harder to get confused. Once the unnecessary wires have been cut off, we are left with this:

IDC40_pin_numbering_2

So this is one side of the cable. On the other side we will solder on to these:

pin_headers_1

They are two pin headers. The 1×4 one is for LED backlight, Vcc power, RD and ground respectively. That corresponds to these pins:

pin_headers_3

Finally, we have the 2×11 pin header. We need to make these connections:

pin_headers_2

The numbers are obviously pin numbers that correspond to the 40-pin ribbon cable. It should be pretty easy to get them right.

You should use heat-shrink tubing in order to insulate the connections, as well as improve the mechanical properties of the connections.

You will notice that the header is missing two pins (on the far right). That is done on purpose, to make it easier to align with the Due’s connector:

2x11_on_Due

And here is the finished cable, connected to the TFT as well as the Due. Note that it’s up to you to connect the 1×4 header whichever way you can.

Due_and_TFT

Notice that the ribbon cable is coming out of the IDC connector and going to the right, and not to the left. Should you connect it the wrong way, it is very likely that the TFT will be damaged, so be carefull!

You should also solder/jumper these pads (J1) on the back of the TFT:

TFT_J1

We have to do this since we are already powering the TFT with 3.3V. This way the local regulator will be bypassed.

That’s it! Good luck..

Comments

comments

13 thoughts on “3.2″ TFT connection to Arduino Due (UPDATE!!)

  1. Very good step by step guida DimDim! Do you happen to know how to connect a 1.8″ TFT SPI screen to the Due? I have been trying to make it work for some time now.. I might end changing the screen for a 3.2″ to follow you guide hah

    • Thank you armando for your kind words!
      I do have a 1.8″ TFT SPI but I have not yet tried it with a Due. Are you sure that your TFT is OK with the 3.3V logic of the Due?

  2. Hi! It’s me again 😀

    I was able to use the 1.8″ TFT SPI with the Due with no problem, but the screen size is too small.. so I ended up buying a 3.2″ haha

    Following your guide I got it working in very little time!

    Thanks DimDim! I wish you a very happy new year!

  3. como defino os pinos de databus?? DE D0 – D15?

    na UTFT so define os pinos de controle… RS, RW, CS, REST.

    por isso acho que meu projeto nao esta funcionando…

  4. controlador é o ILI9325

    outra coisa, o pino RD fica sempre em alta no datasheet. do lcd….

    na UTFT esta em baixa…

    isso tem algumacoisa a ver??

  5. Hi DimDim. Am loving the IDE mod, can’t wait to get an old 40 pin job out of the cupboard for that.

    One question though do you know which connections are needed for the touch screen and/or SD card slot to work too?

    Touch is more important. And if so will it work with the existing library’s designed for this setup?

    Thanks!

    Tom

  6. I’ve mentioned this elsewhere – but a note of caution.
    DimDim’s pin numbering is correct for his notes and the Sainsmart PCB…

    BUT SainSmart **does not use either of the standard ‘conventions’** for pin numbering of IDC/BERG style connectors. It looks like the PCB designer took a standard 20×2 footprint and used it on the rear of the board without flipping the pin designations.

    Just a catch – as every pair of two pins are alternated – which means you must be careful at the Arduino end of the cable !!

  7. Hey friends,

    I have TFT 7 inch LCD. Who can help me to make the connections to Arduino Mega 2560? Who has the libraries for it?

    • The TFT’s backlight is powered through a certain pin. In most TFTs that pin is connected directly to the LEDs’ anode. So you can not control it by using an I/O pin, since the current that needs to be supplied is more than what the Arduino’s pin is capable of providing. The solution is to use a transistor or mosfet to control the backlight. You can see how I have done just that in my Isolator Shield: http://www.dimdim.gr/arduino/universal-signal-isolator-shield-for-the-arduino-due/ Just look at the schematic (Eagle file).

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.