@david_prentice Thank you for the replay. However, I have done these steps. The script I'm running is the based on https://github.com/Bodmer/TFT_eSPI/tree/master/examples/160%20x%20128/TFT_SPIFFS_Jpeg with additional print statements. I also have verified this is a screen printing issue because I don't see a black screen from this scrip
tft.begin();
tft.setRotation(0); // 0 & 2 Portrait. 1 & 3 landscape
tft.fillScreen(TFT_BLACK);
delay(2000);
Perhaps I missed something but I would expect the screen to at least show black. Additionally if you read the serial output you will see the image properties as read on the Arduino indicating SPIFFE is working properly.
-
Install the TFT_eSPI library: done
-
read instructions for wiring : done and tried multiple variations
-
read instructions for User_Setup: done, please see below
-
run the examples that come with the library.: done, they don't seem to work in my configuration. If you have an example that works for you may you provide it with the wiring hookup?
-
choose the simplest examples first. : I feel that the code above should be a very simple example that should work
-
make notes on paper.: actually have done this so I can keep track of the wiring
-
compose your question carefully: I have done my best to craft this question as best I can. If there is anything I am missing I am happy to provide what I can.
-
the ST7735 link is excellent: thank you
-
you can probably find your exact ILI9341 board at the same shop.: I have spent some time looking for this board but am unable to find it. It does have the same pin location as this one. 2.8 inch ili9341 240x320 spi tft lcd display touch panel spi serial port module Sale - Banggood.com
-
or Google for ILI9341 "images". Compare with the item on your desk.: please see 9
-
quote which example gives your problem : I am using this example 160 x 128/TFT_SPIFFS_Jpeg, but again I would expect the above code to work
-
paste your "User_Setup" : good idea, Here is the uncommented code
#define ILI9341_DRIVER
#define TFT_MISO 19
#define TFT_MOSI 23
#define TFT_SCLK 18
#define TFT_CS 15 // Chip select control pin
#define TFT_DC 0 // Data Command control pin
#define TFT_RST 2 // Reset pin (could connect to RST pin)
#define LOAD_GLCD // Font 1. Original Adafruit 8 pixel font needs ~1820 bytes in FLASH
#define LOAD_FONT2 // Font 2. Small 16 pixel high font, needs ~3534 bytes in FLASH, 96 characters
#define LOAD_FONT4 // Font 4. Medium 26 pixel high font, needs ~5848 bytes in FLASH, 96 characters
#define LOAD_FONT6 // Font 6. Large 48 pixel font, needs ~2666 bytes in FLASH, only characters 1234567890:-.apm
#define LOAD_FONT7 // Font 7. 7 segment 48 pixel font, needs ~2438 bytes in FLASH, only characters 1234567890:-.
#define LOAD_FONT8 // Font 8. Large 75 pixel font needs ~3256 bytes in FLASH, only characters 1234567890:-.
//#define LOAD_FONT8N // Font 8. Alternative to Font 8 above, slightly narrower, so 3 digits fit a 160 pixel TFT
#define LOAD_GFXFF // FreeFonts. Include access to the 48 Adafruit_GFX free fonts FF1 to FF48 and custom fonts
#define SMOOTH_FONT
#define SPI_FREQUENCY 27000000 // Actually sets it to 26.67MHz = 80/3
#define SPI_READ_FREQUENCY 20000000
#define SPI_TOUCH_FREQUENCY 2500000
Here is the "User_Setup" when testing ST7735. Note, I have tested with every "tab" option
#define ST7735_DRIVER // Define additional parameters below for this display
// For ST7789, ST7735 and ILI9163 ONLY, define the pixel width and height in portrait orientation
// #define TFT_WIDTH 80
#define TFT_WIDTH 128
// #define TFT_WIDTH 240 // ST7789 240 x 240 and 240 x 320
#define TFT_HEIGHT 160
// #define TFT_HEIGHT 128
// #define TFT_HEIGHT 240 // ST7789 240 x 240
// #define TFT_HEIGHT 320 // ST7789 240 x 320
#define ST7735_INITB
// #define ST7735_GREENTAB
// #define ST7735_GREENTAB2
//#define ST7735_GREENTAB3
// #define ST7735_GREENTAB128 // For 128 x 128 display
// #define ST7735_GREENTAB160x80 // For 160 x 80 display (BGR, inverted, 26 offset)
// #define ST7735_REDTAB
//#define ST7735_BLACKTAB
// #define ST7735_REDTAB160x80 // For 160 x 80 display with 24 pixel offset
#define TFT_MISO 19
#define TFT_MOSI 23
#define TFT_SCLK 18
#define TFT_CS 15 // Chip select control pin
#define TFT_DC 0 // Data Command control pin
#define TFT_RST 2 // Reset pin (could connect to RST pin)
//#define TFT_RST -1 // Set TFT_RST to -1 if display RESET is connected to ESP32 board RST
#define LOAD_GLCD // Font 1. Original Adafruit 8 pixel font needs ~1820 bytes in FLASH
#define LOAD_FONT2 // Font 2. Small 16 pixel high font, needs ~3534 bytes in FLASH, 96 characters
#define LOAD_FONT4 // Font 4. Medium 26 pixel high font, needs ~5848 bytes in FLASH, 96 characters
#define LOAD_FONT6 // Font 6. Large 48 pixel font, needs ~2666 bytes in FLASH, only characters 1234567890:-.apm
#define LOAD_FONT7 // Font 7. 7 segment 48 pixel font, needs ~2438 bytes in FLASH, only characters 1234567890:-.
#define LOAD_FONT8 // Font 8. Large 75 pixel font needs ~3256 bytes in FLASH, only characters 1234567890:-.
//#define LOAD_FONT8N // Font 8. Alternative to Font 8 above, slightly narrower, so 3 digits fit a 160 pixel TFT
#define LOAD_GFXFF // FreeFonts. Include access to the 48 Adafruit_GFX free fonts FF1 to FF48 and custom fonts
#define SMOOTH_FONT
#define SPI_FREQUENCY 27000000 // Actually sets it to 26.67MHz = 80/3
#define SPI_READ_FREQUENCY 20000000
#define SPI_TOUCH_FREQUENCY 2500000
- type the paper notes to your message.: Here is what I have for my wiring notes. The name on the right represents the pins used on the ESP32;
LED - (5v)
SCK - (SCLK) Serial clock
SDA - (MOSI)
AO - (DC)
RESET - (RESET)
CS - (CS) Chip Select
GND - (Ground)
VCC - (3.3v)
Going through this again I might be missing something outside of the basic script. Like wiring. I'd like to see if you have an example that works for you. Have you been able to get this working successfully? I'm just not sure how to get this scrip any more basic than "tft.fillScreen(TFT_BLACK);"
I don't think the issue is the program but I suspect a pin or wiring issue. Everything is directly connected through a breadboard and I have varied the pins and wiring multiple times. Do I have the pins labeled correctly in my notes?