getting bmp's to work on 3 1/2 " touch screen.

I have a 3 ½ " touch screen like this one
Connected to an arduino mega.
I am altering this piece of software and getting good results

#include <Adafruit_GFX.h>
#include <MCUFRIEND_kbv.h>
MCUFRIEND_kbv tft;
#include <TouchScreen.h>
#define MINPRESSURE 200
#define MAXPRESSURE 1000
//CONTROLLER ili9481 ili9468, ili9488 hx8357, or r61581
//ID = 0x6814
// ALL Touch panels and wiring are DIFFERENT
// copy-paste results from TouchScreen_Calibr_native.ino
const int XP = 6, XM = A2, YP = A1, YM = 7; //ID=0x9341  (input pins)
//const int TS_LEFT = 912, TS_RT = 189, TS_TOP = 912, TS_BOT = 176;//portrait
//const int TS_LEFT = 912, TS_RT = 176, TS_TOP = 189, TS_BOT = 821;//landscape
const int TS_LEFT = 950, TS_RT = 206, TS_TOP = 189, TS_BOT = 921;//landscape
//this last calculation means touch is directly over drawn boxes.
//is this needed to correct different types of display? screen for my display is 480 x 320
TouchScreen ts = TouchScreen(XP, YP, XM, YM, 300);

Adafruit_GFX_Button on_btn, off_btn, top_left_btn, top_rt_btn, bot_left_btn, bot_rt_btn;

int pixel_x, pixel_y;     


#define BLACK   0x0000
#define BLUE    0x001F
#define RED     0xF800
#define GREEN   0x07E0
#define CYAN    0x07FF
#define MAGENTA 0xF81F
#define YELLOW  0xFFE0
#define WHITE   0xFFFF

void setup(void)
{
    Serial.begin(9600);
    uint16_t ID = tft.readID();
    Serial.print("TFT ID = 0x");
    Serial.println(ID, HEX);
    Serial.println("Calibrate for your Touch Panel");
    //if (ID == 0xD3D3) ID = 0x9486; // write-only shield
    if (ID == 0xD3D3) ID = 0x9486; // write-only shield
    tft.begin(ID);
    tft.setRotation(1);            //0=portrait,1=landscape
    tft.fillScreen(BLACK);
    //on_btn.initButton(&tft, 60 ,200 , 100 , 40   , WHITE,  CYAN,BLACK, "ON", 2  );
    on_btn.initButton(&tft, 60 ,200 , 100 , 40   , WHITE,  CYAN,BLACK, "ON", 2  );
    //          (     ? ,  in , down,width,height,border,bkgrnd,text,  text,size)
    //                                                   colour,colour,colour,
    //319 is bottom row, 0 is left edge. Buttons(in and down above) number from centre of box 
    
    //put a spot in each corner
    top_left_btn.initButton(&tft, 0 , 0 , 1 , 1   , WHITE,  CYAN,BLACK, "", 2  );
    bot_left_btn.initButton(&tft, 0 , 319 , 1 , 1   , WHITE,  CYAN,BLACK, "", 2  );
    top_rt_btn.initButton(&tft, 479 , 0 , 1 , 1   , WHITE,  CYAN,BLACK, "", 2  );
    bot_rt_btn.initButton(&tft, 479 , 319 , 1 , 1   ,  WHITE,  CYAN, BLACK,"",  2  );
    
    off_btn.initButton(&tft,180 ,200 ,100  , 40   , WHITE, CYAN , BLACK, "OFF", 2  );
    
    on_btn.drawButton(false);
    top_left_btn.drawButton(false);
    bot_left_btn.drawButton(false);
    top_rt_btn.drawButton(false);
    bot_rt_btn.drawButton(false);
    off_btn.drawButton(false);
   // on_btn
    tft.fillRect(40, 80, 160, 80, RED);
    tft.drawCircle(260,240,60, RED);//from the left,from the top,dia,colour
    tft.drawCircle(360,240,40, BLUE);
    tft.fillCircle (360,120,40,RED);
    //tft.bmpDraw(woof.bmp,360,120)
    //tft.drawBitmap(360,120,*woof.bmp,25,25,RED);
    tft.fillRect(240, 0, 1, 1, RED);//puts a red spot middle of top row.
    tft.fillRect(240, 0, 1, 319, RED);//put a red line down the middle.
}
/* two buttons are quite simple
 */
