Home Assistant #50: Controlamos un interruptor desde Nextion

Home Assistant #50: Controlamos un interruptor desde Nextion

Continuando con la serie de tutoriales (abajo tenéis el listado de los mismos) hoy vamos a ver como hacer uso de un interruptor de Home Assistant con una pantalla Nextion. Además de poder encenderla o apagarla, podremos cambiar el icono para ver su estado, tanto si se ha activado desde la propia pantalla como desde Home Assistant.

En el anterior tutorial, por si no lo vistéis, nos trajimos los datos de un sensor de Home Assistant a la pantalla Nextion. De esta forma podemos ver en la pantalla los datos que nos interesen de una forma sencilla.

Para aquellos que estáis siguiendo los tutoriales, os incluyo el código para que lo podáis ver y copiar y usarlo en vuestros proyectos. Como la idea es seguir aprendiendo cosas sobre estas pantallas, seguiré haciendo todos los tutoriales y, como final de la serie de tutoriales, quisiera hacer un interfaz que la gente pueda reaprovechar. No obstante, no puedo asegurar cuando estará terminado.

De momento, ya llevo algunas ideas futuras a hacer antes de poder colocarlo en su lugar.

Compra

Si no tenéis ninguno de los dispositivos, podéis mirar para comprar, tanto la pantalla como el ESP32:

Vídeo del tutorial para controlar un interruptor en Home Assistant desde una pantalla Nextion

Código de ESPHome

Para aquellos que quieran utilizar el código que muestro en el vídeo, aquí lo tenéis:

esphome:
  name: tutorialesnextion
  platform: ESP32
  board: esp-wrover-kit

wifi:
  ssid: "TEST"
  password: "test1234567890"

  # Enable fallback hotspot (captive portal) in case wifi connection fails
  ap:
    ssid: "Tutorialesnextion"
    password: "FN9cPFmEC7sg"

captive_portal:

# Enable logging
logger:
  baud_rate: 0

# Enable Home Assistant API
api:

ota:

uart:
  rx_pin: GPIO16
  tx_pin: GPIO17
  baud_rate: 9600

sensor:
  - platform: homeassistant
    entity_id: sensor.0x00158d0001f521ff_temperature
    id: temperatura1
    
binary_sensor:
  - platform: homeassistant
    id: wcedu22
    entity_id: switch.luz_wcedu

  - platform: nextion
    page_id: 0
    component_id: 3
    id: luz1
    on_press:
      then:
        - homeassistant.service:
            service: switch.toggle
            data:
              entity_id: switch.luz_wcedu

globals:
 - id: first_page             # First page of the display?
   type: bool
   restore_value: no
 - id: display_on             # Is display on?
   type: bool
   restore_value: no

display:
  - platform: nextion
    id: tft22
    update_interval: 5s
    lambda: |-
      if (id(wcedu22).state) {
         it.send_command_printf("luz1.pic=2");
      } else {
         it.send_command_printf("luz1.pic=1");
      }
      
      it.set_component_text_printf("temperatura","%.1f",id(temperatura1).state);

En el vídeo explico las partes, pero, no obstante,

Listado de tutoriales de Nextion y Home Assistant

Habéis sido muchos los que habéis pedido que los tutoriales incluyan la forma de localizar otros tutoriales del mismo tipo, por lo que he pensado que podría ayudar hacer una tabla como esta:

Número Tutorial
1 Primeros pasos con la pantalla Nextion
2 Incluimos un sensor de Home Assistant en la pantalla
3 Controlamos un interruptor

Seguiré ampliándola conforme vaya publicando nuevos tutoriales para que de un vistazo podáis ver todos los que hay y podáis seguir el hilo de los mismos.

La entrada Home Assistant #50: Controlamos un interruptor desde Nextion se publicó primero en Domótica en Casa.

Eduardo Ruiz

Informático de vocación, apasionado de la tecnología y blogger desde hace mucho tiempo, escribo de lo que me entretiene y disfruto con ello. Si deseas seguirme, usa el rss del blog o en mi perfil de .