Use this forum to chat about hardware specific topics for the ESP8266 (peripherals, memory, clocks, JTAG, programming)

User avatar
By QuickFix
#69108 With (almost) all libraries for the Arduino ESP8266Core (TFT, touch, SD), you can manually select the CS-line, enabling you to connect multiple SPI-devices to the SPI-bus (each with its own CS).
So if GPIO15 really is a problem (it shouldn't be though), connect MISO/MOSI/SCLK as they should and CS/SS to any free GPIO-pin and set it in code.

I'm using a 2.4" SPI touch-screen with the TFT-CS on GPIO15 and the touch-CS on GPIO16 at the moment (want to change this, because I want to use deep-sleep in the future) and it's working flawlessly. :idea:
Image
(Note: haven't got the SD card working yet; I've heard these TFT-boards have a fault in their design)
User avatar
By RFZ
#69123 I don't know if the ESP hardware supports other IOs than GPIO15 as CS for SPI1. If you change the CS to another GPIO, you may loose the hardware support for SPI and fallback to software (which means more CPU usage)

However, as far as I know, the Arduino SDK doesn't even use the full hardware capabilities of the ESPs SPI hardware.
User avatar
By btidey
#69127 The pull down on GPIO15 cannot be too high as there is an internal pull up of around 38K to overcome. It should be 4k7 or less to ensure a good low during boot up.
User avatar
By RFZ
#69129 Oh okay, thx. Didn't know that. Do you know if that's a permanent pull-up, or is it just active during boot-up / until I change the function of GPIO15?