I found a TFT shield for the Arduino and was wondering about how much it would take to get the ESP12 accept most of the shields that are out there. Not sure how much effort I'm going to put into this, but I wanted to share it and hear some thoughts from you guys. There is definitely some effort to be made in software, but this is kind of interesting to me too. I want to know how to add boards to the Arduino IDE the right way, configure pins and change common functions to work with this board.
I still have to add the stuff I've put on my ESP dev board.
Some connections won't make sense yet, I'm especially worried about the I2C being on the same chip as an IO, that controls itself, but it might work with the int/enable pin on the PDF8574.
Nopes, won't use them. They can be used but mostly in other modes like @ajlitt uses for his #RPi WiFi but in this mode they're useless / used for the external flash. Not sure about the SDcard mode, that I read about once.
I just seen somewhere, that the other SPI module pins can be remapped there and the switching between the SPI modules and the CS lines handled by the chip itself. I guess I've no other option, than buy an ESP-12F, create a breakout and experiment. Thanks anyway.
@SUF Yep, they're useless unless you want to disable or ignore the onboard flash. The "Hardware User Guide" shows a way of wiring the ESP8266 such that the SPI flash is on the other (non-SDIO mux'd) SPI port so that you can have local code storage. It doesn't have software examples (or at least didn't last I checked) but it appears that it can't boot directly from SPI in that config. You would likely need the SDIO master to send an IPL firmware of some sort that then sets up the other SPI master for code fetching.
The only advantage to that interface on an ESP-12F in standalone mode is that you can hold the ESP in reset (assert CH_PD) and use an external master to write the SPI flash much faster than a UART load.
@SUF Hmm, https://github.com/esp8266/Arduino/issues/1062 - something like this? Sounds like the SPI1 bus would be linked to the same pins on the bottom and you would free the pins 12 - 14 for something else. Do you "just" need more pins for something?
@SUF first link comments are useless :( they talk about the wrong SPI connection. All their examples and links where connected to 12, 13 and 14, although they were replies to the "bottom pins" comment. But the other link made sense. So why would you want that, sounds not so useable?
My plan is a modular system for my AutomaTales (https://hackaday.io/project/10227-automatales) project. I planed to break out an SPI, an I2C, and 8 GPIOs, as separately as possible. I want to give a try. If it works great. If not, still not a big problem just limiting my options at the sensor nodes. BTW. I was able to find ESP-12Es at a local store, so looks like I can play with it during the weekend.
@SUF In my #ESP8266 RFid reader I use the HSPI (GPIO12,GPIO13,GPIO14) with a TFT display and a RFid module with no problems, GPIO0 and GPIO2 could be used for I2C, all supported in the Arduino IDE. Let me count the free GPIOs.... 6 free GPIOs, well more or less, depending on chip selects and reset lines. So maybe a PCF8574 controlled via I2C is of interest, giving you 14 pins ;) with 3 address bits you can easily connect 8 PCF8574s.
Well good luck with your project, I'm following :)
I like how they just copied the 8pin header on the right, mixed the pins up a bit and put it on again. But the price is pretty good, all in all considered. I don't think I'll add a serial converter.
@SUF here is a tutorial on how to free GPIO9 and GPIO10, but you also have to change the firmware.
http://smarpl.com/content/esp8266-esp-201-module-freeing-gpio9-and-gpio10