Configuration de Mosquitto sur Raspberry pi
Publié : 11 avr. 2023, 21:23
Bonjour, j'ai un problème avec Mosquitto.
Merci pour le temps que vous prenez à aider les débutants en domotique comme moi.
Je viens tout fraîchement d'installer "Raspberry Pi OS" sur un Raspberry Pi 3
Puis j'ai installé Mosquitto version 2.0.11
Au démarrage, Mosquitto se lance automatiquement :
Cependant, un Wemos essaye de lui envoyer des infos (un compteur d'essai) au 192.168.0.23:1883
Mais il n'y arrive pas :
Serial monitor de l'IDE Arduino :
Mosquitto semble "écouter" les requêtes seulement en local...
Alors j'ai ajouté la ligne
--> listener 1883 192.168.0.23
dans /etc/mosquitto/mosquitto.conf
Puis j'ai redémarré le Mosquitto à la main :
Avec ça, le Wemos arrive à envoyer son message, celui-ci semble reçu, mais n'est pas accepté :
Serial monitor de l'IDE Arduino :
1/ Il faut que je trouve pourquoi il n'est pas accepté... Il semble que par défaut il n'y ait pas besoin d'identifiant et de mot de passe avec Mosquitto. Peut-être qu'il est bloqué par le routeur... Mais c'est louche parce que, si je ne me trompe pas, le code rc=5 signifie que la requête est refusée par Mosquitto...
Code du Wemos :
2/ Mosquitto ne démarre plus jamais tout seul au démarrage du Raspberry Pi après avoir ajouté la ligne :
listener 1883 192.168.0.23
dans le fichier :
/etc/mosquitto/mosquitto.conf
Quand je la commente, Mosquitto redémarre à nouveau au démarrage...
Aucun de ces problèmes n’apparaît dans les tutoriels que j'ai suivis, dont celui-ci :
https://www.youtube.com/watch?v=DBL26A3oBAk
Tout semble fonctionner directement... Moi, Je débute en domotique, mais ça fait 2 jours que je galère
, juste pour obtenir le diagnostique ci-dessus...
Auriez-vous une idée d'où peuvent venir ces problèmes ?
Merci
Merci pour le temps que vous prenez à aider les débutants en domotique comme moi.
Je viens tout fraîchement d'installer "Raspberry Pi OS" sur un Raspberry Pi 3
Code : Tout sélectionner
yonnel@raspberrypi:~ $ cat /etc/os-release
PRETTY_NAME="Debian GNU/Linux 11 (bullseye)"
NAME="Debian GNU/Linux"
VERSION_ID="11"
VERSION="11 (bullseye)"
VERSION_CODENAME=bullseye
ID=debian
HOME_URL="https://www.debian.org/"
SUPPORT_URL="https://www.debian.org/support"
BUG_REPORT_URL="https://bugs.debian.org/"
Code : Tout sélectionner
sudo apt-get update
sudo apt-get install mosquitto
sudo apt-get install mosquitto-clientsCode : Tout sélectionner
yonnel@raspberrypi:~ $ systemctl status mosquitto
● mosquitto.service - Mosquitto MQTT Broker
Loaded: loaded (/lib/systemd/system/mosquitto.service; enabled; vendor pre>
Active: active (running) since Tue 2023-04-11 20:30:07 CEST; 7min ago
Docs: man:mosquitto.conf(5)
man:mosquitto(8)
Process: 2351 ExecStartPre=/bin/mkdir -m 740 -p /var/log/mosquitto (code=ex>
Process: 2352 ExecStartPre=/bin/chown mosquitto /var/log/mosquitto (code=ex>
Process: 2353 ExecStartPre=/bin/mkdir -m 740 -p /run/mosquitto (code=exited>
Process: 2354 ExecStartPre=/bin/chown mosquitto /run/mosquitto (code=exited>
Main PID: 2355 (mosquitto)
Tasks: 1 (limit: 779)
CPU: 457ms
CGroup: /system.slice/mosquitto.service
└─2355 /usr/sbin/mosquitto -c /etc/mosquitto/mosquitto.conf
avril 11 20:30:07 raspberrypi systemd[1]: Starting Mosquitto MQTT Broker...
avril 11 20:30:07 raspberrypi systemd[1]: Started Mosquitto MQTT Broker.Mais il n'y arrive pas :
Serial monitor de l'IDE Arduino :
Code : Tout sélectionner
Connecting to TIGO-2859
.......
WiFi connected
IP address Wemos:
192.168.0.24
Attempting MQTT connection...failed, rc=-2 try again in 5 secondsCode : Tout sélectionner
yonnel@raspberrypi:~ $ sudo netstat -tlnp | grep mosquitto
tcp 0 0 127.0.0.1:1883 0.0.0.0:* LISTEN 2355/mosquitto
tcp6 0 0 ::1:1883 :::* LISTEN 2355/mosquitto --> listener 1883 192.168.0.23
dans /etc/mosquitto/mosquitto.conf
Code : Tout sélectionner
ssh:~ $ sudo nano /etc/mosquitto/mosquitto.conf
GNU nano 5.4 /etc/mosquitto/mosquitto.conf *
# Place your local configuration in /etc/mosquitto/conf.d/
#
# A full description of the configuration file is at
# /usr/share/doc/mosquitto/examples/mosquitto.conf.example
pid_file /run/mosquitto/mosquitto.pid
persistence true
persistence_location /var/lib/mosquitto/
log_dest file /var/log/mosquitto/mosquitto.log
include_dir /etc/mosquitto/conf.d
listener 1883 192.168.0.23Code : Tout sélectionner
sudo systemctl restart mosquittoSerial monitor de l'IDE Arduino :
Code : Tout sélectionner
Connecting to TIGO-2859
.......
WiFi connected
IP address Wemos:
192.168.0.24
Attempting MQTT connection...failed, rc=5 try again in 5 secondsCode du Wemos :
Code : Tout sélectionner
#include <ESP8266WiFi.h>
#include <PubSubClient.h>
const char* ssid = "TIGO-2859";
const char* password = "2NB144203536";
const char* mqtt_server = "192.168.0.23";
WiFiClient espClient;
PubSubClient client(espClient);
void setup() {
Serial.begin(115200);
setup_wifi();
client.setServer(mqtt_server, 1883);
}
void setup_wifi() {
delay(10);
Serial.println();
Serial.print("Connecting to ");
Serial.println(ssid);
WiFi.begin(ssid, password);
while (WiFi.status() != WL_CONNECTED) {
delay(500);
Serial.print(".");
}
Serial.println("");
Serial.println("WiFi connected");
Serial.println("IP address Wemos: ");
Serial.println(WiFi.localIP());
}
void loop() {
if (!client.connected()) {
reconnect();
}
client.loop();
for (int i = 100; i >= 0; i--) {
String payload = String(i);
client.publish("countdown", payload.c_str());
delay(1000);
}
}
void reconnect() {
while (!client.connected()) {
Serial.print("Attempting MQTT connection...");
if (client.connect("ESP8266Client")) {
Serial.println("connected");
} else {
Serial.print("failed, rc=");
Serial.print(client.state());
Serial.println(" try again in 5 seconds");
delay(5000);
}
}
}listener 1883 192.168.0.23
dans le fichier :
/etc/mosquitto/mosquitto.conf
Quand je la commente, Mosquitto redémarre à nouveau au démarrage...
Aucun de ces problèmes n’apparaît dans les tutoriels que j'ai suivis, dont celui-ci :
https://www.youtube.com/watch?v=DBL26A3oBAk
Tout semble fonctionner directement... Moi, Je débute en domotique, mais ça fait 2 jours que je galère
Auriez-vous une idée d'où peuvent venir ces problèmes ?
Merci