Mosquitto - MQTT - Zlinky : Client mqttjs_464b6923 disconnected due to malformed packet

Mon problème

Bonjour, j’ai mis à jour MQTT et Mosquitto Broker et depuis mes données éléctriques qui remontaient via Zlinky ne fonctionne plus.

Voici les logs que j’ai dans mosquitto :

2023-09-07 11:54:36: New client connected from 172.30.32.1:37030 as mqttjs_464b6923 (p2, c1, k60, u'mqtt').
2023-09-07 11:54:36: Client mqttjs_464b6923 disconnected due to malformed packet.
2023-09-07 11:54:37: New connection from 172.30.32.1:37044 on port 1883.
2023-09-07 11:54:37: New client connected from 172.30.32.1:37044 as mqttjs_464b6923 (p2, c1, k60, u'mqtt').
2023-09-07 11:54:37: Client mqttjs_464b6923 disconnected due to malformed packet.
2023-09-07 11:54:38: New connection from 172.30.32.1:37058 on port 1883.

Les logs dans MQTT sont les suivants :

Zigbee2MQTT:error 2023-09-07 12:25:04: Not connected to MQTT server!
Zigbee2MQTT:error 2023-09-07 12:25:04: Cannot send message: topic: 'zigbee2mqtt/zlinky', payload: '{"active_enerfy_out_d01":7866.446,"active_enerfy_out_d02":14331.92,"active_enerfy_out_d03":0,"active_enerfy_out_d04":0,"active_power":360,"active_power_max":2420,"active_power_ph_b":336,"active_register_tier_delivered":"","apparent_power":564,"available_power":9,"average_rms_voltage_meas_period":228,"current_date":"E230907122455","current_index_tarif":3,"current_price":"HEURES PLEINES","current_summ_delivered":22198.378,"current_tarif":"H SUPER......

Ma configuration


Zigbee2MQTT

data_path: /config/zigbee2mqtt
socat:
  enabled: false
  master: pty,raw,echo=0,link=/tmp/ttyZ2M,mode=777
  slave: tcp-listen:8485,keepalive,nodelay,reuseaddr,keepidle=1,keepintvl=1,keepcnt=5
  options: "-d -d"
  log: false
mqtt:
  server: mqtt://192.168.1.52:1883
  user: mqtt
  password: xxxxxxx
serial:
  port: /dev/ttyUSB0

Mosquitto

logins:
  - username: mqtt
    password: xxxxxxxxxx
require_certificate: false
certfile: fullchain.pem
keyfile: privkey.pem
customize:
  active: false
  folder: mosquitto

Pouvez-vous m’aider s’il vous plait ?
Merci par avance

Bj

Dans ta config de z2m , vois tu ta clé de connecté et remonte t’elle les infos ?

si oui , redémarre mosquito , fait arrêté et relance le.

Rafraichi ensuite MQTT dans les paramètres…

Sinon déconnecte ta clé du Linky , attend une petite minute , rebranche la , et redémarre tout HA

Bonjour,

Oui les informations remontent dans Z2M et j’ai arrêté puis lancé mosquitto, voici les logs :

