How to

Cómo conectar sensores Seeed SenseCAP a TagoIO

Cómo conectar sensores LoRaWAN Seeed SenseCAP a TagoIO. Incluye la serie SenseCAP S21xx, cómo evitar el portal SenseCAP usando TTN, la decodificación de payload y casos de uso para agricultura inteligente, monitoreo ambiental y edificios inteligentes.

TagoIO Team ·
Cómo conectar sensores Seeed SenseCAP a TagoIO

Seeed SenseCAP fabrica algunos de los sensores LoRaWAN industriales más usados del mercado. La serie S21xx cubre temperatura, humedad, CO2, luz, presión barométrica, humedad del suelo y más, todo en carcasas resistentes a la intemperie y aptas para instalaciones en exteriores.

Los sensores SenseCAP vienen preconfigurados para unirse a cualquier red LoRaWAN estándar. Aunque Seeed opera su propio portal SenseCAP, puedes saltártelo por completo y enviar los datos directamente a TagoIO mediante The Things Network o cualquier servidor de red LoRaWAN que admita webhooks HTTPS.

Esta guía cubre la integración completa: desde registrar un sensor SenseCAP en TTN hasta ver los datos decodificados y limpios en un dashboard de TagoIO.

Lo que necesitas antes de empezar

  • Una cuenta de TagoIO (plan gratuito disponible)
  • Un sensor Seeed SenseCAP (S2101, S2103, S2104, S2105, S2107 u otro dispositivo S21xx similar)
  • Un gateway LoRaWAN compatible con TTN o con tu servidor de red preferido
  • Una cuenta de The Things Network (TTN) en console.cloud.thethings.network

Cómo se comunican los sensores SenseCAP

Los sensores SenseCAP S21xx usan comunicación LoRaWAN Class A estándar. Envían uplinks en intervalos configurables (15 minutos por defecto, reducibles hasta 1 minuto mediante comandos AT o la app SenseCAP Mate).

Cada uplink es un payload binario. El formato del payload está documentado en el repositorio del decodificador Seeed SenseCAP en GitHub. Vas a necesitar este decodificador para escribir el payload parser de TagoIO.

Paso 1: Registra el sensor SenseCAP en TTN

  1. Inicia sesión en console.cloud.thethings.network.
  2. Abre o crea una Application.
  3. Haz clic en Register end device.
  4. Selecciona Enter end device specifics manually.
  5. Define el frequency plan de tu región (EU868, US915, etc.).
  6. Establece la versión de LoRaWAN en 1.0.3 (la que usa la serie SenseCAP S21xx).
  7. Ingresa el JoinEUI (AppEUI), el DevEUI y el AppKey que figuran en la etiqueta del sensor SenseCAP o en la app SenseCAP Mate.
  8. Guarda el dispositivo.

El sensor se unirá a la red TTN en su próxima transmisión.

Paso 2: Crea un dispositivo en TagoIO

  1. Inicia sesión en admin.tago.io.
  2. Haz clic en Devices → Add Device.
  3. Busca The Things Network v3 y selecciónalo.
  4. Asigna al dispositivo un nombre que coincida con tu sensor SenseCAP.
  5. Copia la Webhook URL y el Authorization Token que genera TagoIO.

Documentación de dispositivos: docs.tago.io/docs/tagoio/devices

Paso 3: Conecta TTN a TagoIO mediante webhook

  1. En tu aplicación de TTN, ve a Integrations → Webhooks.
  2. Haz clic en Add webhook → Custom webhook.
  3. Establece la Base URL con la webhook URL de TagoIO.
  4. Agrega el header: Authorization: <your_token>.
  5. Activa los eventos Uplink message.
  6. Guarda.

Paso 4: Escribe el Payload Parser

Los sensores SenseCAP S21xx envían un payload binario estructurado. Si configuras un payload formatter de TTN usando el decodificador provisto por Seeed, TTN decodificará el payload antes de enviarlo a TagoIO. En ese caso, los campos decodificados llegan en payload.uplink_message.decoded_payload.

Opción A: usar el payload formatter de TTN + el parser de TagoIO

Configura el decodificador de Seeed como payload formatter a nivel de Application en TTN. Luego, en TagoIO, tu parser solo mapea los campos decodificados:

const decoded = payload.uplink_message.decoded_payload;

if (!decoded || !decoded.messages) {
  payload = [];
  return;
}

payload = decoded.messages.map(msg => ({
  variable: msg.measurementId.toString().toLowerCase().replace(/ /g, "_"),
  value: msg.measurementValue,
  unit: msg.unit || ""
}));

Opción B: decodificar los bytes en bruto en TagoIO

