72. Domos en VM¶
Direcciones:
* Servidor HA: http://192.168.1.110:8123
* Servidor Grafana: http://192.168.1.110:3000/login
* Servidor NodeRed http://192.168.1.110:1880/
73. Almacen código fuente¶
En gitlab
74. Habitación Esquina¶
Aquí esta el altavoz "Google Home mini" . Dispositivos: * Enchufe wifi compatible tuya * Interruptor pared para lampara sonoff * Raspberry Pi 3 con MQTT Broker Mosquitto y el servidor docker "Home Assistant" Open Source de integración interesante.
75. Servidor Home Assistant¶
75.1 Información general¶
- Detalles en este documento local
-
Instalacion manual, pero antes hacer copia seguridad SD : https://blog.desdelinux.net/como-hacer-un-backup-y-restaurar-de-tarjeta-sd-para-raspberry-pi/
-
- Primeros pasos
- tutoriales esp32cam HAS
- https://domoticaencasa.es/home-assistant-33-integramos-un-sensor-de-luminosidad-de-1e/
- https://domoticaencasa.es/home-assistant-22-usar-timer-mantener-luz-encendida/
- Instalación:
- https://domoticaencasa.es/home-assistant-3-instalamos-sistema-primer-arranque/
- https://domoticaencasa.es/category/tutoriales/page/7/
- https://domoticaencasa.es/actualizar-nuevo-sistema-autenticado-home-assistant/
- Integración con Google assistant
75.2 Algunos documentos usado en la configuración/instalación¶
- Servicio de publicación mqtt para enviar solicitudes a los nodos.
- Automatización de servicios y discusión en un foro para el caso mqtt.
75.3 Instalacion en RPI3 VM¶
Utilizamos una instalación en rpi3 model B v1.2 del año 2015
Para instalación vamos a utilizar Home Assistan Operating Sytema, ver documento HA una variante de Rasberry pi OS . En Windows se puede utilizar Rasberry Pi Imager como se indica en el enlace anterior.
75.3.1 Configuración HA¶
75.3.1.1 Integracion tuya.¶
Usamos la integración incluida
75.3.1.2 Complementos¶
75.3.1.2.1 Node Red¶
75.3.1.2.2 Copias de seguridad en Google Drive¶
Instrucciones en el siguiente video
Es necesario añadir un repositorio a los complementos (tres puntos esquina superior derecha); https://github.com/sabeechen/hassio-google-drive-backup
75.3.1.2.3 EWelink¶
Según su página de sonoff
- Añadimos repositorio : https://github.com/CoolKit-Technologies/ha-addon
- Instalar
- Iniciar
- Open web UI
------------- REVISAR ------------------------
Fichero de configuración : /home/asuarez/homeassistant/configuration.yaml
75.3.1.3 Sensores mqtt¶
Ejemplo incluido c¡en configuration.yaml
sensor:
- platform: mqtt
name: "th3"
state_topic: "vm/h3/temperatura"
unique_id: "vmth3"
- platform: mqtt
name: "hh3"
state_topic: "vm/h3/humedad"
unique_id: "vmhh3"
75.3.1.4 Para MQTT con mensajes en formato json.¶
En este caso,se utiliza un campo value_template , como por ejemplo:
Para este nodo Tasmota que leer temperatura DHT11, CON EL SIGUENTE JSON
{
"Time": "2020-11-07T14:07:30",
"Time": "2020-11-07T14:12:30",
"DHT11": {
"Temperature": 8.6,
"Humidity": 32,
"DewPoint": -7.2
"Temperature": 8.9,
"Humidity": 33,
"DewPoint": -6.6
},
"TempUnit": "C"
}
- platform: mqtt
name: "nevera"
state_topic: "vm/nevera/SENSOR"
unique_id: "id_nevera"
value_template: '{{value_json["DHT11"]["Temperature"] }}'
75.3.1.5 Automatismos de servicios¶
La automatización consta de tres elementos para formar la "regla de automatización":
* trigger (disparo) son eventos que disparan la automatización
* Condición : opcional , es la condición lógica que debe cumplirse para que se ejecute la acción
* Acción: por ejemplo, encender luces, etc
Para la automatización se utilizan los estados internos de HA, que se pueden consultar en el interfaz web , apartado desarrollador.
Los estados HA consisten en tres elementos:
* Entity Id , unio por entidad
* State , estado actual
* Attributes, otras propiedades
Los cambios de estados pueden usarse como fuente de disparo
Las acciones se corresponden con los servicios (se consultal en desarrollador-> servicios)
Mediante los servicios puede cambiarse cualquier cosa.
Es posible usar la web como editor de acciones (configuración -> automatizaciones) o bien editar "automations.yaml"
75.3.1.5.1 Triggers¶
https://www.home-assistant.io/docs/automation/trigger/
- Time trigger: se ejecuta una vez al día a la hora indicada.
Ejemplo:automation: trigger: platform: time_pattern # Matches every hour at 5 minutes past whole minutes: 5automation: trigger: platform: time # Military time format. This trigger will fire at 3:32 PM at: "15:32:00" ```` * Time pattern trigger: repetición segú patrón. * El valor con prefijo "/" indica que se cumple el patrón por los números divisibles. * El valor con prefijo "*" indica que se cumple para cualquier valor. Ejemplo
automation 2: trigger: platform: time_pattern # Trigger once per minute during the hour of 3 hours: "3" minutes: "*"
automation 3: trigger: platform: time_pattern # You can also match on interval. This will match every 5 minutes minutes: "/5" ```
75.3.1.5.2 Condiciones¶
75.3.1.5.3 Acciones¶
Sigue la sintaxis de scripts. Se pueden utiliazar para interactuar con cualquier servicio o evento.
Para los servicios se especifica la "entity_id" y los parámetros opcionales.
También se usa como acción un escenario
Ejemplo:
automation:
# Change the light in the kitchen and living room to 150 brightness and color red.
trigger:
platform: sun
event: sunset
action:
service: light.turn_on
data:
brightness: 150
rgb_color: [255, 0, 0]
entity_id:
- light.kitchen
- light.living_room
automation 2:
# Notify me on my mobile phone of an event
trigger:
platform: sun
event: sunset
offset: -00:30
variables:
notification_service: notify.paulus_iphone
action:
# Actions are scripts so can also be a list of actions
- service: ""
data:
message: Beautiful sunset!
- delay: 0:35
- service: notify.notify
data:
message: Oh wow you really missed something great.
76. Nodos Tasmota¶
Web principal tasmota en github
https://www.youtube.com/watch?v=KOg5qwO3Rh4
Andreas Spiess comparando tasmota y esphome
Instrucciones compilación
1. Descarga https://github.com/arendst/Tasmota usango git integrado en VScode
2. en platformio.init descomentar tasmota-ES
3. En el mismo fichero en sección common: (ejemplo weemos d1 mini)
* board = d1_mini
* upload_port = /dev/cu.usbserial-1410
4. Compilar y programar esp8266
5. La primera vez, en el terminal VSCode imprime una ip . El nodo crea un AP con nombre "tasmota_XXXXX" que hay que usar para conectarse. En la página pide el punto de acceso wifi y passord que quedan grabados
Si no se logra conectar puede utilizarse el terminal para invocar comando
76.1 Nodo Nevera¶
Provisionalmente HI-GROW DHT11 PIN = 22 LedPin = 16 SOILpin = 32; LIGHTpin = 34;
76.2 Nodo lector temperatura y humedad¶
76.2.1 Wemos + DHT shield¶
Pins
D1-mini GPIO Shield
D1 5 SCL
D2 4 SDA
77. Nodo lector consumos eléctricos.¶
Dos partes:
* Nodo esp32: Seguir el enlace
* Configuración en HA.
En el fichero de configuración añadimos los sensores (entidades) mqtt para obtener w, Kwh, fp,v,hz.
También un panel con todos estas entidades.
En la parte de automatismos, peticiones periódicas de w y kwh
78. Control de IMAC con domótica.¶
- http://automator.us/leopard/features/index.html
- https://www.subtraction.com/2017/01/11/controlling-a-mac-with-amazon-echo-or-google-home/ *
La carpeta de automator en icloud mapeada a local, desde terminal: /Library/Mobile Documents/comapple~Automator/
78.1 Apagar IMac usando IFTTT¶
https://ifttt.com/applets/SvtyjQnk-turn-off-your-mac-using-google-assistant-mic