Voting resources, early voting, and poll worker information - VOTE. ... Adafruit is open and shipping.
0

"White screen" with 3/5" TFT featherwing on ESP32S
Moderators: adafruit_support_bill, adafruit

Please be positive and constructive with your questions and comments.

"White screen" with 3/5" TFT featherwing on ESP32S

by nedwelch on Sat Aug 29, 2020 3:54 pm

My 3.5" Featherwing touchscreen works flawlessly with my 32u4 and M0 Featherwings. But I can't get it operational on a NodeMCU ESP32s MCU.

LCD screen is powered (backlight on), code compiles, and serial communications with the MCU work. But no images are drawn -- all pixels are white.

For testing, I'm using the graphictest_featherwing example sketch. Wiring maps LCD pins to the MCU pins specified for the Huzzah featherwing. (SCS to P14, RCS to P32, TCS to P15, DC to P33, etc). Have hardcoded these pin definitions into the script to avoid any confusion about board ID.

IMG_1451.jpg
IMG_1451.jpg (71.33 KiB) Viewed 32 times


The graphicstest_featherwing sketch compiles, loads, runs, and reports that test shapes are being drawn. The diagnostic information looks squirrelly to me -- 0x0 throughout -- but I don't know what these results mean. Below is the serial output I get when running the script (successfully) on an M0 featherwing and (unsuccessfully) on the ESP32s MCU:

M0 test.JPG
M0 test.JPG (31.01 KiB) Viewed 32 times


ESP32s test.JPG
ESP32s test.JPG (29.8 KiB) Viewed 32 times


Help?

nedwelch
 
Posts: 3
Joined: Tue Oct 24, 2017 4:37 pm

Re: "White screen" with 3/5" TFT featherwing on ESP32S

by avalonjr on Sun Aug 30, 2020 7:36 pm

I have a bunch of new/older Adafruit 3.5" 320 x 480 TFT LCD touchscreen displays with a 26 pin header on the bottom.
I can't find any product information on this board.

I need to know how to activate it in the Raspberry Pi software for full functionality, and of course any wiring information required. It appears to just push onto the end pins of the GPIO header. The mounting holes line up in this configuration. The backlight comes on when mounted, but I don't see any data on the screen.

The bottom of the board calls out the controllers on board: STMPE610 and HXB3570.

Is it possible to use this touch screen with HDMI connected (simultaneously)?

avalonjr
 
Posts: 1
Joined: Sun Aug 30, 2020 7:19 pm

Re: "White screen" with 3/5" TFT featherwing on ESP32S

by mikeysklar on Mon Aug 31, 2020 2:07 pm

Hello avalonjr,

Thank you for the photo and description of your setup. It helps to know you have a working M0 and 32u4.

I did see an issue with someone else having to do some workings around to get the Huzzah32 to talk to the TFT 3.5. It looks like the DC pin needed to be mapped to a GPIO in the range of 0-31 (they set to D27 in the issue).

https://github.com/Bodmer/TFT_eSPI/issues/127

Mapping the DC pin on the tft board to pin D27 (next to the D33 pin) and setting this in the config did the job!
In the config I did not need to set the SPI pins, just left it uncommented. Also setting them to 19,18 and 5 also worked (as they are mapped now).
I am using D14 for the SD card pin. Works

mikeysklar
 
Posts: 1995
Joined: Mon Aug 01, 2016 8:10 pm

Re: "White screen" with 3/5" TFT featherwing on ESP32S

by nedwelch on Tue Sep 01, 2020 6:01 pm

Hi Mikeysklar,

Thanks for this tip. I tried remapping DC from GPIO33 to GPIO27, as suggested. No effect.

The thread you quoted suggests that all GPIO pins should be in the 0-31 range, so I also tried remapping RCS from GPIO32 to GPIO26. That didn't help either.

Any other ideas? Looking at the ESP32 pinout, I see one pin I'm unfamiliar with labelled VSPI_SS. Currently, I mapping the LCD featherboard's SCK pin to the ESP32's VSPI_SCK. Should I perhaps be mapping to VSPI_SS instead?

Thanks again,
Ned

nedwelch
 
Posts: 3
Joined: Tue Oct 24, 2017 4:37 pm

Re: "White screen" with 3/5" TFT featherwing on ESP32S

by mikeysklar on Wed Sep 02, 2020 12:28 pm

