The Hussah Breakout board based on ESP8266 chip is a little powerful development board, although for some projects the number of pins could be not enough!
The following are a description of the board from IO perspective.
Source: https://www.adafruit.com/product/2471
- Reset button,
- User button that can also put the chip into bootloading mode,
- Red LED you can blink,
- Level shifting on the UART and reset pin,
- 3.3V out, 500mA regulator (you'll want to assume the ESP8266 can draw up to 250mA so budget accordingly)
- Two diode-protected power inputs (one for a USB cable, another for a battery)
Two parallel, breadboard-friendly breakouts on either side give you access to:
- 1 x Analog input (1.8V max)
- 9 x GPIO (3.3V logic), which can also be used for I2C or SPI
- 2 x UART pins
- 2 x 3-6V power inputs, reset, enable, LDO-disable, 3.3V output
So, if we needed to handle more than 9 outputs could be useful to have a port expander. I have used the MCP23017 (https://www.adafruit.com/product/732) and it is pretty handy and easy to use.
This port expander give us (16) I/O pins using I2C protocol, that only need (2) ESP8266 ports and give us (16) extra ports. This port expander can be used with other I2C devices and uses I2C 7-bit address between
0x20-0x27, selectable with jumpers.
The Huzzah Breakout board and the Feather Huzzah, based on the ESP8266 chip, have both SDA (pin 4) and SCL (pin5) for connecting the MCP23017 through I2C protocol, which are the standard pins that Arduino Wire library use.