Gestion porte de garage avec template COVER problème état

Message supprimé par son auteur

avec l’option 2 le bouton de gauche reste indisponible, et si je clic sur le bouton droit fermeture l’icone clignote…(pas de mouvement de la porte de garage).

Avec l’option 1, le bouton de gauche est DISPONIBLE, mais si je clic dessus il ne se passe rien. Le bouton droite reste également disponible.

Un vrai casse tête pour moi, :weary:

Info complémentaire si j’ouvre la porte de garage manuellement a la commande de ewelink l’affichage donne ça

Message supprimé par son auteur

coucou ! le terminator de la porte de garage est la !

Message supprimé par son auteur

j’ai l’impression qu’on n’est pas loin de la solution, mais je suis complètement perdu .

Message supprimé par son auteur

et hop :

type: custom:button-card
name: Porte Garage
label: |
  [[[
    if (states['timer.timergarage'].state === 'active') return 'Fermeture';
    if (states['binary_sensor.porte_garage'].state === 'on') return 'Ouverte';
    if (states['binary_sensor.porte_garage'].state === 'off') return 'Fermée';
    return 'État inconnu';
  ]]]
show_label: true
custom_fields:
  my_icon:
    card:
      type: custom:button-card
      icon: |
        [[[
          if (states['timer.timergarage'].state === 'active') return 'mdi:window-shutter-cog';
          if (states['binary_sensor.porte_garage'].state === 'on') return 'mdi:window-shutter-open';
          if (states['binary_sensor.porte_garage'].state === 'off') return 'mdi:window-shutter';
          return 'mdi:window-shutter-alert';
        ]]]
      styles:
        card:
          - background-color: rgba(44,44,44,1)
          - border-radius: 50%
          - width: 60px
          - height: 60px
          - display: flex
          - align-items: center
          - justify-content: center
          - pointer-events: none
          - cursor: default
        icon:
          - color: |
              [[[
                if (states['timer.timergarage'].state === 'active') return 'orange';
                if (states['binary_sensor.porte_garage'].state === 'off') return 'red';
                if (states['binary_sensor.porte_garage'].state === 'on') return 'green';
                return 'lightgray';
              ]]]
          - animation: |
              [[[
                return states['timer.timergarage'].state === 'active' ? 'blink 1.5s infinite' : 'none';
              ]]]
          - width: 40px
  button_up:
    card:
      type: custom:button-card
      icon: mdi:arrow-up
      tap_action:
        action: call-service
        service: script.garage_ouverture
      styles:
        card:
          - background-color: rgba(44,44,44,1)
          - width: 105px
          - height: 42px
          - pointer-events: |
              [[[
                return states['binary_sensor.porte_garage'].state === 'auto' ? 'auto' : 'none';
              ]]]
          - cursor: |
              [[[
                return states['binary_sensor.porte_garage'].state === 'pointer' ? 'pointer' : 'default';
              ]]]
        icon:
          - color: |
              [[[
                return states['binary_sensor.porte_garage'].state === 'off' ? 'rgba(255,255,255,0.8)' : 'rgba(255,255,255,0.1)';
              ]]]
  button_down:
    card:
      type: custom:button-card
      icon: mdi:arrow-down
      tap_action:
        action: call-service
        service: script.garage_fermeture
      styles:
        card:
          - background-color: rgba(44,44,44,1)
          - width: 105px
          - height: 42px
          - pointer-events: |
              [[[
                return states['binary_sensor.porte_garage'].state === 'off' ? 'auto' : 'none';
              ]]]
          - cursor: |
              [[[
                return states['binary_sensor.porte_garage'].state === 'off' ? 'pointer' : 'default';
              ]]]
        icon:
          - color: |
              [[[
                return states['binary_sensor.porte_garage'].state === 'off' ? 'rgba(255,255,255,0.8)' : 'rgba(255,255,255,0.1)';
              ]]]
styles:
  card:
    - height: 130px
    - width: 250px
    - background-color: rgba(28, 28, 28, 1)
    - border-radius: 12px
    - box-shadow: none
    - border: 1px solid rgba(44,44,44,1)
    - pointer-events: |
        [[[
          return (['Ouverte', 'Fermée'].includes(states['input_select.etatportegarage'].state)) ? 'none' : 'auto';
        ]]]
    - cursor: |
        [[[
          return (['Ouverte', 'Fermée'].includes(states['input_select.etatportegarage'].state)) ? 'default' : 'pointer';
        ]]]
  grid:
    - grid-template-areas: >-
        "my_icon n" "my_icon l" "button_up button_down" "timer_status
        timer_status"
    - grid-template-columns: 70px auto
    - grid-template-rows: 30px 40px 42px 42px
    - align-items: flex-start
    - padding-left: 10px
  name:
    - font-size: 14px
    - font-weight: bold
    - color: rgba(255,255,255,0.8)
    - justify-self: start
    - text-align: left
  label:
    - font-size: 12px
    - color: |
        [[[
          const s = states['timer.timergarage'].state;
          return s === 'active' ? 'orange' : 'rgba(255,255,255,0.8)';
        ]]]
    - justify-self: start
    - text-align: left
    - margin-top: 4px
  custom_fields:
    button_up:
      - position: absolute
      - top: 80px
      - left: 15px
    button_down:
      - position: absolute
      - top: 80px
      - right: 15px

Message supprimé par son auteur

voila le Template du capteur…

      porte_garage:
        device_class: garage
        friendly_name: "Commande porte garage"
        value_template: "{{ is_state('binary_sensor.porte_garage', 'on') }}"
        open_cover:
          - service: switch.turn_on
            target:
              entity_id: switch.sonoff_100173bbc2
        close_cover:
          - service: switch.turn_on
            target:
              entity_id: switch.sonoff_100173bbc2

en ce moment la porte est fermée et si je regarde ça donne ça !

donc sur OFF lorsque la porte est fermée

Message supprimé par son auteur

heu…ben mon capteur il retourne ON ou OFF, mais pas auto ?

1 « J'aime »

Message supprimé par son auteur

pour l’instant oui j’i activé le peu de neurones en état

Message supprimé par son auteur

ok j’essaye de suivre ce cour magistral, je bidouille le code et je te le post…

je crois que tu vas pouvoir aller a ton apéro j’ai fais une fausse manip, j’ai tout exploser…
je vais recharger le code initial que j’avais posté…

Message supprimé par son auteur

1 « J'aime »

Oui…bon mais je ne suis pas certain de tout comprendre pour l’instant, mais bon je vais bosser pour y arriver ça m’énerve de ne pas comprendre, mais j’avance grâce a tes explications,
ça donne ça :

maintenant il faut que je regarde ce que j’ai exploser dans les scripts
image
j’ai encore des nuits blanches en perspective…

Message supprimé par son auteur