Verbindungsproblem ESP8266 zu Mosquitto

Moderator: seppy

Antworten
pi_in
Beiträge: 1
Registriert: 5. Jan 2022 18:30

Verbindungsproblem ESP8266 zu Mosquitto

Beitrag von pi_in »

Hallo an alle,
als erstes sorry falls ich etwas falsch mache, bin neu im Forum.

Zu meine Problem:
Ich würde gerne meinen ESP8266 (Arduino) zu Mosquitto welches auf einem Raspberry Pi zero wh läuft verbinden.
Mosquitto läuft normal auf meine PI und auch Node Red kann sich ohne Probleme verbinden.
Wenn ich mittels

Code: Alles auswählen

mosquitto_sub
bzw

Code: Alles auswählen

mosquitto_pub
etwas sende, funktioniert das auch ohne Problem.
Wenn ich dann aber den ESP8266 (Arduino) zum Broker verbinden will dann bekomme ich immer den Fehler

Code: Alles auswählen

failed, rc=-2
.

Nun habe ich schon Versucht eine config datei in

Code: Alles auswählen

/etc/mosquitto/conf.d
zu erstellen
und diese zu integrieren, leider hat das nicht gebracht.
Die config datei mit dem namen m.conf hat so ausgesehen:

Code: Alles auswählen

listener 1883 0.0.0.0
allow_anonymous true
auch mit

Code: Alles auswählen

listener 1883
allow_anonymous true
oder

Code: Alles auswählen

listener 1888 0.0.0.0
allow_anonymous true
habe ich es versucht.
Auch der versuch direkt in die Mosquitto config datei

Code: Alles auswählen

/etc/mosquitto/mosquitto.conf
die oben genannten zeilen ganz am anfang einzufügen habe ich versucht und es hat nicht gebracht.

Als nächste habe ich dann mosquitto über

Code: Alles auswählen

mosquitto -v -c m.conf
gestartet, da mir der log von

Code: Alles auswählen

mosquitto -v
vorher
beim straten mit

Code: Alles auswählen

systemctl start mosquitto
immer gesagt

Code: Alles auswählen

1641391000: mosquitto version 2.0.11 starting

1641391000: Using default config.

1641391000: Starting in local only mode. Connections will only be possible from clients running on this machine.

1641391000: Create a configuration file which defines a listener to allow remote access.

1641391000: For more details see https://mosquitto.org/documentation/authentication-methods/

1641391000: Opening ipv4 listen socket on port 1883.

1641391000: Error: Address already in use

1641391000: Opening ipv6 listen socket on port 1883.

1641391000: Error: Address already in use
ausgegeben hat und ich somit den local mode umgehen wollte.

Das hat funktioniert und beim starten wurde dann die m.conf datei geladen, was anscheinend davor beim starten mittels

Code: Alles auswählen

systemctl start mosquitto
(siehe log) nicht funkltioniert hat, da nun der log

Code: Alles auswählen

mosquitto version 2.0.11 starting

Config loaded from m.conf

Opening ipv4 listen socket on port 1883

Opening ipv6 listen socket on port 1883

mosquitto version 2.0.11 running
ausgegeben wurde.

Somit habe ich gehofft, ich kann mich nun mit dem ESP8266 über den Arduino code zum Broker verbinden.

Hat aber wieder NICHT funktioniert.

Nun bin ich mit meinem Wissen und google am ende und hoffe jemand von euch hat eine Idee wie ich die Verbidnung aufbauen kann?

Ich weiß es sind viele Infos und etwas wirr, wenn euch was unklar ist einfach fragen.

Ich bin für jede Hilfe dankbar!!!!!!

Deshalb schon danke im Vorhinein und schönen Abend!

mfg

Benutzeravatar
udo1toni
Beiträge: 13864
Registriert: 11. Apr 2018 18:05
Answers: 222
Wohnort: Darmstadt

Re: Verbindungsproblem ESP8266 zu Mosquitto

Beitrag von udo1toni »

Du musst, wenn Du die Konfiguration geändert hast, den Service neu starten. inhalt meiner mosquitto.conf:

Code: Alles auswählen

# 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

listener 1883
allow_anonymous true

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
ob allow_anonymous tatsächlich gebraucht wird, weiß ich nicht, der listener aber auf jeden Fall.
Wenn die Datei inhaltlich passt, musst Du den Dienst mit

Code: Alles auswählen

sudo systemctl restart mosquitto.service
neu starten. Bei Erfolg solltest Du in /var/log/mosquitto/mosquitto.log nachlsesen können, dass mosquitto nun auf Port 1883 zuhört:

Code: Alles auswählen

1641419540: mosquitto version 2.0.11 starting
1641419540: Config loaded from /etc/mosquitto/mosquitto.conf.
1641419540: Opening ipv4 listen socket on port 1883.
1641419540: Opening ipv6 listen socket on port 1883.
1641419540: mosquitto version 2.0.11 running
openHAB4.1.2 stable in einem Debian-Container (bookworm) (Proxmox 8.1.5, LXC), mit openHABian eingerichtet

Antworten