Automatisation, allumer une prise pendant X minutes tout les X heures?

Salut !

PAr chez moi il fait très froid (entre -5 et -40°c).
Pour éviter que l’eau gèle dans le tuyau entre le puits et la maison, il y a un cable chauffant tout le long.

J’ai une prise inteligente que j’aimerai activer et désactiver régulièrement.

Par exemple, allumée pendant 30 minutes toutes les 6 heures.

Je ne suis pas très bon en automatisation / dev.

La seule façon que je vois est de créer (avec le déclencheur HEURE)

  • une automatisation « ON » avec plusieurs déclencheurs (1 à 00h00, 1 à 6h00, 1 à 12h00, 1 à 18h00)
  • une automatisation « OFF » avec plusieurs déclencheurs (1 à 00h30, 1 à 6h30, etc).

D’après vous y a t-il moyen de faire mieux que ça ? Plus court ? Plus optimisé / fiable (fiable car je ne veux pas qu’il y ait de raté, en allumage (pour le gel) et en extinction (pour la conso électrique).

D’avance, merci ! :slight_smile:

Hello,
Je ferai plutôt une séquence qui tourne tant qu’une condition est vraie, et qui fait un on-off du switch a des intervalles réguliers .
Voila le code que j’utilise pour allumer-éteindre une lampe pour simuler une présence et que tu peux adapter. La condition serait la température j’imagine dans ton cas.


alias: Alarme - simulation présence cuisine
description: >-
  Allume la lampe cuisine du couché du soleil à minuit si l'alarme est mise avec
  séquence 6mn on puis 2mn off
trigger:
  - platform: state
    entity_id: binary_sensor.alarme_myfox_onoff
  - platform: sun
    event: sunset
condition: []
action:
  - choose:
      - conditions:
          - condition: state
            entity_id: binary_sensor.alarme_myfox_onoff
            state: 'on'
          - condition: sun
            after: sunset
        sequence:
          - repeat:
              while:
                - condition: time
                  after: '12:00'
                - condition: state
                  entity_id: binary_sensor.alarme_myfox_onoff
                  state: 'on'
              sequence:
                - service: switch.turn_on
                  target:
                    entity_id:
                      - switch.qubino_spot_cuisine
                - delay:
                    minutes: 8
                - service: switch.turn_off
                  target:
                    entity_id: switch.qubino_spot_cuisine
                - delay:
                    minutes: 2
    default:
      - service: switch.turn_off
        target:
          entity_id: switch.qubino_spot_cuisine
mode: single


Merci.

La condition ne peut pas être la température (qui est trop froide pendant 8 mois).
C’est obligatoirement avec des plages horaires programmées que je peux éviter le gel.

Je vois. Donc tu peux simplifier et juste garder la séquence.
Tu es dans quelle région par curiosité : Quebec ? Montagne ? Grand nord ?

Grand nord :smiley:

Je ne gère pas le code.
Ton exemple est bien une automatisation ?
Si je le colle en « raw », je peux la réafficher en mode « visuel » pour la modifier « à la souris » ?

Je le ferais aussi simplement que ça :

alias: Hors-gel des tuyaux exterieurs
description: 'Active pendant 30min la prise permettant de maintenir hors-gel les canalisations extérieures'
mode: single
trigger:
  - platform: time_pattern
    hours: "/6" #Toutes les 6h (0 6h 12h 18h) 
condition: []
action:
  - service: switch.turn_on
    target:
      entity_id: switch.tuyau_exterieur
  - delay:
      hours: 0
      minutes: 30
      seconds: 0
      milliseconds: 0
  - service: switch.turn_off
    target:
      entity_id: switch.tuyau_exterieur

On peut y ajouter une condition de température de date, de tout ce que l’on veut…:innocent: