[BETA][Modul] LinkTap (Lokal, NEU 2024)

Moin @ZipFam ,
kannst Du mir bitte einen Screenshot von der Instanz Konfiguration schicken.
Und gerne auch einen Debug über ca. 2 Minuten

Vielen Dank!

mache ich gerne … Danke für die Unterstützung.

dump.txt (74,0 KB)

Screenshot 2024-07-17 102701

Grüße

Hi,
entferne mal bitte die Bindestriche aus der ID :slight_smile:

Gruß
Dennis

… erledigt … leider noch keine Aktualisierung …

dump (1).txt (78,0 KB)

Soo neue BETA!

Sollte wieder Aktualisieren. Theoretisch auch wenn man alles ins Haupttopic durchs Gateway senden lässt, aber nicht explizit getestet.

Gruß
Dennis

… installiert … leider noch keine Werte, letzte Befehlsantwort wird alle 5 sec aktualisert …

dump (2).txt (65,9 KB)

kann es sein, dass die Client-ID auf der Webseite des Gateways falsch ist? Was hast Du hier eingetragen?

Grüße

Kannst Du einmal die Instanz komplett löschen und neu installieren…

Client ID muss nur ein einmaliger Name oder ID sein die von keinem anderen Gerät oder Client genutzt wird damit der Broker das Gerät genau identifizieren kann… IP Symcon nimmt z.B. eine GUID aber es kann wie gesagt auch etwas in Klarschrift sein.

So habe die Situation eingegrenzt.
Das Problem kommt daher das bei neu erstellen der Instanz das Modul ja die Gateway ID noch nicht kennt. Ich möchte aber ungern noch eine ID vom Benutzer abfragen. Sprich zuerst Antwortet das Gateway immer mit einem Fehler das die Gateway ID ungültig ist.
Aber nach paar Minuten sendet das Gateway ihren Status von sich, darin steht die Gateway ID und das Modul speichert diese (auch als öffentliche ID). Danach funktioniert der Intervall Status Abfrage (zumindest bei mir)
Ich benutze aber alle 15 Sekunden. 5 Sekunden sehe ich zu gering, eventuell hat das Gateway dann keine Zeit den regulären Status zu senden.
Ändere sonst mal den Intervall erstmal auf 15 Sekunden.

Gruß

Neue Beta,
habe es jetzt so geregelt.
Man kann den Intervall frei einstellen (wie gesagt andere werte bekommt man ja nur wenn das Gateway das entscheidet, auch wenn das Gateway erneut daten sendet).
Jedoch ignoriert das Modul die Ausführung des Intervalls bis der erste Reguläre Status Bericht vom Gateway kommt. Das kann man jedoch nicht kleiner als 60 Sekunden im Gateway einstellen.

Sprich,
man erstellt die Instanz, stellt alles ein. Bei mir ist es dann so, das im Schlimmsten Fall 60 Sekunden nichts passiert (bis auf im Debug, da ist ein Hinweis das noch keine Gateway ID vorhanden ist). Dann kommt der Standard Status vom Gateway, das Modul speichert alle Werte und ab dann beginnt in Intervallen der die Status Aufforderung.

Ich hoffe das Funktioniert auch bei euch so.

Gruß
Dennis

Danke, die Aktualisierung funktioniert nun auch wieder, wenn man bei den MQTT-Einstellungen unter Uplink „All devices’ status are grouped and published to one topic.“ eingestellt hat. Ich habe testhalber die Instanz auch noch einmal gelöscht und wieder neu angelegt - nach etwas Abwarten kommem die Aktualisierungen.

Die manuelle Update-Anforderung über MQTT (gemäß dem Dokument „LinkTap Gateway MQTT Client Interaction Messages“ (V1.7) geht dies über cmd 3) klappt erfahrungsgemäß gut, wenn zwischen den Anforderungen mindestens 15 Sekunden liegen. In meinem „produktiven“ LinkTap-System nutze ich die manuelle Update-Anforderung allerdings nur, wenn ein Bewässerungsvorgang aktiv ist (is_watering true), ansonsten reichen mir die regelmäßigen, automatisch erfolgenden Updates, die über das Keep alive Intervall im Gateway eingestellt werden:

