Visualisation Info cumulus chaud

Plus d'informations
15 Aoû 2024 22:00 - 15 Aoû 2024 22:12 #16 par Festayros
Réponse de Festayros sur le sujet Visualisation Info cumulus chaud
oui j'ai bien les scripts j'ai regardé dans le logiciel du routeur j'ai en cmd 1 injection... et cmd2 manu pour le forcage
Si je suis en injection et que je lance le script msunpv_s2_manuel j'ai inject et moyen allumé j'arrive jamais a activer les cmd 2
Si ça peut aider j'ai dans la page accueil du routeur au gauche cmd routeur et a droite cmd manu
Merci
Dernière édition: 15 Aoû 2024 22:12 par Festayros.

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
19 Aoû 2024 14:05 #17 par Tochy
Réponse de Tochy sur le sujet Visualisation Info cumulus chaud
Salut
Je viens de percuter que tu n'utilises pas la config de base mais celle avec détection de fin de chauffe. Du coup oui les boutons et scripts ne correspondent pas.

Regardes ces 2 posts il y'a les corrections à effectuer

ard-tek.com/index.php/forum/vos-schemas/...ature?start=75#16973
ard-tek.com/index.php/forum/vos-schemas/...ature?start=75#16975

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
23 Aoû 2024 20:00 #18 par Festayros
Réponse de Festayros sur le sujet Visualisation Info cumulus chaud
Merci Tochy je viens de faire la modif ça fonctionne .
J'ai une petite question je voudrais le rajouter dans home assistant as tu une idée car je débute j'ai juste ajouté un bouton pour exécuter le script donc 3 boutons, c'est pas très fonctionnel car des que l'on exécute le script l'icone change de couleur puis revient couleur par défaut gris.
As tu une idée, une solution ?
Merci

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
23 Aoû 2024 22:06 #19 par Tochy
Réponse de Tochy sur le sujet Visualisation Info cumulus chaud
Oui il y'a une solution mais il faut passer par de nouvelles carteS à ajouter par HACS qui supportent les templates (mushroom, button-card etc...)
Il y a un exemple avec les cartes mushroom sur le github.

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
25 Aoû 2024 13:19 - 26 Aoû 2024 12:11 #20 par Festayros
Réponse de Festayros sur le sujet Visualisation Info cumulus chaud
Salut
Les actions des boutons fonctionne mais l'icone du dernier bouton activé ne reste pas en vert. Avez vous une idée ?
J'ai ajouter ça dans configuration.YAML
input_select:
  msunpv_active_button:
    name: "Bouton Actif"
    options:
      - "none"
      - "OFF"
      - "Forçage cumulus"
      - "Activer Timer"
    initial: "none"
puis
dans le fichier msunpv-script-2-2.YAML
# Name : msunpv_scripts_2_2.yaml
# Scripts des commandes pour MsunPv en configuration 2_2

