Contador y cronómetro para Home Assistant

En ocasiones, nos puede interesar de saber las veces que se activa un determinado sensor, las veces que se enciende una luz, cuantas veces a la semana ha limpiado nuestro robot de limpieza. Por todo eso nos interesará de tener un contador que nos lo diga.

También en muchas ocasiones queremos saber por ejemplo cuanto tiempo está funcionando la calefacción, cuantas horas está encendida una luz, cuantas horas lleva limpiando el robot con el mismo cepillo, etc… para todo esto nos interesará de tener un contador.

Estos códigos que dejo a continuación yo los tengo en mi archivo sensors.yaml. En caso de no tener un archivo dedicado a los sensores, los tienes que poner a configuration.yaml

Código para el contador.

#### ENCENDIDAS BAÑO PEQUEÑO ####

  - platform: history_stats
    name: Baño pequeño hoy
    entity_id: switch.sonoff_1000b4892e
    state: 'on'
    type: count
    start: '{{ now().replace(hour=0).replace(minute=0).replace(second=0) }}'
    end: '{{ now() }}'
    
  - platform: history_stats
    name: Baño pequeño esta semana
    entity_id: switch.sonoff_1000b4892e
    state: 'on'
    type: count
    start: '{{ as_timestamp( now().replace(hour=0).replace(minute=0).replace(second=0) ) - now().weekday() * 86400 }}'
    end:  '{{ now() }}'
   
  - platform: history_stats
    name: Baño pequeño este mes
    entity_id: switch.sonoff_1000b4892e
    state: 'on'
    type: count
    end: '{{ now().replace(hour=0, minute=0, second=0) }}'
    duration:
      days: 30 

A nuestro panel de lovelace por ejemplo los podemos mostrar con una tarjeta de entidades.

Código para el cronómetro.

#### TIEMPO FUNCIONAMIENTO LAVAPLATOS

  - platform: history_stats
    name: Lavaplatos hoy
    entity_id: input_select.lavaplatos_status
    state: 'Lavando'
    type: time
    start: '{{ now().replace(hour=0, minute=0, second=0) }}'
    end: '{{ now() }}'
    
    
  - platform: history_stats
    name: Lavaplatos ayer
    entity_id: input_select.lavaplatos_status
    state: 'Lavando'
    type: time
    end: '{{ now().replace(hour=0, minute=0, second=0) }}'
    duration:
      hours: 24

    
  - platform: history_stats
    name: Lavaplatos esta semana
    entity_id: input_select.lavaplatos_status
    state: 'Lavando'
    type: time
    start: '{{ as_timestamp( now().replace(hour=0, minute=0, second=0) ) - now().weekday() * 86400 }}'
    end:  '{{ now() }}'
    
    
  - platform: history_stats
    name: Lavaplatos este mes
    entity_id: input_select.lavaplatos_status
    state: 'Lavando'
    type: time
    end: '{{ now().replace(hour=0, minute=0, second=0) }}'
    duration:
      days: 30  
      
      
  - platform: history_stats
    name: Lavaplatos todo los tiempos
    entity_id: input_select.lavaplatos_status
    state: 'Lavando'
    type: time
    start: '{{ 0 }}'
    end: '{{ now() }}'
    

Igual que con el contador, se puede mostrar a nuetro lovelace con una tarjeta de entidades.

Imagen captada un primer lunes de mes por esto de los registros que muestra.

Después de guardar los cambios no te olvides de reinciar tu Home Assistant

Sigueme a Youtube

Sígueme en Youtube - Contador

2 comentarios en “Contador y cronómetro para Home Assistant”

  1. Gracias Albert. Me ha sido muy útil y me ha funcionado todo a la perfección en mi HA. La cuestión es que ahora quiero ir un paso más allá y no soy capaz y es el de apagar un dispositivo cuando ha llegado a un tiempo de uso determinado (por ejemplo un toallero que tengo que lo enciendo solo cuando tengo excedente de energía solar, pero quiero que se apague cuando ya se haya encendido durante 1h al día)
    Y repito, gracias por lo que haces, sigo tu canal y me has ayudado en mil y una ocasiones.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Scroll al inicio