KNX Data Secure Unterstützung
für KNX Logger und KNX Busmonitor

KNX Diagnose Monitor, Import des ETS Projektes deutlich beschleunigt, Suche in der Navigation
Mehr Informationen dazu hier im Forum

Insider Version 6 zur 4.5 jetzt für alle Mitglieder des Insider Clubs installierbar
Alle Infos zum Update im Timberwolf Wiki

[Beantwortet] [V4.5 IP6] MQTT ACK=False mitsenden (Intex Spa verlangt das)

Wissen, Planung & Diskussion zur MQTT Unterstützung im Timberwolf Server.
Stellt uns hier Eure MQTT Projekte und Ideen vor.
Forumsregeln
  • Denke bitte an aussagekräftige Titel und gebe dort auch die [Firmware] an. Wenn ETS oder CometVisu beteiligt sind, dann auch deren Version
  • Bitte mache vollständige Angaben zu Deinem Server, dessen ID und dem Online-Status in Deiner Signatur. Hilfreich ist oft auch die Beschreibung der angeschlossener Hardware sowie die verwendeten Protokolle
  • Beschreibe Dein Projekt und Dein Problem bitte vollständig. Achte bitte darauf, dass auf Screenshots die Statusleiste sichtbar ist
  • Bitte sei stets freundlich und wohlwollend, bleibe beim Thema und unterschreibe mit deinem Vornamen. Bitte lese alle Regeln, die Du hier findest: https://wiki.timberwolf.io/Forenregeln
Antworten

Ersteller
Tomtheripper
Reactions:
Beiträge: 143
Registriert: Mo Okt 01, 2018 11:34 am
Hat sich bedankt: 64 Mal
Danksagung erhalten: 38 Mal

[V4.5 IP6] MQTT ACK=False mitsenden (Intex Spa verlangt das)

#1

Beitrag von Tomtheripper »

Hi Leute,

Ich habe einen Intex-Spa-Whirlpool über den ioBroker-Adapter und MQTT am TW am Laufen. Temperaturen usw. sehe ich.
Zum Schalten allerdings (z.B. die Heizung anschalten) reicht dem Intex nicht nur der Boolean-Befehl, sondern verlangt immer ein ack=false, um den Befehl als Schaltbefehl zu erkennen. Wird das nicht mitgesendet, wird auch nichts An- u. Ausgeschaltet.

Wie mach ich denn das jetzt am dümmsten?

Schöne Grüße
Thomas
Zuletzt geändert von Parsley am Mo Jun 09, 2025 10:24 pm, insgesamt 1-mal geändert.
TW2400 #149 / Wartungs-VPN an / Neustart jederzeit / TP-UART Light geflasht 8 Tunnel / PBM01-USB 542

StefanW
Elaborated Networks
Elaborated Networks
Reactions:
Beiträge: 10699
Registriert: So Aug 12, 2018 9:27 am
Wohnort: Frauenneuharting
Hat sich bedankt: 5302 Mal
Danksagung erhalten: 8684 Mal
Kontaktdaten:

#2

Beitrag von StefanW »

Hi Thomas,

bitte mehr Informationen. MQTT ist in reines Transportprotokoll, es definiert KEINE Datenstrukturen und Datenkodierungen. Gar nicht.

Was also ein MQTT Gerät erwartet ist Glaskugel. Wobei ich bislang noch nie ein MQTT Geräte gesehen habe, das Binär kommuniziert, es mach daher wundert, dass es sowas wie einen "Boolean-Befehl" geben soll, weil das wäre eine binäre 0 oder 1 als ein Bit.

Daher bitte die Protokollbeschreibung veröffentlichen, man müsste schon wissen, wie die Kodierung aussehen soll. Wobei dies auch die von io:Broker sein kann.

lg

Stefan
Zuletzt geändert von StefanW am Di Jun 10, 2025 8:11 pm, insgesamt 1-mal geändert.
Stefan Werner
Product Owner für Timberwolf Server, 1-Wire und BlitzART
Bitte WIKI lesen. Allg. Support nur im Forum. Bitte keine PN
Zu Preisen, Lizenzen, Garantie, HW-Defekt an service at elabnet dot de

Link zu Impressum und Datenschutzerklärung oben.

Ersteller
Tomtheripper
Reactions:
Beiträge: 143
Registriert: Mo Okt 01, 2018 11:34 am
Hat sich bedankt: 64 Mal
Danksagung erhalten: 38 Mal

#3

Beitrag von Tomtheripper »

Hi Stefan,
ja, das war zu hasplig, sorry:
NodeRed_ACK_False.png
Eine TW-Logik errechnet den PV-Überschuss und gibt den Einschalt-Befehl (True). Momentan gehe ich den Umweg über NodeRed, um dem True-Befehl (nicht String) noch einen "ack=false" anzuhängen:

return {
topic: "intex/0/localtcp/control/Heat",
payload: { val: true, ack: false }
};

damit der Schaltbefehl von Intex (offline, Intex-Adapter in ioBroker) als solcher akzeptiert wird und nicht nur als (Status)meldung behandelt wird.
Ich wollte wissen, ob das MQTT-Transportprotokoll im TW (ohne Umweg über NodeRed) modifiziert werden kann.

Grüße
Thomas
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
TW2400 #149 / Wartungs-VPN an / Neustart jederzeit / TP-UART Light geflasht 8 Tunnel / PBM01-USB 542

MrWilson
Reactions:
Beiträge: 282
Registriert: Do Dez 27, 2018 2:19 pm
Wohnort: Borgsdorf
Hat sich bedankt: 46 Mal
Danksagung erhalten: 168 Mal

#4

Beitrag von MrWilson »

Hey Thomas,

du legst unter dem Topic zwei publizierende Transaktionen an. Einmal für „ack“ ohne Auslöser und einmal „val“ mit Auslöser für alle Objekte dieser Transaktion. Das „val“ verbindest du mit deinem Einschaltbefehl und das „ack“ musst du hilfsweise über eine Logik oder der Visu mit dem false beschicken, damit der Wert vorgehalten wird.

Gruss Willy
TWS 2500 ID: 341 + PBM ID: 463, VPN offen, Reboot nur nach Absprache

gbglace
Reactions:
Beiträge: 4088
Registriert: So Aug 12, 2018 10:20 am
Hat sich bedankt: 1415 Mal
Danksagung erhalten: 1899 Mal

#5

Beitrag von gbglace »

So im Sinne der JSON Struktur als zwei Objekte im JSON.

Oder mit dem Holzhammer dein AN/AUS geht in eine TWS String-Logik, die Dir genau den Inhalt der geschweiften Klammern zusammenbaut.
Variabel ist dabei das true/false hinter dem Textbestandteil val:

(das dürfte auch nah an dem sein was die beiden function nodes im NR machen. und der switch vor denen wird auch erst noch aus dem 0/1 des KNX nodes die Wörter true false bauen.)

Die obere Variante ist natürlich im Sinne des MQTT Datenmodells sauberer, Du musst dann nur sehen wie Du den Fixwert false für das Objekt "ack" einmalig und regelmäßig nach reboot des Servers da rein bekommst.
Grüße Göran
#1 Timberwolf 2600 Velvet Red TWS #225 / VPN aktiv / Reboot OK
#2 Timberwolf 2600 Organic Silver TWS #438 / VPN aktiv / Reboot OK
#PV 43,2 kWh Akku; 3x VE MP2 5000; 6,7 kWp > 18 Panele an 4x HM1500 + 1 HM800 WR; Open-DTU
Antworten

Zurück zu „MQTT“