The ESP 12 board has 22 pins enter image description here

Are all of them usable?

I understand that there is an external flash memory that is accessed through SPI, but I'm not sure what the impact on the pins is.

And if it is so, then why are the pins available?

Is there a sort of a decoder board that receive as an input, let's say 3 SPIOs and outputs 8 GPIOs?

Is there a way to obtain more GPIO pins?

up vote 3 down vote accepted

The flash memory is connected to io 6 to io 11 if it is connected in QIO mode. DIO mode lets two of the pins free. According to Arduino core reference the two pins are 9 and 11. The flash pins are labeled SD and most of them are the first SPI interface of the esp8266. You can't use this SPI pins as digital pins, but supposedly you can connect another SPI device.

Some of the esp8266 'free' pins have some restrictions. Boot configuration pins io 0, io 2 and io 15 need to have some state at boot. io2 not LOW, io 15 LOW and with io 0 flashing mode is activated. The A0 is ADC only pin. And you can't count power, EN, Reset and ground as 'pins'.

You can use a multiplexer or an I2C expansion board to get more pins.

Your Answer

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Not the answer you're looking for? Browse other questions tagged or ask your own question.