Chisme 163 del Lince: el primer LED con la TTGO LoRa32 V1.3
Víctor Vílchez, el Lince de la Noche, llegó a la cueva de Sierra Bermeja con una placa nueva en una mano y una protoboard en la otra. LED TTGO Lora
—Es la placa del CanSat —anunció—. Todo el equipo de BermejaSat trabajará con ella. Así que primero la clavo aquí y…
Empujó. La placa se quedó levantada, torcida, con los pines a medio camino.
—Víctor —dijo la Gata Montesa sin levantarse—. ¿Por qué los pines no llegan al fondo?
El Lince le dio la vuelta y miró por debajo.
—Porque tiene cosas. El módulo de radio. El conector de la batería.
—Y es más ancha que la protoboard. Fíjate: su cuerpo tapa casi todos los agujeros.
—Entonces necesito una protoboard más grande.
—O dos cables. —La Gata le tendió unos Dupont macho-hembra—. Hembra a la placa, macho a la protoboard.
El Lince los miró un buen rato.
—Llevo veinte minutos peleándome con ella.
—Lo sé. Ha sido muy instructivo.
Con los cables puestos, solo quedaba una pregunta: ¿a qué pin conectar el LED?
—Al 13 —dijo la Gata—. Y te voy a explicar por qué.
Introducción
En este chisme 163 haces el «hola mundo» de tu placa: un LED TTGO LoRa que parpadea. Usamos la TTGO LoRa32 V1.3 (868 MHz), con ESP32, radio LoRa y pantalla OLED, y la programamos con el Arduino IDE.
Antes de montarlo, practica en el simulador del chisme 163. No tienes que escribir nada: tiene un botón verde que lo ejecuta todo solo.
Por qué este chisme
Antes de conectar sensores y radio, hay que comprobar dos cosas: que la placa está viva y que sabemos controlar un pin. Un LED lo demuestra a simple vista.
Esta es la primera prueba de hardware del equipo que va a construir el CanSat BermejaSat. Si el LED TTGO LoRa parpadea, sabes que el ordenador, el cable USB, el Arduino IDE y la placa se entienden.
Aquí no hace falta escribir el programa desde cero: parte de uno que funciona y lo modificas.
Qué necesitamos
- Una TTGO LoRa32 V1.3 (868 MHz) con la antena LoRa.
- Opción A: un LED rojo, amarillo o verde y una resistencia de 220 Ω.
- Opción B: un módulo LED de ro-botica.com, que ya lleva la resistencia integrada.
- Una protoboard y cables Dupont macho-hembra.
- Un cable USB y el Arduino IDE con soporte para ESP32.
No hace falta ninguna librería. Hoy no usamos Wi-Fi, Bluetooth ni la pantalla OLED.
Construcción
La placa no se puede clavar en la protoboard. Por debajo tiene el módulo LoRa y el conector de batería, que la levantan. Además es muy ancha y sus dos filas de pines caen casi en las columnas extremas.
La solución: cables Dupont. El extremo hembra va al pin de la placa y el macho a la protoboard.
Antes de enchufar el USB, conecta la antena LoRa. Hoy no usamos la radio, pero es una norma del proyecto.
Conexión del LED TTGO LoRa: opción A, LED suelto
Si usas un LED suelto con resistencia, el circuito es este:
GPIO 13 → resistencia de 220 Ω → pata larga del LED (ánodo) → pata corta (cátodo) → GND de la placa
| De | A |
|---|---|
| Pin GPIO 13 | Resistencia de 220 Ω |
| Resistencia | Pata larga del LED (+) |
| Pata corta del LED (−) | GND de la placa |
El LED va con 3,3 V, no con 5 V. Con 220 Ω basta para un LED rojo, amarillo o verde. Los azules y blancos lucirán poco.
Conexión del LED TTGO LoRa: opción B, módulo LED
El módulo LED ya lleva su resistencia, así que no hay que añadirla. Tiene tres pines, con las letras impresas: S, + y −.
| Pin del módulo | Pin de la placa |
|---|---|
| S (señal) | GPIO 13 |
| + (alimentación) | 3V3 |
| − | GND |
La señal va por el pin S: cuando el programa pone el GPIO 13 en alto, el módulo se enciende. El resto del chisme es idéntico.
Por qué el GPIO 13
Esta es la pregunta clave de la Gata Montesa. En el ESP32 no todos los pines valen para todo:
- GPIO 0, 2, 12 y 15: son pines de arranque. Su valor al encender decide cómo arranca la placa, y un LED colgado ahí puede impedir el arranque.
- GPIO 34 a 39: son solo de entrada. No pueden dar corriente a un LED.
- GPIO 13: es un pin libre y seguro. No choca con la pantalla OLED ni con el LoRa de esta placa.
Aviso importante: el número de GPIO de cada pin no es el mismo en la TTGO V1.3 que en la Heltec V3.2, la placa definitiva del CanSat. Verifícalo en cada placa antes de cablear.
Configurar el Arduino IDE
- En Herramientas → Placa, elige ESP32 Dev Module (o «TTGO LoRa32-OLED» si aparece).
- Elige el puerto de tu placa. Usa un cable USB que transmita datos, no solo carga.
- Abre el monitor serie y ponlo a 115200 baudios.
El código
Copia el programa completo, súbelo y abre el monitor serie:
// BermejaSat - Prueba de LED en TTGO LoRa V1.3
const int PIN_LED = 13; // GPIO13 -> resistencia 220 Ω -> LED (pata larga) -> GND
void setup() {
Serial.begin(115200);
pinMode(PIN_LED, OUTPUT); // el pin pasa a ser una SALIDA: puede dar corriente
Serial.println("Prueba de LED en GPIO13");
}
void loop() {
digitalWrite(PIN_LED, HIGH); // 3,3 V en el pin: LED encendido
Serial.println("LED ON");
delay(500);
digitalWrite(PIN_LED, LOW); // 0 V en el pin: LED apagado
Serial.println("LED OFF");
delay(500);
}
Lo importante son tres cosas:
pinModeconfigura el pin como salida.digitalWritelo pone en alto (3,3 V) o en bajo (0 V). Es la función digitalWrite de Arduino.delayespera, medido en milisegundos.
Lo que puedes cambiar sin miedo es el número del pin y los dos delay.
Cómo probarlo
- Sube el programa. El LED parpadea medio segundo encendido y medio apagado.
- En el monitor serie verás «LED ON» y «LED OFF» alternándose.
- Cambia los dos
delay(500)pordelay(100)y vuelve a subir. - Prueba con
delay(2000)solo en uno de los dos.
Lee y predice, antes de probarlo: ¿cuántas veces por segundo parpadeará con 100 ms? ¿Y con 2000 en un solo delay?
Si el LED no se enciende
¿Falla el código o el cableado? Mira el monitor serie. Si dice «LED ON» y «LED OFF», el programa está ordenando bien: el fallo está en el cableado.
Revisa, por este orden:
- La polaridad: pata larga hacia la resistencia, pata corta a GND.
- Que el cable esté en el pin serigrafiado como 13.
- Que la resistencia esté en serie, entre el pin y el LED.
- Que GND esté conectado.
- Los contactos de la protoboard.
Qué estamos midiendo realmente
En este chisme no medimos nada con un sensor, pero sí aprendemos a leer una señal: el pin vale 3,3 V o 0 V. El monitor serie solo cuenta lo que ordena el programa, no lo que ocurre en el cable.
Un LED rojo se queda a unos 2 V cuando conduce. Con 3,3 V, los 1,3 V restantes caen en la resistencia: por ella pasan unos 6 mA (ley de Ohm: 1,3 V / 220 Ω). Es suficiente para que luzca y no daña el pin.
Con delay(100) el ciclo dura 200 ms: cinco parpadeos por segundo, es decir, 5 Hz. El ojo aún lo distingue. Si bajas mucho más, parecerá encendido fijo.
Para el aula
- Predice: ¿cuántas veces se enciende el LED en un minuto con 500 ms y 500 ms? Cuéntalo durante 10 segundos.
- Cambia una variable: cambia solo el
delaydel encendido. ¿Qué ritmo ves? - Busca el error: pon
PIN_LED = 14sin mover el cable. ¿Qué ocurre y por qué el monitor sigue escribiendo «LED ON»? - Justifica: ¿por qué el 13 y no el 12 ni el 36? Responde con los criterios de arriba.
- Compara: ¿cambia algo si usas un LED rojo o uno verde? ¿Y uno azul?
- Debate: el número de GPIO no es igual en la TTGO que en la Heltec. ¿Qué haríais antes de cablear la placa del CanSat?
Retos
- Reto 1: haz que el LED parpadee una vez por segundo.
- Reto 2: cambia los tiempos para que parpadee muy rápido y muy despacio.
- Reto 3: haz que parpadee en código Morse con «SOS».
- Reto 4: añade un segundo LED en otro pin libre. Justifica tu elección con los criterios de arriba.
- Reto 5: cuenta las veces que se enciende y escríbelo en el monitor serie.
- Reto 6: compara este chisme con el chisme 113, mismo LED con otra placa.
- Reto 7: compáralo con el chisme 146, LED con micro:bit: ¿qué cambia al programar por bloques?
- Reto 8: convierte el proyecto en una pequeña investigación: ¿a partir de qué frecuencia deja de verse el parpadeo?
Qué hemos aprendido
Has montado un LED TTGO LoRa con cables Dupont, has elegido un pin con criterio, has preparado el Arduino IDE y has comprobado que el monitor serie ayuda a separar un fallo de código de uno de cableado.
Si quieres otra forma de encender un LED con la placa, mira la luciérnaga del Lince, el chisme 31, que lo controla por Bluetooth. Y para saber más del componente, tienes el LED en Wikipedia.
El LED parpadeó a la primera. El Lince miró a la Gata con los ojos muy abiertos.
—Funciona.
—Sí. Con dos cables. —La Gata sonrió—. Ahora ya puedes conectar el resto de la placa.




