Conectando OpenHAB a TTNv2

Mar 25, 2021 OpenHAB

Antes de empezar, el nodo debe estar ya funcionando en TTN:

1. Vamos al Panel de Administración de OpenHAB -> Things

+Una vez instalado, nuevamente vamos a “Things” y damos click en “MQTT Binding”

+Luego, antes de añadir el dispositivo (nodo) como tal, debemos crear el puente entre OpenHAB y TTN, seleccionamos “MQTT Broker”

+Debemos ingresar los datos correspondientes a la conexión con TTNv2:

+Habilitar “Secure Connection” para usar una conexión segura

En “Username” debe ir “Application ID” en TTNv2

+Habilitar “Show advanced” para que nos muestre todas la opciones:

En “Broker Hostname/IP” deberá ir la url de TTNv2 genérica

En “Broker Port” podemos dejarlo en blanco

En “Password” debe ir “Access Keys” en TTNv2

Debemos deshabilitar las siguientes opciones para que se pueda conectar a TTN sin ningún problema:

+Si todo ha salido bien debería mostrar la conexión ONLINE

+Creado el “MQTT Broker”, procedemos a crear otro “Thing” pero en este caso será de tipo “Generic MQTT Thing” que será realmente el dispositivo (nodo) en cuestión:

+En Parent Bridge, deberemos seleccionar el puente MQTT que acabamos de crear:

Al finalizar, debería mostrarnos en Status como ONLINE

+Creado el “Thing”, debemos crear los respectivos “Channels”, aquí es donde obtendremos realmente información del nodo.

Debemos tener en cuenta, en que formato vamos a recibir la información del nodo, para así saber que tipo de canal usar.

+Creado el “MQTT StateTopic”, debemos ingresar lo siguiente.

+Luego de creado en canal, debemos asociarlo a un “Item” que es aquel que nos mostrara el dato especifico que queremos ver de toda la información que nos envía el dispositivo (nodo)

+Cumplimentamos los campos requeridos en función de lo que necesitamos:

+Debemos tener en cuenta el tipo de dato que tendrá como resultado este “Item”

+Es posible asignarle una categoría en función del dato o información especifica que se va a obtener:

Asimismo, debemos asignarle una clase semántica y su propiedad, si aplica:

+Uno de los puntos mas importante en que caso de que utilicemos un dispositivo (nodo) que envia mucha información en un JSON, es filtrar según su propio contexto (payload) para que nos muestre solo ese dato especifico:

+En este caso solo necesitamos, “filtrar” o “extraer el valor que se encuentra en el campo “batV”, que es el Voltaje de la batería. Para lo que entonces debemos utilizar el JSONPATH y decirle que nos muestre el valor que solo este campo nos da:

JSONPath Expression:

$.payload_fields.batV

+Hecho lo anterior, podemos ver que efectivamente nos muestra el valor correspondiente:

Deja una respuesta

Tu dirección de correo electrónico no será publicada.