void loop(void)
{
  tft.drawLine(260, 20, 290, 20, RED);//in from left,down horiz length,vert length(line = 1,colour
  //tft.drawLine(290, 20, 310, 30, BLACK);
  //tft.drawLine(290, 20, 310, 20, RED);
  //delay (500);
  //tft.drawLine(290, 20, 310, 20, BLACK);
  //tft.drawLine(290, 20, 310, 30, RED);
  //delay (500);
  {
    bool down = Touch_getXY();
    on_btn.press(down && on_btn.contains(pixel_x, pixel_y));
    off_btn.press(down && off_btn.contains(pixel_x, pixel_y));
    if (on_btn.justReleased()
  )
  {
    on_btn.drawButton();//renews button background colour
    tft.drawLine(290, 20, 310, 30, BLACK);//when on is released delete previous line
    tft.drawLine(290, 20, 310, 20, RED);//draw new line. from in from left, down from top 
                                                        // to  in from left and down from top
  }
    if (on_btn.justPressed()) 
    {
      on_btn.drawButton(true);//deletes button background colour
      tft.fillRect(40, 80, 160, 80, GREEN);
               //   in,down,width,height,colour
    }
    if (off_btn.justReleased())
      {
        off_btn.drawButton();//renews button background colour
        tft.drawLine(290, 20, 310, 20, BLACK);//when on is released delete previous line
        tft.drawLine(290, 20, 310, 30, RED);//draw new line. from in from left, down from top 
    }                                                        // to  in from left and down from top.
        }
    if (off_btn.justPressed()) {
        off_btn.drawButton(true);//deletes button background colour
        tft.fillRect      (  40   , 80    ,  160 , 80   , RED        );
        //box drawn from (top lft,bot lft,top rt,bot rt,bkgrnd colour
    }     
    //tft.drawCircle(260,240,60, RED);//from the left,from the top,dia,colour
    //delay (500);
    //tft.drawCircle(260,240,60, BLACK);//from the left,from the top,dia,colour
    //tft.drawCircle(240,240,60, RED);//from the left,from the top,dia,colour
    //delay (500);
    //tft.drawCircle(240,240,60, BLACK);//from the left,from the top,dia,colour
}
bool Touch_getXY(void)//Touch_getXY() updates global vars
{
    TSPoint p = ts.getPoint();
    pinMode(YP, OUTPUT);      //restore shared pins
    pinMode(XM, OUTPUT);
    digitalWrite(YP, HIGH);   //because TFT control pins
    digitalWrite(XM, HIGH);
    bool pressed = (p.z > MINPRESSURE && p.z < MAXPRESSURE);
    if (pressed) {
        pixel_x = map(p.y, TS_LEFT, TS_RT, 0, 480); //landscape
        //pixel_x = map(p.y, LEFT=716, RT=591, 0, 480); //landscape
        //pixel_x = map(p.x, TS_LEFT, TS_RT, 0, 320); //portrait
        //TS_LEFT, TS_RT,
        pixel_y = map(p.x, TS_TOP, TS_BOT, 0, 320);//landscape
        //pixel_y = map(p.x, TOP=385, BOT=462, 0, 320);//landscape
        //pixel_y = map(p.y, TS_TOP, TS_BOT, 0, 480);//portrait
        //TS_TOP, TS_BOT,
    }
    return pressed;
}

I would like to download bitmap files to the screen but can’t get Adafruit or MCUFRIEND libraries to do it
I have downloaded the UTFT libraries from here but the bitmap demo sketch asks for a different set of pins and doesn’t conform to any I try, I just get a white screen.
Question can the UTFT demo be altered to work with my screen?
here is the sketch that I am trying to run

// UTFT_Bitmap 
// Copyright (C)2015 Rinky-Dink Electronics, Henning Karlsen. All right reserved
// web: http://www.RinkyDinkElectronics.com/
//
// This program is a demo of the drawBitmap()-function.
//
// This demo was made to work on the 320x240 modules.
// Any other size displays may cause strange behaviour.
//
// This program requires the UTFT library.
//

#include <UTFT.h>
#include <avr/pgmspace.h>

// Declare which fonts we will be using
extern uint8_t SmallFont[];

// Set the pins to the correct ones for your development shield
// ------------------------------------------------------------
// Arduino Uno / 2009:
// -------------------
// Standard Arduino Uno/2009 shield            : <display model>,A5,A4,A3,A2
// DisplayModule Arduino Uno TFT shield        : <display model>,A5,A4,A3,A2
//
// Arduino Mega:
// -------------------
// Standard Arduino Mega/Due shield            : <display model>,38,39,40,41
// CTE TFT LCD/SD Shield for Arduino Mega      : <display model>,38,39,40,41
//
// Remember to change the model parameter to suit your display module!
UTFT myGLCD(ITDB32S,A5,A4,A3,A2);