Hi Ned,

A few more thoughts.

1) There is an enable switch on the 3.5" TFT FeatherWing. I assume you have that set to the "on" position?

2) Let's review your pinouts going back to the Adafruit guide recommended ones.

On the ESP32, TFT_CS is pin #15
On the ESP32, TFT_DC is pin #33
On the ESP32, RT is pin #32
On the ESP32 SD is pin #14

3) Please make sure tha tthe MISO/MOSI/SCK are connected properly to the display as the photo has a note about being off by one.

https://learn.adafruit.com/adafruit-3-5 ... phics-test

I can help you verify the pinouts are good if you can take a few above photos at 800x600 and place them in-line for this thread.

The VSPI_SS and VSPI_SCK I'm not familiar with from out pinout page. Are you seeing this in the code?

https://learn.adafruit.com/adafruit-huz ... er/pinouts

mikeysklar
 
Posts: 1995
Joined: Mon Aug 01, 2016 8:10 pm

Re: "White screen" with 3/5" TFT featherwing on ESP32S

by nedwelch on Wed Sep 02, 2020 2:30 pm

Hi Mike,

Thanks for hanging in there with me. I think I've addressed the issues you're asking about, but here's the rundown:

mikeysklar wrote:1) There is an enable switch on the 3.5" TFT FeatherWing. I assume you have that set to the "on" position?

Check. Switch has been set to "on".

mikeysklar wrote:2) Let's review your pinouts going back to the Adafruit guide recommended ones.

On the ESP32, TFT_CS is pin #15
On the ESP32, TFT_DC is pin #33
On the ESP32, RT is pin #32
On the ESP32 SD is pin #14

That's where I started. As a result of our last email, it morphed to:
TFT_CS is pin #15 (no change)
TFT_DC is pin #27
RT is pin #26
SD is pin #14 (no change)


mikeysklar wrote:3) Please make sure tha tthe MISO/MOSI/SCK are connected properly to the display as the photo has a note about being off by one.
https://learn.adafruit.com/adafruit-3-5 ... phics-test

I think I've taken this one-socket shift into account already. Checked and re-checked. But maybe I read something wrong -- jpgs below to confirm


mikeysklar wrote:I can help you verify the pinouts are good if you can take a few above photos at 800x600 and place them in-line for this thread.

The VSPI_SS and VSPI_SCK I'm not familiar with from out pinout page. Are you seeing this in the code?

Here they are. Pinouts for the ESP32 devkit are a bit different from the Huzzah board, so bottom of each frame shows the relevant slice of the devkit pinout diagram. There's no mention of VSPI_SS in the code, but I did notice a pin with this label on the devkit, next to pins labelled VSPI_SCK and VSPI_MISO. Since SPI connections typically use four wires, it got me wondering why this pin wasn't being used. Am guessing that SCS, RCS and TCS make the required connections on a device-specific basis?
IMG_1462_.jpg
IMG_1462_.jpg (475.11 KiB) Viewed 14 times

IMG_1463_.jpg
IMG_1463_.jpg (480.08 KiB) Viewed 14 times


Regards,
Ned

nedwelch
 
Posts: 3
Joined: Tue Oct 24, 2017 4:37 pm

Re: "White screen" with 3/5" TFT featherwing on ESP32S

by mikeysklar on Thu Sep 03, 2020 10:16 am

Hi Ned,

Thanks for the photos. Those help a bit. We better take a moment to make sure we are talking about the exact same product.

The board you are using is the ESP32-S2 Saola 1R Dev Kit WRover, correct?
https://www.adafruit.com/product/4693

The pinouts will be different than the Huzzah32 so we will need to decide which SPI pins matter here. There are two SPI buses you can use to connect up to the display.

SPI2 - HSPI
SPI3 - VSPI

They are both general purpose SPIs with three CS lines to drive up to three slaves.

https://docs.espressif.com/projects/esp ... eripherals

Now of course things get confusing about mapping the actual pins due to less conventional naming they are using. I'm pretty sure I'll screw this part up as I've not seen a good pin mapping from the ESP32-S2 chip to devkit pin breakout. Do you have a pinout chart you are following?

mikeysklar
 
Posts: 1995
Joined: Mon Aug 01, 2016 8:10 pm

Please be positive and constructive with your questions and comments.