script:

  msunpv_s1_off: #Mode routage actif sortie 1
    alias: msunpv_s1_off
    sequence:
      - service: input_select.select_option
        data:
          option: |-
            {% if states('sensor.msunpv_cmd_s1') in ['1','5','9'] %}
              {{ states('sensor.msunpv_cmd_s1')|int -1 }}
            {% elif states('sensor.msunpv_cmd_s1') in ['2','6','10'] %}
              {{ states('sensor.msunpv_cmd_s1')|int -2 }}
            {% else %}
              {{ states('sensor.msunpv_cmd_s1')|int }}
            {% endif %}
        target:
          entity_id: input_select.msunpv_command_sortie_1
      - service: input_select.select_option
        data:
          option: "{{ states('sensor.msunpv_cmd_s3') }}"
        target:
          entity_id: input_select.msunpv_command_sortie_3
      - service: input_select.select_option
        data:
          option: "{{ states('sensor.msunpv_cmd_test') }}"
        target:
          entity_id: input_select.msunpv_command_test_routeur
      - service: script.msunpv_commande_routeur
        data: {}
    mode: single
    
  msunpv_s1_manuel: #Mode forçage sortie 1
    alias: msunpv_s1_manuel
    sequence:
      - service: input_select.select_option
        data:
          option: |-
            {% if states('sensor.msunpv_cmd_s1') in ['0','4','8'] %}
              {{ states('sensor.msunpv_cmd_s1')|int +1 }}
            {% elif states('sensor.msunpv_cmd_s1') in ['2','6','10'] %}
              {{ states('sensor.msunpv_cmd_s1')|int -1 }}
            {% else %}
              {{ states('sensor.msunpv_cmd_s1')|int -1 }}
            {% endif %}
        target:
          entity_id: input_select.msunpv_command_sortie_1
      - service: input_select.select_option
        data:
          option: "{{ states('sensor.msunpv_cmd_s3') }}"
        target:
          entity_id: input_select.msunpv_command_sortie_3
      - service: input_select.select_option
        data:
          option: "{{ states('sensor.msunpv_cmd_test') }}"
        target:
          entity_id: input_select.msunpv_command_test_routeur
      - service: script.msunpv_commande_routeur
        data: {}
    mode: single
    
  msunpv_s1_auto: #Mode programmation horaire sortie 1
    alias: msunpv_s1_auto
    sequence:
      - service: input_select.select_option
        data:
          option: |-
            {% if states('sensor.msunpv_cmd_s1') in ['1','5','9'] %}
              {{ states('sensor.msunpv_cmd_s1')|int +1 }}
            {% elif states('sensor.msunpv_cmd_s1') in ['0','4','8'] %}
              {{ states('sensor.msunpv_cmd_s1')|int +2 }}
            {% else %}
              {{ states('sensor.msunpv_cmd_s1')|int -2 }}
            {% endif %}
        target:
          entity_id: input_select.msunpv_command_sortie_1
      - service: input_select.select_option
        data:
          option: "{{ states('sensor.msunpv_cmd_s3') }}"
        target:
          entity_id: input_select.msunpv_command_sortie_3
      - service: input_select.select_option
        data:
          option: "{{ states('sensor.msunpv_cmd_test') }}"
        target:
          entity_id: input_select.msunpv_command_test_routeur
      - service: script.msunpv_commande_routeur
        data: {}
    mode: single

  msunpv_s2_off: #Mode routage actif sortie 2
    alias: msunpv_s2_off
    sequence:
      - service: input_select.select_option
        data:
          option: |-
            {% if states('sensor.msunpv_cmd_s1') in ['4','5','6'] %}
              {{ states('sensor.msunpv_cmd_s1')|int -4 }}
            {% elif states('sensor.msunpv_cmd_s1') in ['8','9','10'] %}
              {{ states('sensor.msunpv_cmd_s1')|int -8 }}
            {% else %}
              {{ states('sensor.msunpv_cmd_s1')|int }}
            {% endif %}
        target:
          entity_id: input_select.msunpv_command_sortie_1
      - service: input_select.select_option
        data:
          option: "{{ states('sensor.msunpv_cmd_s3') }}"
        target:
          entity_id: input_select.msunpv_command_sortie_3
      - service: input_select.select_option
        data:
          option: "{{ states('sensor.msunpv_cmd_test') }}"
        target:
          entity_id: input_select.msunpv_command_test_routeur
      - service: script.msunpv_commande_routeur
        data: {}
    mode: single
    
  msunpv_s2_manuel: #Mode forçage sortie 2
    alias: msunpv_s2_manuel
    sequence:
      - service: input_select.select_option
        data:
          option: |-
            {% if states('sensor.msunpv_cmd_s1') in ['0','1','2'] %}
              {{ states('sensor.msunpv_cmd_s1')|int +4 }}
            {% elif states('sensor.msunpv_cmd_s1') in ['8','9','10'] %}
              {{ states('sensor.msunpv_cmd_s1')|int -4 }}
            {% else %}
              {{ states('sensor.msunpv_cmd_s1')|int -4 }}
            {% endif %}
        target:
          entity_id: input_select.msunpv_command_sortie_1
      - service: input_select.select_option
        data:
          option: "{{ states('sensor.msunpv_cmd_s3') }}"
        target:
          entity_id: input_select.msunpv_command_sortie_3
      - service: input_select.select_option
        data:
          option: "{{ states('sensor.msunpv_cmd_test') }}"
        target:
          entity_id: input_select.msunpv_command_test_routeur
      - service: script.msunpv_commande_routeur
        data: {}
    mode: single
    
  msunpv_s2_auto: #Mode programmation horaire sortie 2
    alias: msunpv_s2_auto
    sequence:
      - service: input_select.select_option
        data:
          option: |-
            {% if states('sensor.msunpv_cmd_s1') in ['4','5','6'] %}
              {{ states('sensor.msunpv_cmd_s1')|int +4 }}
            {% elif states('sensor.msunpv_cmd_s1') in ['0','1','2'] %}
              {{ states('sensor.msunpv_cmd_s1')|int +8 }}
            {% else %}
              {{ states('sensor.msunpv_cmd_s1')|int -8 }}
            {% endif %}
        target:
          entity_id: input_select.msunpv_command_sortie_1
      - service: input_select.select_option
        data:
          option: "{{ states('sensor.msunpv_cmd_s3') }}"
        target:
          entity_id: input_select.msunpv_command_sortie_3
      - service: input_select.select_option
        data:
          option: "{{ states('sensor.msunpv_cmd_test') }}"
        target:
          entity_id: input_select.msunpv_command_test_routeur
      - service: script.msunpv_commande_routeur
        data: {}
    mode: single


  

  msunpv_s3_off:
    alias: msunpv_s3_off
    sequence:
      - service: input_select.select_option
        data:
          option: |-
            {% if states('sensor.msunpv_cmd_s3') in ['1','5','9'] %}
              {{ states('sensor.msunpv_cmd_s3')|int -1 }}
            {% elif states('sensor.msunpv_cmd_s3') in ['2','6','10'] %}
              {{ states('sensor.msunpv_cmd_s3')|int -2 }}
            {% else %}
              {{ states('sensor.msunpv_cmd_s3')|int }}
            {% endif %}
        target:
          entity_id: input_select.msunpv_command_sortie_3
      - service: input_select.select_option
        data:
          option: "{{ states('sensor.msunpv_cmd_s1') }}"
        target:
          entity_id: input_select.msunpv_command_sortie_1
      - service: input_select.select_option
        data:
          option: "{{ states('sensor.msunpv_cmd_test') }}"
        target:
          entity_id: input_select.msunpv_command_test_routeur
      - service: script.msunpv_commande_routeur
        data: {}
      - service: input_boolean.turn_on
        target:
          entity_id: input_boolean.msunpv_s3_off
      - service: input_boolean.turn_off
        target:
          entity_id:
            - input_boolean.msunpv_s3_manuel
            - input_boolean.msunpv_s3_auto
    mode: single
    
  msunpv_s3_manuel:
    alias: msunpv_s3_manuel
    sequence:
      - service: input_select.select_option
        data:
          option: |-
            {% if states('sensor.msunpv_cmd_s3') in ['0','4','8'] %}
              {{ states('sensor.msunpv_cmd_s3')|int +1 }}
            {% elif states('sensor.msunpv_cmd_s3') in ['2','6','10'] %}
              {{ states('sensor.msunpv_cmd_s3')|int -1 }}
            {% else %}
              {{ states('sensor.msunpv_cmd_s3')|int -1 }}
            {% endif %}
        target:
          entity_id: input_select.msunpv_command_sortie_3
      - service: input_select.select_option
        data:
          option: "{{ states('sensor.msunpv_cmd_s1') }}"
        target:
          entity_id: input_select.msunpv_command_sortie_1
      - service: input_select.select_option
        data:
          option: "{{ states('sensor.msunpv_cmd_test') }}"
        target:
          entity_id: input_select.msunpv_command_test_routeur
      - service: script.msunpv_commande_routeur
        data: {}
      - service: input_boolean.turn_on
        target:
          entity_id: input_boolean.msunpv_s3_manuel
      - service: input_boolean.turn_off
        target:
          entity_id:
            - input_boolean.msunpv_s3_off
            - input_boolean.msunpv_s3_auto
    mode: single
    
    

  msunpv_s3_auto:
    alias: msunpv_s3_auto
    sequence:
      - service: input_select.select_option
        data:
          option: |-
            {% if states('sensor.msunpv_cmd_s3') in ['1','5','9'] %}
              {{ states('sensor.msunpv_cmd_s3')|int +1 }}
            {% elif states('sensor.msunpv_cmd_s3') in ['0','4','8'] %}
              {{ states('sensor.msunpv_cmd_s3')|int +2 }}
            {% else %}
              {{ states('sensor.msunpv_cmd_s3')|int -2 }}
            {% endif %}
        target:
          entity_id: input_select.msunpv_command_sortie_3
      - service: input_select.select_option
        data:
          option: "{{ states('sensor.msunpv_cmd_s1') }}"
        target:
          entity_id: input_select.msunpv_command_sortie_1
      - service: input_select.select_option
        data:
          option: "{{ states('sensor.msunpv_cmd_test') }}"
        target:
          entity_id: input_select.msunpv_command_test_routeur
      - service: script.msunpv_commande_routeur
        data: {}
      - service: input_boolean.turn_on
        target:
          entity_id: input_boolean.msunpv_s3_auto
      - service: input_boolean.turn_off
        target:
          entity_id:
            - input_boolean.msunpv_s3_off
            - input_boolean.msunpv_s3_manuel
    mode: single

  msunpv_s4_off: #Mode routage actif sortie 4
    alias: msunpv_s4_off
    sequence:
      - service: input_select.select_option
        data:
          option: |-
            {% if states('sensor.msunpv_cmd_s3') in ['4','5','6'] %}
              {{ states('sensor.msunpv_cmd_s3')|int -4 }}
            {% elif states('sensor.msunpv_cmd_s3') in ['8','9','10'] %}
              {{ states('sensor.msunpv_cmd_s3')|int -8 }}
            {% else %}
              {{ states('sensor.msunpv_cmd_s3')|int }}
            {% endif %}
        target:
          entity_id: input_select.msunpv_command_sortie_3
      - service: input_select.select_option
        data:
          option: "{{ states('sensor.msunpv_cmd_s1') }}"
        target:
          entity_id: input_select.msunpv_command_sortie_1
      - service: input_select.select_option
        data:
          option: "{{ states('sensor.msunpv_cmd_test') }}"
        target:
          entity_id: input_select.msunpv_command_test_routeur
      - service: script.msunpv_commande_routeur
        data: {}
    mode: single
    
  msunpv_s4_manuel: #Mode forçage sortie 4
    alias: msunpv_s4_manuel
    sequence:
      - service: input_select.select_option
        data:
          option: |-
            {% if states('sensor.msunpv_cmd_s3') in ['0','1','2'] %}
              {{ states('sensor.msunpv_cmd_s3')|int +4 }}
            {% elif states('sensor.msunpv_cmd_s3') in ['8','9','10'] %}
              {{ states('sensor.msunpv_cmd_s3')|int -4 }}
            {% else %}
              {{ states('sensor.msunpv_cmd_s3')|int -4 }}
            {% endif %}
        target:
          entity_id: input_select.msunpv_command_sortie_3
      - service: input_select.select_option
        data:
          option: "{{ states('sensor.msunpv_cmd_s1') }}"
        target:
          entity_id: input_select.msunpv_command_sortie_1
      - service: input_select.select_option
        data:
          option: "{{ states('sensor.msunpv_cmd_test') }}"
        target:
          entity_id: input_select.msunpv_command_test_routeur
      - service: script.msunpv_commande_routeur
        data: {}
    mode: single
    
  msunpv_s4_auto: #Mode programmation horaire sortie 4
    alias: msunpv_s4_auto
    sequence:
      - service: input_select.select_option
        data:
          option: |-
            {% if states('sensor.msunpv_cmd_s3') in ['4','5','6'] %}
              {{ states('sensor.msunpv_cmd_s3')|int +4 }}
            {% elif states('sensor.msunpv_cmd_s3') in ['0','1','2'] %}
              {{ states('sensor.msunpv_cmd_s3')|int +8 }}
            {% else %}
              {{ states('sensor.msunpv_cmd_s3')|int -8 }}
            {% endif %}
        target:
          entity_id: input_select.msunpv_command_sortie_3
      - service: input_select.select_option
        data:
          option: "{{ states('sensor.msunpv_cmd_s1') }}"
        target:
          entity_id: input_select.msunpv_command_sortie_1
      - service: input_select.select_option
        data:
          option: "{{ states('sensor.msunpv_cmd_test') }}"
        target:
          entity_id: input_select.msunpv_command_test_routeur
      - service: script.msunpv_commande_routeur
        data: {}
    mode: single

  msunpv_routage_on_off: #Bascule entre routage et injection
    alias: msunpv_routage_on_off
    sequence:
      - service: input_select.select_option
        data:
          option: |-
            {% if states('sensor.msunpv_cmd_test') in ['1','4','8'] %}
              2
            {% else %}
              1
            {% endif %}
        target:
          entity_id: input_select.msunpv_command_test_routeur
      - service: input_select.select_option
        data:
          option: "{{ states('sensor.msunpv_cmd_s1') }}"
        target:
          entity_id: input_select.msunpv_command_sortie_1
      - service: input_select.select_option
        data:
          option: "{{ states('sensor.msunpv_cmd_s3') }}"
        target:
          entity_id: input_select.msunpv_command_sortie_3      
      - service: script.msunpv_commande_routeur
        data: {}
    mode: single

  msunpv_commande_routeur: #Envoi des commandes au MsunPv
    alias: msunpv_commande_routeur
    sequence:
      - service: shell_command.msunpv_commandes
        data: {}
      - delay:
          hours: 0
          minutes: 0
          seconds: 1
          milliseconds: 0
      - service: homeassistant.update_entity
        data: {}
        target:
          entity_id: sensor.msunpv_xml
    mode: single
