ESP-12F
El ESP-12F es un módulo basado en el ESP8266, muy popular en proyectos de IoT por su conectividad Wi-Fi, tamaño compacto y bajo costo. Es ampliamente usado en automatización del hogar, sensores y dispositivos conectados.

Características principales
- Chip: ESP8266EX
- Wi-Fi: 802.11 b/g/n, modo estación y AP
- CPU: Tensilica L106, 32-bit, hasta 80 MHz (puede llegar a 160 MHz)
- Memoria Flash: Generalmente 4 MB
- RAM: 80 KB
- GPIOs: 11 disponibles para uso general
- ADC: 1 canal de 10-bit (0-1V)
- Interfaz: UART, SPI, I²C, PWM, I²S
- Alimentación: 3.0V – 3.6V
- Dimensiones: 24 mm x 16 mm
- Encapsulado: SMD, 16 pines
- Antena: Integrada (PCB trace antenna)
- Protocolos soportados: TCP/IP, HTTP, MQTT
- Consumo: Muy bajo en modo deep sleep (~10 µA)
Es compatible con el ecosistema NodeMCU y puede programarse con Arduino IDE, MicroPython, Lua, Platformio.
Pinout del ESP-12F
El ESP-12F tiene 16 pines en total, pero no todos están expuestos como GPIO. Los principales son:
Pines seguros para uso general
GPIO1 y GPIO3 son parte del UART por defecto, puedes usarlos como GPIO si no necesitas comunicación serie."
| GPIO | Estado / Función principal | Comentario |
|---|---|---|
| GPIO1 (TX) | UART TX / GPIO | Puede usarse si no necesitas el puerto serie |
| GPIO3 (RX) | UART RX / GPIO | Puede usarse si no usas el puerto serie |
| GPIO4 | GPIO / I²C SDA / PWM | Totalmente seguro |
| GPIO5 | GPIO / I²C SCL / PWM | Totalmente seguro |
| GPIO12 | GPIO / SPI / PWM / HSPI | Seguro si no se altera durante el arranque |
| GPIO13 | GPIO / SPI / PWM / HSPI | Seguro |
| GPIO14 | GPIO / SPI / PWM / HSPI | Seguro |
| GPIO16 | GPIO / Deep Sleep Wake / PWM | Seguro, excepto para despertador |
Pines que NO debes usar para GPIO normal
| GPIO | Estado / Función principal | Comentario |
|---|---|---|
| GPIO0 | Boot mode selector (LOW = Flash) | Afecta arranque, debe estar HIGH normalmente |
| GPIO2 | Boot mode / LED / Wi-Fi | Debe estar HIGH al arrancar |
| GPIO15 | Boot mode / SPI | Debe estar LOW al arrancar |
| GPIO6–GPIO11 | SPI Flash interno | ❌ Conectados al chip de memoria Flash, no usar |
| EN (CH_PD) | Chip enable | Debe estar siempre HIGH para funcionar |
| RST | Reset | LOW = reinicia el módulo |
Modos de arranque
| Pin | Función durante el arranque | Nivel recomendado | Comentario |
|---|---|---|---|
| GPIO0 | Selecciona modo de arranque | HIGH = ejecutar LOW = flashear |
No conectar a botones o sensores que cambien su nivel al iniciar |
| GPIO2 | Afecta arranque | HIGH | Debe permanecer en HIGH al encender |
| GPIO15 | Define modo SPI/SDIO | LOW | Debe estar conectado a GND al arrancar |