¿Qué es la iniciativa The Things Network?

En este post os queremos transmitir lo que es la iniciativa de The Things Network (TTN desde ahora), y como han conseguido, en poco más de 2 años, empezando con una campaña en Kickstarter, promover la creación de más de 400 comunidades de entusiastas y desarolladores de IoT, con una red global y colaborativa de +2600 gateways utilizando la tecnología LoRaWAN.

 

Amsterdam: Zona cero

 

Todo empezó en Amsterdam en el verano de 2015, de la mano de los dos fundadores de The Things Network: Wienke Giezeman y Johan Stokking. En este breve vídeo, Wienke explica los inicios y las capacidades de TTN:

 

Utilizando la tecnología LoRaWAN, cubrieron todo el centro de la ciudad de Amsterdam con cobertura LoRaWAN en un par de semanas con unos pocos gateways.

 

Tecnología LoRaWAN + Red Abierta – Open source

 

TTN eligió como tecnología de comunicación LoRaWAN sobre LoRa (más info en este enlace de la LoRa Alliance). Basada en una modulación de espectro extendido, LoRa alcanza considerables distancias utilizando una potencia muy pequeña ocupando todo el ancho de banda disponible en torno a la frecuencia de 868 MHz (EU). Esta transmisión se puede realizar incluso por debajo del nivel de ruido, lo que otorga a la comunicación una robustez superior frente al ruido.

 

Desde el inicio ha sido una tecnología abierta y con gran atracción entre los entusiastas del IoT, centrándose en 3 puntos principales:

 

  • Largo alcance: Cobertura en líneas de 10-20 km son fácilmente alcanzables con un emplazamiento adecuado.
  • Bajo consumo de batería: Esta tecnología de comunicaciones permite alargar la vida de los dispositivos alimentados por batería hasta varios años.
  • Bajos costes: Los costes de los dispositivos son cada vez más competitivos, y una vez tienes cobertura de un gateway, los dispositivos transmiten información sin coste de comunicación alguno (ciñendose eso sí a las cuotas de uso (duty-cycle) del espectro libre para cada región del globo).

 

Además de la tecnología de comunicaciones, TTN ha hecho un esfuerzo de desarrollo en la parte de servidor, construyendo todo el backend de la red y que da soporte a los gateways distribuidos por el globo. Este backend es el que lidia con duplicidades de mensajes, orquestración de mensaje de bajada, gestión de integraciones con plataformas, etc. TTN ofrece también capacidades de integración por HTTP y MQTT, además de una serie de APIs en distintos lenguajes como: Go, Java, Node-RED y Node.js, con las cuales construir una aplicación end-to-end, mediante la integración de nodos, gateways, server de TTN y una platforma IoT como Sofia2.

 

Desde el 1 de Febrero, tanto los diseños HW del gateway y del nodo de TTN, como el código sobre el que se ha escrito todo el backend de TTN ha sido disponibilizado como opensource en su cuenta de GitHub, manteniendo el espíritu abierto y de comunidad con el que empezaron en 2015.

 

429 comunidades en los 5 continentes

 

En la actualidad el fenómeno de TTN ha tenido gran calado en la comunidad IoT global. En este momento disponen de 2946 Gateways en todo el mundo gracias a comunidades locales que montan estos puntos de acceso extendiendo la red y el conocimiento sobre IoT. Esta creciente comunidad está acelerando la expansión del IoT, facilitando a muchas personas el acceso sencillo y gratuito a un ecosistema de IoT donde pueden hacer realidad sus proyectos de forma muy sencilla.

 

mapattn.png

 

En ciudades como Berlín, las comunidades de TTN han dotado a la ciudad de tal nivel de cobertura, que el desarrollo de aplicaciones IoT sobre esta estructura es una realidad:

 

ttn-berlin.png

 

Con Gateways instalados en ubicaciones tan icónicas como la torre de televisión de Berlín, dotando de una cobertura ideal a la capital germana:

 

DQRSwsTW0AEby0h.jpg

Meetup Sofia2 – Comunidad TTN Madrid

 

Este 28 de Febrero, en el espacio de THE CUBE Madrid, seremos los anfitriones de un Meetup sobre tecnologías LPWA (SigFox y LoRaWAN), y cómo hemos integrado ya estas tecnologías con Sofia2.