s6-rc: info: service s6rc-oneshot-runner: starting
s6-rc: info: service s6rc-oneshot-runner successfully started
s6-rc: info: service fix-attrs: starting
s6-rc: info: service fix-attrs successfully started
s6-rc: info: service legacy-cont-init: starting
cont-init: info: running /etc/cont-init.d/mosquitto.sh
[16:33:41] INFO: Setting up user mqtt
[16:33:41] INFO: SSL is not enabled
cont-init: info: /etc/cont-init.d/mosquitto.sh exited 0
cont-init: info: running /etc/cont-init.d/nginx.sh
cont-init: info: /etc/cont-init.d/nginx.sh exited 0
s6-rc: info: service legacy-cont-init successfully started
s6-rc: info: service legacy-services: starting
services-up: info: copying legacy longrun mosquitto (no readiness notification)
services-up: info: copying legacy longrun nginx (no readiness notification)
[16:33:42] INFO: Starting NGINX for authentication handling...
s6-rc: info: service legacy-services successfully started
[16:33:42] INFO: Starting mosquitto MQTT broker...
2023-09-07 16:33:42: Warning: Mosquitto should not be run as root/administrator.
2023-09-07 16:33:42: mosquitto version 2.0.17 starting
2023-09-07 16:33:42: Config loaded from /etc/mosquitto/mosquitto.conf.
2023-09-07 16:33:42: Loading plugin: /usr/share/mosquitto/go-auth.so
2023-09-07 16:33:42:  ├── Username/password checking enabled.
2023-09-07 16:33:42:  ├── TLS-PSK checking enabled.
2023-09-07 16:33:42:  └── Extended authentication not enabled.
2023-09-07 16:33:42: Opening ipv4 listen socket on port 1883.
2023-09-07 16:33:42: Opening ipv6 listen socket on port 1883.
2023-09-07 16:33:42: Opening websockets listen socket on port 1884.
2023-09-07 16:33:42: mosquitto version 2.0.17 running
2023-09-07 16:33:42: New connection from 172.30.32.1:44180 on port 1883.
2023-09-07 16:33:42: New client connected from 172.30.32.1:44180 as mqttjs_464b6923 (p2, c1, k60, u'mqtt').
2023-09-07 16:33:42: Client mqttjs_464b6923 disconnected due to malformed packet.
2023-09-07 16:33:43: New connection from 172.30.32.1:45225 on port 1883.
[16:33:43] INFO: Successfully send discovery information to Home Assistant.
2023-09-07 16:33:43: New client connected from 172.30.32.1:45225 as 4BP1JPMXqKuneJkr83F7Fw (p2, c1, k60, u'homeassistant').
2023-09-07 16:33:43: New connection from 127.0.0.1:35786 on port 1883.
2023-09-07 16:33:43: Client <unknown> disconnected due to protocol error.
[16:33:43] INFO: Successfully send service information to the Supervisor.
2023-09-07 16:33:43: New connection from 172.30.32.1:44186 on port 1883.
2023-09-07 16:33:43: New client connected from 172.30.32.1:44186 as mqttjs_464b6923 (p2, c1, k60, u'mqtt').
2023-09-07 16:33:43: Client mqttjs_464b6923 disconnected due to malformed packet.
2023-09-07 16:33:44: New connection from 172.30.32.1:44188 on port 1883.
2023-09-07 16:33:44: New client connected from 172.30.32.1:44188 as mqttjs_464b6923 (p2, c1, k60, u'mqtt').
2023-09-07 16:33:44: Client mqttjs_464b6923 disconnected due to malformed packet.
2023-09-07 16:33:45: New connection from 172.30.32.1:38794 on port 1883.
2023-09-07 16:33:45: New client connected from 172.30.32.1:38794 as mqttjs_464b6923 (p2, c1, k60, u'mqtt').
2023-09-07 16:33:45: Client mqttjs_464b6923 disconnected due to malformed packet.
2023-09-07 16:33:46: New connection from 172.30.32.1:38800 on port 1883.
2023-09-07 16:33:46: New client connected from 172.30.32.1:38800 as mqttjs_464b6923 (p2, c1, k60, u'mqtt').
2023-09-07 16:33:46: Client mqttjs_464b6923 disconnected due to malformed packet.

J’ai débranché la clé du linky puis attendu puis rebranché et redémarrer le système HA (en entier) et j’ai les mêmes logs…

Et

Salut,
clair que c’est un long message qui l’annonce ton Zlinky comparé a chez moi. Tu doit être en mode standard.

2023-09-07 19:32:57MQTT publish: topic 'zigbee2mqtt/Zlinky', payload '{"active_register_tier_delivered":"HP..","apparent_power":440,"current_tarif":"HC..","current_tier1_summ_delivered":9160.383,"current_tier2_summ_delivered":12725.598,"linkquality":167,"rms_current":2}'

Tu peu essayer de filtrer le message, tu as vraiment besoin de toutes ces infos qui remontent ?

moi j’ai filtrer tout ca:

 filtered_attributes:
    - active_power
    - active_power_max
    - meter_serial_number
    - rms_current_max
    - rms_voltage
    - schedule_h_p_h_c
    - update
    - update_available
    - warn_d_p_s
    - available_power
    - MOTDETAT

J’ai simplement besoin d’avoir le courant actuel utilisé, les heures pleines, heures creuses et super creuses et normalement c’est tout. Mais ça résoudra pas mon problème…

Qu’est t’en sais si tu ne teste pas ?

Comment se fait-il que ça fonctionnait avant et que maintenant les infos du json ne sont plus bien formatés pour mosquito ?
Aurais-tu sous la main les filtres par rapport à mon précédent message ? Dois-je renseigner pour chaque filtre une ligne comme la capture d’écran attaché à ton message ?

Moi, j’utilise un fichier device.yaml pour Z2M.
dans mon configuration.yaml de Z2M, j’ai mis ca:

