J’ai un petit soucis avec mes Sonoff Dual qui vient d’arriver aujourd’hui après 2 mois d’utilisation quotidienne pour piloter mes radiateurs sans problème
Je les avais configuré sur Gladys en MQTT et HTTP
Dans la console de l’interface Tasmota je vois :
18:56:40 MQT: Connect failed to “MonIP”:1883, rc -2. Retry in 10 sec
Je n’avais rien changé depuis un bon moment dans ma configuration et aujourd’hui je ne peux plus les piloter via MQTT ni recevoir leurs états.
Je peux cependant les piloter par HTTP et recevoir leurs états
Je vois aujourd’hui que tous mes Sonoff clignote en bleu
Les 5 Tasmota de l’appartement sont dans le même état, ils sont cependant bien connecté au wifi
Dans la documentation il semble que cela signifie qu’ils ne sont pas connecté au Wifi et/ou MQTT
La configuration des Tasmota n’ont pas changé et celle de Gladys non plus
Cependant je n’ai pas d’idée d’où cela peut venir
Est-ce que quelqu’un aurait une idée ?
En vous remerciant
Edit : J’ai changé toutes mes scènes et mes affichages du dashboard pour passer en HTTP. Cela fonctionne mais il semble y avoir un problème avec MQTT
J’ai désactivé le MQTT sur les Tasmota pour qu’ils arrêtent de clignoter en bleu
Je ne l’avais pas changé depuis son installation :
Côté gladys :
Utiliser un broker dans un conteneur Docker : Activé
mqtt://localhost
Id et mot de passe
Bon, j’ai le même problème depuis quelques heures, juste après une commande ‘apt upgrade’ et un reboot via SSH qui a installé, je pense, un nouveau rpi-firmware entre autres.
Plus aucun Tasmota ne répond…
Hasard?
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
9e9a56caf879 eclipse-mosquitto:latest "/docker-entrypoint.…" 5 hours ago Up 2 hours eclipse-mosquitto
0087650424a3 containrrr/watchtower:armhf-latest "/watchtower --clean…" 3 weeks ago Up 2 hours 8080/tcp watchtower
7959384793d9 gladysassistant/gladys:v4-arm "docker-entrypoint.s…" 4 weeks ago Up 2 hours gladys
Et la console de Tasmota dit:
01:02:54 MQT: Attempting connection...
01:02:54 MQT: Connect failed to 192.168.1.55:1883, rc -2. Retry in 10 sec
01:02:55 QPC: Reset
01:03:07 MQT: Attempting connection...
01:03:07 MQT: Connect failed to 192.168.1.55:1883, rc -2. Retry in 20 sec
01:03:28 MQT: Attempting connection...
01:03:28 MQT: Connect failed to 192.168.1.55
1612550948: mosquitto version 2.0.7 starting
1612550948: Config loaded from /mosquitto/config/mosquitto.conf.
1612550948: Starting in local only mode. Connections will only be possible from clients running on this machine.
1612550948: Create a configuration file which defines a listener to allow remote access.
1612550948: Opening ipv4 listen socket on port 1883.
1612550948: Opening ipv6 listen socket on port 1883.
1612550948: mosquitto version 2.0.7 running
1612561344: mosquitto version 2.0.7 terminating
1612561486: mosquitto version 2.0.7 starting
1612561486: Config loaded from /mosquitto/config/mosquitto.conf.
1612561486: Starting in local only mode. Connections will only be possible from clients running on this machine.
1612561486: Create a configuration file which defines a listener to allow remote access.
1612561486: Opening ipv4 listen socket on port 1883.
1612561486: Opening ipv6 listen socket on port 1883.
1612561486: mosquitto version 2.0.7 running
1612562801: mosquitto version 2.0.7 terminating
1612562937: mosquitto version 2.0.7 starting
1612562937: Config loaded from /mosquitto/config/mosquitto.conf.
1612562937: Starting in local only mode. Connections will only be possible from clients running on this machine.
1612562937: Create a configuration file which defines a listener to allow remote access.
1612562937: Opening ipv4 listen socket on port 1883.
1612562937: Opening ipv6 listen socket on port 1883.
1612562937: mosquitto version 2.0.7 running
Pas super intéressant, non?
Sauf si cela vient du ‘local only mode’…
Le log de Gladys au moment de l’exécution du Apt upgrade:
npm ERR! errno 1
npm ERR! gladys-server@ start:prod: `cross-env NODE_ENV=production node index.js`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the gladys-server@ start:prod script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm ERR! A complete log of this run can be found in:
npm ERR! /root/.npm/_logs/2021-02-05T21_42_24_248Z-debug.log
> gladys-server@ start:prod /src/server
> cross-env NODE_ENV=production node index.js
Initialising OpenZWave 1.6.1051 binary addon for Node.JS.
OpenZWave Security API is ENABLED
ZWave device db : /usr/local/etc/openzwave
User settings path : /src/server/services/zwave/node_modules/openzwave-shared/build/Release/../../
Option Overrides : --Logging false --ConsoleOutput false --SaveConfiguration true
2021-02-05T22:45:08+0100 <info> service.startAll.js:30 () Service example was manually stopped, so it is ignored at startup
2021-02-05T22:45:08+0100 <info> service.startAll.js:30 () Service philips-hue was manually stopped, so it is ignored at startup
2021-02-05T22:45:08+0100 <info> service.startAll.js:30 () Service xiaomi was manually stopped, so it is ignored at startup
2021-02-05T22:45:08+0100 <info> service.startAll.js:30 () Service zwave was manually stopped, so it is ignored at startup
2021-02-05T22:45:08+0100 <info> service.startAll.js:30 () Service ewelink was manually stopped, so it is ignored at startup
2021-02-05T22:45:08+0100 <info> service.startAll.js:30 () Service tp-link was manually stopped, so it is ignored at startup
2021-02-05T22:45:08+0100 <info> index.js:13 (Object.start) Starting usb service
2021-02-05T22:45:09+0100 <info> connect.js:38 (MqttClient.<anonymous>) Connected to MQTT server mqtt://localhost
2021-02-05T22:45:09+0100 <info> subscribe.js:12 (MqttHandler.subscribe) Subscribing to MQTT topic gladys/master/#
2021-02-05T22:45:09+0100 <info> index.js:20 (Object.start) Starting Open Weather service
2021-02-05T22:45:09+0100 <info> index.js:19 (Object.start) Starting telegram service
2021-02-05T22:45:09+0100 <info> index.js:15 (Object.start) Starting Bluetooth service
2021-02-05T22:45:10+0100 <info> subscribe.js:12 (MqttHandler.subscribe) Subscribing to MQTT topic stat/+/+
2021-02-05T22:45:10+0100 <info> subscribe.js:12 (MqttHandler.subscribe) Subscribing to MQTT topic tele/+/+
2021-02-05T22:45:10+0100 <info> index.js:63 (Server.<anonymous>) Server listening on port 80
2021-02-05T22:54:48+0100 <info> unsubscribe.js:10 (MqttHandler.unsubscribe) Unsubscribing to MQTT topic stat/+/+
2021-02-05T22:54:48+0100 <info> unsubscribe.js:10 (MqttHandler.unsubscribe) Unsubscribing to MQTT topic tele/+/+
2021-02-05T22:54:50+0100 <info> subscribe.js:12 (MqttHandler.subscribe) Subscribing to MQTT topic stat/+/+
2021-02-05T22:54:50+0100 <info> subscribe.js:12 (MqttHandler.subscribe) Subscribing to MQTT topic tele/+/+
2021-02-05T22:59:56+0100 <info> unsubscribe.js:10 (MqttHandler.unsubscribe) Unsubscribing to MQTT topic tele/+/+
2021-02-05T22:59:56+0100 <info> subscribe.js:12 (MqttHandler.subscribe) Subscribing to MQTT topic tele/+/+
2021-02-05T23:00:58+0100 <info> unsubscribe.js:10 (MqttHandler.unsubscribe) Unsubscribing to MQTT topic stat/+/+
2021-02-05T23:00:58+0100 <info> unsubscribe.js:10 (MqttHandler.unsubscribe) Unsubscribing to MQTT topic tele/+/+
2021-02-05T23:01:05+0100 <info> subscribe.js:12 (MqttHandler.subscribe) Subscribing to MQTT topic stat/+/+
2021-02-05T23:01:05+0100 <info> subscribe.js:12 (MqttHandler.subscribe) Subscribing to MQTT topic tele/+/+
2021-02-05T23:02:00+0100 <info> unsubscribe.js:10 (MqttHandler.unsubscribe) Unsubscribing to MQTT topic tele/+/+
2021-02-05T23:02:00+0100 <info> subscribe.js:12 (MqttHandler.subscribe) Subscribing to MQTT topic tele/+/+
2021-02-05T23:06:41+0100 <warn> connect.js:60 (MqttClient.<anonymous>) Disconnected from MQTT server
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! gladys-server@ start:prod: `cross-env NODE_ENV=production node index.js`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the gladys-server@ start:prod script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm ERR! A complete log of this run can be found in:
npm ERR! /root/.npm/_logs/2021-02-05T22_06_41_570Z-debug.log
> gladys-server@ start:prod /src/server
> cross-env NODE_ENV=production node index.js
Initialising OpenZWave 1.6.1051 binary addon for Node.JS.
OpenZWave Security API is ENABLED
ZWave device db : /usr/local/etc/openzwave
User settings path : /src/server/services/zwave/node_modules/openzwave-shared/build/Release/../../
Option Overrides : --Logging false --ConsoleOutput false --SaveConfiguration true
2021-02-05T23:09:18+0100 <info> service.startAll.js:30 () Service example was manually stopped, so it is ignored at startup
2021-02-05T23:09:18+0100 <info> service.startAll.js:30 () Service xiaomi was manually stopped, so it is ignored at startup
2021-02-05T23:09:18+0100 <info> service.startAll.js:30 () Service zwave was manually stopped, so it is ignored at startup
2021-02-05T23:09:18+0100 <info> service.startAll.js:30 () Service ewelink was manually stopped, so it is ignored at startup
2021-02-05T23:09:18+0100 <info> service.startAll.js:30 () Service tp-link was manually stopped, so it is ignored at startup
2021-02-05T23:09:18+0100 <info> service.startAll.js:30 () Service philips-hue was manually stopped, so it is ignored at startup
2021-02-05T23:09:18+0100 <info> index.js:13 (Object.start) Starting usb service
2021-02-05T23:09:19+0100 <info> index.js:19 (Object.start) Starting telegram service
2021-02-05T23:09:19+0100 <info> connect.js:38 (MqttClient.<anonymous>) Connected to MQTT server mqtt://localhost
2021-02-05T23:09:19+0100 <info> subscribe.js:12 (MqttHandler.subscribe) Subscribing to MQTT topic gladys/master/#
2021-02-05T23:09:19+0100 <info> index.js:20 (Object.start) Starting Open Weather service
2021-02-05T23:09:19+0100 <info> index.js:15 (Object.start) Starting Bluetooth service
2021-02-05T23:09:20+0100 <info> subscribe.js:12 (MqttHandler.subscribe) Subscribing to MQTT topic stat/+/+
2021-02-05T23:09:20+0100 <info> subscribe.js:12 (MqttHandler.subscribe) Subscribing to MQTT topic tele/+/+
2021-02-05T23:09:20+0100 <info> index.js:63 (Server.<anonymous>) Server listening on port 80
Bon, j’ai trouvé une solution mais il y a quelque chose de pas normal.
J’ai installé le broker mosquitto externe (hors docker) et désactivé celui de Gladys.
Tout refonctionne (les périphériques mqtt ne fonctionnaient plus non plus) !
Mais il serait intéressant de savoir si c’est de ma faute ou si ça risque d’arriver à d’autres !
Je peux fournir tous les logs que vous désirez, si vous voulez investiguer
Bah c’est clairement ça, tout ce qui se connecte depuis une autre machine est refusé.
A mon avis c’est une nouvelle option par défaut.
EDIT:
Après un peu de lecture et d’expérimentation de mon côté , j’ai réussi à reproduire.
Il y’a peu une nouvelle option a vue le jour. Bon en fait elle existait déjà mais le comportement par défaut a changer.
Par défaut les conteneurs mosquitto n’écoute que sur localhost.
Pour modifier ce comportement il faut ajouter ça dans la conf mosquitto
Alors…
La commande me renvoie systématiquement un “Permission non accordée”. Je l’ai donc ajouté manuellement.
Mais en plus, je n’arrive plus à désactiver le mosquitto installé
Toujours est-il que ça fonctionne, mais je ne sais pas comment (c’est la philosophie de Gladys, non ? )
Bon, finalement, j’ai réussi à désactiver mon “second” broker et exécuter la commande proposée.
Voici ce que le log issu de docker dit :
1612709888: mosquitto version 2.0.7 starting
1612709888: Config loaded from /mosquitto/config/mosquitto.conf.
1612709888: Opening ipv4 listen socket on port 1883.
1612709888: Opening ipv6 listen socket on port 1883.
1612709888: mosquitto version 2.0.7 running
1612710037: mosquitto version 2.0.7 terminating
1612710038: mosquitto version 2.0.7 starting
1612710038: Config loaded from /mosquitto/config/mosquitto.conf.
1612710038: Opening ipv4 listen socket on port 1883.
1612710038: Opening ipv6 listen socket on port 1883.
1612710038: mosquitto version 2.0.7 running
1612710090: mosquitto version 2.0.7 terminating
1612710157: mosquitto version 2.0.7 starting
1612710157: Config loaded from /mosquitto/config/mosquitto.conf.
1612710157: Opening ipv4 listen socket on port 1883.
1612710157: Opening ipv6 listen socket on port 1883.
1612710157: mosquitto version 2.0.7 running
Super !
Mais en fait, ça ne fonctionne pas. Malgré plusieurs reboot, aucun accès à mes périphériques mqtt
Et pourtant :
Est-ce qu’à terme, cela pose un problème que j’utilise eclipse-mosquitto en tant que service hors de Docker ou je peux sans souci laisser ça comme ça?
Est-ce possible que j’aie une latence qui n’existait pas avant ou suis-je parano?
Bonjour à tous, j’ai les mêmes symptômes: aucune config ou paramètre supplémentaire sur une installation qui marchait bien et plus de comm mqtt sur les radiateurs sonoff. Je suis en Gladys 4.0.8 sur une rasp installée via l’image Gladys Assistant.
Suivant les conseils ci-dessus.
Je me suis connecté en ssh sur la rasp
En utilisant vi, j’ai ajouté “listener 1883” au fichier /var/lib/gladysassistant/mosquitto/mosquitto.conf
J’ai ensuite redémarré ma rasp
Dans Gladys Assistant, j’ai dû reconfigurer mon service mqtt.
Pour information, le problème a été réglé avec Gladys v4.1.0.
@AlexTrovato a codé une routine qui met à jour automatiquement le fichier de conf + bloque la version du container a mosquitto 2.0 pour éviter tout problème à l’avenir.