Piloter dans HA un routeur solaire non connecté (ARSUN)

Bonjour à tous,
après avoir installé des panneaux solaires et un onduleur solaredge dans ma maison, j’ai pu suivre facilement ma production et ma consommation d’énergie. Je me suis donc posé la question classique d’un producteur d’énergie solaire : Comment améliorer mon autoconsommation.
Une réponse évidente quand on a un chauffe-eau électrique, c’est d’utiliser un routeur solaire !!!
Évidemment, la contrainte étant de pouvoir commander le routeur à l’aide de home assistant. Ben oui, sinon c’est donner de la confiture aux cochons. Bon, on va pas se mentir, je cherchais une solution assez simple (je ne suis pas un grand spécialiste et même si j’aime bien bidouiller, il ne fallait pas que je mette les mains dans le cambouis toutes les 5 minutes).
J’ai donc opté pour un routeur solaire ARSUN pour plusieurs raisons. D’abord la facilité d’intégrations dans le tableau électrique sans trop de modifications de câblage, ce qui permet une installation facile et accessoirement un retour à l’origine simple si besoin (déménagement par exemple). D’autre part, l’entrée contact sec était un bon argument.
[ARSUN - ARSUN]

Petit problème, le routeur n’est pas connecté et je souhaite le piloter avec HA, j’ai donc investi dans le matériel suivant :

  1. un shelly 1 mini gen3 branché sur l’entrée contact sec du routeur pour activer la marche forcée
  2. un capteur de température owon glissé dans le doigt de gant du chauffe-eau
  3. un interrupteur DIN zigbee 20A de chez NOUS pour couper l’alimentation du routeur en cas de longue absence (vacances par exemple). Il permet également de mesurer la consommation de mon chauffe-eau pour l’intégrer das le dashboard énergy.

Avec tout ça le pilotage du routeur dans HA se fait à l’aide de quelques automatismes et templates :

  1. la création d’un « input select » pour simuler l’arrêt, le mode jour/nuit (automatique) et la marche forcée
Résumé

  1. un sensor « statistique » qui permet de connaître la température maximum atteinte sur les 14 dernières heures glissantes. De cette façon, je sais si la température max a été atteinte dans la journée et je sais si je dois chauffer la nuit sur les heures creuses. Le problème à contourner étant que la température en bas du chauffe-eau diminue grandement dès qu’il y a un tirage d’eau chaude.
Résumé

  1. un automatisme qui permet de simuler les modes « éteint », « automatique » et « forcé ». Le mode « éteint » met sur off l’interrupteur 1DIN. Le mode automatique laisse le routeur faire son travail normal en journée. Le mode forcé passe le shelly sur on jusqu’à ce que la température de consigne est atteinte avant de repasser sur automatique.
Résumé
alias: chauffe eau (switch)
description: ""
triggers:
  - entity_id:
      - input_select.chauffe_eau
    from: null
    to: null
    trigger: state
conditions: []
actions:
  - choose:
      - conditions:
          - condition: state
            entity_id: input_select.chauffe_eau
            state: Forcé
        sequence:
          - if:
              - condition: device
                type: is_off
                device_id: 2a47b1c9fffce7137d71f9fb58a2df0a
                entity_id: 13a115edf80b70f7b29cd5d863ad78ea
                domain: switch
            then:
              - type: turn_on
                device_id: 2a47b1c9fffce7137d71f9fb58a2df0a
                entity_id: 13a115edf80b70f7b29cd5d863ad78ea
                domain: switch
          - type: turn_on
            device_id: 26b351e8add90ebac7362d7209a9e90b
            entity_id: 9e599b5a96dc5007927001b4747edce8
            domain: switch
          - condition: state
            entity_id: input_select.chauffe_eau
            for:
              hours: 4
              minutes: 0
              seconds: 0
            state: Forcé
          - type: turn_off
            device_id: 26b351e8add90ebac7362d7209a9e90b
            entity_id: 9e599b5a96dc5007927001b4747edce8
            domain: switch
          - metadata: {}
            data:
              option: Automatique
            target:
              entity_id: input_select.chauffe_eau
            action: input_select.select_option
      - conditions:
          - condition: state
            entity_id: input_select.chauffe_eau
            state: "Éteint "
        sequence:
          - type: turn_off
            device_id: 26b351e8add90ebac7362d7209a9e90b
            entity_id: 9e599b5a96dc5007927001b4747edce8
            domain: switch
          - type: turn_off
            device_id: 2a47b1c9fffce7137d71f9fb58a2df0a
            entity_id: 13a115edf80b70f7b29cd5d863ad78ea
            domain: switch
      - conditions:
          - condition: state
            entity_id: input_select.chauffe_eau
            state: Automatique
        sequence:
          - if:
              - condition: device
                type: is_off
                device_id: 2a47b1c9fffce7137d71f9fb58a2df0a
                entity_id: 13a115edf80b70f7b29cd5d863ad78ea
                domain: switch
            then:
              - type: turn_on
                device_id: 2a47b1c9fffce7137d71f9fb58a2df0a
                entity_id: 13a115edf80b70f7b29cd5d863ad78ea
                domain: switch
          - type: turn_off
            device_id: 26b351e8add90ebac7362d7209a9e90b
            entity_id: 9e599b5a96dc5007927001b4747edce8
            domain: switch
