Flujo de datos de monitoreo de principio a fin

Sigue una lectura desde el cable de la sonda pasando por los feeds JSON y el almacenamiento hasta el panel de historial con sesión iniciada.

Primer plano de cables Ethernet Cat-5e blancos con conectores RJ45
El JSON de las sondas suele salir de la LAN por Ethernet o por un relay cercano, no directamente a internet. Foto: DiscDepotDundee.co.uk. CC BY-SA 4.0

Cada número de la página principal pasa por varias capas. Entender ese recorrido ayuda a depurar lecturas desactualizadas, sondas que faltan o huecos en el historial.

Paso 1. Medición en el espacio

Las sondas miden temperatura y humedad. El sketch de Arduino las consulta cada pocos segundos, descarta valores claramente anómalos y prepara una estructura JSON en memoria. Más detalles: sketches de Arduino y sondas de temperatura.

Arduino Uno conectado a un sensor DHT de temperatura y humedad con tres cables puente
Una primera prueba mínima de MCU y sensor antes del cableado de Ethernet, LCD y doble sonda. Foto: Wikimedia Commons contributor. CC BY-SA 4.0

Paso 2. Publicación del JSON

La placa o un relé cercano expone JSON por HTTPS. Un servicio FastAPI en Python puede almacenar las respuestas en caché en Redis para que el resto de internet nunca acceda directamente a la conexión de casa: consulta scripts y feeds en Python.

Visor JSON del navegador con las claves de sonda 0, 1 y avg, con Fahrenheit, Celsius y humedad
Estructura del feed en vivo que consume el sitio web una vez que sale de la red local.

Paso 3. Obtención y visualización en el sitio

Al cargar la página principal, el servidor obtiene cada URL de feed configurada, interpreta las claves de las sondas y genera las tarjetas de datos. Los usuarios con sesión iniciada cargan desde Supabase sus propias asignaciones de feeds y sondas en lugar de las predeterminadas. Los datos meteorológicos siguen un camino paralelo a través de OpenWeather, con la ciudad que hayas elegido si la indicas.

Paso 4. Guardado del historial

Si has iniciado sesión, cada lectura correcta de sonda inserta filas en Supabase con el nombre del feed, la etiqueta y la clave de la sonda, las temperaturas, la humedad y la marca de tiempo. Los visitantes siguen viendo datos en vivo, pero no añaden historial. Más información en uso de los datos históricos.

Paso 5. Panel y exportación

La tabla de historial pagina esas filas. La exportación CSV envía el conjunto completo a administradores y suscriptores. Los webhooks de Stripe mantienen la pertenencia al grupo con permiso de exportación. Las herramientas de la cuenta se describen en cuentas y panel.

Puntos de fallo que revisar

  1. Cableado o alimentación de la sonda: registros serie del Arduino.
  2. Red doméstica o certificado: haz curl a la URL del feed desde un portátil conectado por LTE.
  3. Caché del relé desactualizada: reinicia la descarga desde el origen en fast-api-relay.
  4. Asignación en el panel: una errata en la clave de la sonda oculta lecturas aunque el JSON sea válido.
  5. Cookies de sesión: el historial solo se guarda con la sesión iniciada.

Preguntas frecuentes

¿Cómo llegan las lecturas al panel?
Los dispositivos envían datos (push) o se consultan los feeds (pull), las lecturas se guardan, los gráficos consultan o reciben actualizaciones en streaming y las tareas de alertas evalúan los umbrales de forma programada.