Sistema de Debug
IRTimer no tiene un sistema de debug estructurado con modos. La depuración se apoya en LEDs de estado, salida serie, y la interfaz web para monitorizar el estado del sistema.
LEDs de Información
Cada módulo tiene 2 LEDs NeoPixel WS2812B accesibles vía set_led(),
clear_led(), blink_led(), y rainbow_led().
Modo Main (Host + LineFollower)
| LED | Índice | Color | Significado |
|---|---|---|---|
| Power | RGB_POWER (0) |
Verde fijo | Batería OK |
| Power | RGB_POWER (0) |
Rojo parpadeante | Batería baja (< 3.7 V) |
| Connection | RGB_CONNECTION (1) |
Azul fijo | WiFi conectado |
| Connection | RGB_CONNECTION (1) |
Rojo fijo | WiFi fallido |
| Connection | RGB_CONNECTION (1) |
Arcoíris | Conectando / transición |
Modo Aux (Paredes de Micromouse)
| LED | Índice | Color | Significado |
|---|---|---|---|
| Power | RGB_POWER (0) |
Verde fijo | Batería OK |
| Power | RGB_POWER (0) |
Rojo parpadeante | Batería baja (< 3.7 V) |
| Connection | RGB_CONNECTION (1) |
Verde fijo | Pared START |
| Connection | RGB_CONNECTION (1) |
Rojo fijo | Pared FINISH |
Control de LEDs
| Función | Descripción |
|---|---|
set_led(led, r, g, b) |
Color sólido |
clear_led(led) |
Apagar LED |
blink_led(led, r, g, b, ms) |
Parpadeo con período ms |
rainbow_led(led) |
Efecto arcoíris continuo |
El arcoíris avanza en pasos de 20 unidades cada 30 ms, ciclando R→G→B.
Las funciones blink_led() y rainbow_led() requieren ser llamadas
periódicamente desde el bucle principal para actualizar la animación.
Salida Serie
| Parámetro | Valor |
|---|---|
| Interfaz | USB-CDC |
| Baudrate | 115200 |
| Formato | 8N1 |
La salida serie se usa para logging durante el desarrollo. Los mensajes se
emiten con Serial.print() / Serial.println() en puntos clave:
| Ubicación | Mensaje |
|---|---|
config_setup() |
"setPixelColor" (debug NeoPixel) |
web_setup() |
"Connect to WiFi: SSID" |
web.cpp |
"Web Server Start", "SERVER STARTED" |
client.cpp (aux) |
"Failed to send Start Signal" |
stopwatch.cpp (aux) |
Mensajes de depuración del sensor |
config.cpp (aux) |
"Wall Start/Finish" |
Interfaz Web como Debug
La pantalla WIFI_INFO muestra datos de conexión en tiempo real:
| Campo | Función |
|---|---|
| IP | web_get_ip() |
| MAC | web_get_mac() |
| Canal | web_get_channel() |
| Estado | web_get_status() |
La interfaz web también sirve como debug visual: el overlay muestra el estado del cronómetro, tiempos de vuelta, y eventos (start/stop/lap/reset) en tiempo real.
Monitorización de Batería
El LED de Power parpadea en rojo cuando la batería baja de 3.7 V. La
comprobación se hace en cada iteración de loop() vía control_manage_battery()
(módulo principal) o manage_battery() (módulo auxiliar).
Documento generado el 2026-06-29. Ver también Menú, Batería y LEDs, Arquitectura Software.