mode: single

  1. un automatisme qui va activer le shelly en marche forcée jusqu’à atteindre la T° de consigne (58°C) si la température de consigne (T° max cumulus) n’a pas été atteinte pendant la journée.
Résumé
alias: chauffe eau  auto la nuit
description: ""
triggers:
  - trigger: time
    at: "22:00:00"
conditions:
  - condition: state
    entity_id: input_select.chauffe_eau
    state: Automatique
  - condition: numeric_state
    entity_id: sensor.tdeg_max_cumulus
    below: 58
actions:
  - type: turn_on
    device_id: 26b351e8add90ebac7362d7209a9e90b
    entity_id: 9e599b5a96dc5007927001b4747edce8
    domain: switch
  - wait_for_trigger:
      - trigger: numeric_state
        entity_id:
          - sensor.tdegcumulus_temperature
        above: 58
  - type: turn_off
    device_id: 26b351e8add90ebac7362d7209a9e90b
    entity_id: 9e599b5a96dc5007927001b4747edce8
    domain: switch
mode: single

  1. Pour finir, un petit badge en mushroom template sur le dashbord pour connaitre l’état de mon input.select et un icone qui reprend les couleur du ARSUN pour savoir si je suis en train de router de l’énergie solaire vers mon chauffe-eau
Résumé

Capture3

type: custom:mushroom-template-badge
icon: >-
  {{ "mdi:water-boiler-auto" if states('input_select.chauffe_eau') ==
  'Automatique' }}

  {{ "mdi:water-boiler-off" if states('input_select.chauffe_eau') == 'Éteint' }}

  {{ "mdi:heat-wave" if states('input_select.chauffe_eau') == 'Forcé' }}
color: >-
  {% if states('input_select.chauffe_eau') == 'Automatique' and
  states('sensor.switch_routeur_solaire_power') == '0' %}

  green

  {% elif states('input_select.chauffe_eau') == 'Automatique' and
  states('sensor.switch_routeur_solaire_power') > '0' and
  states('switch.chauffe_eau_switch_0') == 'off' %}

  blue

  {% elif states('input_select.chauffe_eau') == 'Automatique' and
  states('sensor.switch_routeur_solaire_power') > '0' and
  states('switch.chauffe_eau_switch_0') == 'on' %}

  red

  {% elif states('input_select.chauffe_eau') == 'Forcé' and
  states('sensor.switch_routeur_solaire_power') > '0' %}

  red

  {% elif states('input_select.chauffe_eau') == 'Forcé' and
  states('sensor.switch_routeur_solaire_power') == '0' %}

  grey

  {% elif states('input_select.chauffe_eau') == 'Éteint' %}

  grey

  {%endif %}
entity: input_select.chauffe_eau
content: "{{states ('input_select.chauffe_eau')}}"
label: cumulus

Et enfin, la lecture sur une power card flow

Avec tout ça, j’ai pu transformer un routeur solaire non intégré dans HA en une solution pilotable quasiment intégralement.
En espérant que ça peut intéresser du monde.

slt jolie travail mais pour le prix de tout ton materiel tu aurais pu prendre directement un MSUNPV :grin:
j avais hesité au debut a prendre le arsun mais il y avais trop d avis negatif a l epoque .

Ben disons que j’avais déjà une partie du matériel en ma possession (shelly + sonde) donc finalement j’ai pas investi beaucoup plus que le seul routeur.
J’en suis pour l’instant satisfait. À voir par la suite…

y a pas de raison des modifications ont du etre effectuer par rapport au premier model .
pour avoir le cumulus sur ta carte energie tu te sert de quelle entité ?

J’utilise l’entité sensor.switch_routeur_solaire_energy de mon interrupteur NOUS 1din qui est en amont du routeur (la consommation du routeur étant négligeable) :

ok je te remercie c est le seul truc qui me manque le comptage des watts router en journee .