Plus de valeurs remontées avec mes sondes

Bonjour,

depuis hier je n’ai plus de valeurs avec mes sondes de températures.
J’ai essayé plusieurs choses, relancer les dépendances, updates…

J’ai regardé via SSH et en lançant la commande pour vérifier l’état des sondes, elles fonctionnent correctement, températures, batteries etc …
Tout s’affiche.

On dirait qu’il n’y a pas de communication entre Jeedom et mon Raspi.

Quelles sondes de temperatures?
Les messages aparaissent en regardant avec MQTT Explorer?
Quelle commande lancée à travers SSH?
De quoi parle-t-on?

Bonsoir,

désolé pour le manque d’infos.

Les sondes sont des Aqara ronde.
Je ne connais pas MQTT explorer, je l’ai installé mais trop difficile pour moi de l’exploiter.

La commande SSH est sudo journalctl -u zigbee2mqtt.service -f.
On voit bien tous les capteurs avec les informations (image jointe)Capture

Bonjour,
MQTT explorer vous servirait a voir si les topices changent. iI est simple d’utilisation il suffit de vous connecter a votre brocker.
Pour l’utilisateur et le mot de passe en ssh vous pouvez le trouver avec la commande:

nano /opt/zigbee2mqtt/data/configuration.yaml

Qui vous donnera quelque chose de ce type :


# MQTT settings
mqtt:
  # MQTT base topic for Zigbee2MQTT MQTT messages
  base_topic: zigbee2mqtt
  # MQTT server URL
  server: 'mqtt://localhost'
  # MQTT server authentication, uncomment if required:
  # user: my_user
  # password: my_password

Puis vous en sortez par Ctrl + x

ok, on voit que les messages partent en tous cas donc 2 nouvelles questions :
1 - Dans jMQTT, le broker apparait-il bien connécté comme ceci : image
2 - un message d’erreur apparait-il dans les logs « jMQTT » ou « jMQTT_daemon »?

Bonjour,

1- oui le broker parait connecté, le voyant est vert.
image

2- Non pas de message d’erreur dans les logs.

Je joins une capture des commandes dans le broker,on voit qu’il n’y a pas de valeur mais juste écris « valeur » partout.

Il y a 2 ou 3 commandes qui fonctionnent, comme par exemple, le statut, bridgestate…

Bonjour,

je viens de voir que j’ai des erreurs sur log JMQTT_deamon:

[2021-10-09 22:35:50,751][ERROR]    : BrkId:   31 : Unexpected disconnection from broker!
[2021-10-09 22:35:58,373][ERROR]    : BrkId:   31 : WebSocket client encountered an Error!
Traceback (most recent call last):
File "/usr/local/lib/python3.5/dist-packages/websocket/_app.py", line 354, in run_forever
dispatcher.read(self.sock.sock, read, check)
File "/usr/local/lib/python3.5/dist-packages/websocket/_app.py", line 56, in read
if not read_callback():
File "/usr/local/lib/python3.5/dist-packages/websocket/_app.py", line 320, in read
op_code, frame = self.sock.recv_data_frame(True)
File "/usr/local/lib/python3.5/dist-packages/websocket/_core.py", line 396, in recv_data_frame
frame = self.recv_frame()
File "/usr/local/lib/python3.5/dist-packages/websocket/_core.py", line 432, in recv_frame
return self.frame_buffer.recv_frame()
File "/usr/local/lib/python3.5/dist-packages/websocket/_abnf.py", line 372, in recv_frame
self.recv_header()
File "/usr/local/lib/python3.5/dist-packages/websocket/_abnf.py", line 320, in recv_header
header = self.recv_strict(2)
File "/usr/local/lib/python3.5/dist-packages/websocket/_abnf.py", line 407, in recv_strict
bytes_ = self.recv(min(16384, shortage))
File "/usr/local/lib/python3.5/dist-packages/websocket/_core.py", line 516, in _recv
return recv(self.sock, bufsize)
File "/usr/local/lib/python3.5/dist-packages/websocket/_socket.py", line 125, in recv
"Connection is already closed.")
websocket._exceptions.WebSocketConnectionClosedException: Connection is already closed.
[2021-10-09 22:35:58,395][ERROR]    : error from callback <bound method WebSocketClient.on_close of <__main__.WebSocketClient object at 0x76370bf0>>: on_close() missing 2 required positional arguments: 'close_status_code' and 'close_msg'