Dernière édition: 26 Aoû 2024 12:11 par Festayros.

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
26 Aoû 2024 11:50 #21 par Tochy
Réponse de Tochy sur le sujet Visualisation Info cumulus chaud
Fait nous un screen de ton interface parce que la j'ai du mal a imaginé ce que tu veux faire.
Je vois que tu as créer un input select mais a quoi sert il ?
Dans les script tu as rajouté des boolean turn_on et turn_off donc j'imagine aussi que tu as créé ces booleans quelque part ?

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
26 Aoû 2024 12:35 - 26 Aoû 2024 12:35 #22 par Festayros
Réponse de Festayros sur le sujet Visualisation Info cumulus chaud
Voila les boutons, je veux juste connaitre l'état des commandes en gardant la couleur de l'icone vert sur le dernier bouton active.
Pièces jointes :
Dernière édition: 26 Aoû 2024 12:35 par Festayros.

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
27 Aoû 2024 21:53 #23 par Festayros
Réponse de Festayros sur le sujet Visualisation Info cumulus chaud
Ou alors il faut que je lise le fichier du routeur pour voir la ligne <cmdPos>1;0;0;0;0;0;2;1;</cmdPos>
si = <cmdPos>1;0;0;0;0;0;2;1;</cmdPos> alors j'allume le bouton OFF
si <cmdPos>1;1;0;0;0;0;2;1;</cmdPos> alors j'allume le bouton Forcage cumulus
<cmdPos>1;2;0;0;0;0;2;1;</cmdPos> alors j'allume le bouton Timer

