Saltar a contenido

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/

  • Tutoriales HAS en español

    • 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

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

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"
}
La configuración es:

  - 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
        # 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: trigger: platform: time_pattern # Matches every hour at 5 minutes past whole minutes: 5

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

Documentación.

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

79. Enlaces