Control de telefonillo de portero automático con Wemos D1 mini basado en ESPHome con Home Assistant

Vamos a controlar la opción de apertura de puerta de un telefonillo de portero automático con Home Assistant.

Para ello, haremos uso de la configuración basada en Wemos D1 mini que indicamos en un artículo previo.

Elementos necesarios

Para llevar a cabo nuestro montaje, necesitaremos los siguientes componentes:

  • Wemos D1 mini
  • Módulo relé para Wemos D1 mini
  • Peines de pines
  • Telefonillo de portero automático universal tipo 4+N

Asimismo, necesitaremos un servidor Home Assistant, sobre el que realizaremos el control del sistema.

Montaje del circuito

Montaremos el módulo relé sobre el dispositivo Wemos. Luego, conectaremos los cables del telefonillo 1 y 3 (apertura y tierra, respectivamente) a los terminales NO (normalmente abierto) y común.

En este caso, hemos utilizado un telefonillo universal cuyos bloques terminales están numerados a la inversa (del 6 al 1).

Configuración de ESPHome

Vamos a plantear un código YAML que permite controlar el relé desde Home Assistant. Nótese que el pin que lo activa es el D1. Hemos añadido código que limita el tiempo de pulsación a 3 segundos (puede ser ajustado con la variable «tiempo_pulsado»).

substitutions:
  devname: 'telefonillo'
  ssid: 'red'
  password: 'clave'
  tiempo_pulsado: '3s'

esphome:
  name: ${hostname}

esp8266:
  board: d1_mini

wifi:
  ssid: ${ssid}
  password: ${password}
  fast_connect: True

api:
logger:

sensor:
  - platform: wifi_signal
    name: "${devname}: WiFi Signal"
    update_interval: 60s

time:
  - platform: homeassistant

switch:
- platform: gpio
  name: "${devname} Rele"
  pin: D1
  id: rele
  internal: true
- platform: template
  name: "${devname} Boton"
  icon: mdi:button-pointer
  lambda: |-
      if (id(rele).state) {
        return true;
      } else {
        return false;
      }
  turn_on_action:
    - switch.turn_on: rele
    - delay: "${tiempo_pulsado}"
    - switch.turn_off: rele
  turn_off_action:
    switch.turn_off: rele

Podemos subir el código a nuestro Wemos D1 mini con esphome.

$ esphome run telefonillo.yaml --device /dev/ttyUSB0

Instalación

Podemos crear una caja en 3D para el conjunto Wemos y relé. Para ello, podemos utilizar la siguiente pieza disponible en Thingiverse.

Usaremos PLA a una resolución de 0,2 milímetros y un relleno al 20% de tipo cúbico. El diseño se reparte entre tres archivos STL.

Una vez realizada la impresión, solo queda montar el conjunto en la caja, situarla junto al telefonillo y darle alimentación.

Integración en Home Assistant

Por lo general, el dispositivo será automáticamente detectado por Home Assistant. En todo caso, siempre se puede añadir mediante el menú de Ajustes -> Integraciones -> [+ AÑADIR INTEGRACIÓN].

Podemos añadir un botón en nuestro panel de control con el siguiente YAML:

show_name: true
show_icon: true
type: button
tap_action:
  action: toggle
entity: switch.telefonillo_boton
show_state: false
hold_action:
  action: none

Se visualizará como la siguiente imagen:

Deja un comentario