extern unsigned int info[0x400];
extern unsigned int icon[0x400];
extern unsigned int tux[0x400];

void setup()
{
  myGLCD.InitLCD();
  myGLCD.setFont(SmallFont);
}

It consists of this sketch plus 3 others icon.c tux.c and info.c
The program asks me to alter the pins to suit but there seems to be no similarity between the pins of the top sketch that works with XP = 6, XM = A2, YP = A1, YM = 7 and the bottom sketch UTFT myGLCD(ITDB32S,A5,A4,A3,A2);
Is it possible to get the bottom sketch to run and if so how?
Thanks,
Bob

Run all the library examples.

drawBitmap_kbv shows monochrome and colour pictures stored in PROGMEM.

showBMP_not_Uno shows .BMP format files from SD Card

UTFT does not support your Shield. So there is little point in trying.

Buy an UTFT supported display if you want to run UTFT programs.

Personally, I am horrified by the Red 320x480 Mcufriend Shield in your link.
And they seem to charge a lot of money for a WRONGLY designed board.

If you want a 320x480 Mcufriend shield there are Blue Shields with proper 4LVC245 buffers and AMS1117-3.3 voltage regulator that are electrically correct.
They will still be SLOW on a Mega2560 because the pins are designed for a Uno.

If you really want to use a MEGA2560 buy a display with pins designed for a Mega2560

David.

Thank you for replying David.

Personally, I am horrified by the Red 320x480 Mcufriend Shield in your link.
And they seem to charge a lot of money for a WRONGLY designed board.

It is not the one I have it was just the first one I could find as an example. The one I have just says 3.5" TFT LCD for arduino uno on the back, I have a mega spare so I have pushed it onto there.
I have taken your other comments in thanks.

I have loaded the drawBitmap_kbv sketch and it works "straight out of the box". I am sure I had tried those before with no results?

I loaded the showBMP_not_UNO sketch.
in the sketch it says instal v1.0.1 of <SdFat.h> which I did and altered the line
#define ENABLE_SOFTWARE_SPI_CLASS 0 to a 1.
I added a .BMP file to a microSD card I have (there are a few other things on it) but it now also has
this

No matter how hard I try, using insert an image or attach a file I can't get the photo to come up on here?

I tried to get it to show on the touch screen and swapped back and forth between the computer and the SD card slot with the card always getting a blue screen and

Show BMP files on TFT with ID:0x6814
cannot start SD

on the Serial Monitor.
For some reason I used another card (a 4gb instead of the 64gb I was using) and the pictures came up perfectly.
It looks as if it doesn't like 64gb cards.

I have looked at the showBMP_not_UNO sketch and can find no way of altering it so I can just load a single bitmap file?

Is there an easier way of displaying files?

What my final intention to do is to load a line drawing I have made in another program that looks like, say, a number of relays, or a model railway layout, leave the switch contacts off the drawing and add those with 'tft.drawLine' added into the program that moves the contact on the screen dependant on the state of an input pin. I have done something similar in the sketch in the first post but without the bitmap file.

I would also like to do it in landscape, all the bitmaps show up in portrait.

Is it possible to just load a bitmap (or jpeg,or other picture file) and then use it in this way and how?
Thanks,
Bob.

woof.jpg

woof.jpg

The example shows all .BMP files in the selected directory on the SD

I was not aware that SdFat.h did not work with 64GB but I suspect that 32GB is the biggest you can use. I doubt if you are actually using more than 5MB anyway.

Yes, of course you can display a single file. e.g. showBMP("woof.bmp", x, y)

Alternatively, you can just specify "woof.bmp" as the pattern in the example.
I strongly advise that you copy all the example .BMP pictures to your SD.
Then try a pattern like "tiger"

Seriously. Examples are intended to work "straight out of the box"
But they are also intended for experiments. e.g. save with a new name to your user area
Then try things like rotate screen or different pictures.

David.

I added
showBMP(“woof.BMP”,0,0);
to my sketch and got
‘showBMP’ was not declared in this scope
when I tried to compile it?
I altered the x and y to 0’s, and used various forms of your showBMP such as showBmp etc but with the same message?
I have managed to turn the picture through 90 degrees so it is just being able to load it when and where I want that I am not yet sure of.

