# Cómo conectar gateways LoRaWAN de Kerlink a TagoIO

> Guía completa para conectar gateways LoRaWAN de Kerlink (iStation, iFemtoCell, Wirnet) a TagoIO. Incluye Wanesy Management Center, reenvío con LNS de ChirpStack, parseo de payload y casos de uso para ciudades inteligentes y entornos industriales.

![Cómo conectar gateways LoRaWAN de Kerlink a TagoIO](https://tago.io/og/es/blog/how-to-connect-kerlink-lorawan-gateways-to-tagoio.png)

Kerlink es un fabricante francés de infraestructura LoRaWAN con una fuerte presencia en despliegues de ciudades inteligentes, servicios públicos e industria. Sus equipos Wirnet iStation (exterior industrial), Wirnet iFemtoCell (interior) y Wirnet Station son reconocidos por su calidad de construcción y su fiabilidad de grado operador. Kerlink también opera el Wanesy Management Center, un servidor de red LoRaWAN en la nube.

TagoIO se ubica en la capa de aplicación: recibe los datos de los dispositivos, los almacena y te permite crear dashboards, alertas y automatizaciones. Conectar Kerlink a TagoIO significa enlazar la salida del servidor de red de Kerlink con el endpoint de ingesta de datos de TagoIO.

Esta guía cubre dos caminos: el reenvío desde el Wanesy Management Center de Kerlink hacia TagoIO, y un LNS privado de ChirpStack ejecutándose junto a los gateways de Kerlink.

## Lo que necesitas antes de empezar

- Una cuenta de TagoIO ([plan gratuito disponible](https://tago.io/pricing))
- Un gateway de Kerlink (iStation, iFemtoCell, Wirnet Station o compatible)
- Un servidor de red LoRaWAN: Kerlink Wanesy Management Center o ChirpStack autoalojado
- Dispositivos finales registrados en tu servidor de red

## Visión general de la arquitectura

Los gateways de Kerlink actúan como reenviadores de paquetes de radio. No ejecutan lógica de aplicación: eso reside en el LNS. El LNS decodifica las tramas LoRaWAN, identifica los dispositivos y enruta los payloads de aplicación hacia el endpoint que elijas.

Tu punto de integración con TagoIO siempre es el LNS, nunca el gateway directamente.

```
[sensores LoRaWAN] → [gateway Kerlink] → [LNS (Wanesy o ChirpStack)] → [TagoIO vía HTTPS]
```

## Camino 1: Kerlink Wanesy Management Center → TagoIO

Wanesy MC admite notificaciones push (también llamadas "push connectors") que envían los uplinks de los dispositivos mediante POST a cualquier endpoint HTTPS.

### Paso 1: Crear un dispositivo en TagoIO

1. Inicia sesión en [admin.tago.io](https://admin.tago.io).
2. Ve a **Devices → Add Device**.
3. Selecciona **HTTPS** como tipo de conector.
4. Asigna un nombre al dispositivo (por ejemplo, `kerlink-end-device-01`).
5. Haz clic en **Create Device** y copia el **Device Token** desde la pestaña General.

Documentación de dispositivos: [docs.tago.io/docs/tagoio/devices](https://docs.tago.io/docs/tagoio/devices/)

### Paso 2: Crear un Push Connector en Wanesy MC

1. Inicia sesión en tu cuenta de Wanesy Management Center.
2. Ve a **Applications** y abre o crea una aplicación.
3. Ve a **Push connectors** y haz clic en **Add**.
4. Elige **HTTP** como tipo de conector.
5. Configura la URL como:

   ```
   https://api.tago.io/data
   ```

6. Añade el header HTTP:

   ```
   Device-Token: YOUR_TAGOIO_DEVICE_TOKEN
   ```

7. Establece el formato de push en **JSON** (por defecto).
8. Guarda y activa el conector.

Wanesy ahora enviará mediante POST cada uplink de los dispositivos de esta aplicación a TagoIO.

### Paso 3: Parsear el payload de Wanesy en TagoIO

Wanesy envía un objeto JSON con la información del dispositivo y el payload codificado en base64. Añade un Payload Parser a tu dispositivo de TagoIO para extraer las lecturas del sensor.

Abre **Devices → [tu dispositivo] → Payload Parser** y escribe:

```javascript
// Wanesy payload structure
const decodedBytes = Buffer.from(payload.payloadHex, "hex");

// Example for a temperature/humidity sensor with 2-byte temperature, 1-byte humidity
const temperature = decodedBytes.readInt16BE(0) / 100;
const humidity = decodedBytes.readUInt8(2);

payload = [
  { variable: "temperature", value: temperature, unit: "C" },
  { variable: "humidity", value: humidity, unit: "%" },
  { variable: "rssi", value: payload.gwInfo?.[0]?.rssi || null },
  { variable: "snr", value: payload.gwInfo?.[0]?.snr || null }
];
```

Ajusta la lógica de decodificación para que coincida con el formato de payload de tu sensor.

Documentación de Payload Parser: [docs.tago.io/docs/tagoio/devices/payload-parser](https://docs.tago.io/docs/tagoio/devices/payload-parser/)

## Camino 2: Gateway de Kerlink + ChirpStack → TagoIO

Muchos operadores de Kerlink ejecutan ChirpStack junto a sus gateways, ya sea en sus instalaciones o en la nube. La integración HTTP de ChirpStack puede enviar datos directamente a TagoIO.

### Paso 1: Configurar el gateway de Kerlink como reenviador de paquetes

La mayoría de los gateways de Kerlink ejecutan el Semtech UDP Packet Forwarder o el Kerlink Common Packet Forwarder. Apunta el gateway a la dirección y al puerto de tu ChirpStack Network Server (por defecto: UDP 1700).

Accede a la CLI del gateway por SSH o desde el Kerlink WMC para actualizar `global_conf.json` con la dirección de tu servidor ChirpStack.

### Paso 2: Registrar el gateway y el dispositivo en ChirpStack

1. En ChirpStack, ve a **Gateways → Add gateway** y registra tu equipo Kerlink.
2. Crea un **Device Profile** que coincida con la versión de LoRaWAN y la región de tu dispositivo final.
3. Registra tus dispositivos finales dentro de una **Application**.

### Paso 3: Añadir una integración HTTPS de TagoIO en ChirpStack

1. En tu aplicación de ChirpStack, ve a **Integrations → HTTP**.
2. Configura la **Uplink URL** como:

   ```
   https://api.tago.io/data
   ```

3. Añade el header personalizado:

   ```
   Device-Token: YOUR_TAGOIO_DEVICE_TOKEN
   ```

4. Guarda.

### Paso 4: Parsear el payload de ChirpStack en TagoIO

ChirpStack envía los uplinks como JSON. Si configuras un codec en ChirpStack, el objeto decodificado llega en `payload.object`. De lo contrario, decodifica los bytes en bruto desde `payload.data` (base64).

```javascript
// ChirpStack with codec configured
if (payload.object) {
  payload = Object.entries(payload.object).map(([key, val]) => ({
    variable: key,
    value: val
  }));
} else {
  // raw decode from base64
  const raw = Buffer.from(payload.data, "base64");
  // add your sensor-specific decoding here
  payload = [];
}
```

## Paso 5: Verificar en el Live Inspector

Tras completar cualquiera de los dos caminos, abre el **Live Inspector** en tu dispositivo de TagoIO y confirma que los datos llegan en el siguiente ciclo de uplink.

Documentación de Live Inspector: [docs.tago.io/docs/tagoio/devices/live-inspector](https://docs.tago.io/docs/tagoio/devices/live-inspector)

## Paso 6: Crear dashboards y alertas

Crea un dashboard desde **Dashboards → +**. Widgets habituales para un despliegue de ciudad inteligente o industrial basado en Kerlink:

- **Widget de mapa** para las ubicaciones de los dispositivos
- **Gráficos de series temporales** para las lecturas de los sensores a lo largo del tiempo
- **Tarjetas de calidad de señal** que muestran RSSI y SNR por gateway
- **Mapa de calor** si tienes muchos nodos reportando en un área de cobertura

Configura [Actions](https://docs.tago.io/docs/tagoio/actions/) para:

- Alertas por umbral (temperatura, vibración, detección de inundaciones)
- Detección de dispositivos sin conexión (sin datos recibidos en X minutos)
- Reportes automáticos por correo electrónico o webhook hacia un sistema de tickets

Documentación de Actions: [docs.tago.io/docs/tagoio/actions](https://docs.tago.io/docs/tagoio/actions/)

## Ejemplos de casos de uso

### Servicios públicos de ciudades inteligentes

Gateways Kerlink Wirnet iStation montados en farolas. Los sensores monitorean la presión del agua, el nivel de llenado de los contenedores de residuos y nodos de calidad del aire en todo un municipio. TagoIO agrega todas las lecturas, muestra un mapa de toda la ciudad y dispara alertas a operaciones municipales cuando los contenedores alcanzan el 80% de su capacidad.

### Monitoreo industrial de vibraciones

Gateways Kerlink iFemtoCell en una fábrica. Sensores de vibración LoRaWAN sobre maquinaria rotativa reportan a TagoIO. Los scripts de análisis calculan puntuaciones de anomalías basadas en FFT y señalan el desgaste temprano de los rodamientos antes de que fallen.

Documentación de Analysis: [docs.tago.io/docs/tagoio/analysis](https://docs.tago.io/docs/tagoio/analysis/)

### Gestión energética de edificios

Múltiples medidores de energía LoRaWAN conectados a TagoIO a través de gateways de Kerlink. TagoIO almacena los datos de medición, calcula el consumo diario y mensual por circuito y genera reportes de costos. Los Blueprint Dashboards dan a los responsables de cada piso su propia vista.

## Llevarlo más lejos con IA

El servidor MCP de TagoIO permite consultas en lenguaje natural sobre los datos de tus sensores Kerlink. Pregúntale a Claude: "¿Qué dispositivos tienen la peor calidad de señal?" o "Muéstrame todas las anomalías en los datos de vibración de la última semana."

Documentación de MCP: [docs.tago.io/docs/tagoio/tago-ai/tagoio-mcp-ai-powered-iot-data-integration](https://docs.tago.io/docs/tagoio/tago-ai/tagoio-mcp-ai-powered-iot-data-integration)

## Resumen

Los gateways de Kerlink reenvían paquetes LoRaWAN a un servidor de red. El servidor de red, ya sea el propio Wanesy MC de Kerlink o un ChirpStack autoalojado, envía los payloads de los dispositivos a TagoIO vía HTTPS. Un Payload Parser en TagoIO decodifica los datos binarios en variables limpias para su almacenamiento y visualización.

- TagoIO Devices: [docs.tago.io/docs/tagoio/devices](https://docs.tago.io/docs/tagoio/devices/)
- Payload Parser: [docs.tago.io/docs/tagoio/devices/payload-parser](https://docs.tago.io/docs/tagoio/devices/payload-parser/)
- Actions: [docs.tago.io/docs/tagoio/actions](https://docs.tago.io/docs/tagoio/actions/)
- Dashboards: [docs.tago.io/docs/tagoio/dashboards](https://docs.tago.io/docs/tagoio/dashboards/)
- MCP Integration: [docs.tago.io/docs/tagoio/tago-ai/tagoio-mcp-ai-powered-iot-data-integration](https://docs.tago.io/docs/tagoio/tago-ai/tagoio-mcp-ai-powered-iot-data-integration)

[llms.txt](https://tago.io/llms.txt)
