La placa ESP32 STEAMakers
Innovadidactic · Características, sensores y programación con STEAMakersBlocks
Recurso educativo elaborado con material extraido de las webs que aparecen en RECURSOS Y ENLACES
1. Introducción
La placa ESP32 STEAMakers es una placa de control educativa desarrollada por Innovadidactic, pensada para iniciarse en el mundo de la programación, la electrónica, las comunicaciones y la robótica en el aula. Su formato es compatible con Arduino UNO (misma disposición de pines), pero incorpora el potente microcontrolador ESP32-WROOM-32, lo que le añade conectividad WiFi y Bluetooth, mayor velocidad de proceso y muchas más posibilidades que una placa Arduino UNO clásica.
Fuente: fgcoca.github.io/ESP32-STEAMakers
Fuente: digitalcodesign.com
Habitualmente esta placa se utiliza junto con la shield (escudo) Imagina TdR STEAM, que se coloca encima y añade de serie numerosos sensores y actuadores (LEDs, zumbador, pulsadores, potenciómetro, LDR, sensor de temperatura, etc.) listos para usar sin necesidad de montar circuitos adicionales.
Con estas dos piezas de hardware (ESP32 STEAMakers + Imagina TdR STEAM) y el entorno de programación por bloques STEAMakersBlocks (antes llamado ArduinoBlocks) se pueden desarrollar proyectos desde un nivel muy básico hasta proyectos de bastante complejidad, incluyendo aplicaciones de IoT (Internet de las Cosas) gracias a la conectividad WiFi y Bluetooth integrada.
Fuente: fgcoca.github.io/ESP32-STEAMakers
2. Características técnicas
La placa está basada en el microcontrolador ESP32-WROOM-32 (núcleo Tensilica Xtensa de 32 bits, doble núcleo, hasta 160 MHz). Sus especificaciones principales son:
Procesador y comunicaciones
- Microcontrolador Tensilica Xtensa 32-bit LX6, doble núcleo, hasta 160 MHz
- Conectividad WiFi 802.11 b/g/n/e/i
- Conectividad Bluetooth 4.2 y modo BLE
- 448 KB ROM · 520 KB SRAM · 8+8 KB SRAM en RTC
- 1 kbit eFUSE · 512 bytes de memoria flash tipo EEPROM
- 4 temporizadores internos de 64 bits
Entradas, salidas y expansión
- Formato compatible con Arduino UNO (pines tipo Dupont)
- 14 entradas/salidas digitales con alimentación
- 16 convertidores analógico-digitales (ADC) de 12 bits
- 2 convertidores digital-analógicos (DAC) de 8 bits
- 16 canales PWM · 2 UART · 2 canales I2C · 4 canales SPI
- 10 sensores/pines táctiles capacitivos
- Zócalo para tarjetas microSD (almacenamiento de datos)
- Hub I2C para hasta 5 dispositivos simultáneos + conector I2C para pantalla OLED
- Botón de reset, conectores de 5V y 3,3V con interruptor selector de tensión
Fuente: fgcoca.github.io/ESP32-STEAMakers
No todas las funciones del chip ESP-WROOM-32 están disponibles: algunos pines tienen doble función y se reservan para uso interno de la placa (por ejemplo, el control de la tarjeta microSD). Aun así, la placa ESP32 STEAMakers ofrece muchas más prestaciones que una Arduino UNO convencional, con la ventaja añadida de la conectividad inalámbrica.
Se puede programar tanto con el IDE de Arduino (escribiendo código en C++) como con STEAMakersBlocks, un lenguaje de programación visual por bloques mucho más accesible para el aula, que es el que se explica en este recurso.
3. Sensores y actuadores
Integrados en la propia placa ESP32
- Sensor Hall integrado en el chip ESP32.
- Sensor de temperatura interno del propio microcontrolador.
- 10 pines/sensores táctiles capacitivos, que permiten detectar el contacto de un dedo directamente sobre un pin.
Sensores y actuadores del kit Imagina TdR STEAM
La mayoría de las actividades de aula se realizan combinando la placa con la shield Imagina TdR STEAM, que añade los siguientes elementos listos para programar:
| Elemento | Tipo | Pin / conexión | Descripción |
|---|---|---|---|
| LED rojo | Actuador | D12 | Diodo LED para señalización |
| LED azul | Actuador | D13 | Diodo LED para señalización |
| LED RGB | Actuador | D6 / D9 / D10 (R/G/B) | Diodo de color variable |
| Zumbador (buzzer) | Actuador | D8 | Genera tonos y melodías |
| Pulsadores SW1 y SW2 | Sensor digital | D2 y D7 | Entradas digitales de botón |
| Potenciómetro | Sensor analógico | A0 | Resistencia variable manual |
| LDR (fotorresistencia) | Sensor analógico | A1 | Mide la intensidad de luz ambiente |
| Sensor de temperatura LM35 | Sensor analógico | A2 | Mide la temperatura ambiente |
| Sensor DHT11 | Sensor digital | D4 | Temperatura y humedad relativa |
| Receptor/emisor de infrarrojos | Sensor/actuador | D11 | Recepción de mando a distancia IR |
| Conector I2C | Expansión | SDA/SCL | Pantalla LCD 2x16, sensores de color, gestos, RFID, matrices de LED, etc. |
Además, mediante el conector I2C o los pines libres se pueden añadir otros muchos módulos: micrófono (sensor de sonido), servomotor, tira de LEDs direccionables Neopixel, sensor infrarrojo para evitar obstáculos, sensor de color, sensor de gestos o lector RFID, entre otros.
Cada sensor tiene en STEAMakersBlocks un bloque específico ya preparado dentro de la categoría TdR STEAM, de forma que no hace falta conocer el cableado interno ni la librería del componente para empezar a utilizarlo.
4. Programar con STEAMakersBlocks
STEAMakersBlocks es el lenguaje de programación visual por bloques desarrollado por Innovadidactic para programar la placa ESP32 STEAMakers (y otras placas de la familia). Hasta el 1 de julio de 2025 se llamaba ArduinoBlocks; si en algún manual o vídeo antiguo aparece ese nombre, se refiere a la misma plataforma.
En lugar de escribir instrucciones de código como en el IDE de Arduino, en STEAMakersBlocks se arrastran y encajan bloques tipo puzzle, lo que evita errores de sintaxis y facilita mucho el aprendizaje de la programación y el pensamiento computacional. Cada bloque equivale, por debajo, a una o varias instrucciones de código C++, que la propia plataforma puede mostrar y exportar.
Fuente: shop.innovadidactic.com
STEAMakersBlocks funciona en el navegador (plataforma online), por lo que no requiere instalación en el equipo. Sin embargo, para poder cargar el programa en la placa es necesario instalar un pequeño programa llamado Connector, que debe estar abierto mientras se sube el programa o se leen datos por el puerto serie.
4.1 Primeros pasos con STEAMakersBlocks
- Crear una cuenta gratuita en steamakersblocks.com con un correo electrónico válido.
- Descargar e instalar el Connector (disponible para Windows, Linux, macOS y Chromebook) desde el apartado Resources > Connector de la web.
- Conectar la placa ESP32 STEAMakers al ordenador mediante el cable USB.
- Abrir el Connector y comprobar que detecta la placa (puerto serie).
- Entrar en la plataforma STEAMakersBlocks y crear un nuevo proyecto, seleccionando como tipo de placa "ESP32 STEAMakers".
Fuente: fgcoca.github.io/ESP32-STEAMakers
Fuente: fgcoca.github.io/ESP32-STEAMakers
Los bloques están organizados por categorías en el lateral: entradas/salidas básicas, control (bucles, condicionales), operadores, texto, tiempo, comunicaciones y, muy importante para este kit, una categoría específica llamada TdR STEAM con un bloque ya preparado para cada sensor y actuador de la shield.
4.2 Tutorial: encender y apagar un LED
Objetivo: hacer que el LED rojo de la shield Imagina TdR STEAM (conectado al pin D12) parpadee cada segundo.
- Entramos en STEAMakersBlocks y creamos un nuevo proyecto para la placa ESP32 STEAMakers + TdR STEAM.
- En la categoría TdR STEAM buscamos el bloque LED y lo arrastramos hasta el bucle principal
loop.
Fuente: fgcoca.github.io/ESP32-STEAMakers
Fuente: fgcoca.github.io/ESP32-STEAMakers
Si dejamos solo este bloque, el LED se queda encendido de forma permanente. Para que parpadee necesitamos alternar entre encendido y apagado dejando un tiempo de espera entre medias (bloque Esperar, de la categoría Tiempo), ya que la placa ejecuta las instrucciones tan rápido que, sin la espera, el ojo humano no apreciaría el parpadeo (persistencia visual).
Fuente: fgcoca.github.io/ESP32-STEAMakers
- Conectamos la placa al puerto USB, abrimos el Connector y pulsamos Cargar programa desde STEAMakersBlocks.
- Comprobamos que el LED rojo parpadea cada segundo.
- Cambia los tiempos para que el parpadeo sea más rápido, más lento, o que el tiempo de encendido no coincida con el de apagado.
- Repite el ejercicio con el LED azul, conectado al pin D13.
4.3 Tutorial: leer un sensor (la fotorresistencia LDR)
Objetivo: mostrar en la consola serie el nivel de luz ambiente detectado por la LDR de la shield TdR STEAM.
La LDR (Light Dependent Resistor) es una resistencia cuyo valor disminuye cuanto más luz incide sobre ella. En la placa TdR STEAM está conectada al pin analógico A1.
Fuente: fgcoca.github.io/ESP32-STEAMakers
Fuente: fgcoca.github.io/ESP32-STEAMakers
En la categoría TdR STEAM de STEAMakersBlocks existe un bloque que devuelve directamente el nivel de luz, en porcentaje o en valor numérico (0-4095), sin necesidad de calcular nada manualmente. El programa completo queda así:
Fuente: fgcoca.github.io/ESP32-STEAMakers
Al cargar el programa y abrir el monitor/consola serie de STEAMakersBlocks obtenemos algo similar a esto, variando el valor según la luz que reciba el sensor:
Fuente: fgcoca.github.io/ESP32-STEAMakers
- Programa un "interruptor crepuscular": cuando el nivel de luz baje de un valor determinado, enciende un LED (simulando una farola).
- Haz lo mismo pero usando el LED RGB en color blanco como farola.
El resto de sensores del kit (DHT11, LM35, pulsadores, potenciómetro, infrarrojos...) se programan siguiendo el mismo patrón: un bloque de lectura específico de la categoría TdR STEAM, normalmente enviado por el puerto serie o usado en una condición.
5. Recursos y enlaces
- STEAMakersBlocks — plataforma oficial de programación por bloques.
- Books & Documentation de STEAMakersBlocks — manuales y guías descargables (PDF).
- Manual oficial de la ESP32 STEAMakers (Innovadidactic).
- Notas sobre ESP32 STEAMakers de Federico Coca (Club Robótica Granada) — guía muy completa con actividades paso a paso.
- Ficha de la placa en la tienda de Innovadidactic.
- Lista de reproducción en YouTube con vídeos de la placa y ArduinoBlocks/STEAMakersBlocks.
Todas las imágenes de este recurso se enlazan directamente desde las webs oficiales citadas en cada pie de foto; se recomienda mantener una conexión a internet activa al usar este documento, o sustituirlas por capturas propias si se necesita un uso totalmente sin conexión.
6. Autoevaluación
Comprueba lo aprendido respondiendo a estas preguntas y pulsando "Comprobar".
1. ¿En qué microcontrolador está basada la placa ESP32 STEAMakers?
2. ¿Cómo se llama actualmente la plataforma de programación por bloques (antes ArduinoBlocks)?
3. ¿Qué programa hay que tener abierto en el ordenador para cargar un proyecto desde el navegador a la placa?
4. ¿Cuántos convertidores analógico-digitales (ADC) de 12 bits tiene la placa?
5. ¿A qué pin está conectada la LDR (fotorresistencia) en la shield Imagina TdR STEAM?