NEWS
Shelly BLU RC Button sendet mehrfach Signale
-
https://shelly-api-docs.shelly.cloud/docs-ble/Devices/BLU/button/#button-press-events
128 ist button hold event.
Hab noch nicht gefunden wann den der button sendet. ev einfach ignorieren?
-
Das Verhalten liegt offensichtlich in der Shelly Firmware
https://community.shelly.cloud/topic/10986-button-events-are-not-received-consistently/
Der Adaptet meldet (hoffentlich) alle Events die der Button sendet. Wenn er nun beim Tastendruck 128 u 1 sendet dann muss dass das Script geeignet verarbeiten.
Von einem manipulieten des RO States des Adapters wütd ich abraten
-
128 ist eine codes die lt. shelly api v button gesendet werden.
Was ich hier noch nicht grsehn habbist der DEBUG LOG der angefordert wurde um zu sehen was denn nun vom taster kommt.
@mcm1957 sagte in Shelly BLU RC Button sendet mehrfach Signale:
128 ist eine codes die lt. shelly api v button gesendet werden.
Was ich hier noch nicht grsehn habbist der DEBUG LOG der angefordert wurde um zu sehen was denn nun vom taster kommt.
Wie erzeuge ich den Debug Log? Ich hatte da sehr viel gelesen dazu, aber bin mit meinen begrenzten Fähigkeiten dabei leider nicht erfolgreich gewesen.
-
du sollst echt nicht auf den pid triggern, sonden auf die Datenpunkte der Buttoms selber die gedrückt werden. Du musst natürlich auch das Blokly anpassen und ich würde auch nicht umschalten dafür nehmen. Und mach die Updates vom Shelly Adapter und dem Script es sollte nur auf einen Gateway/Shelly drin sein.
-
@mcm1957 sagte in Shelly BLU RC Button sendet mehrfach Signale:
128 ist eine codes die lt. shelly api v button gesendet werden.
Was ich hier noch nicht grsehn habbist der DEBUG LOG der angefordert wurde um zu sehen was denn nun vom taster kommt.
Wie erzeuge ich den Debug Log? Ich hatte da sehr viel gelesen dazu, aber bin mit meinen begrenzten Fähigkeiten dabei leider nicht erfolgreich gewesen.
@didag15 sagte in Shelly BLU RC Button sendet mehrfach Signale:
Wie erzeuge ich den Debug Log? Ich hatte da sehr viel gelesen dazu, aber bin mit meinen begrenzten Fähigkeiten dabei leider nicht erfolgreich gewesen.
Expert Mode einschalten
In den instanzeinstellungen loglevel auf DEBUG stellen.Sorry f d Kürze. Bin nurxam Handy unterwegs
-
du sollst echt nicht auf den pid triggern, sonden auf die Datenpunkte der Buttoms selber die gedrückt werden. Du musst natürlich auch das Blokly anpassen und ich würde auch nicht umschalten dafür nehmen. Und mach die Updates vom Shelly Adapter und dem Script es sollte nur auf einen Gateway/Shelly drin sein.
@Fabio sagte in Shelly BLU RC Button sendet mehrfach Signale:
du sollst echt nicht auf den pid triggern, sonden auf die Datenpunkte der Buttoms selber die gedrückt werden. Du musst natürlich auch das Blokly anpassen und ich würde auch nicht umschalten dafür nehmen. Und mach die Updates vom Shelly Adapter und dem Script es sollte nur auf einen Gateway/Shelly drin sein.
habe das eigentlich alles so umgesetzt.
- triggere jetzt nicht auf pid sondern datenpunkt --> Problem weiter existent
- script ohne "umschalten" sondern mit "steuere" hatte ich auch schon --> Problem weiter existent
- updates von shelly adapter erfolgt, alles auf neuestem Stand --> Problem weiter existent
Frage zu deinem letzten Punkt: "...es sollte nur auf einem Gatway/Shelly drin sein."
Was meinst du damit?Vielen Dank vorab
-
@didag15 sagte in Shelly BLU RC Button sendet mehrfach Signale:
Wie erzeuge ich den Debug Log? Ich hatte da sehr viel gelesen dazu, aber bin mit meinen begrenzten Fähigkeiten dabei leider nicht erfolgreich gewesen.
Expert Mode einschalten
In den instanzeinstellungen loglevel auf DEBUG stellen.Sorry f d Kürze. Bin nurxam Handy unterwegs
@mcm1957 sagte in Shelly BLU RC Button sendet mehrfach Signale:
@didag15 sagte in Shelly BLU RC Button sendet mehrfach Signale:
Wie erzeuge ich den Debug Log? Ich hatte da sehr viel gelesen dazu, aber bin mit meinen begrenzten Fähigkeiten dabei leider nicht erfolgreich gewesen.
Expert Mode einschalten
In den instanzeinstellungen loglevel auf DEBUG stellen.Sorry f d Kürze. Bin nurxam Handy unterwegs
Hat geklappt mit dem Log. Hier die Datei. Habe den Button 4 1x gedrückt und die Lampe ging an und sofort wieder aus.
Ich möchte dir aber auf keinen Fall deine Zeit stehlen, wenn das viel Aufwand ist, dann schalte ich zukünftig wieder von Hand statt mit Shelly :-D
Alternativ sponsore ich dir gerne einen Kasten Bier für deine Hilfe -
ich oder @haus-automatisierung werdens uns sicher ansehen. hab seit ein paar Tagen auch nen rc4 zum Testen.
Kann aber ein wenig dauern. Meinr
ToDo wird gefühlt immer länger. Und meine Steuerklärung muss bis ende des Jahres auch noch fertig werden. Die für 2020 ... 😀 -
@Fabio sagte in Shelly BLU RC Button sendet mehrfach Signale:
du sollst echt nicht auf den pid triggern, sonden auf die Datenpunkte der Buttoms selber die gedrückt werden. Du musst natürlich auch das Blokly anpassen und ich würde auch nicht umschalten dafür nehmen. Und mach die Updates vom Shelly Adapter und dem Script es sollte nur auf einen Gateway/Shelly drin sein.
habe das eigentlich alles so umgesetzt.
- triggere jetzt nicht auf pid sondern datenpunkt --> Problem weiter existent
- script ohne "umschalten" sondern mit "steuere" hatte ich auch schon --> Problem weiter existent
- updates von shelly adapter erfolgt, alles auf neuestem Stand --> Problem weiter existent
Frage zu deinem letzten Punkt: "...es sollte nur auf einem Gatway/Shelly drin sein."
Was meinst du damit?Vielen Dank vorab
@didag15 die Frage lautet wie oft hast du das Script vom Shelly Adapter in Shellys eingfügt.
Beispiel von mir: Ich habe ein Shelly Blue Gateway, darin ist das Script vom @haus-automatisierung drin und darüber laufen meine Bluetooth Verbindungen. Ich habe alle und hatte alle Buttons von Shelly darüber in ioBroker und habe darüber meine Lichter geschaltet ohne Probleme.
Wenn zum Beispiel der Button über mehrere Shelly Verbindungen hat ist es auch logisch das wenn du ein Mal klickst auch so oft geschaltet wird wie Skripte es von unterschiedlichen Shellys melden. -
@didag15 die Frage lautet wie oft hast du das Script vom Shelly Adapter in Shellys eingfügt.
Beispiel von mir: Ich habe ein Shelly Blue Gateway, darin ist das Script vom @haus-automatisierung drin und darüber laufen meine Bluetooth Verbindungen. Ich habe alle und hatte alle Buttons von Shelly darüber in ioBroker und habe darüber meine Lichter geschaltet ohne Probleme.
Wenn zum Beispiel der Button über mehrere Shelly Verbindungen hat ist es auch logisch das wenn du ein Mal klickst auch so oft geschaltet wird wie Skripte es von unterschiedlichen Shellys melden.@Fabio sagte in Shelly BLU RC Button sendet mehrfach Signale:
@didag15 die Frage lautet wie oft hast du das Script vom Shelly Adapter in Shellys eingfügt.
Beispiel von mir: Ich habe ein Shelly Blue Gateway, darin ist das Script vom @haus-automatisierung drin und darüber laufen meine Bluetooth Verbindungen. Ich habe alle und hatte alle Buttons von Shelly darüber in ioBroker und habe darüber meine Lichter geschaltet ohne Probleme.
Wenn zum Beispiel der Button über mehrere Shelly Verbindungen hat ist es auch logisch das wenn du ein Mal klickst auch so oft geschaltet wird wie Skripte es von unterschiedlichen Shellys melden.Na gut, dann ist das wohl genau das Problem. Alle Shellys (ca.8 Stück, Rolläden usw) haben das Script am Laufen. Ich dachte dadurch, dass ich in der Shelly App einstelle, mit welchem Shelly Gateway der Schalter kommunizieren soll, redet er auch nur mit diesem einen und nicht mit allen die in Reichweite sind.
Ungünstig wäre auch, dass man ja nie sicher sagen kann, ob sich nicht 2 Gateways in einem Haus überlappen an der Stelle wo ein Schalter ist.
Leuchtet mir nicht ganz ein wie das mit mehreren Gateways zB auf unterschiedlichen Etagen im Haus gehen soll wenn nur ein einziger Gateway das Script aktiv haben darf, aber dessen Reichweite nicht fürs ganze Haus reicht.
Aber immerhin kenne ich jetzt Mal die Ursache fûr mein Problem.
Danke! -
@Fabio sagte in Shelly BLU RC Button sendet mehrfach Signale:
@didag15 die Frage lautet wie oft hast du das Script vom Shelly Adapter in Shellys eingfügt.
Beispiel von mir: Ich habe ein Shelly Blue Gateway, darin ist das Script vom @haus-automatisierung drin und darüber laufen meine Bluetooth Verbindungen. Ich habe alle und hatte alle Buttons von Shelly darüber in ioBroker und habe darüber meine Lichter geschaltet ohne Probleme.
Wenn zum Beispiel der Button über mehrere Shelly Verbindungen hat ist es auch logisch das wenn du ein Mal klickst auch so oft geschaltet wird wie Skripte es von unterschiedlichen Shellys melden.Na gut, dann ist das wohl genau das Problem. Alle Shellys (ca.8 Stück, Rolläden usw) haben das Script am Laufen. Ich dachte dadurch, dass ich in der Shelly App einstelle, mit welchem Shelly Gateway der Schalter kommunizieren soll, redet er auch nur mit diesem einen und nicht mit allen die in Reichweite sind.
Ungünstig wäre auch, dass man ja nie sicher sagen kann, ob sich nicht 2 Gateways in einem Haus überlappen an der Stelle wo ein Schalter ist.
Leuchtet mir nicht ganz ein wie das mit mehreren Gateways zB auf unterschiedlichen Etagen im Haus gehen soll wenn nur ein einziger Gateway das Script aktiv haben darf, aber dessen Reichweite nicht fürs ganze Haus reicht.
Aber immerhin kenne ich jetzt Mal die Ursache fûr mein Problem.
Danke!@didag15 sagte in Shelly BLU RC Button sendet mehrfach Signale:
nur ein einziger Gateway das Script aktiv haben darf
... das habe ich nicht gesagt.
Ich finde es sowieso sehr komisch da Bluetooth eigentlich immer nur eine Verbindung zulässt. Also ich kann dir sagen, so wie ich es gemacht habe, hatte ich nicht ein einziges mal Probleme damit. Aber du verstehst das, so wie es jetzt bei dir ist zu Problemen führen kann.
Grüße
Fabio -
Mit dem Hinweis von dir dass offenbar alle Gateways in Reichweite die Signale senden macht es für mich Sinn, dass da je nach Laufzeit wie sie am ioBroker eintrudeln kurz hintereinander Schaltvorgänge auslösen können.
Daher habe ich jetzt mal eine Verzögerung beim Schalten des Shelly von 500ms eingestellt. Und siehe da, es läuft wie geschmiert. Scheinbar reicht die Zeit (vllt. geht auch noch kürzer, ich taste mich mal nach unten), damit die über die Gateways leicht zeitverzögert gesendeten Schaltersignale bei ioBroker eintreffen und nicht weiter beachtet werden. Das erste Signal zählt, alle anderen laufen in den 500ms ins Leere.Aus meiner Sicht ein Fehler in der Shelly Umgebung, denn ich gebe beim Einrichten der Schalter explizit an, mit welchen Gateways geredet werden darf. Wenn der Schalter dann trotzdem über alles sendet, was gerade in der Umgebung ist, dann muss Shelly hier nachbessern. Ich sehe das auch im iobroker unter den objekten bei "receivedby". Dort tauchen bei einem einzigen Tastendruck immer wieder mehrfach verschiedene Shellys hintereinander auf.
Ich mache mal ein Ticket bei Shelly auf. Vllt können sie ja was dazu sagen.Danke dir nochmals für deine Hilfe!
-
Mit dem Hinweis von dir dass offenbar alle Gateways in Reichweite die Signale senden macht es für mich Sinn, dass da je nach Laufzeit wie sie am ioBroker eintrudeln kurz hintereinander Schaltvorgänge auslösen können.
Daher habe ich jetzt mal eine Verzögerung beim Schalten des Shelly von 500ms eingestellt. Und siehe da, es läuft wie geschmiert. Scheinbar reicht die Zeit (vllt. geht auch noch kürzer, ich taste mich mal nach unten), damit die über die Gateways leicht zeitverzögert gesendeten Schaltersignale bei ioBroker eintreffen und nicht weiter beachtet werden. Das erste Signal zählt, alle anderen laufen in den 500ms ins Leere.Aus meiner Sicht ein Fehler in der Shelly Umgebung, denn ich gebe beim Einrichten der Schalter explizit an, mit welchen Gateways geredet werden darf. Wenn der Schalter dann trotzdem über alles sendet, was gerade in der Umgebung ist, dann muss Shelly hier nachbessern. Ich sehe das auch im iobroker unter den objekten bei "receivedby". Dort tauchen bei einem einzigen Tastendruck immer wieder mehrfach verschiedene Shellys hintereinander auf.
Ich mache mal ein Ticket bei Shelly auf. Vllt können sie ja was dazu sagen.Danke dir nochmals für deine Hilfe!
@didag15 sagte in Shelly BLU RC Button sendet mehrfach Signale:
Ich sehe das auch im iobroker unter den objekten bei "receivedby". Dort tauchen bei einem einzigen Tastendruck immer wieder mehrfach verschiedene Shellys hintereinander auf.
Das ist ja auch komplett richtig. Die haben das Signal ja alle empfangen. Zeigt aber, dass alles die gleiche PID ist. Oder taucht das gleiche Gerät öfter in der Liste auf?!
-
du sollst echt nicht auf den pid triggern, sonden auf die Datenpunkte der Buttoms selber die gedrückt werden. Du musst natürlich auch das Blokly anpassen und ich würde auch nicht umschalten dafür nehmen. Und mach die Updates vom Shelly Adapter und dem Script es sollte nur auf einen Gateway/Shelly drin sein.
@Fabio sagte in Shelly BLU RC Button sendet mehrfach Signale:
Mach mal folgendes setze den Datenpunkt auf 0 nach jedem schalten
Bitte keine "fremdem" Datenpunkte selbst schreiben (nur wenn diese auch schreibbar/writeable sind - und dann nur unbestätigt).
In diesem Fall ist es so, dass man nicht auf "wurde geändert" triggern sollte, sondern auf "wurde aktualisiert", da der gleiche Wert (z.B. einfacher Tastendruck) auch 2x hintereinander kommen kann.
@Fabio sagte in Shelly BLU RC Button sendet mehrfach Signale:
Und mach die Updates vom Shelly Adapter und dem Script es sollte nur auf einen Gateway/Shelly drin sein.
Das Script darf natürlich auf beliebig vielen Shellies laufen. Das ist ja Sinn der Sache.
-
@didag15 die Frage lautet wie oft hast du das Script vom Shelly Adapter in Shellys eingfügt.
Beispiel von mir: Ich habe ein Shelly Blue Gateway, darin ist das Script vom @haus-automatisierung drin und darüber laufen meine Bluetooth Verbindungen. Ich habe alle und hatte alle Buttons von Shelly darüber in ioBroker und habe darüber meine Lichter geschaltet ohne Probleme.
Wenn zum Beispiel der Button über mehrere Shelly Verbindungen hat ist es auch logisch das wenn du ein Mal klickst auch so oft geschaltet wird wie Skripte es von unterschiedlichen Shellys melden.@Fabio sagte in Shelly BLU RC Button sendet mehrfach Signale:
Wenn zum Beispiel der Button über mehrere Shelly Verbindungen hat ist es auch logisch das wenn du ein Mal klickst auch so oft geschaltet wird wie Skripte es von unterschiedlichen Shellys melden.
Genau das wird ja abgefangen, da die alle die gleich PID haben. Die Daten werden nur neu in die Datenpunkte geschrieben, wenn die PID unterschiedlich der vorigen ist. Ansonsten wird die
receivedByListe mit mehreren Geräten angereichert, welche das Signal alle bekommen haben. -
@Fabio sagte in Shelly BLU RC Button sendet mehrfach Signale:
Wenn zum Beispiel der Button über mehrere Shelly Verbindungen hat ist es auch logisch das wenn du ein Mal klickst auch so oft geschaltet wird wie Skripte es von unterschiedlichen Shellys melden.
Genau das wird ja abgefangen, da die alle die gleich PID haben. Die Daten werden nur neu in die Datenpunkte geschrieben, wenn die PID unterschiedlich der vorigen ist. Ansonsten wird die
receivedByListe mit mehreren Geräten angereichert, welche das Signal alle bekommen haben.@haus-automatisierung sagte in Shelly BLU RC Button sendet mehrfach Signale:
Genau das wird ja abgefangen, da die alle die gleich PID haben. Die Daten werden nur neu in die Datenpunkte geschrieben, wenn die PID unterschiedlich der vorigen ist. Ansonsten wird die
receivedByListe mit mehreren Geräten angereichert, welche das Signal alle bekommen haben.Ich stell nur mal eine Hypothese (!) in den Raum:
Da der Taster zeitweise ZWEI Meldungen extrem kurz hintereinander sendet (128 und 1) kann es da ev sein, dass der erste Gateway das 128 Packerl weiterleitet und dann das 1er Packerl. Und dann erst vom zweiten Gateway das 128er und dann das 1er kommt?In den Fall würde sich die PID mehrfach ändern bzw, die PID einmal zurückspringen. Unetrdrückt der Adpater derzeit ältere PIDs ? Wenn nicht wär das ev. sinnvoll oder nicht?