devices:
  - devices.yaml

dans mon device.yaml:

'0x00158d0005d299cf':
  friendly_name: Zlinky
  kWh_precision: 3
  linky_mode: historique
  measurement_poll_interval: ''
  production: 'false'
  tarif: Historique - HCHP
  energy_phase: single_phase
  filtered_attributes:
    - active_power
    - active_power_max
    - meter_serial_number
    - rms_current_max
    - rms_voltage
    - schedule_h_p_h_c
    - update
    - update_available
    - warn_d_p_s
    - available_power
    - MOTDETAT
  homeassistant: {}
  legacy: false
  optimistic: true

Sinon tu peu le faire du UI, va dans ton Zlinky sous Z2M. Dans paramètre, puis dans lma partie Attributs publish filtrés tu fait + et ajoute le nom de l’attribut a filtrer. tu renouvelle pour chaque attribut et tu sauvegarde.

J’ai changé la configuration de Z2M :

devices:
  '0x00158d000966cdf8':
    friendly_name: zlinky
    kWh_precision: 3
    filtered_attributes:
      - active_power
      - apparent_power
      - current_tarif
      - current_price
      - current_summ_delivered
      - current_tier1_summ_delivered
      - current_tier2_summ_delivered
      - current_tier3_summ_delivered
      - update_available
      - schedule_h_p_h_c
      - active_power_max

J’ai redémarré Z2M et Mosquitto et j’ai toujours le même message d’erreur (les filtres sont bien actifs car j’ai regardé en web ui)

Ok, tu aura déjà filtrer des attributs qui te servent pas et limiter ta DB pour rien :wink:
j’ai vu que tu as le firmware v13 sur le Zlinky ?

Je vois venir la chose avec la V13 :wink: :rofl:
Pour info elle fonctionne tres bien , je l’ai depuis sa sortie

J’ai jamais eu de souci

Ma Config
Ha : 2023.09
Z2M: Current version: 1.33.0-1
Mosquitto B: Current version: 6.3.1

1 « J'aime »

Héhé ta vu venir :rofl:
Comme je suis en V12, on sais jamais.

1 « J'aime »

Je l’ai mise à jour car je pensais que ca pouvait résoudre le problème :

Essai d’y aller par etape

installe ceci sur ton pc

connecte toi a ton broker est regarde si les infos arrivent

J’arrive à m’y connecter :


Et

Si quelqu’un a une idée je suis preneur ? Est-ce que le fait de ré-appareiller le zlinky peut corriger le problème ?

Après un rollback avant la mise à jour de Mosquitto et Z2M ca fonctionne de nouveau.

je rencontre exactement le même pb. pour expliquer ma config, j’ai 2 lixee, un sur le compteur linky de consommation (il fonctionne depuis des mois sans pb) et je viens d’en mettre un autre sur le linky de production. Pour avoir fait pleins de tests, l’intégration du lixee dans mon Z2M fonctionne très bien, en revanche dès que je paramètre le mode standard dans les paramètres spécifiques, j’obtiens une erreur immédiate de déconnexion Z2M irréversible que je ne peux supprimer uniquement en supprimant physiquement le lixee dans Z2M et en arrêtant redémarrant le mosquitto brokeur + zigbee2MQTT. je suis bloqué et je ne sais pas comment faire pour permettre de paramétrer le lixee en mode standard sans faire planter toute l’installation ??!!?? Quelqu’un peut me venir en aide SVP ?

j’ai exactement le même problème que friz51 !
dès que je mets le mode standard, ça fait tout sauter avec mqtt !

Hello,

Même problème depuis plusieurs jours de mon côté depuis le passage du compteur en mode standard: dès que le Zlinky passe en mode standard, Z2M perds la connexion MQTT et tout saute. Je me suis arraché les cheveux avec re-pairing plusieurs fois, reboot des différents composants, etc… Je suis même allé à essayer un autre serveur MQTT (EQMX au lieu de Mosquitto) sans succès.

Mais… J’ai fini par trouver la solution! Après un snif des pacquets Zigbee je me suis rendu compte d’une incohérence dans les données: le ZLinky était bien en mode standard, mais par contre il avait « auto-détecté » le tarif en tant que « Standard - BASE » alors que je suis en HPHC. Du coup certains attributs étaient corrompu car non lus au bon endroit et ça faisait tout sauter. J’ai donc forcé le tarif sur le bon (au lieu des — par défaut) et après un reboot de Z2M, tout à l’air ok!