Skip to main content

Tango with Home Assistant and SenseCAP Sensors

Comparte una forma de integrar sensores LoRaWAN® en Home Assistant.

pir

Ya hay suficientes dispositivos inteligentes (sensores, luces, interruptores) en el ecosistema de hogar inteligente, y es posible que ya tengas múltiples aplicaciones de Apple Homekit, Google Home y Amazon Alexa para servir diferentes dispositivos. Es muy necesario conectar todos ellos entre sí en un solo lugar. Leí las noticias recientemente en septiembre de 2022 de que matter 1.0 fue lanzado con el objetivo de unificar el ecosistema. Sin embargo, esto definitivamente tomará tiempo.

En realidad, antes de que matter fuera lanzado hace años, Home Assistant es una de las mejores plataformas para construir un ecosistema de hogar inteligente completamente personalizado, integrando dispositivos principales y estableciendo reglas de automatización para hacer de tu hogar un lugar mejor y más inteligente. Eso es definitivamente algo que quiero aprender y compartir la experiencia.

pir

En esta serie de artículos, compartiré cómo construyo un hogar inteligente decente en Home Assistant y uso sensores de los productos SenseCAP de Seeed Studio. Y este es el primer hito.

Ejecutar un home assistant desde cero e integrar sensores meteorológicos SenseCAP.

Aquí están los pasos para llegar allí:

  • Instalar home assistant en una Raspberry Pi
  • Incorporar el sensor SenseCAP con la App
  • Agregar integración MQTT y suscribirse a los datos de SenseCAP
  • Agregar entidades con diferentes valores de medición de sensores.
  • Crear un panel de datos de sensores

Instalar home assistant en una Raspberry Pi

Para comenzar con Home Assistant, el tutorial oficial es muy útil.

Hay muchos dispositivos y plataformas para ejecutar home assistant, resulta que tengo una Raspberry Pi sin usar, así que comenzaré desde aquí.

En lugar de usar Balena etcher para flashear la tarjeta SD, prefiero usar el Raspberry Pi Imager oficial, es ligero y simple de usar.

pir

Consigue una tarjeta Micro SD de más de 32GB y conéctala a tu computadora, aquí uso MacBook como ejemplo.

pir

Navega a otros OS de propósito específico y selecciona Home Assistant y Home Automation.

pir

Selecciona Home Assistant

pir

Selecciona la versión del OS de Home Assistant para RPi4

pir

Luego selecciona la unidad de tarjeta SD, ten cuidado y NO elijas el disco incorrecto, lo cual puede formatear tu unidad y perder todos los datos valiosos.

pir pir

Puede tomar un tiempo descargar la imagen de Home Assistant dependiendo de la velocidad de tu internet.

Luego inserta la tarjeta micro SD en la Raspberry Pi y conecta un cable ethernet a ella. Enciéndela, el LED rojo debería permanecer rojo y el LED verde comenzará a parpadear, si el LED verde no parpadea, eso indica que algo salió mal durante el flasheo de la imagen.

pir

ve a http://homeassistant.local:8123/ y espera a que termine la instalación.

pir

Sigue este enlace para registrar tu cuenta de Home Assistant e iniciar sesión.

¡Bingo! Finalmente, tienes tu Home Assistant instalado.

pir

Incorporar el sensor SenseCAP con la App

SenseCAP es una serie de dispositivos sensores industriales y productos gateway, entre los cuales, los sensores LoRaWAN S210x están principalmente construidos para escenarios de largo alcance y alimentados por batería.

Quiero usar la nueva Estación Meteorológica S2120 recién lanzada, e instalarla en la parte superior de mi techo, que tiene 6 pisos de altura, por lo que la característica de comunicación de larga distancia de LoRa hizo el trabajo muy bien. Ya viene con todos los accesorios para una instalación rápida.

pir

La Estación Meteorológica funciona como un dispositivo LoRaWAN estándar, por lo que puedo usar un gateway LoRaWAN interior SenseCAP M2 en mi hogar, tiene una antena de 3dBi con una base magnética.

