Keine Kommunikation auf "externem" MQTT Broker

Die Verbindung zum Smart Home und Internet der Dinge (IoT)

Moderator: Ulrich

olabre
Beiträge: 20
Registriert: Mi 24. Feb 2021, 16:53
Hat sich bedankt: 1 Mal

Re: Keine Kommunikation auf "externem" MQTT Broker

Beitrag von olabre »

Danke Ulrich,

ich denke ich habe da noch ein Verständnisproblem. Die Solaranzeige hat ja einen eigenen MQTT Broker - richtig? Der IObroker hört ja darauf als Client - oder?
Mit Deinem Aufruf bekomme ich: Unable to connect (Lookup error.) bzw. wenn ich das ohne http:// aufrufe kommt Connection refused. Komisch ist, dass es bereits ging und ich im iobroker Daten gesehen haben. Ich habe im Netz noch ein 2. Gerät, dass Daten per MQTT an den iobroker sendet - ein gateway für einen Orno 517. Auch dort hatte ich schon Daten gesehen - allein sind diese in der falschen Instanz gelandet.
Können die alle auf dem gleichen Port laufen?

Olaf

olabre
Beiträge: 20
Registriert: Mi 24. Feb 2021, 16:53
Hat sich bedankt: 1 Mal

Re: Keine Kommunikation auf "externem" MQTT Broker

Beitrag von olabre »

P.S. Ich habe jetzt die Solaranzeige als Broker laufen und iobroker als Client - jetzt tut es.
Bekomme ich eigentlich alle Werte auch per MQTT?

Benutzeravatar
Ulrich
Administrator
Beiträge: 5453
Registriert: Sa 7. Nov 2015, 10:33
Wohnort: Essen
Hat sich bedankt: 151 Mal
Danksagung erhalten: 871 Mal
Kontaktdaten:

Re: Keine Kommunikation auf "externem" MQTT Broker

Beitrag von Ulrich »

Ja, alle Werte die ausgelesen werden, werden als MQTT an den angegebenen Broker gesendet, wenn MQTT in der user.config.php eingeschaltet ist.
-----------------------------------------------------
Ulrich . . . . . . . . [Projekt Administrator]

Gtal
Beiträge: 13
Registriert: Do 13. Mai 2021, 07:46

Re: Keine Kommunikation auf "externem" MQTT Broker

Beitrag von Gtal »

Hallo Zusammen,

hoffe, ich darf mich hier einmal dran hängen.

Habe auch das Problem, dass ich keine Verbindung zu ioBroker hin bekomme.
Folgende Konfiguration:
* single Regler Version
* WR "56" Huawei KTL30-M3 (recht neu .. ggf hängt es da) - über RS485/USB direkt am Raspi mit Solaranzeige (funktioniert)
* IO-Broker auf einem eigenen Server im lokalen Netzwerk
* aktuelles Solaranzeige Image

ioBroker als Server und user.config.php entsprechend eingestellt ergibt keine Verbindung.
Konfiguriere ich den ioBroker als Client kommt eine Verbindung zustande - es wird mir allerdings im ioBroker Sonoff/tele/LWT angezeigt (ist überhaupt nicht in der user.config.php konfiguriert).

mosquitto_sub -h localhost -v -t solaranzeige/box1/# ergibt keine Ausgabe.

solaranzeige.log sagt jede Minute:
24.07. 09:29:01 MQT-Pipe exestiert nicht. Nur Info, kein Fehler...Exit.
24.07. 09:29:01 |---------------- Start huawei_M1.php -----------------------------
24.07. 09:29:02 > -Gerätetyp: SUN2000-30KTL-M3 Modell ID: 444
24.07. 09:29:08 * -Daten zur lokalen InfluxDB [ solaranzeige ] gesendet.
24.07. 09:29:08 -OK. Datenübertragung erfolgreich.
24.07. 09:29:08 |---------------- Stop huawei_M1.php ---------------------------

Habt ihr eine Idee, wo ich weiter ansetzen könnte? Habe hier alles durchgearbeitet, was ich finden konnte .. scheint OK zu sein.

Benutzeravatar
Ulrich
Administrator
Beiträge: 5453
Registriert: Sa 7. Nov 2015, 10:33
Wohnort: Essen
Hat sich bedankt: 151 Mal
Danksagung erhalten: 871 Mal
Kontaktdaten:

Re: Keine Kommunikation auf "externem" MQTT Broker

Beitrag von Ulrich »

ist den in der user.config.php $MQTT = true; eingetragen?

Wenn ja, dann ändere bitte einmal folgende Stelle in der huawei_M1.php

Code: Alles auswählen

  /**************************************************************************
  //  Alle ausgelesenen Daten werden hier bei Bedarf als mqtt Messages
  //  an den mqtt-Broker Mosquitto gesendet.
  //  Achtung! Die Übertragung dauert ca. 30 Sekunden!
  **************************************************************************/
  if ($MQTT and $i < 6) {
    $funktionen->log_schreiben("MQTT Daten zum [ $MQTTBroker ] senden.","   ",1);
    require($Pfad."/mqtt_senden.php");
  }
lösche bitte das "and $i < 6" Es sollte dann in der Zeile folgendes stehen:

if ($MQTT) {
-----------------------------------------------------
Ulrich . . . . . . . . [Projekt Administrator]

Gtal
Beiträge: 13
Registriert: Do 13. Mai 2021, 07:46

Re: Keine Kommunikation auf "externem" MQTT Broker

Beitrag von Gtal »

Ulrich hat geschrieben:
Sa 24. Jul 2021, 10:40
ist den in der user.config.php $MQTT = true; eingetragen?

Wenn ja, dann ändere bitte einmal folgende Stelle in der huawei_M1.php

Code: Alles auswählen

  /**************************************************************************
  //  Alle ausgelesenen Daten werden hier bei Bedarf als mqtt Messages
  //  an den mqtt-Broker Mosquitto gesendet.
  //  Achtung! Die Übertragung dauert ca. 30 Sekunden!
  **************************************************************************/
  if ($MQTT and $i < 6) {
    $funktionen->log_schreiben("MQTT Daten zum [ $MQTTBroker ] senden.","   ",1);
    require($Pfad."/mqtt_senden.php");
  }
lösche bitte das "and $i < 6" Es sollte dann in der Zeile folgendes stehen:

if ($MQTT) {
Das war es! Danke Ulrich!
Bleibt das erhalten bei einem Softwareupgrade bzw muss ich das rückgängig machen, wenn ich auf die Multi-Regler Version umsteige?
An dieser Stelle vielen Dank für die gesamte Arbeit, die Du in dieses Projekt einbringst!
VG Dieter

Benutzeravatar
Ulrich
Administrator
Beiträge: 5453
Registriert: Sa 7. Nov 2015, 10:33
Wohnort: Essen
Hat sich bedankt: 151 Mal
Danksagung erhalten: 871 Mal
Kontaktdaten:

Re: Keine Kommunikation auf "externem" MQTT Broker

Beitrag von Ulrich »

Hallo Dieter,

ich werde das im Update ändern. Das Problem ist die Kommunikation mit den Huawei Geräten. Auf der Leitung gibt es öfters Kollisionen, die korrigiert werden müssen. Deshalb ist oft $i größer als 6. Hat etwas mit den Huawei Geräten zu tun.

Das soll mit der LAN Anbindung dann besser werden.
-----------------------------------------------------
Ulrich . . . . . . . . [Projekt Administrator]

Antworten

Zurück zu „MQTT und der Rest der Welt“