LCD display with ILI9341 driver on Arduino

RalleBert:
Hello! I´m new here and relatively new to Arduino and its programming.
That weekend I got a display like in this thread. After tying to get it work with 5V (and no success - what wonders!), I got the idea to power the Arduino board with 3,3V directly because I have no 4050 IC around. I used the 5V pin for that - a little rude, but it works without the 4050! Look at the datasheet, the Atmel 328p is working from 1,8 to 5,5V. Maybe you can run your projects with 3,3V and can avoid to use the 4050.

Yes, that will make the screen work, but:
a) How do you connect a USB cable so you can actually program it?
b) The 328p can work at 3.3V, but not at 16MHz. 16MHz needs 3.8V (see the datasheet).

Hi
I bought this LCD
http://www.ebay.es/itm/200952295233?ssPageName=STRK:MEWNX:IT&_trksid=p3984.m1439.l2649

and from what I read in the thread, it required a logic level converter to operate.
I want to make a small board that fits on the pins of the lcd board that will convert the 5V signals that the mega2560 has to 3,3V that the LCD requires.
Does anyone have this LCD and is willing to take some dimentional measurements so I can make the level converter board until the LCD arrives?
The dimensions that I'm after came be seen in the attached photo.

Hi @tolisn63, I attach my draw diagram (EagleCAD) as photo for the little convertion board (cd4050)
and a rar with EagleCAD 6.5 files. In EagleCAD I use also Adafruit and Sparkfun libraries for EagleCAD.

All pin from display to one pin of board and the corrisponding pin to Arduino following this scheme:
D4 : RESET
D5 : CS
D6 : D/C
D7 : LED
D11 : MOSI
D13 : SCK
This pin direct from display to Arduino
D12 : MISO direct to Arduino
You need also to connect GND and V3.3 to little board.

cd4050.png

cd4050.rar (10.9 KB)

Hi
I've bought a similar screen on DX.COM (http://dx.com/p/2-2-serial-spi-tft-color-lcd-module-for-arduino-red-silver-234675)
but i'm totaly unable to make it working... :frowning:
I've a CD4050, but the only thing i succeed to do is to turn on the backlight... i see the backlight kind of blinking sometime...

Could anyone do an overall draw of all the connection from the Arduino board to the screen trough the CD4050 ?
Thanks un advance

TBH

nid69ita:
Hi @tolisn63, I attach my draw diagram (EagleCAD) as photo for the little convertion board (cd4050)
and a rar with EagleCAD 6.5 files. In EagleCAD I use also Adafruit and Sparkfun libraries for EagleCAD.

All pin from display to one pin of board and the corrisponding pin to Arduino following this scheme:
D4 : RESET
D5 : CS
D6 : D/C
D7 : LED
D11 : MOSI
D13 : SCK
This pin direct from display to Arduino
D12 : MISO direct to Arduino
You need also to connect GND and V3.3 to little board.

Can you please post the electronic schematic of your pcb?

In attach sketch and library for ili9341 taht I used.
And image for PCB. But in previous post the rar file include all EagleCad files for my pcb.

ili9341.rar (383 KB)

cd4050b.png

OK ok ok...
I've redo my wirering and tried to understand how works the CD4050BE (this is the one i used).
I've erase all my library linked to ILI TFT and download the one from ADAFRUIT (the ADAFRUIT ILI3140 Marster).

I've check and recheck everything... and i've tried one thing... to quote the hardware SPI line and unquote the SPI software line... and MIRACLE !!!
It's quite slow but it's very well working.

Here is the wire to help the one who has difficulty.

Can anyone can help us to switch back to the hardware SPI ?

Thanks a lot

TBH

nid69ita:
In attach sketch and library for ili9341 taht I used.
And image for PCB. But in previous post the rar file include all EagleCad files for my pcb.

So regarding the 4050 connection you are saying the following, correct ?

D4 on arduino -->4050--> RESET on display
D5 on arduino -->4050--> CS on display
D6 on arduino -->4050-->D/C on display
D11 on arduino -->4050--> MOSI on display
D13 on arduino -->4050--> SCK on display

D12 on arduino --> MOSI on display (no 4050 required)

Do the SD card signals also need a level shifter to work ?

tolisn63:

nid69ita:
In attach sketch and library for ili9341 taht I used.
And image for PCB. But in previous post the rar file include all EagleCad files for my pcb.

So regarding the 4050 connection you are saying the following, correct ?

D4 on arduino -->4050--> RESET on display
D5 on arduino -->4050--> CS on display
D6 on arduino -->4050-->D/C on display
D11 on arduino -->4050--> MOSI on display
D13 on arduino -->4050--> SCK on display

D12 on arduino --> MISO on display (no 4050 required)

Do the SD card signals also need a level shifter to work ?

I've corrected this little thing from MOSI to MISO :wink:

I think the sd-cards need 3.3v too, so in my thoughts we need a Level Shifter for it too.
Greets

Hello all!
I have been playing with that TFT the last days.

For me, UTFT library was working good. Using 4050 between Mega & TFT.
UTFT myGLCD(TFT01_22SP,51,52,47,48,49); <--- MOSI,SCK,CS,RST,DC wiring

nid69ita's posted library gimme that error:
E:\Mis Documentos\Arduino\libraries\SeeedTFTv2\TFTv2.cpp: In member function 'void TFT::TFTinit()':
E:\Mis Documentos\Arduino\libraries\SeeedTFTv2\TFTv2.cpp:90: error: 'TFT_RST_LOW' was not declared in this scope
E:\Mis Documentos\Arduino\libraries\SeeedTFTv2\TFTv2.cpp:92: error: 'TFT_RST_HIGH' was not declared in this scope