pir

A continuación, descarga la aplicación SenseCAP Mate y registra una cuenta.

pir

solo para tu referencia, este video proviene de Seeed Studio que demuestra el proceso básico de incorporación.

Conecta el gateway LoRaWAN M2 a internet con un cable ethernet y conecta la antena antes de encenderlo, cuando veas que el LED RGB del panel permanece verde, eso significa que el gateway está configurado correctamente.

pir

Ahora déjame incorporar el gateway LoRaWAN M2

  • Abre la aplicación Mate y ve a la pestaña "device"
  • Haz clic en el ícono "+" en la esquina superior derecha para escanear el código QR del gateway, que está en la etiqueta del dispositivo.
  • Nombra tu dispositivo y establece la ubicación.

pir

de la misma manera, escanea el código QR para incorporar el sensor meteorológico S2120. toca el sensor S2120, ahora puedo ver los datos meteorológicos.

  • Temperatura del Aire
  • Humedad del Aire
  • Intensidad de Luz
  • Presión Barométrica
  • Dirección del Viento
  • Velocidad del Viento
  • Lluvia por Hora
  • Índice UV

pir

y ahora es hora de ir a mi techo e instalarlo en un poste.

pir

También tengo otro Sensor de CO2, Temperatura y Humedad S2103 y Sensor de Humedad del Suelo, Temperatura y EC S2105, comparten los mismos beneficios en la serie S210x y el proceso de incorporación es el mismo. y son de alta calidad con estándares industriales.

pir

así que también los agrego a la aplicación SenseCAP Mate y los instalo en mi dormitorio y maceta.

pir

Ahora, tengo todo configurado en el lado del sensor SenseCAP.

Agregar integración MQTT

  • ¿Por qué necesito que los datos del sensor se integren en Home Assistant?

Puedo aprovechar el flujo de automatización en Home Assistant, y la aplicación SenseCAP actualmente no tiene esa característica.

  • ¿Cuál es el proceso para obtener los datos de SenseCAP en Home Assistant?

Obtener la clave API de tu cuenta SenseCAP<br/> Leer la documentación de la API de flujo abierto de SenseCAP (MQTT)<br/> Agregar integración MQTT en Home Assistant<br/> Suscribirse a los datos de SenseCAP vía MQTT y usando la clave API<br/>

  • Ahora, vamos al Portal SenseCAP, aquí puedes encontrar tu

OrgID = ID de Organización
Password = Claves API de acceso

pir

Mi información de suscripción MQTT es:

pir

Regresa a la interfaz web de Home Assistant.

hay muchas integraciones en Home Assistant

https://www.home-assistant.io/integrations/

pir

Hoy usaré la integración MQTT para suscribirme a datos en formato JSON y usar la integración de sensor MQTT para vincular el valor del sensor a una entidad específica.

Ve a configuración y entra en Dispositivos y Servicios

pir

Haz clic en el botón agregar integración y busca MQTT

pir

Recuerda habilitar la configuración avanzada, si olvidas ingresar el Client ID, la configuración fallará.

pir

luego, puedes probar si la suscripción funciona, haciendo clic en el botón CONFIGURE y escuchando el tema

pir

pir

espera un momento, aparecerá el mensaje del sensor.

pir

Hasta ahora, el cliente MQTT se ha configurado exitosamente.

Agregar entidades

Agregaré múltiples entidades para almacenar datos de medición de sensores, por ejemplo, crear una nueva entidad "Temperatura del aire" y tomar el valor de medición del mensaje JSON MQTT del S2120. y agregar las otras entidades de sensores de manera similar.

Terminaré esto editando el archivo de configuración de Home Assistant

configuration.yaml

ve a la configuración y muévete a Complementos, luego

pir pir

instálalo y habilita mostrar en la barra lateral, y haz clic en iniciar.

pir

ahora esta es la parte importante para modificar el archivo YAML con los siguientes scripts

