- Sun May 22, 2016 3:09 pm
#47842
Some sites state the in order to use GPIO10 and GPIO09 you must physically remove their connections to the flash chip.
I have managed to write code which has not needed this modification. Your mileage may vary.
Set the flash type to DIO. Write code and use the port in such a way that in general GPIO10 is high. This is connected to write-protect, so most of the time it doesn't matter (if you are using SPIFFS you might care more).
For GPIO09 you have to be a LOT more careful. This is effectively another chip-enable for the flash.
You must make sure it is high whenever the flash is required.
Make sure that any function which uses/sets GPIO09 is ICACHE_RAM and that GPIO09 is high otherwise.
If you use OTA, or intend to flash the chip 'randomly' you must ensure that the pin fails HIGH.
With this limitation it does restrict the usefulness of the pin, however something like I2C or SPI on the port is more than possible.