IES ARICEL

La placa ESP32 STEAMakers

Innovadidactic · Características, sensores y programación con STEAMakersBlocks

Placa ESP32 STEAMakers
Eufrasio Cabrera  (@jajulca)
Recurso educativo elaborado con material extraido de las webs que aparecen en RECURSOS Y ENLACES
Curso 2025/2026 · Tecnología / Robótica educativa

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.

Aspecto de la placa ESP32 STEAMakers
Aspecto de la placa ESP32 STEAMakers.
Fuente: fgcoca.github.io/ESP32-STEAMakers
Placa ESP32 STEAMakers, otra vista
Vista general de la placa.
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.

Para saber más

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.

Componentes del kit ESP32 STEAMakers + TdR STEAM
Elementos habituales del kit didáctico: placa ESP32 STEAMakers, shield Imagina TdR STEAM, micrófono, mando IR, pantalla LCD I2C, sensor de obstáculos, servomotor, tira de Neopixel, cables, etc.
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
Elementos de la placa ESP32 STEAMakers
Elementos y conectores de la placa ESP32 STEAMakers.
Fuente: fgcoca.github.io/ESP32-STEAMakers
Importante

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:

ElementoTipoPin / conexiónDescripción
LED rojoActuadorD12Diodo LED para señalización
LED azulActuadorD13Diodo LED para señalización
LED RGBActuadorD6 / D9 / D10 (R/G/B)Diodo de color variable
Zumbador (buzzer)ActuadorD8Genera tonos y melodías
Pulsadores SW1 y SW2Sensor digitalD2 y D7Entradas digitales de botón
PotenciómetroSensor analógicoA0Resistencia variable manual
LDR (fotorresistencia)Sensor analógicoA1Mide la intensidad de luz ambiente
Sensor de temperatura LM35Sensor analógicoA2Mide la temperatura ambiente
Sensor DHT11Sensor digitalD4Temperatura y humedad relativa
Receptor/emisor de infrarrojosSensor/actuadorD11Recepción de mando a distancia IR
Conector I2CExpansiónSDA/SCLPantalla 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.

Para saber más

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.

Comparación entre bloques y código Arduino
Comparación entre un programa en STEAMakersBlocks (izquierda) y su equivalente en código del IDE de Arduino (derecha).
Fuente: shop.innovadidactic.com
Importante

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

  1. Crear una cuenta gratuita en steamakersblocks.com con un correo electrónico válido.
  2. Descargar e instalar el Connector (disponible para Windows, Linux, macOS y Chromebook) desde el apartado Resources > Connector de la web.
  3. Conectar la placa ESP32 STEAMakers al ordenador mediante el cable USB.
  4. Abrir el Connector y comprobar que detecta la placa (puerto serie).
  5. Entrar en la plataforma STEAMakersBlocks y crear un nuevo proyecto, seleccionando como tipo de placa "ESP32 STEAMakers".
Pantalla principal de la plataforma
Aspecto de la plataforma al entrar, con el catálogo de bloques a la izquierda y el área de programación a la derecha.
Fuente: fgcoca.github.io/ESP32-STEAMakers
Programa Connector en ejecución
El Connector, una vez iniciado, muestra la placa detectada y permite cargar el programa desde el navegador.
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

Actividad guiada

Objetivo: hacer que el LED rojo de la shield Imagina TdR STEAM (conectado al pin D12) parpadee cada segundo.

  1. Entramos en STEAMakersBlocks y creamos un nuevo proyecto para la placa ESP32 STEAMakers + TdR STEAM.
  2. En la categoría TdR STEAM buscamos el bloque LED y lo arrastramos hasta el bucle principal loop.
LED rojo conectado al pin D12 en la TdR STEAM
El LED rojo de la placa Imagina TdR STEAM está conectado al pin D12.
Fuente: fgcoca.github.io/ESP32-STEAMakers
Bloque LED en STEAMakersBlocks
Con las flechas del bloque se elige qué LED (rojo/azul) y en qué estado (ON/OFF) se pone.
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).

Programa final del parpadeo del LED
Programa final: LED a ON, esperar 1000 ms, LED a OFF, esperar 1000 ms (dentro del bucle).
Fuente: fgcoca.github.io/ESP32-STEAMakers
  1. Conectamos la placa al puerto USB, abrimos el Connector y pulsamos Cargar programa desde STEAMakersBlocks.
  2. Comprobamos que el LED rojo parpadea cada segundo.
Reto de ampliación
  • 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)

Actividad guiada

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.

Símbolo y curva característica de la LDR
Símbolo, aspecto y curva característica de la LDR.
Fuente: fgcoca.github.io/ESP32-STEAMakers
LDR en la placa TdR STEAM
Ubicación de la LDR en la shield Imagina TdR STEAM.
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í:

Programa de lectura de la LDR en bloques
Bloque de lectura de la LDR enviado por el puerto serie dentro de un bucle con una pequeña espera.
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:

Consola serie mostrando los valores de luz
Salida en la consola serie con los valores de luz detectados.
Fuente: fgcoca.github.io/ESP32-STEAMakers
Reto de ampliación
  • 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

Para saber más

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?