mqtt:
sensor:
- name: "Air Temperature"
state_topic: "/device_sensor_data/411841915123/2CF7F1C042400055/1/+/4097"
unit_of_measurement: "℃"
value_template: "{{ value_json.value }}"
- name: "Air Humidity"
state_topic: "/device_sensor_data/411841915123/2CF7F1C042400055/1/+/4098"
unit_of_measurement: "%RH"
value_template: "{{ value_json.value }}"
- name: "Light Intensity"
state_topic: "/device_sensor_data/411841915123/2CF7F1C042400055/1/+/4099"
unit_of_measurement: "Lux"
value_template: "{{ value_json.value }}"
- name: "Barometric Pressure"
state_topic: "/device_sensor_data/411841915123/2CF7F1C042400055/1/+/4101"
unit_of_measurement: "Pa"
value_template: "{{ value_json.value }}"
- name: "Wind Direction"
state_topic: "/device_sensor_data/411841915123/2CF7F1C042400055/1/+/4104"
unit_of_measurement: "°"
value_template: "{{ value_json.value }}"
- name: "Wind Speed"
state_topic: "/device_sensor_data/411841915123/2CF7F1C042400055/1/+/4105"
unit_of_measurement: "m/s"
value_template: "{{ value_json.value }}"
- name: "Rainfall Hourly"
state_topic: "/device_sensor_data/411841915123/2CF7F1C042400055/1/+/4113"
unit_of_measurement: "mm/hour"
value_template: "{{ value_json.value }}"
- name: "UV Index"
state_topic: "/device_sensor_data/411841915123/2CF7F1C042400055/1/+/4190"
unit_of_measurement: "UV"
value_template: "{{ value_json.value }}"
- name: "Soil Temperature"
state_topic: "/device_sensor_data/411841915123/2CF7F1C04160002C/1/+/4102"
unit_of_measurement: "℃"
value_template: "{{ value_json.value }}"
- name: "Soil Moisture"
state_topic: "/device_sensor_data/411841915123/2CF7F1C04160002C/1/+/4103"
unit_of_measurement: "%"
value_template: "{{ value_json.value }}"
- name: "Electrical Conductivity"
state_topic: "/device_sensor_data/411841915123/2CF7F1C04160002C/1/+/4108"
unit_of_measurement: "dS/m"
value_template: "{{ value_json.value }}"
- name: "Bed Room Temperature"
state_topic: "/device_sensor_data/411841915123/2CF7F1C04160002C/1/+/4102"
unit_of_measurement: "℃"
value_template: "{{ value_json.value }}"
- name: "Bed Room Humidity"
state_topic: "/device_sensor_data/411841915123/2CF7F1C04160002C/1/+/4103"
unit_of_measurement: "%RH"
value_template: "{{ value_json.value }}"
- name: "Bed Room CO2"
state_topic: "/device_sensor_data/411841915123/2CF7F1C04160002C/1/+/4108"
unit_of_measurement: "ppm"
value_template: "{{ value_json.value }}"

pir

guárdalo y ve a las herramientas de desarrollador para verificar si el archivo YAML es correcto.

luego, reinicia Home Assistant

pir

después de reiniciar, asegúrate de que MQTT esté escuchando el tema de SenseCAP

pir

luego, ve a Configuración -> Dispositivos y Servicios -> Entidades

¡¡¡wow~~~ todas las mediciones de los sensores están listadas ahí.

pir

Crear un panel de datos de sensores

El último paso es agregar entidades de sensores a un panel.

ve a la vista general y encuentra "Editar Panel"

pir

Elige la tarjeta de entidades, esta tarjeta puede incluir múltiples valores de sensores en una tarjeta.

Crearé tres tarjetas para cada sensor

pir

Finalmente, he hecho la integración más básica y muestro los datos de los sensores SenseCAP en Home Assistant.

pir

A continuación, dedicaré más tiempo a optimizar la interfaz de usuario y hacer que se vea hermosa.

y usar ESP32 para agregar nuevos sensores a Home Assistant.

Recursos

Tango con Home Assistant y Sensores SenseCAP

Loading Comments...