Los ESP son SoCs creados por la empresa china Espressif con un alto rendimiento y bajo coste. Aunque existen varios modelos de SoCs podríamos reducirlos a dos
ESP8266
Con las siguientes características:
- 32-bit RISC CPU: Tensilica Xtensa LX106 normalmente entre 40 y 80 MHz, pero puede ser llegar a los 160MHz.
- 64 KiB de RAM para instrucciones y 96 KiB de RAM para datos
- Memoria flash externa de 512KiB a 4MiB (puede direccionar hasta 16MiB)
- IEEE 802.11 b/g/n Wi-Fi
- 16 pines GPIO todos PWM
- SPI e I2C
- UART en los pines dedicados (usada para la programación del chip)
- Un convertidor Analógico-Digital (ADC) de 10 bit
- Alimentación a 3,3V
Originalmente se diseñaron para hacer de puente de enlace a conexiones Wifi para Arduinos evolucionando hasta llegar a su versión 12F.
Con este último SoC, se han desarrollado múltiples placas, entre las que destacan:
Lolin NodeMCU
Wemos D1
Wemos D1 R1
Wemos D1 R1 mini
ESP32
Al igual que a su hermano pequeño ha evoluciona siendo el más recomendable el ESP WROOM. Sus características son:
- Procesador Xtensa LX6 de 32 bits de doble núcleo normalmente a entre 40 a 160MHz, pero puede llegar a los 240MHz.
- 448KiB de ROM, 520 KiB de SRAM para instrucciones y datos, 4MiB Flash
- Wi-Fi 802.11 b/g/n/e/i (802.11n sobre los 150 Mbps)
- Bluetooth 4.2 2.4 Ghz; BT 2.0 y 4.0 BLE
- 36 GPIO pins.
- 16 canales de ADC de 12 bits de resolución (2 ADC)
- 10 Pines Touch.
- 2 x DAC de 8 bits.
- 16 canales de PWM.
- 2 x UART o puertas serie
- 2 x I2C channels y 4 x SPI channels.
- Alimentación a 3,3V
Existen varias placas de prototipado entre las que destacan:
DOIT ESP32 DEVKIT v.1.0 36 pines
Wemos D1 R32
Instalación en IDE de Arduino de las placas ESP.
Para poder programar estos SoCs con el IDE de Arduino pincha en Archivo -> Preferencias.
Luego dependiendo que placas quieras instalar añade las siguientes URLs en el gestor de URLs adicionales.
Para ESP8266, escribe esta URL: https://arduino.esp8266.com/stable/package_esp8266com_index.json (si nos dá error podemos probar esta otra dirección: https://github.com/esp8266/Arduino/releases/download/2.3.0/package_esp8266com_index.json)
o para ESP 32 esta otra URL: https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json
Finalmente en Herramienta->Placa->Gestor de placas, busca las placas a instalar e instálalas.
Drivers
Ya vimos que con los Arduinos chinos se suelen usar unos drivers USB-UART llamados CH340 (se tiene enlace de descarga y enlace a la página principal en el apartado de Arduino). Pero este no es el único driver con esta finalidad, sino que existe otra con el que nos podemos encontrar si usamos estas placas ESP. Este driver llamado CP2102 puedes descargarlo aquí y su página oficial es esta.