Además, tendremos el privilegio de contar con la ayuda de la comunidad de TTN oficial en Madrid, que nos contarán de primera mano sus objetivos como comunidad, los avances de TTN y las posibilidades que ofrece como red ciudadana:

 

ttn-madrid.png

 

Como colofón, la comunidad de TTN Madrid nos enseñará un caso de puerta conectada basado en LoRaWAN, conectado a TTN, y que hemos integrado en Sofia2 para poder explotar el caso desde el lado de plataforma, ofreciendo visualización en un dashboard, y usos especiales como el motor de scripting de Sofia2 para disparar alertas.

 

Si estás interesado en asistir, aun nos quedan plazas disponibles, este es nuestro grupo de Meetup:

https://www.meetup.com/es-ES/IoT-BigData-Sofia2-Lab/events/247514374/ .

Es una oportunidad muy buena para conocer más sobre Sofia2 y profundizar sobre la iniciativa TTN gracias a la presencia de la comunidad TTN Madrid.

 

Os esperamos!!

¿Qué es la iniciativa The Things Network?

Web Thing API by Mozilla

W3C Web Thing es una nueva propuesta (en este caso por parte de Mozilla) para describer un modelo de datos común y un API para la “Web of Things”.

La Web Thing Description provee un vocabulario para describir dispositivos físicos conectados a Internet en un formato legible basado en JSON.

Por su parte la Web Thing REST API y Web Thing WebSocket API permiten que un cliente web pueda acceder a las propiedades de un dispositivo, ejecutar acciones sobre este y suscribirse a eventos que representan un cambio en su estado.

La especificación incluye:

· Web Thing Types como tipos adicionales que pueden ser definidos usando extensiones semánticas sobre JSON-LD

· Un Web Thing API Protocol Bindings para escribir bindings a la Web Thing API para otros protocolos IoT

· El documento Web of Things Integration Patterns describe patrones para integrar dispositivos con la Web Thing API.

Seguro que con un ejemplo se entiendo mucho major lo que nos ofrece esta especificación:

Donde podemos ver que el dispositivo (DigitalTwin) tiene una propiedad temperatura de tipo Number, otra humidity y otra led, así como una acción (que alguien puede ejecutar sobre el dispositivo) y un evento (que se publica cuando se desencadena) reboot. Así como links para acceder a las propiedades, acciones ,eventos,…

Siguiendo la especificación podemos ver como:

Ejecutando esta petición:

Obtengo la descripción del dispositivo concreto.

Si hago

Me devolverá el valor de la propiedad:

Si quiero cambiar el valor de una propiedad:

Si quiero lanzar una acción reboot:

También puedo obtener una lista de peticiones de acciones:

Para acceder a los eventos

Aunque a la especificación le faltan aún bastantes cosas (como la seguridad, lógica embebida en el dispositivo) a nivel de interfaces la especificación es muy sencilla y fácil de implementar versus otras soluciones más potentes (y complejas) que veremos en próximos posts.

Web Thing API by Mozilla

Plugins Sofia2: Cómo desarrollar un IoT Gateway para WebSockets en la plataforma

Blog de Sofia2 IoT Platform

Una de las características técnicas más destacables de la plataforma Sofia2 es que los protocolos físicos de comunicación soportados (TCP, MQTT, Ajax,…), y sobre los que se envían mensajes SSAP desde los KPs, no están ligados al proyecto CORE de Sofia2, sino que son creados y desplegados en forma de Plugins.

De este modo, en cada instalación de Sofia2, es posible desplegar únicamente aquellos protocolos que se van a usar, sin necesidad de añadir el resto.

Asimismo, es posible desarrollar nuevos Gateways y desplegarlos de manera sencilla sin tener que añadirlos al core de la plataforma. Basta con desarrollarlos de manera separada, compilarlos como un Jar de Java y añadirlos al directorio de Plugins para que la plataforma los arranque durante el despliegue. De manera que la plataforma tiene la versatilidad de poder ser extendida con nuevos protocolos necesarios para un proyecto concreto, sin necesidad de solicitar una ampliación…

Ver la entrada original 830 palabras más

Plugins Sofia2: Cómo desarrollar un IoT Gateway para WebSockets en la plataforma