Im „Latest MQTT Integration Document“ (V2) heißt es dazu „Keep alive interval: Keep-alive interval (unit: second) between the MQTT client and the server. If it times out and also there is no communication, it is considered as disconnected communication.“ Das Keep alive Intervall in den Gateway-Einstellungen bezeichnet also die maximale Zeitspanne, innerhalb derer das Gateway eine Nachricht (in Form eines Updates) sendet, um die MQTT-Verbindung aufrecht zu erhalten. Ich habe dies auf 120 gelassen.

Ebenfalls entsprechend dem vorgenannten Dokument habe ich in den Gateway-Einstellungen unter der Client ID unter den MQTT client settings die ID (ohne -xxx am Ende) aus den Device infomation eingetragen.

VG!

Hi @CarnivoreD ,
vielen Dank für deine Erfahrungswerte, deine Tests und deine Ausführungen.
Freut mich das es bei dir Läuft.
Jetzt muss ich nur noch @ZipFam an Board bekommen und dann geht´s an Features.

  • Feature 1 → Protokollierung der letzten Bewässerungen.

Sonstige Feature wünsche?

VG
Dennis

Das bleibt ein wichtiger Baustein, da MQTT-Befehle vom Gateway ab und an schlicht nicht ausgeführt werden.

Weitere Features sind sicherlich vorstellbar (zB Integrierung eines Wochenplans), aber nicht prioritär, bis es zuverlässig läuft.

Vielen Dank für Deine Arbeit…!

aktuell stehe ich auf dem Schlauch

  • neue BETA installiert
  • Instanz neu angelegt
  • Gateway neu gestartet

es funktioniert immer noch nicht … irgendwo ist bestimmt ein blöder Fehler versteckt …aktuell habe ihch das Gefühl, dass das Gateway nichts liefert …

Wie könnte ich es überprüfen … Hast Du eine Idee?

dump.txt (27,6 KB)

Grüße

Wenn ich in Deinen Post mit den Gateway-Einstellungen schaue fällt auf, dass Du gar kein Uplink-Topic eingetragen hast (Uplink, das oberste Feld). Hol das mal nach, dann sollte es funktionieren…

Das war es … Super Klasse ! Vielen Dank - ich sagt ja, irgendetwas „dummes“ …

Bin jetzt auch an Board … ich werde heute Abend meinen 4er und 3x 1er ins System einbinden …

Grüße

Boah, das stimmt… Hab ich auch nicht gesehen! :scream:
Ich werde auf jeden Fall wenn ich die Doku angehen die Topic Punkte FETT markieren.
Man muss aber auch zugeben das die UI vom LinkTap Gateway, ich sag mal nur Zweckmäßig ist :smiley:
Sehr schön. Dann kann der Zug ja dann weiter Fahren.

@ZipFam ich warte auf jeden Fall deine Rückmeldung ab, wie es mit dem 4er und den 1er läuft.

@CarnivoreD Danke für die Unterstützung! Stimmt das mit den Befehlsunterlassung des Gateways schriebst Du auch. Ja ich könnte mir vorstellen immer wenn ein Bewässerungsbefehl abgesetzt wird das ein zusätzlicher Timer gestartet wird der, ich denke 10 oder 15 Sekunden wartet, wenn keine Aktion vom Gateway kommt trotz Erfolgreich Meldung des Gateways, dann wir der Befehl nochmal gesendet. Eventuell einstellbar wie oft es versucht werden soll?

Kommende Features:

  • Bewässerungshistorie
  • Befehlswiederholung wenn keine Aktion folgt
  • IP Symcon Wochenplan Integration

Bin auf jeden Fall weiter offen für weitere wünsche und Ideen.

Gruß
Dennis

Ich würde ihn auf 30 Sekunden setzen, da es hin und wieder mal länger dauern kann als 15 Sekunden.

Bei 30 Sekunden abwarten lasse ich den Befehl 2 mal wiederholen - wenn bis dahin is_watering nicht cmd-gemäß geändert wurde (true/false), stoppt die Ausführung insgesamt und es gibt eine Fehlermeldung aufs Handy… Aber eine Einstellungsmöglichkeit, wie viele Versuche es geben soll, ist sicherlich nicht verkehrt.

Es wäre prima, wenn man in den Instanzeneinstellungen wählen könnte, welche Variablen angezeigt werden. Schön wäre es auch, wenn der letzte cmd und der letzte cmd-acknowledge angezeigt würde.

VG!