I used the Forum "Search Arduino.cc" box to look for "showBMP"

This message asks the same question but for a Uno.

Your Shield has got the SD card on the Uno hardware SPI pins. So it works with "SD.h" library.
Since you have a MEGA2560 you have to follow the contortions to bit-bang SPI with "SdFat.h" library.

You just take the example code. Save to your new name. Strip out unnecessary code that searches directories, prints errors, ...

Seriously. Examples are intended to be experimented with.
Study the code. THINK. Adapt it for your project.

Scribble ideas down on paper. That is why cigarette packets were invented.
Only Einstein can do everything in his head. Mere mortals require pencil and paper.

David.

:smiley: -- I just bought exactly the same display from eBay ($7.95). Looks like distributers are dumping this product, probably because of its problems. Hoping anxiously that you get it to work.

It appears to be an 8 bit parallel display with the following pinout:

RD: A0
WR: A1
RS: A2
CS: A3
RST: A4

UTFT.h says UTFT(byte model, int RS, int WR, int CS, int RST, int SER=0)

So would it be (A2, A1, A3, A4) -- given if UTFT would even work here?

:smiley: -- I just bought exactly the same display from eBay ($7.95). Hoping anxiously that you get it to work.

Exactly the same as what ?
Either post a link to your item or quote the message number that has the same display e.g. #0

Please note that the OP only said that his link was like this one
I am much happier when a message says this is the item that I bought

I reply to lots of message threads about TFTs.
So any Newbie would have seen the same response from reading a few recent threads.
i.e. please post links to the display that you bought
And they definitely should have read the Forum advice about posting.

David.

Here is the display I purchased from this vendor -

The one I received does not say mcufriend on its back.

Can you please point me to a proper blue display for mega/due so I don't make the same mistake. The application is data display -- text and simple line drawings. No animation. Should be >= 480 x 320. I think SPI would be preferred to parallel? No high image bandwidth needed, but fast text is preferred. I measured the baud rate for another cheap 480x320 16bit parallel I got (from BuyDisplay - TM035-16), and it is 2400 bits (300 chars/s) for long text strings and about 1200 for short strings, using UTFT. This is on a Mega that is doing nothing but texting. I don't know if it is a UTFT issue or a shield issue. Thanks.

David, in reference to your comment on blue shield vs red shield what do think about the SPI display from BuyDisplay:

and the "breakout display" from same:

Can the UTFT library handle these two variants? How does the library decide if the shield is SPI or parallel? How do I tell UTFT to use the breakout module?

No, genuine UTFT does not support ILI9488 in SPI mode or in parallel mode.
It does support ILI9486_16

I strongly advise buying Arduino Adapter Shield. It can be configured for Parallel if you mount U1, U2 i.c.s

Please just explain what you have received and how it is configured.
Then we can show you how to use it with a Uno, Mega2560 or Due.

I do not have the Adapter Shield.
I do have a ER-TFT035-6 display which I use in SPI mode on 3.3V Arduinos e.g. Due, STM32, Teensy3.2, ESP32, ...

You must use an Adapter Shield if you have a 5V Mega2560

David.

Thanks David for getting back to me. I will respond shortly in detail to all your questions on this thread and the other thread. Meanwhile I will have the chutzpah to ask more questions, which I will number. If you want me to make a separate thread out of this, please let me know. Appreciated.

Q1) When a display shield is installed on a Mega or Due, it blocks all the headers from being accessed. How is this issue handled? The ER-TFT035-6 16bit parallel shield blocks A0 thru A15 and D40 thru D53, among others. Is this what you mean by the "Arduino Adapter Shield" (AAS)? I don't see AAS listed in the SHIELD section of store.arduino. Ebay doesn't list an AAS either. Where can I find one?

Q2) How do I tell which pins are unused by the display shield so I can use them for the project?

Q3) The schematics posted for the ER-TFT035-6 16bit parallel shield (on BuyDisplay.com) is quite different from the ER-TFT035-6 16bit parallel BuyDisplay sent me. How do I get the actual schematics? I prefer not to bother them with such trivial questions.

Q4) The cheap red MCUfriend display I received from Ebay

does not have a separate adaptor shield. The vendor has posted:

Specifications:
Controller: ili9481 ili9468, ili9488 hx8357, or r61581
Resolution: 480x320
Voltage: 5V/3.3V