I was using the SD from Ethernet Shield as datalogger (with no problems) but now trying with the SD from TFT nothing works.
New wiring:
TFT_MISO to a 3.3-5v converter and the output to PIN50
SD_CS to the last free port of 4050 and to PIN46

Any ideas?

Thanks!

I tryed with both library without results. about you?

More details:

Im using a Micro SDHC 4GB with an adapter, first test without modifications 4GB FAT32, now underformatted as 1GB, same results

CardInfo Sketch on ArduinoUno+Ethernet Shield:
chipSelect = 4;
Card type: SDHC
Volume type is FAT16
Volume size (bytes): 1073446912
Volume size (Kbytes): 1048288
Volume size (Mbytes): 1023

CardInfo Sketch on ArduinoMega+SD from TFT 2.2 SPI:
chipSelect = 46;
Initializing SD card...initialization failed. Things to check:
* is a card is inserted? YES
* Is your wiring correct?
* did you change the chipSelect pin to match your shield or module? YES

Do I have to make any change in the SPI config or...?

Thanks

Thanks for all comment, my display work fine with the help i found on this tread :slight_smile:
But,
TheBigHunt, here is a mistake in your schema :

The ground is on pin 8 of the CD4050BE not the 14.

With this mistake fix, all work fine, thanks !

Hi,

Here is my schema which works with a MEGA 2560 :

The display never sends any message to Arduino, so MISO has not to be connected.
I use Adafruit library. The drawings are slow.

EDIT > On MOS chips as 4050, all inputs have to be connected. I add a wire from gnd to the input of the unused gate.

Murazor:
More details:

Im using a Micro SDHC 4GB with an adapter, first test without modifications 4GB FAT32, now underformatted as 1GB, same results

CardInfo Sketch on ArduinoUno+Ethernet Shield:
chipSelect = 4;
Card type: SDHC
Volume type is FAT16
Volume size (bytes): 1073446912
Volume size (Kbytes): 1048288
Volume size (Mbytes): 1023

CardInfo Sketch on ArduinoMega+SD from TFT 2.2 SPI:
chipSelect = 46;
Initializing SD card...initialization failed. Things to check:
* is a card is inserted? YES
* Is your wiring correct?
* did you change the chipSelect pin to match your shield or module? YES

Do I have to make any change in the SPI config or...?

Thanks

I got it working with the following:

  • Add pins to the SD card connector on the other side (that was not clear to me, since on my board there were pins in theTFT side, but not on the SD card side :roll_eyes:

  • Wiring the following connections:
    Connect SD_SCK to SCK pin on Arduino (13 on Nano)
    Connect SD_MOSI to MOSI pin on Arduino (11 on Nano)
    Connect SD_MISO to MISO pin on Arduino (12 on Nano)
    These are the same pins used for the TFT to connect!
    Connect SD_CS to pin D8 or whatever you like
    The SD_CS pin MUST be different to the TFT CS pin!
    I connected all of them directly, while for the TFT I used resistors and a level shift by two transistors for the MISO line (3.3V -> 5V)

  • The VCC (3.3V) and GND comes from the TFT connector side

  • While using the Seeed ILI9341 2.2 TFT+SD library I had to change the CS pin for activating the SD card SPI
    #define chipSelect 8

and the filenames (123.bmp to flowers.bmp) which where the sample files provided by the library

That worked for me. But I think the SD card part should be 3.3V too!?

Hope this is of any help.
Chris

Anyone interested in running the ILI394x on as ProMicro 32U4, I posted the pin out here:
http://forum.arduino.cc/index.php?topic=234601.0

Has anyone managed to get this dispplay working with a mega2560 and hardware SPI mode?
I have used many libraries that work OK (but very slow) in software SPI but when I switch to hardware all I get is a white screen.

these are my pinout connections

Rst=48
dc=49
miso=50
mosi=51
sclk=52
cs=53

All signals from the mega2560 first pass from a level shifter and then go to the display.

Got the display working on my Arduino UNO, with all libraries 5UTFT, seed, adafruit, .. ), but I cant get the SD Card to initalize.
It always fails =/ used 256MB, 2GB SD, 4GB SHDC all from SanDisk, dont know if it matters.
I'm pretty sure I wired everything correctly, because I spended the last 2 days with trying different setups/libraries and I'm out of ideas. Someone got a suggestion to make it initaliaze :frowning: (I dont use cd4050, I use voltage dividers R1: 100, R2:220) Gives about 3.4V but display works fine. Any suggestion could be helpfull. Thank you in advance

Friendly regards.

With the 220 Ohm resistor, the SD card has to provide 15mA. I do not think, that the SD is able to provide this amount of current.
At least use higher resistor values.

Oliver

xeppex:
Got the display working on my Arduino UNO, with all libraries 5UTFT, seed, adafruit, .. ), but I cant get the SD Card to initalize.
It always fails =/ used 256MB, 2GB SD, 4GB SHDC all from SanDisk, dont know if it matters.
I'm pretty sure I wired everything correctly, because I spended the last 2 days with trying different setups/libraries and I'm out of ideas. Someone got a suggestion to make it initaliaze :frowning: (I dont use cd4050, I use voltage dividers R1: 100, R2:220) Gives about 3.4V but display works fine. Any suggestion could be helpfull. Thank you in advance

Friendly regards.

As I wrote above. I had a wiring problem. And I use the SD card and Display, but drive the SD card without voltage deviders. Can you please send your wiring.

Thanks
Chris