NEWS
Kein Longpress über MQTT
-
Hallo zusammen, ich weiß nicht mehr weiter.
Ich bekomme von den meisten Shelly´s kein Longpress Signal und bei einem geht es nur sporadisch.
System:
Raspberry Pi4 mit ioBroker und Mosquitto
Shelly 1, 2.5 und Dimmer sind im Einsatz
FW 1.6.0Shelly´s sind auf MQTT gestellt und Buttontype: Detached
Geschaltet werden die Shelly´s über Taster.
Ich bekomme soweit auch alles (ausser den Longpress) ordentlich im ioBroker angezeigt und die Skipte laufen bisher stabil. Wollte nun gerne noch den Longpress einbinden. Leider bekomme ich die Signale weder über den Shelly Adapter, noch über die mqtt Instanz. Wenn ich über mqtt.fx ein Longpress Signal schicke wird es mir in den Objekten angezeigt, aber meistens sehe ich kein Signalwechsel wenn ich den Taster betätige.
Ich weiß nicht was ich noch prüfen soll/kann. Hat jemand einen Tipp?
Beste Grüße
Christian
-
@Boch-Chme
Schreib mal dimi, also dem Chef von shelly eine email oder noch besser geh in den Facebook Chat mit denen.Ich nerve die aus dem Grund schon lange, in der 1.6.0 gibt es endlich longpress, aber nur anständig für den momentary Zustand, da kann man im webif des shelly longpress aktivieren. Dann wird short nur bei release übergeben.
Bei detached ist es weiterhin so, das short bei press und nicht bei release übergeben wird, somit gibt es immer short und long bei langem Druck.Würde mich auch freuen wenn das Thema endlich komplett laufen würde.
Sehe gerade, in deinem Screenshot steht aber noch verbunden über coap, darüber wird das nichts. Beende vielleicht mal den Adapter, lösche die datenpunkte und starte neu.
-
Danke für die Info. Werde gleich mal in Facebook das Problem schildern.
Mit dem coap ist mir gar nicht aufgefallen. Hab da nicht drauf geachtet, da ich den Adapter direkt auf mqtt umgestellt hatte
Kann ich denn über Momentary das ganze über mqtt nutzen und die Relais weiterhin getrennt ansteuern?
Alternativ bleibt nur die Möglichkeit das ganze über ein Skript mit ner Zeit abzufragen oder?
Hat das schonmal jemand über Blockly erstellt?
-
@Boch-Chme
Irgendwo habe ich mal ein script dazu gepostet. Aber besser wäre es natürlich wenn shelly das auch für detached anbietet.Wenn du momentary nutzt, dann wird bei kurzem Druck das dazugehörige relais beim loslassen der Taste geschaltet.
Wenn du lange hältst, dann bleibt das relais unangetastet und über mqtt ist nur longpress auf true.Bevor du also da schreibst, teste es bei dir aus und kontrolliere es.
Hier der link
-
Den Beitrag habe ich schon gesehen. Das Problem mit dem zurücksetzen vom Longpress habe ich bei mir auch.
Bei einiges Shelly wäre es mir egal ob das Relais geschaltet wird, da ich die nur hinter den Tastern verbaut habe ohne das etwas direkt geschaltet wird.
Aber es wäre schon schön, wenn man im detached Modus einfach über mqtt auf die Signale zugreifen kann...
Zusätlich müsste dann natürlich noch verhindert werden, dass beim Longpress der Input für Kurzpress nicht aktiv sein darf.
Bedeutet dann natürlich das ich immer eine Verzögerung drin habe, weil ja erst ausgewertet werde muss ob es einen Short- oder Longpress gab. -
@Boch-Chme sagte in Kein Longpress über MQTT:
Zusätlich müsste dann natürlich noch verhindert werden, dass beim Longpress der Input für Kurzpress nicht aktiv sein darf.
Bedeutet dann natürlich das ich immer eine Verzögerung drin habe, weil ja erst ausgewertet werde muss ob es einen Short- oder Longpress gab.Das geht ja ab shelly 1.6.0, die Einstellung sieht man im webif bei momentary(aber nicht in der Handy app), dann wird wirklich nur beim loslassen geschaltet.
Also wie gesagt, diese Option fehlt nur noch im detached mode, dann wäre alle ok.
Hast du deine shellys nun im mqtt Modus am Adapter hinbekommen? -
Vielleicht kommt es ja bald. Hab mal in Facbook angefragt.
Ne bekomme gerade garkeine Signale über den Shelly Adapter rein
Was jetzt aber auch nicht so schlimm ist, weil ich über den MQTT Adapter alles bekomme. Den Adapter hatte ich nach dem ich den mqtt adapter eingerichtet hatte installiert in der Hoffnung das der Longpush da geht -
Hab leider noch keine Antwort bekommen. Habe das jetzt mal veruscht ganz kurz und einfach selber zu machen. Hab mir dazu dein Scipt als Vorlage genommen
Funktioniert soweit auch sehr gut. Ausser das bei Shortpress meine Lampe mal angeht und mal nicht. Also es schaltet dann sehr unregelmäßig gut bzw. meisten er schlecht.
Wenn ich nur das Script laufen lassen, ist alles super. Dann läuft es ohne Probleme.
Hast du ne Idee woran es liegen kann? @e-s
-
@Boch-Chme
Also irgendwie kann bei dir nie short rauskommen, du fragst ja nur den Taster ab, entscheidend ist aber zu fragen wenn Taster wieder auf 0 geht zu schauen wie lange er auf 1 war. Dazu musst du auf false triggern und dann Die Zeit zu lastchange vergleichen.
Schau dir mal den umschalten Block an, dann brauchst du nichts selbst toggeln zu lassen.
Auch die textelemente finde ich nicht gut, nimm lieber die wahr/falsch Elemente -
@e-s
Also wenn ich unter dem Befehl das er Short auf wahr setzt ein Debug setzte, dann sehe ich das es aktiv ist. Allerdings wird es auch bei Long aktiv. Ich dachte mir das ich mit dem mache/sonst das passend setzten kann. Also nur wenn long nicht ausgeführt wird, dann soll er short auf wahr setzten. Eigentlich Interessiert mich die Zeit ja für short nicht wirklich. Könnte man das nicht dann so aufbauen, dass wenn timout größer 800ms ist =long und wenn drunter dann short?Welchen umschalten Block meinst du?
Habe in deinem Skipt noch nicht so ganz verstanden wofür die Variable "button" sein soll.
Kann ich die shelly´s denn mit wahr oder false überhaupt schalten? Dachte die reagieren nur auf on/off?
Muss ich morgen mal testen.
-
Also mir wahr/falsch bekomme ich meine Shelly´s nicht angesteuert.
Hab das Skript ans laufen bekommen.
Sieht nun so aus: -
@Boch-Chme
wird dann wahrscheinlich am mqtt Adapter liegen, mit dem shelly Adapter ist das Verhalten auf jeden Fall anders.
Aber egal, Hauptsache es läuft jetzt -
ah okay.
Danke dir für deine Unterstützung