So I suppose it works both on a Mega and a Due, like the ER-TFT035-6?

Q5) I don't see the controller chip any where on the display module or shield - neither on the ER-TFT035-6, nor on the MCUfriend. Where is it?

Thank you for your MCUfriend_kbv library!

Brom

I brought up the MCUfriend on a Mega, and it worked.

TFT ID = 0x9486

Do you want me to query it further?

Great library MCUfriend_kbv. Love it!

Q1) When a display shield is installed on a Mega or Due, it blocks all the headers from being accessed. How is this issue handled? The ER-TFT035-6 16bit parallel shield blocks A0 thru A15 and D40 thru D53, among others. Is this what you mean by the "Arduino Adapter Shield" (AAS)? I don't see AAS listed in the SHIELD section of store.arduino. Ebay doesn't list an AAS either. Where can I find one?

The BuyDisplay ER-TFT035-6 has a custom 40-pin header. You need the BuyDisplay ER-AS-ILI9341 Adapter Shield.

Q2) How do I tell which pins are unused by the display shield so I can use them for the project?

You read the BuyDisplay documents. Configure any jumpers. Study the Adapter Shield schematic.

Q3) The schematics posted for the ER-TFT035-6 16bit parallel shield (on BuyDisplay.com) is quite different from the ER-TFT035-6 16bit parallel BuyDisplay sent me. How do I get the actual schematics? I prefer not to bother them with such trivial questions.

Compare the photos of the ER-TFT035-6 with the item on your desk.
Tell me what the differences are e.g. mounted components, pcb track layout, jumpers (solder-bridges)

Q4) The cheap red MCUfriend display I received from Ebay
3.5" inch 480x320 TFT LCD Touch Screen Display Board For Arduino UNO R3 Mega2560 | eBay
does not have a separate adaptor shield. The vendor has posted:

Yes, it plugs straight into a Uno, Leo, Mega2560, Zero, Due, ...
Yes, the mcufriend.com electrical design is complete CRAP.
Yes, it will almost certainly damage your Mega2560 3.3V regulator.
It should work fine on Zero, Due, ...

Q5) I don't see the controller chip any where on the display module or shield - neither on the ER-TFT035-6, nor on the MCUfriend. Where is it?

The bare Silicon die is directly bonded to the TFT panel at manufacture. You can not see it.

David.

david_prentice:
Please just explain what you have received and how it is configured.
Then we can show you how to use it with a Uno, Mega2560 or Due.

I have received one ER-TFTM035-6 16 bit parallel with shield, and one 3.5" MCUfriend 8 bit parallel. They are both working now, using UTFT and MCUFRIEND_kvb. But I had a major issue with the ER-TFTM036-6. The shield does not match the schematics that is posted on its BuyDisplay page:

So I had to contact BuyDisplay and after a long time they got back and told me to solder "10" jumper short and desolder "Main" jumper open. None of these jumpers are in the schematic. These are factory only jumpers and extremely micro. They are not meant for users to desolder them like with the larger Js. In any case, problem is solved now.

Thanks for your replies to Q1 - Q5.

Q1) Yes I did get the ER-AS-ILI9341 shield. But this is not the question. The question is - when I install this shield, it covers all the pins (headers) of the Mega. So how do I use a Digital port or Analog port for my project? They cannot be accessed as the shield covers them.

Q2) The schematics on the web page is NOT the same as the ER-AS-ILI9341 shield I received. So how do I configure the jumpers? And the jumpers are tiny micro jumpers not intended for users.

Q3) The photo matches the ER-AS-ILI9341 shield I received. But the schematics do NOT match the ER-AS-ILI9341 shield I received. This is the schematics: Schematics The shield has a jumper "10", but it is not in the schematics. The board has a jumper "Main". It is not in the schematics. The board has ten micro jumpers. The schematics has 27 jumpers. The board has six JPs. The schematics has eight JPs.

New question Q6) In the example Font_simple.ino in MCUfriend_kvb, it says tft.setTextColor(RED, GREY); will provide a background to the text. And it works in the example. But when I copy the code to my sketch, there is no background and the text is transparent.

Q7) Does the 5" ER-TFTM050-5 (800x480 SSD1963) SPI module work with arduino Due and supported by UTFT? There is no shield here.

Q8) Does the 7" ER-TFTM070-6 (1024x600 RA8875) SPI module without a shield work with arduino Due and supported by UTFT?

