MQTT und Node-RED - doppelte Messages

Ich bin mir nicht sicher ob es an homegear liegt oder an Node-RED. Meine Konstellation… Ich habe HM Taster mit einem Schaltausgang. Das Eingangssignal wird gezählt und geht dann auf einen Schalter, welcher den Ausgang ansteuert, wobei die “Durchgabe des Eingangssignals” unterbunden ist. Das zählen hat recht lange funktioniert, nun bekomme ich immer zwei Messages, wenn ich den Schalter über die UI betätige. D.h. der Eingangsnode sendet zwei Messages obwohl er vom Schalter nur eine Message zum Umschalten bekommt. Wenn ich den Taster manuell vor Ort betätige wird nur eine Message abgesendet. Liegt es an Homegear oder muss ich mich an die Jungs von Node-RED wenden?

Hmm…

ich hatte so etwas ähnliches mal. Hast du den Schalter vielleicht mal irgendwo hin kopiert und dann geändert? Teilweise kommen daher Dopplungen. Hatte sowas mit function-nodes die in den globalen Context geschrieben haben.

1 Like

Leider nicht. Habe den Schalter jetzt mal gelöscht und neu angelegt + “pass through output” deaktiviert. Gleiches Verhalten… Die “Kette” ist ganz einfach: Eingang (Status vom Ausgang) => Schalter => Ausgang . Vor dem Schalter “greife” ich das MSG-Signal ab und zähle dieses um zu wissen ob wieviele Schalter an sind. Hier sieht man sogar auf dem Bildschirm, dass zwei Impulse kommen…

Ich bin mittlerweile ein Fan von Node-RED :slight_smile:

Hast Du noch eine Idee?

Aus dem Stehgreif nicht. Mach doch mal ein Screenshot von dem Flow und gib mir mal den JSON Export von diesem Teilstück.

Wenn du kannst, mach mir mal in ner VM ne neue node-red Installation und probier das da mal aus, um auszuschließen, dass es an node-red liegt…

Du hast folgende Config?

  • homegear + mqtt
  • homematic am homegear
  • taster ist homematic
  • aktor ist homematic
  • geschaltet wird über mqtt

Konfiguration:

  • homegear + mqtt
  • CUL
  • homematic-Komponenten an homegear
  • Taster / Aktor-Kombination (HM-LC-Sw1PBU-FM)
  • geschaltet über ui => zwei MSG. Per Tasterelement (vor Ort) wird richtig gezählt
  • keine Funktionen in homegear oder as Direktverbindung projektiert => Logik nur in Node-RED

…ist auch schon mal richtig gelaufen :wink:

Die Übersicht habe ich angehängt. Change-Element musste ich nehmen um binäre Signale zu erhalten.

Flow-Export.txt (12.2 KB)

Hmm…

leider habe ich keine Idee mehr. Bevor man sich an die wirklich freundlichen Jungs von node-red wendet, sollte man aber einen Testcase bauen.

Mein Problem konnte ich leider nicht auf einem “jungfräulichen” RPi mit node-red reproduzieren, weswegen ich dann von einer Meldung abgesehen habe.

Vielleicht kannst du das aber mal (mit einer VM?) versuchen und testen?

Hallo @Sydney,

wieviele MQTT-Nachrichten versendet werden, siehst du im Homegear-Log (mindestens Loglevel 4). Es wird dort jede einzelne Nachricht aufgeführt.

Viele Grüße

Sathya

Ist zwar schon einige Tage her, aber hier mein aktueller Status um das Verhalten einzugrenzen: Ich habe einen Eingang (Licht-Status) der auf Debug geht und einen Schalter über den das Licht angesteuert wird. Wenn ich den Schalter auf der UI betätige bekomme ich vom Eingang zwei Messages. Wird manuell der Schalter vor Ort betätigt, so wird nur eine Message über den Eingang und Debug angezeigt. Wenn ich den Schalter (UI-Element) mit dem Debug verbinde, so wird ebenfalls nur eine Message angezeigt. Keine Ahnung weshalb das so ist…

Schups nach oben :wink:

Hallo @Sydney,

die Frage ist, woher die zwei Nachrichten kommen. Was zeigt das Homegear-Log zu den zwei Nachrichten an? Gibt es dort zu dem Zeitpunkt zwei MQTT-Nachrichten? Poste mal das Log zum Zeitpunkt des Klicks auf den UI-Schalter. Das hilft uns vielleicht weiter.

Viele Grüße

Sathya