Tango with Home Assistant and SenseCAP Sensors
Comparte una forma de integrar sensores LoRaWAN® en Home Assistant.
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.
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.
Consigue una tarjeta Micro SD de más de 32GB y conéctala a tu computadora, aquí uso MacBook como ejemplo.
Navega a otros OS de propósito específico y selecciona Home Assistant y Home Automation.
Selecciona Home Assistant
Selecciona la versión del OS de Home Assistant para RPi4
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.


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.
ve a http://homeassistant.local:8123/
y espera a que termine la instalación.
Sigue este enlace para registrar tu cuenta de Home Assistant e iniciar sesión.
¡Bingo! Finalmente, tienes tu Home Assistant instalado.
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.
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.
A continuación, descarga la aplicación SenseCAP Mate y registra una cuenta.
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.
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.
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
y ahora es hora de ir a mi techo e instalarlo en un poste.
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.
así que también los agrego a la aplicación SenseCAP Mate y los instalo en mi dormitorio y maceta.
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
Mi información de suscripción MQTT es:
Regresa a la interfaz web de Home Assistant.
hay muchas integraciones en Home Assistant
https://www.home-assistant.io/integrations/
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
Haz clic en el botón agregar integración y busca MQTT
Recuerda habilitar la configuración avanzada, si olvidas ingresar el Client ID, la configuración fallará.
luego, puedes probar si la suscripción funciona, haciendo clic en el botón CONFIGURE y escuchando el tema
espera un momento, aparecerá el mensaje del sensor.
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


instálalo y habilita mostrar en la barra lateral, y haz clic en iniciar.
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 }}"
guárdalo y ve a las herramientas de desarrollador para verificar si el archivo YAML es correcto.
luego, reinicia Home Assistant
después de reiniciar, asegúrate de que MQTT esté escuchando el tema de SenseCAP
luego, ve a Configuración -> Dispositivos y Servicios -> Entidades
¡¡¡wow~~~ todas las mediciones de los sensores están listadas ahí.
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"
Elige la tarjeta de entidades, esta tarjeta puede incluir múltiples valores de sensores en una tarjeta.
Crearé tres tarjetas para cada sensor
Finalmente, he hecho la integración más básica y muestro los datos de los sensores SenseCAP en Home Assistant.
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.