Q9) Does the 9" RA8875 SPI without a shield work with arduino Due and supported by UTFT?

Thanks David.

If you provide accurate information I will help you with the items that you possess on your desk.

I am not going to waste my time until you have:

Compare the photos of the ER-TFT035-6 with the item on your desk.
Tell me what the differences are e.g. mounted components, pcb track layout, jumpers (solder-bridges)

Likewise for the ER-AS-ILI9341 pcb

Q1. You can access A0-A15 headers and the TX/RX/I2C header. Looks like 24 spare GPIO pins !!

Q6. The example works. Attach your sketch.

Regarding Q7, Q8, Q9. UTFT supports SSD1963_16. It does not support RA8875.
But you can read the UTFT docs yourself.

David.

I am not going to waste my time until you have:Likewise for the ER-AS-ILI9341 pcb
Compare the photos of the ER-TFT035-6 with the item on your desk.
Tell me what the differences are e.g. mounted components, pcb track layout, jumpers (solder-bridges)

David, I did answer your question accurately and informatively. I replied:

"Q3) The photo matches the ER-AS-ILI9341 shield I received. But the schematics do NOT match the ER-AS-ILI9341 shield I received. This is the schematics: Schematics* The shield has a jumper "10", but it is not in the schematics. The board has a jumper "Main". It is not in the schematics. The board has ten micro jumpers. The schematics has 27 jumpers. The board has six JPs. The schematics has eight JPs."*

My reply to you clearly says "****The photo matches the ER-AS-ILI9341 shield I received."

Do you even read my comments accurately? Every phrase put in has been chosen very carefully. I have to repeat information provided to you twice or three times, and I oftentimes don't get a proper answer back, or have to guess the answer. Usually your answer is about something different indicating you don't understand what the issue is.

In any case thanks for your help so far and for MCUfriend_kvb.

Your answer to Q1 is wrong, and you have not understood the question and many other of my questions and still it remains open. My question Q1 is not if there EXISTS spare pins. My question is that they are NOT ACCESSIBLE because the shield covers them. And your answer is to look at the schematics that I have told you FOUR TIMES is WRONG, and read me back the pins. A few times I have asked if arduino supports breakout modules - i.e. without the shield, and I yet to have a clear answer.

Cheers

Q1. You can access A0-A15 headers and the TX/RX/I2C header. Looks like 24 spare GPIO pins !!

I don't own the ER-AS-ILI9341 shield. The photos show empty footprints for those header pins. And an empty footprint for the 18x2 header CON36.

The photo shows empty footprints for U1, U2, U5, U6. So there is nothing connected to GPIO pins 22-53.

You can access the 1x8 Arduino headers by using some right-angle header strip.
the 2x18 header is more difficult. e.g. right-angle both sides.

Yes your link photo shows ER-AS-ILI9341 v1.0 but the schematic says ER-AS-ILI9341 v2.1

I have printed the Revision v2.1 and compared it my original paper copy (Revision A0)
I will have to study carefully. But so far JP6 seems to be the only difference.
J10 is on both schematics. I would need to follow the copper trace from U4.3 to locate J10 on the pcb.
In other words: Only you can see the copper traces. Only you can see if U1, U2, ... CON36 are mounted.

David.

Dear David,

I nearly can't believe the amount of patience you show!

You are a model for any responder of to forum posts.

I just wished the posters would read and understand How to get the best out of this forum (short version).
And appreciate the amount of support they get on this forum.

With great respect and best regards

Jean-Marc

Only you can see the copper traces. Only you can see if U1, U2, ... CON36 are mounted.

David, you are trying to answer something that I have not asked, and then you complain. Please be accurate and informative. You have not been accurate. The questions have numbers. Is it Q2) or what?

Did I ask you to tell me which pins are unused on the ER-AS-ILI9341? No. So why are you trying to answer something that I have not asked and then becoming all jacked up and critical for supposedly me not giving you information? And my ER-AS-ILI9341 shield does not say v1.0. It says Ver 2.1 and it still does not match the 2.1 schematics.

Q2) asks HOW DOES ONE FIGURE OUT the jumpers, when one does not have the schematics. It does not ask you to identify the jumpers or pins. I rather you teach me how to fish, than throw me a fish. What is a "footprint"? Why do you tell me to study UTFT when my questions Q7, Q8, and Q9 is if these display modules will work with an Arduino Due when they don't have a shield. I don't think UTFT deals with hardware, electrical, and signalling issues. Please be more informative in your answers.