jlbrown
September 15, 2024, 12:17am
1
Trying to use a pre v1.1 DevKit with TFT_eSpi graphics library. The FSPI
pin configuration in the technical manual doesn't seem to work ( I've tried it with two different boards ). Anyone had success in using SPI with this library?
sonofcy
September 15, 2024, 12:40am
2
I have lost my powers of xray vision and mind reading, so if you could post a hand drawn wiring diagram and code that has been formatted by the IDE (Tools/Autoformat) then ^^^ placed between code tags maybe something will happen.
2 Likes
jlbrown
September 15, 2024, 2:36am
3
Thank you for your response.
The SPI connection to ILI9341 is so: ( I think this is the default )
FSPICS0-GPIO10 -> CS ( ILI9341 )
FSPICLK-GPIO12 -> CLK
FSPIID -GPIO11 -> MOSI
FSPIQ -GPIO13 -> MISO
GPIO8 -> RST
GPIO9 -> DC
These are the values I used in the USER_SETUPS folder for ILI9341.
Then run any of the TFT_eSPI 320x240 examples. I've also tried using arbitrary pin assignments but that hasn't worked. ( Not sure arbitrary pin assignments are possible but what the heck )
Compiles and uploads with no problem but no display. Display power and backlight running from separate supply. Lovyan library works but not when using above pins. So I know the display and leads are ok.
Just trying to find out if anyone has made this SPI display work with this library and what pin configuration they used.
6v6gt
September 15, 2024, 4:43am
4
and the separate power supply shares a common ground with the ESP32?
jlbrown
September 15, 2024, 4:37pm
5
Yes, all grounds tied together.
horace
September 16, 2024, 6:40am
6
I used the Adafruit_ILI9341 library with a ESP32-S3 Devkit 1 and a ILI9341 display
File>Examples>Adafruit_ILI9341>graphicstest worked OK
post your code?
srnet
September 16, 2024, 8:48am
7
No problems with the TFT_eSPI, ILI9341 and ESP32S3 Dev kit board here.
Did you make the appropriate changes to the libraries User_Setup.h file ?
jlbrown
September 16, 2024, 9:58pm
8
I'm using User_Setups/Setup70b_ESP32_S3_ILI9342.h configured
with GPIOs 10 (CS), 11 (MOSI), 12 (SCK), 13 (MISO)
GPIO3 (RST) GPIO9 (DC)
Seems like this should be a valid SPI setup. No arbitrary pin setup
works. No other library ( Adafruit_GFX, Lovyan ) will work with the
10, 11,12,13 setup. They will work if I just use an arbitrary pin setup.
So what version of the DevKit do you have? What pinout are you using?
Thanks a bunch, this is kinda puzzling.
jlbrown
September 16, 2024, 10:13pm
9
Hey horace, Yep I've tested with this library using the full pinout
constructor. Works fine as long as I don't use the pins
specified as SPI in the technical manual. No code to post, just set constructor, compile. upload. I'd like to use TFT_eSPI but I can't get it
working.
horace
September 17, 2024, 4:48am
11
which technical manual?
if I run esp32-spi-default_pins on a ESP32-S3 DevkitC-1 I get
default pins
MOSI: 11
MISO: 13
SCK: 12
SS: 10
SDA: 8
SCL: 9
the pinout I use is
srnet
September 17, 2024, 6:59am
12
MOSI 11
SCK 12
MISO 13
#define ILI9341_DRIVER
#define TFT_CS 40
#define TFT_DC 42
#define TFT_RST 41
#define TFT_SPI_MODE 0
jlbrown
September 18, 2024, 1:30am
13
I found out I'm getting this error. I don't have any idea what to do about it .
Guru Meditation Error: Core 1 panic'ed (StoreProhibited). Exception was unhandled.
Core 1 register dump:
PC : 0x42002c57 PS : 0x00060230 A0 : 0x82002d2c A1 : 0x3fcebfd0
A2 : 0x00000010 A3 : 0x00000000 A4 : 0x60004000 A5 : 0x0000000b
A6 : 0x000000ff A7 : 0x00000000 A8 : 0x08000000 A9 : 0x3fcebfa0
A10 : 0x3fc95868 A11 : 0x00000001 A12 : 0x02625a00 A13 : 0xffffffff
A14 : 0x00000031 A15 : 0x00000000 SAR : 0x00000009 EXCCAUSE: 0x0000001d
EXCVADDR: 0x00000010 LBEG : 0x420066c8 LEND : 0x4200670f LCOUNT : 0x00000003
Backtrace: 0x42002c54:0x3fcebfd0 0x42002d29:0x3fcec000 0x42001d01:0x3fcec020 0x4200728a:0x3fcec040 0x4037dc52:0x3fcec060
I faced the same issue and did the following as a temporally workaround. Please give it a try.
Temporal solution
Define USE_HSPI_PORT or USE_FSPI_PORT in User_Setup.h.
// The ESP32 has 2 free SPI ports i.e. VSPI and HSPI, the VSPI is the default.
// If the VSPI port is in use and pins are not accessible (e.g. TTGO T-Beam)
// then uncomment the following line:
#define USE_HSPI_PORT // or USE_FSPI_PORT
Related issues on TFT_eSPI repository
I think that this is because different SPI definitions in ESP-IDF are used for each variant of the ESP32, but I'm currently investigating the details.
opened 11:56PM - 18 Apr 24 UTC
I'm having issues with my ESP32-S3 module crashing and rebooting on `tft.begin(… )` (or on `tft.init()`). The following output repeats over and over in the monitor:
```
ESP-ROM:esp32s3-20210327
Build:Mar 27 2021
rst:0x1 (POWERON),boot:0x2b (SPI_FAST_FLASH_BOOT)
SPIWP:0xee
mode:DIO, clock div:1
load:0x3fce3808,len:0x4bc
load:0x403c9700,len:0xbd8
load:0x403cc700,len:0x2a0c
entry 0x403c98d0
E (99) esp_core_dump_flash: Core dump data check failed:
Calculated checksum='db82bb1c'
Image checksum='ffffffff'
Guru Meditation Error: Core 1 panic'ed (StoreProhibited). Exception was unhandled.
Core 1 register dump:
PC : 0x4200289b PS : 0x00060a30 A0 : 0x82002928 A1 : 0x3fcebd80
A2 : 0x00000010 A3 : 0x00000000 A4 : 0x60004000 A5 : 0x00000015
A6 : 0x000000ff A7 : 0x00000001 A8 : 0x08000000 A9 : 0x3fcebd50
A10 : 0x3fc952b0 A11 : 0x00000001 A12 : 0xffffffff A13 : 0x00000010
A14 : 0x00000000 A15 : 0x3fc91d98 SAR : 0x00000010 EXCCAUSE: 0x0000001d
EXCVADDR: 0x00000010 LBEG : 0x42004dec LEND : 0x42004e4f LCOUNT : 0x00000003
Backtrace: 0x42002898:0x3fcebd80 0x42002925:0x3fcebdb0 0x42002930:0x3fcebdd0 0x4200184d:0x3fcebdf0 0x420058da:0x3fcebe20
```
Using the [EspExceptionDecoder](https://github.com/me-no-dev/EspExceptionDecoder) to decode the dump (only works in Arduino 1.8.19) with the [ELF file](https://github.com/Bodmer/TFT_eSPI/files/15031350/minimal_tft.ino.elf.zip) from the build gives this:
```
PC: 0x4200289b: TFT_eSPI::writecommand(unsigned char) at C:\Users\stompp\Documents\Arduino\libraries\TFT_eSPI\TFT_eSPI.cpp line 81
EXCVADDR: 0x00000010
Decoding stack results
0x42002898: TFT_eSPI::writecommand(unsigned char) at C:\Users\stompp\Documents\Arduino\libraries\TFT_eSPI\TFT_eSPI.cpp line 81
0x42002925: TFT_eSPI::init(unsigned char) at C:\Users\stompp\Documents\Arduino\libraries\TFT_eSPI\TFT_eSPI.cpp line 692
0x42002930: TFT_eSPI::begin(unsigned char) at C:\Users\stompp\Documents\Arduino\libraries\TFT_eSPI\TFT_eSPI.cpp line 603
0x4200184d: setup() at C:\DEV\ESP32\minimal_tft/minimal_tft.ino line 7
0x420058da: loopTask(void*) at C:\Users\stompp\AppData\Local\Arduino15\packages\esp32\hardware\esp32\2.0.15\cores\esp32\main.cpp line 42
```
I've minimized the code to the following:
```C
#include <SPI.h>
#include <TFT_eSPI.h>
TFT_eSPI tft = TFT_eSPI();
void setup() {
Serial.begin(115200);
tft.begin();
}
void loop() {
}
```
My setup is the following:
IDE: Arduino 1.8.19 & 2.3.2
TFT_eSPI version: 2.5.43
Board package version: [2.0.15](https://github.com/espressif/arduino-esp32/releases/download/2.0.15/esp32-2.0.15.zip)
Processor: [ESP32-S3](https://github.com/Freenove/Freenove_ESP32_S3_WROOM_Board)
TFT driver: [GC9A01](https://www.waveshare.com/wiki/1.28inch_LCD_Module?amazon)
Interface: SPI
The [setup file](https://github.com/Bodmer/TFT_eSPI/files/15031361/Setup406_GC9A01_ESP32.zip) is a copy of 46 with a different MOSI pin. It's added to the `User_Setup_Select.h` file and the `User_Setup.h` is set to use the GC9A01 driver.
opened 01:52PM - 16 May 24 UTC
Device crashes at boot.
Open issue in Arduino repo https://github.com/espressif… /arduino-esp32/issues/9618#issuecomment-2113344119
and
https://github.com/Xinyuan-LilyGO/T-Dongle-S3/issues/26
opened 02:45AM - 21 May 24 UTC
The issue that I am encountering is that a "Guru Meditation Error: Core 1 panic… 'ed (StoreProhibited). Exception was unhandled." just prior to executing the tft.init() function. This issue appears to be only graphics bases since I can execute this sketch with only Serial.println("..."); calls. I can use the Adafruit_GFX.h with the Adafruit_ST7789.h driver to do a test on a GFX application.
During an update something changed and I am at a loss to determine the root cause. Wiring is correct ( I have checked it many times).
1. IDE - Arduino version 2.3.2 CLI version 0.35.3
2. TFT_eSPI - version 2.5.43
3. Board Version - esp32 version 3.0.0.rc3 (I have regressed it back to ESP version 2.0.16 with no change in functionality, still reboots).
4. PROCESSOR - ESP32-S3
5. TFT Driver - ST7789 (TFT_eSPI sourced)
6. TFT Interface - SPI
See the following attached files for additional information you require:
[User_Setup.zip](https://github.com/Bodmer/TFT_eSPI/files/15383585/User_Setup.zip)
Sketch:
[WIFI_Channel_List.zip](https://github.com/Bodmer/TFT_eSPI/files/15383589/WIFI_Channel_List.zip)
TFT ; ST7789 IC 1.9 Inch ips Full View TFT Display LCD Color Module SPI Serial Port HD 170x320 MSP430 and C51 Programs
I have only one of these displays....

DEBUG Output:
[Debug Output.zip](https://github.com/Bodmer/TFT_eSPI/files/15383726/Debug.Output.zip)
Plus further information as appropriate to the problem:
1. TFT to processor connections used
2. A zip file containing your setup file (just drag and drop in message window - do not paste in long files!)
3. A zip file containing a simple and complete example sketch that demonstrates the problem but needs no special hardware sensors or libraries.
4. Screen shot pictures showing the setup

Thanks, John Taylor
I can be reached at taylorjw.nc@att.net
Edit: My test bench:
Arduino IDE 2.3.2
Seeed Studio XIAO ESP32S3
ESP32 board package: espressif/arduino-esp32 3.0.4
PSRAM: Disable
Display: ST7789
Interface: SPI
SPI Frequency: 80MHz
Tested on: September 12, 2024
srnet
September 18, 2024, 7:02am
15
Espressif do seem to make regular and significant changes to their core for the Arduino IDE, which does seem to break already published libraries.
I have gone back to Version 2.0.14 to achieve some stability.
I would certainly avoid using GPIO3 as it is a strapping pin.
tboy
June 13, 2025, 10:47pm
17
Super big thank you for this. Fixed the problem I have been working on for hours.
system
Closed
December 10, 2025, 10:47pm
18
This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.