Je pense que c'est plus fiable.

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
27 Aoû 2024 22:16 #24 par Tochy
Réponse de Tochy sur le sujet Visualisation Info cumulus chaud
Putain l'apostrophe ma réponse s'est effacée. Je te remets ça au propre demain
Les utilisateur(s) suivant ont remercié: Festayros

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
28 Aoû 2024 11:15 #25 par Tochy
Réponse de Tochy sur le sujet Visualisation Info cumulus chaud
Salut
Je disais donc, oui il faut se servir cmdpos pour faire varier les états de tes boutons car sans cela si tu fais une modif sur la page web du routeur elle ne sera pas reflétée dans HA.
Je rajoutais que tu n'avais juste à te servir que du sensor.msunpv_cmd_s3 qui remontait déjà la valeur du second chiffre de cmdpos, ainsi ça ne faisait qu'une valeur à tester.

Le soucis pour avoir ça sur HA il faut utiliser des cartes qui acceptent les templates comme déjà dit précédemment (mushroom, button_card... )

Voici deux exemples avec mushroom puisque c'est celle que j'utilise .

Mushroom template chips :


Le code :
type: custom:mushroom-chips-card
chips:
  - type: spacer
  - type: template
    tap_action:
      action: perform-action
      perform_action: script.msunpv_s3_off
    icon: mdi:power
    content: 'Off'
    icon_color: |-
      {% if states('sensor.msunpv_cmd_s3') in ['0'] %}
        green
      {% else %}
        disabled
      {% endif %}
  - type: spacer
  - type: template
    tap_action:
      action: perform-action
      perform_action: script.msunpv_s3_manuel
    icon: mdi:water-boiler
    content: Forçage
    icon_color: |-
      {% if states('sensor.msunpv_cmd_s3') in ['1'] %}
        green
      {% else %}
        disabled
      {% endif %}
  - type: spacer
  - type: template
    tap_action:
      action: perform-action
      perform_action: script.msunpv_s3_auto
    icon: mdi:timer
    content: Timer
    icon_color: |-
      {% if states('sensor.msunpv_cmd_s3') in ['2'] %}
        green
      {% else %}
        disabled
      {% endif %}
  - type: spacer
