Intégration Legrand Cable outlet 064882 à Zigbee2MQTT

Oui, les mises à jour sont super longues… Je tourne entre 2h et 2h30 pour faire une mise à jour…

Bonjour,

J’ai également fait l’acquisition d’un ensemble de sortie de câble connecté Legrand. Suite à la mise à jour de Z2M j’ai vu la possibilité pour certain de mettre à jour le firmware. J’ai un modèle pour lequel ça a finit par passer, mais j’ai trois modèles avec des firmwares plus anciens pour lequel ça ne semble pas passer. Côté log tous semble bien se passer au début à jusqu’à une erreur « Device didn’t respond to OTA request »

debug 2023-01-02 13:37:50 Received MQTT message on 'zigbee2mqtt/bridge/request/device/ota_update/update' with data '{"id":"heat_guest","transaction":"92lob-1"}'
info 2023-01-02 13:37:50 Updating 'heat_guest' to latest firmware
info 2023-01-02 13:37:50 MQTT publish: topic 'zigbee2mqtt/bridge/log', payload '{"message":"Updating 'heat_guest' to latest firmware","meta":{"device":"heat_guest","status":"update_in_progress"},"type":"ota_update"}'
debug 2023-01-02 13:37:50 Received Zigbee message from 'heat_guest', type 'readResponse', cluster 'genBasic', data '{"dateCode":" \u000020210708\u0000\u0000\u0000\u0000\u0000","swBuildId":"0008"}' from endpoint 1 with groupID null
debug 2023-01-02 13:38:51 Update of 'heat_guest' failed (Error: Device didn't respond to OTA request)
info 2023-01-02 13:38:51 MQTT publish: topic 'zigbee2mqtt/heat_guest', payload '{"cable_outlet_mode":"comfort","device_mode":"pilot_on","linkquality":255,"power":0,"power_on_behavior":null,"state":"ON","update":{"installed_version":541187,"latest_version":1655299,"state":"available"},"update_available":true}'
info 2023-01-02 13:38:51 MQTT publish: topic 'zigbee2mqtt/bridge/log', payload '{"message":"Update of 'heat_guest' failed (Device didn't respond to OTA request)","meta":{"device":"heat_guest","status":"update_failed"},"type":"ota_update"}'
info 2023-01-02 13:38:51 MQTT publish: topic 'zigbee2mqtt/bridge/response/device/ota_update/update', payload '{"data":{"id":"heat_guest"},"error":"Update of 'heat_guest' failed (Device didn't respond to OTA request)","status":"error","transaction":"92lob-1"}'
error 2023-01-02 13:38:51 Update of 'heat_guest' failed (Device didn't respond to OTA request)

J’ai ensuite eu cette salve de log

debug 2023-01-02 13:41:36 Received Zigbee message from 'heat_guest', type 'commandQueryNextImageRequest', cluster 'genOta', data '{"fieldControl":0,"fileVersion":541187,"imageType":21,"manufacturerCode":4129}' from endpoint 1 with groupID null
debug 2023-01-02 13:41:36 Device 'heat_guest' requested OTA
debug 2023-01-02 13:41:40 Received Zigbee message from 'heat_guest', type 'commandQueryNextImageRequest', cluster 'genOta', data '{"fieldControl":0,"fileVersion":541187,"imageType":21,"manufacturerCode":4129}' from endpoint 1 with groupID null
debug 2023-01-02 13:41:40 Device 'heat_guest' requested OTA
debug 2023-01-02 13:41:48 Received Zigbee message from 'heat_guest', type 'commandQueryNextImageRequest', cluster 'genOta', data '{"fieldControl":0,"fileVersion":541187,"imageType":21,"manufacturerCode":4129}' from endpoint 1 with groupID null
debug 2023-01-02 13:41:48 Device 'heat_guest' requested OTA

Nouveau dans la domotique et Z2M j’avoue que je sèche un peu, mais je suis prêts à filer un coup de main pour traquer le soucis.

Le firmware date du 20210708 et me donne un numéro de version 0008

De même, j’ai l’erreur Update of 'Radiateur Bureau' failed (Device didn't respond to OTA request)

avec Date du firmware : 2022 02 17 Version du firmware : 0008

Édit : j’ai réussi à lancer une maj mais j’ai dû insister à voir dans 3 h du coup si ça passe sans soucie.

d’ailleur, on a un Changelog de l’ota ?

J’ai le même souci sur 2 de mes 5 prises.
Je n’ai pas encore pu tester la mise à jour de mes sorties de câble mais j’espère pouvoir m’y attelé prochainement

On vient de me donner une sortie de câble 064879.

Impossible d’appareiller ma sortie de câble, mon serveur Zigbee2MQTT ne la détecte pas. Mon serveur Z2M est configuré sur le canal 20. Je ne souhaite pas modifier la configuration du serveur sur le canal 11 car cette bande de fréquence est très encombrée dans mon immeuble et parce que je n’ai pas envie de devoir ré appareiller tous mes autres équipements Zigbee.

Si j’ai bien compris les échanges de ce topic, si j’arrive à mettre la main sur un pont Legrand pour mettre à jour le firmware de ma sortie de câble, je pourrais ensuite l’appareiller sur mon serveur Z2M via le canal 20 ?

Je n’ai absolument aucune information indiquant que Legrand a supprimé le fait d’être « obligatoirement » sur le canal 11 avec ses dernières mises à jour donc je ne pourrais t’aider là dessus.
Si quelqu’un aurai cette information, je suis également preneur !

Perso je confirme fonctionner sur le 20


Et que ça fonctionne

Mais c’est pas info issue de chez legrand

Merci pour l’information. Dans ce cas, je vais essayer de me faire prêter une passerelle Legrand pour faire la mise à jour.

Je vous tiendrai informer si j’ai réussi à appareiller la sortie de cable sur le canal 20 de Z2M après mise à jour.

J’avais aussi des sonoff avec diode de redressement il y a 3 ou 4 ans. J’ai failli mettre le feu à la maison car une diode était de mauvaise qualité et a brulé… Le radiateur était sous une fenètre avec un rideau, la trace noire du sonoff brulé est monté jusqu’à la fenètre mais n’a pas atteint le rideau.

Heureusement nous n’étions pas là. C’était la chambre de mon fils, j’ose pas imaginer ce qui aurait pu se passer dans d’autres circonstances. Autant vous dire que j’ai tout viré aussitôt. Je viens juste de me re-équiper avec du Legrand, c’est cher, mais y’a certains équipements pour lesquels on est mieux avec du matériel qui n’est pas DIY sur du made in china… (et pourtant j’aime le DIY !)

Désolé pour le HS mais je donne tjrs le feedback qd je vois des gens qui installent du sonoff avec diode de redressement.

1 « J'aime »

Après des jours et des jours où j’avais l’erreur « Device didn’t respond to OTA request », j’ai trouvé une solution pour contourner ce problème (du moins, pour ma part, cela fonctionne).

Lorsque qu’un device vous indique cette erreur, couper son alimentation depuis votre tableau électrique, attendez une bonne dizaine de seconde.
Réalimentez ensuite votre device et lancez aussitôt la mise à jour du firmware.

En espérant vous avoir aidé !

2 « J'aime »

Bonjour
Je suis en train de configurer cette sortie de câble Legrand sur HA et Node Red.
J’ai remarqué un problème sur la mesure de puissance:
-en mode prise :
-en marche la puissance est bien lue.
-a l’arrêt, la valeur ne se réactualise pas=garde la valeur de « en marche »

-en mode fil pilote:
-consigne « arret » : la puissance passe bien à zéro
-autre consigne : la puissance passe bien a zéro quand le thermostat du radiateur coupe

Le problème est identique avec la palette « mqqt » et « zigbee2mqtt »
Idem dans home assistant
zigbee2mqtt V1.29.2-1
module Legrand 064882, firmware version 19
j’ai 4 module Legrand, le problème est identique.
Merci

1 « J'aime »

Tu contrôlais le fil pilote ou toute la puissance du radiateur passait dedans ?
Comme tu parles de diode je pense que c le fil pilote. Je croyais que c’était bien plus sécurisant.
Mais un accident est tjrs possible en effet

Cette sortie cbale peut fonctionner suivant 2 modes :
-mode pc: marche-arret en coupant la puissance.
-mode pilote: la puissance va toujours au radiateur, il y a juste le fil pilote qui envoie
les 6 ordre possibles
Il y a la mesure de consommation dans les 2 mode : pc et pilote

=>en mode pc, la mesure de la puissance reste à la même valeur alors que l’on coupe bien l’alimentation. En faite le probleme c’est que la mesure n’est pas réactualisée meme si on fait une requête

=>en mode pilote, la mesure = 0 quand la consigne est « arrêt » ou si le radiateur se coupe par son thermostat interne. Tout est OK

Oui j’avais remarqué cela aussi quand j’utilisais en mode on/off au début.
Sur off, la mesure de puissance ne fonctionne pas, du coup je m’étais fait un sensor qui forçait la mesure à zéro lorsque la prise était sur off.
(Enfin pas à zéro car j’avais besoin de continuer à faire vivre HA avec une mesure qui ne restait pas figée mais évoluait toutes les 10mn.)

  - sensor:
      - name: "Pw_mes_1"
        unit_of_measurement: "W"
        state: >
            {% set minutes = now().minute / 10 %}  
            {% if is_state("light.radiateur_cuisine", "on") -%}
                {{ states("sensor.power_2") | float + minutes | float }}
            {%- else -%}
                {{ minutes }}  
            {%- endif %}

La mesure de puissance fonctionne parfaitement en mode fil pilote.

A noter: il faut toujours privilégier le fil pilote. L’électronique de puissance du radiateur est conçue pour le fil pilote mais pas pour être alimentée/coupée en permanence.
Le manuel d’un de mes radiateurs me prévient: couper directement l’alimentation du radiateur peut endommager l’électronique de puissance…

1 « J'aime »

Quelle est donc la meilleur méthode de calcul de la puissance consommée en kWh pour ces sorties de câble Legrand ?
J’ai installé le pilotage de mes radiateurs suivant l’excellente méthode d’@Argonaute et j’ai testé plusieurs méthode de calcul de la puissance consommée :

  1. par la méthode des Templates, préconisé dans le tuto :
  - platform: template
    sensors:
      convecteur_salon_conso_kwh:
        friendly_name: "Convecteur salon conso [kWh]"
        unit_of_measurement: "kWh"
        value_template: "{{ states('sensor.radiateur_salon_power')|float(0) /1000 }}"
        device_class: energy
        attribute_templates:
          state_class: total_increasing
  1. par la méthode de l’Intégration :
  - platform: integration
    unique_id: sensor.radiateur_salon_energy
    name: Convecteur salon conso [kWh]_v2
    source: sensor.radiateur_salon_power
    round: 2
    unit_prefix: k
    unit_time: h
  1. par la méthode du temps d’allumage (history stats), mais je n’ai pas réussi à la mettre en place car le radiateur est piloté par ordre comfort-1 ou off et non par le on/off du radiateur donc je n’arrive pas à identifier le changement d’état de l’entité (state).

Et quand je compare les résultats de la méthode 1 et 2 j’ai des valeurs vraiment très différente :
image

Carte :

type: custom:apexcharts-card
cache: true
update_interval: 15min
header:
  standard_format: true
  show: false
  title: Conso. salon Jour/7j
  show_states: true
span:
  end: day
graph_span: 7d
stacked: true
apex_config:
  fill:
    opacity: 1
    type: gradient
    gradient:
      shade: light
      type: horizontal
  grid:
    show: false
  xaxis:
    axisBorder:
      show: false
    axisTicks:
      show: false
  yaxis:
    show: false
series:
  - entity: sensor.convecteur_salon_conso_kwh
    type: column
    name: sensor Legrand
    color: orange
    unit: kWh
    opacity: 1
    group_by:
      duration: 1d
      func: max
    show:
      datalabels: true
  - entity: sensor.convecteur_salon_conso_kwh_v2
    type: column
    name: calcul du temps
    color: red
    unit: kWh
    opacity: 1
    group_by:
      duration: 1d
      func: diff
    show:
      datalabels: true

Je serais curieux de savoir comment faites vous de votre coté ?

salut désolé mais je ne comprends pas le graphique…
La puissance figée à 2.1kwh n’est pas sensée être différente d’un jour sur l’autre?

Sinon je dirai que ce qui est affichée est la puissance max du radiateur pas sa consommation.

En lisant le yaml, il n’y a pas d’intégrale dans la méthode en°1.
Pour l’intégrale, il faudrait faire un truc comme ceci:
{{ states('sensor.radiateur_salon_power')|float(0) /1000 + states('sensor.convecteur_salon_conso_kwh')}}

Bonjour !

Je me renseigne sur la sortie de câble Legrand et je viens de constater sur le site Legrand qu’il existe 2 versions de ce produit :
la version 064882 que tout le monde parle dans cette conversation (compatible avec Zigbee2MQTT) et la version 199143.

Est-ce que cette nouvelle version fonctionne également avec Zigbee2MQTT ?
Y-a t-il des retours ?

Merci !

Sur le papier, rien ne semble les différencier…

Alors 10€ de plus pour changer la référence et rajouter Netatmo dans le nom, c’est cher :sweat_smile: