NEWS
MQTT Broker/Client sendet nur beim Start
-
@kerschte_de sagte in MQTT Broker/Client sendet nur beim Start:
In den Einstellungen muss man sich jedoch immer für 1 konkreten Port entscheiden. Wie gehst Du damit um?
Da wirfst du was durcheinander. Dein Broker (mosquitto) hat EINEN Port, den trägst du in beiden Instanzen ein. Kein Problem.
-
@marc-berg ach, das heißt, dass die rot eingefärbte Meldung gar keine Warn-/Fehlermeldung ist? Ich habe diese aufgrund der Farbe so interpretiert.
-
@kerschte_de sagte in MQTT Broker/Client sendet nur beim Start:
gar keine Warn-/Fehlermeldung
Stimmt, das ist verwirrend. Einfach ignorieren.
-
Ist das Konfigurationfeld PORT beim mqtt-client nicht der Port des entfernten Brokers?
Der Adapter baut doch nur Verbindungen AUF und lauscht nicht auf einem Port. Oder?
In der jsonConfig des Adapters ist das Feld als Typ PORT definiert. Dieser Typ ist aber für LISTENER-Ports gedacht und prüft daher, ob der Port am Host auch frei ist.Ich kenn mich mit mqtt leider zu wenig aus - aber ich glaube fast dass da ein Fehler im mqtt-client ist und da Feld einfach Text / Numerisch sein sollte ...
@haus-automatisierung
Da du den Adapter besser kennst und sorry wenn ich schon wieder störe:
Ist das ein Fehler / falscher Typ im jsonConfig deiner Meinung nach oder nicht?
EDIT: hat sich erübrigt - issue erstellt. S.u. -
@marc-berg tatsächlich, der zweite Adapter schaltet auf grün. Also können auf ein- und demselben Gerät mehrere Adapter auf dem gleichen Port arbeiten. Das habe ich nun verstanden. Zudem bin ich froh, dass ich nicht allein vor diesem Problem stehe und dass es eine Lösung dafür gibt.
Ich richte alles ein, teste und melde mich hier noch einmal. Ich hoffe auch, dass diese Sende-Verweigerung des mqtt-broker/client sich nur nicht auf das NSPanel auswirkt. Das hatte ich jetzt bei dem ganzen Herumprobieren erstmal wieder verworfen. Das richte ich dann jetzt erneut ein.
Bis hierhin schonmal ein dickes Danke für den Tipp -
@mcm1957 sagte in MQTT Broker/Client sendet nur beim Start:
Ist das Konfigurationfeld PORT beim mqtt-client nicht der Port des entfernten Brokers?
ja, wie auch beim mqtt-Adapter, wenn er als Client konfiguriert ist.
Der Adapter baut doch nur Verbindungen AUF und lauscht nicht auf einem Port. Oder?
Korrekt.
In der jsonConfig des Adapters ist das Feld als Typ PORT definiert. Dieser Typ ist aber für LISTENER-Ports gedacht und prüft daher, ob der Port am Host auch frei ist.
Dann ist das ein Fehler im Adapter. Zumindest im mqtt-client Adapter. Aber auch im mqtt-Adapter, wenn er keinen Broker "spielt".
-
@kerschte_de sagte in MQTT Broker/Client sendet nur beim Start:
tatsächlich, der zweite Adapter schaltet auf grün. Also können auf ein- und demselben Gerät mehrere Adapter auf dem gleichen Port arbeiten. Das habe ich nun verstanden.
Ja, beide Adapter sind ja auch lediglich nur MQTT Clients, wie das NSPanel und wovon sich in deinem Netz noch hunderte andere befinden könnten.
Ich richte alles ein, teste und melde mich hier noch einmal. Ich hoffe auch, dass diese Sende-Verweigerung des mqtt-broker/client sich nur nicht auf das NSPanel auswirkt.
Irgendwie kann ich mir nicht so richtig vorstellen, dass sich die "Sendeverweigerung" nicht beseitigen lässt. Da muss irgendwo noch ein Konfigurations-Wurm drin sein. Ist aber egal. Mit dem zusätzlichen mqtt-client Adapter bis du in jedem Fall flexibler, was weitere Aufgaben angeht.
-
@marc-berg said in MQTT Broker/Client sendet nur beim Start:
Dann ist das ein Fehler im Adapter. Zumindest im mqtt-client Adapter. Aber auch im mqtt-Adapter, wenn er keinen Broker "spielt".
Issue erstellt:
https://github.com/iobroker-community-adapters/ioBroker.mqtt-client/issues/377mqtt Adapter hat Typ number, er erlaubt daher immer die Porteingabe. Das ist das Gegenteil - im Servermode erkennt er erst zur Laufzeit dass es nicht geht. Läßt sich aber in jsonCOnfig derzeit nicht abbilden außer man definiert 2 getrennte Eingabefelder - und der Aufwand rechnet sich nicht.
-
Ich habe jetzt beide Adapter im Client-Modus laufen und melde mich, wenn ich das NSPanel wieder aktiv habe.
-
@mcm1957 sagte in MQTT Broker/Client sendet nur beim Start:
Issue erstellt:
Aber wie muss der jsonConfig Parameter dann heißen, wenn nicht "port"?
-
@marc-berg sagte in MQTT Broker/Client sendet nur beim Start:
Irgendwie kann ich mir nicht so richtig vorstellen, dass sich die "Sendeverweigerung" nicht beseitigen lässt. Da muss irgendwo noch ein Konfigurations-Wurm drin sein. Ist aber egal. Mit dem zusätzlichen mqtt-client Adapter bis du in jedem Fall flexibler, was weitere Aufgaben angeht.
Genau das vermute ich ja auch die ganze Zeit. Denn sonst würden sich viel mehr im Forum melden, dass da was nicht stimmt. Ich habe es durch Herumspielen mit den Einstellungen versucht, mit Neuinstall, mit allem, was mir so einfiel. Aber ich habe es nicht hinbekommen. Ich überlege auch die gesamte Zeit schon, ob ich den kompletten RasPi neu aufsetze - aus genau diesem Grunde.
-
@marc-berg said in MQTT Broker/Client sendet nur beim Start:
@mcm1957 sagte in MQTT Broker/Client sendet nur beim Start:
Issue erstellt:
Aber wie muss der jsonConfig Parameter dann heißen, wenn nicht "port"?
@marc-berg
Geht nicht um den Namen sondern um den TYP.
Der Parameter Port sollte vom Typ NUMBER sein, ggF mit Wertelimits. -
@kerschte_de sagte in MQTT Broker/Client sendet nur beim Start:
Ich überlege auch die gesamte Zeit schon, ob ich den kompletten RasPi neu aufsetze - aus genau diesem Grunde.
Kanonen/Spatzen.
Mit einem Löschen des Adapters solltest du eigentlich alles erwischen, was hier relevant ist. Bin mir aber auch nur zu 99% sicher.
-
@kerschte_de said in MQTT Broker/Client sendet nur beim Start:
@marc-berg sagte in MQTT Broker/Client sendet nur beim Start:
Irgendwie kann ich mir nicht so richtig vorstellen, dass sich die "Sendeverweigerung" nicht beseitigen lässt. Da muss irgendwo noch ein Konfigurations-Wurm drin sein. Ist aber egal. Mit dem zusätzlichen mqtt-client Adapter bis du in jedem Fall flexibler, was weitere Aufgaben angeht.
Genau das vermute ich ja auch die ganze Zeit. Denn sonst würden sich viel mehr im Forum melden, dass da was nicht stimmt. Ich habe es durch Herumspielen mit den Einstellungen versucht, mit Neuinstall, mit allem, was mir so einfiel. Aber ich habe es nicht hinbekommen. Ich überlege auch die gesamte Zeit schon, ob ich den kompletten RasPi neu aufsetze - aus genau diesem Grunde.
Hast du im (mqtt Adapter) den Paramater "Send states (ack=true) too:" / "Sende auch Zustände (ack=true)"angehakt?
Ohne den werden output States anderer Adapter die ja mit ACK=true befüllt werden nicht weitergeleitet.Sehe gerade dass dud as NICHT hast:
Aktiviere die Option mal, schätze denn sendet der mqtt auch brav...
-
@mcm1957 sagte in MQTT Broker/Client sendet nur beim Start:
Geht nicht um den Namen sondern um den TYP.
Ah okay. Danke für die Klarstellung.
-
@mcm1957 sagte in MQTT Broker/Client sendet nur beim Start:
Sehe gerade dass dud as NICHT hast:
Aktiviere die Option mal, schätze denn sendet der mqtt auch brav...
Das kann ich nicht aktivieren. Da arbeitet die Maschine tausende mqtt-messages vom NSPanel innerhalb von Sekunden ab und bringt meine Maschine fast zum Stillstand. Habe es gerade nochmal probiert. Innerhalb von 10 Sekunden 15.000 Werte gepublished ^^
In allen zu entdeckenden Screenshots von mqtt-Einstellungen zum Thema NSPanel ist dieses Häkchen nicht aktiviert. Ich vermute genau aus diesem Grund.
-
@marc-berg sagte in MQTT Broker/Client sendet nur beim Start:
@kerschte_de sagte in MQTT Broker/Client sendet nur beim Start:
dann gibt es bei der Installation den Hinweis, dass die Instanz 1 bereits vom mqtt-broker/client genutzt wird.
Das glaube ich nicht, bis du mir diese Meldung zeigst.
EDIT: nur um sicher zu gehen, wir sprechen von zwei verschiedenen Adaptern.
Hallo Marc,
darf ich fragen, aus welchem Grund Du beide Adapter betreibst? Was war dabei für Dich die Ursache? Auch das NSPanel von Sonoff? -
@kerschte_de sagte in MQTT Broker/Client sendet nur beim Start:
Das kann ich nicht aktivieren. Da arbeitet die Maschine tausende mqtt-messages vom NSPanel innerhalb von Sekunden ab und bringt meine Maschine fast zum Stillstand.
Ja, diese Einstellung ist nicht kompatibel. Aber die Frage weiter oben von @haus-automatisierung und später von @mcm1957 war schon die entscheidende. Der Wetter Adapter schreibt die Werte bestätigt. Und damit löst der mqtt Adapter ohne diese Einstellung nicht aus.
Und das war für mich auch die Ursache, parallel auf den mqtt-client-Adapter zu setzen (um die andere Frage vorwegzunehmen). Bei mir ist es der "fb-checkpresence"-Adapter, für den ich einzelne Datenpunkte publishen muss.
-
@marc-berg said in MQTT Broker/Client sendet nur beim Start:
@kerschte_de sagte in MQTT Broker/Client sendet nur beim Start:
Das kann ich nicht aktivieren. Da arbeitet die Maschine tausende mqtt-messages vom NSPanel innerhalb von Sekunden ab und bringt meine Maschine fast zum Stillstand.
Warum subscribed der mqtt Adapter states des NSPanels? Und warum aktualisisert des NSPanel 1000ende States pro Sekunde?
Sollte man ev. auf Adapterebene (mqtt Adapter) mal checken was da abgeht.
Der Wetter Adapter schreibt die Werte bestätigt. Und damit löst der mqtt Adapter ohne diese Einstellung nicht aus.
Das ist das richtige Verhalten der App.
-
@mcm1957 sagte in MQTT Broker/Client sendet nur beim Start:
Warum subscribed der mqtt Adapter states des NSPanels?
Weil das für die Funktion des Skriptes notwendig ist?
Und warum aktualisisert des NSPanel 1000ende States pro Sekunde?
Ohne es jetzt im Detail untersucht zu haben, würde ich vermuten, dass durch das Aktivieren dieser Option ("Sende auch Zustände") eine Schleife entsteht.