alignment: center

Mushroom template card :


Le code:
type: horizontal-stack
cards:
  - type: custom:mushroom-template-card
    primary: 'Off'
    secondary: ''
    icon: mdi:power
    layout: vertical
    icon_color: |-
      {% if states('sensor.msunpv_cmd_s3') in ['0'] %}
        green
      {% else %}
        disabled
      {% endif %}
    fill_container: false
    tap_action:
      action: perform-action
      perform_action: script.msunpv_s3_off
      target: {}
  - type: custom:mushroom-template-card
    primary: Forçage Cumulus
    secondary: ''
    icon: mdi:water-boiler
    layout: vertical
    icon_color: |-
      {% if states('sensor.msunpv_cmd_s3') in ['1'] %}
        green
      {% else %}
        disabled
      {% endif %}
    fill_container: false
    tap_action:
      action: perform-action
      perform_action: script.msunpv_s3_manuel
      target: {}
  - type: custom:mushroom-template-card
    primary: Activer Timer
    secondary: ''
    icon: mdi:power
    layout: vertical
    icon_color: |-
      {% if states('sensor.msunpv_cmd_s3') in ['2'] %}
        green
      {% else %}
        disabled
      {% endif %}
    fill_container: false
    tap_action:
      action: perform-action
      perform_action: script.msunpv_s3_auto
      target: {}

Voilà Si je ne me suis pas trompé dans les copier coller, n'utlisant pas cette config mais le principe est la.
Nul besoin de modifier les scripts avec ça (hormis la manip que je t'avais donné en lien en rapport avec ta config)
Pièces jointes :
Les utilisateur(s) suivant ont remercié: Festayros

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
28 Aoû 2024 12:35 #26 par Festayros
Réponse de Festayros sur le sujet Visualisation Info cumulus chaud
Parfait merci

Connexion ou Créer un compte pour participer à la conversation.

Propulsé par Kunena