Pourrais-tu me confirmer que l’accès API pour jMQTT est bien sur Activé :

Bonjour,

oui tout est activé.

Bonjour,

je n’arrive toujours pas à avoir de remontées et je me demandais si en repartant de zéro avec JMQTT si cela ne pourrait pas résoudre le problème.
Je m’explique, effacer le plugin sous Jeedom ainsi que les paquets sur mon RPI.

Et ensuite tout réinstaller.
C’est peu être une grosse bêtise

Vérifie que tu as bien tes commandes avec ou non les majuscules : en particulier zigbee2mqtt vs Zigbee2Mqtt dans les topics.

En outre, tu peux essayer des mettre le topic de base (en remontant de plus en plus pres de la racine…) tout en activant l’auto apprentissage des commande. Tu verras s’il y a des topics qui entrent… et a quel moiment il y a un prob.

Ca avance de mon coté, j’ai effacé le broker et les équipements associes.
Ensuite réinstaller l’ensemble.

J’ai des remontés d’informations (super), mais pour le moment cela reste en paquets par appareils, exemple pour la sonde de température.
J’ai essayé en selectionnant JSON mais pas mieux, en fait je n’arrive pas à avoir plusieurs informations pour chaque sonde.

Je sais pas trop si ça marche de la même façon entre zigbee2mqtt et zwavejs2mqtt mais il te faut créer un équipement par équipement en indiquant /# à la fin pour récupérer les topics de l’équipement en question donc zigbee2mqtt/capteur_fumee/# par exemple.

Ensuite dans les commandes on affine.

Il ressemble à quoi là ton équipement ?

Bonjour,

ca n’a pas l’air de fonctionner.
J’ai un message d’erreur:
« |on_mqtt_message raised an Exception : Pas d’équipement avec l’id fourni (id=72)||64| »

Cela doit être lié, mais je ne sais pas où chercher pour corriger cela.

Merci

Post des captures d’écran ça aidera :

La config comme ici :

Une partie des commandes comme ici :

Que donne un clic que le bouton JSON (capture écran) ?
image

voici des captures d’écrans.

De la config:
image

Et lorsque j’appui sur JSON avec la sonde de température à l’étage:

On voit bien la 1ere commande avec l’ensemble des informations et ensuite les autres, mais lorsque je sors du mode JSON, toutes les informations détaillées disparaissent.

Mais … j’ai peu être trouvé une piste, sur le nom de l’info (dans mon exemple battery), j’ai remplacé « nom de l’info » par batterie sonde …
Et cela à l’air de fonctionner pour le moment, je vais continuer sur les autres infos et je reviens ver vous.

Oui tu as mis « zigbee2mqtt/# » dans le topic donc le plugin va récupérer l’ensemble des commandes de toutes tes sondes.

Les commandes doivent effectivement être nommées et avoir un Topic de type « zigbee2mqtt/sonde_temp_etage{battery} » pour aller chercher la valeur de battery de la sonde_temp_etage

Je te conseille quand même fortement de créer un équipement jMQTT par équipement physique (chaque sonde) donc :

  • un équipement sonde_temp_étage avec un topic zigbee2mqtt/sonde_temp_etage/# pour ne récupérer que les valeurs de cette sonde
  • des commandes qui reprennent ensuite chaque valeur de cette sonde donc
    Battery -> zigbee2mqtt/sonde_temp_etage{battery}
    Humidity -> zigbee2mqtt/sonde_temp_etage{humidity}

etc …

Quand tu réponds à quelqu’un utilise le bouton Répondre à droite du post c’est plus pratique pour que l’on puisse voir quand on nous réponds :wink:

Bonjour,

tout refonctionne à merveille, pour résumer j’ai effacé puis re installer le plugin et ensuite nommer manuellement toutes les informations dont j’avais besoin lorsque j’étais en mode JSON.

Super, plus qu’à fermer ton sujet en cochant Solution sur le post qui t’a aidé

A+

1 « J'aime »