Si prefieres mantener toda la decodificación dentro de TagoIO, lee el payload en base64 sin procesar desde payload.uplink_message.frm_payload e implementa el parser del formato binario de Seeed en JavaScript.

Para un SenseCAP S2101 (temperatura + humedad):

const raw = Buffer.from(payload.uplink_message.frm_payload, "base64");
// Seeed S2101 measurement payload starts at byte 3
const temperature = raw.readInt16LE(3) / 10;
const humidity = raw.readUInt16LE(5) / 10;

payload = [
  { variable: "temperature", value: temperature, unit: "C" },
  { variable: "humidity", value: humidity, unit: "%" }
];

Ajusta los offsets de bytes según el modelo de sensor usando la especificación oficial del decodificador de Seeed.

Documentación del Payload Parser: docs.tago.io/docs/tagoio/devices/payload-parser

Paso 5: Verifica en el Live Inspector

Abre la pestaña Live Inspector en la página de tu dispositivo de TagoIO. Espera el próximo uplink del sensor (o fuérzalo presionando el botón del dispositivo SenseCAP). Confirma que las variables decodificadas aparecen correctamente antes de construir el dashboard.

Documentación del Live Inspector: docs.tago.io/docs/tagoio/devices/live-inspector

Paso 6: Construye el dashboard

Desde Dashboards → +, crea un nuevo dashboard. Para una instalación ambiental con SenseCAP:

  • Gráficos de línea para temperatura, humedad y CO2 a lo largo del tiempo
  • Widgets de medidor (gauge) que muestran las lecturas actuales
  • Tarjeta de estado de alerta que indica si el entorno está dentro de rango
  • Widget de mapa si tienes varios sensores distribuidos en un sitio

Para instalaciones con varios sensores, usa un Blueprint Dashboard para aplicar un mismo diseño a todos los dispositivos. Cada sensor obtiene su propia vista de dashboard a través de los tags del dispositivo, sin necesidad de duplicar nada.

Documentación de dashboards: docs.tago.io/docs/tagoio/dashboards

Paso 7: Configura alertas por umbral

Usa las Actions para avisar a tu equipo cuando los valores salgan de rango. Patrones comunes de alerta con SenseCAP:

  • CO2 por encima de 1000 ppm en una sala de reuniones → enviar un email a los ocupantes
  • Humedad del suelo por debajo del 15% → SMS al equipo de riego
  • Temperatura por encima de 35°C en un invernadero → activar un relé de enfriamiento mediante una llamada a la API

Documentación de Actions: docs.tago.io/docs/tagoio/actions

Ejemplos de casos de uso

Agricultura inteligente

Nodos SenseCAP S2105 (humedad del suelo + temperatura) y S2101 (temperatura y humedad del aire) instalados a lo largo de los surcos de cultivo. Lecturas cada 15 minutos hacia TagoIO. Los scripts de análisis calculan el déficit de presión de vapor (VPD) y lo guardan de vuelta como una variable calculada. El riego se activa automáticamente cuando se cumplen las condiciones de humedad del suelo y de VPD.

Monitoreo ambiental en oficinas y escuelas

SenseCAP S2103 (CO2, temperatura, humedad) en aulas y salas de conferencias. Un Blueprint Dashboard les da a los administradores del edificio una vista por sala. Las Actions envían una notificación de Slack cuando los niveles de CO2 en una sala superan los 1000 ppm, lo que indica que hay que ventilar.

Sensado industrial en exteriores

SenseCAP S2101 en carcasas resistentes a la intemperie en una obra de construcción o un patio de logística. TagoIO almacena las lecturas y muestra gráficos de tendencia. El equipo de instalaciones usa el dashboard adaptable a móviles para revisar las condiciones desde sus teléfonos.

Llévalo más lejos con IA

El servidor MCP de TagoIO permite que asistentes de IA como Claude consulten tus datos de SenseCAP directamente. Haz preguntas como “¿Qué zona tuvo el CO2 más alto la semana pasada?” o “Muéstrame las anomalías de temperatura en todos los sensores en las últimas 48 horas” sin escribir una consulta manualmente.

Documentación de MCP: docs.tago.io/docs/tagoio/getting-started/tagoio-mcp-ai-powered-iot-data-integration

Resumen

Los sensores SenseCAP se conectan a TagoIO mediante TTN en cuatro pasos: registrarlos en TTN, crear un dispositivo de TagoIO con el conector de TTN, configurar el webhook y escribir el payload parser. La parte más difícil es lograr la decodificación binaria correcta: el decodificador open source de Seeed elimina la mayor parte de las dudas.

Una vez que los datos fluyen, TagoIO se encarga del almacenamiento, la visualización y las alertas sin que haga falta infraestructura adicional.