Sehr unkonventionelle Lösung: Um wieviel mach das denn das Wasser pro Stunde wärmer?
Ich vermute Krauskopp meint mit "Sicherheitsverdrahtung" den Drahtverhau außen - da dort 230 V anliegen ist das ziemlich gefährlich.
VPN/Proxy erkannt
Es scheint, dass Sie einen VPN- oder Proxy-Dienst verwenden. Bitte beachten Sie, dass die Nutzung eines solchen Dienstes die Funktionalität dieser Webseite einschränken kann.
Sehr unkonventionelle Lösung: Um wieviel mach das denn das Wasser pro Stunde wärmer?
Ich vermute Krauskopp meint mit "Sicherheitsverdrahtung" den Drahtverhau außen - da dort 230 V anliegen ist das ziemlich gefährlich.
Welche Cloud Software Version steht oben rechts?
Da haben wir in der Tat sehr lange aneinander vorbei geredet. Ich dachte die ganze Zeit, du meinst mit Event-Handler meine Callback Funktion. Ist aber auch mein Fehler, die Callback Funktion als EventHandler zu benennen - die bekommt eben die BLE Events vom Observer / Subscriber, deshalb meine Benennung.
Den KI-basierten (Un-)Code habe ich eh weitestgehend ignoriert
Und du hast Recht mit den binären Daten - das muss man aufwändig dekodieren.
Da ich jetzt selber am Zweifeln war, habe ich mir meinen Code nochmal angeschaut:
Die BLU Button-Abfrage läuft über Shelly.addEventHandler(eventReceived); also einen EventHandler (was bei meinen BLU Buttons funktioniert).
Den BLE Scanner / Subscriber nutze ich für Ruuvi Sensoren - und da wird erstmal dekodiert.
In der BLU Beschreibung wird bei den Buttons immer von "Button press events" gesprochen, die Sensor Daten sind "BTHome sensor data objects".
Vielleicht ist das auch der Unterschied, warum Button Ereignisse (auch) im Eventhandler auftauchen, Sensordaten aber nur im Statushandler.
Da du einen H&T hast, könntest du das ggf. ausprobieren - der BLU H&T hat ja auch einen Button.
Hier wird der Unterschied erklärt: https://shelly-api-docs.shelly.cloud/gen2/General/Notifications
NotifyStatus
This method notifies about change in the status of a component, and carries information about the changes which occurred
NotifyEvent
This method notifies about an occurred event that is not reflected in the status of a component (e.g., pushed button, changed configuration, ...)
Okay, verstanden. Das ist ein Script, damit ich die BLE-Adresse auslesen kann.
Nicht nur das - das ist auch die korrekte Version vom Event-Handler. Allerdings noch zu "grob" für deinen Fall.
Ungefähr so könnte es gehen - ich habe leider keine BLU Door/Window zum Testen:
let BLE_DEVICE_ID = "7a:a6:a6:aa:a1:00"; // MAC-Adresse des Shelly BLU Sensors
function setLedColor(r, g, b) {
let config = {
"config": {
"leds": {
"colors": {
"switch:0": {
"on": {
"rgb": [r, g, b],
"brightness": 100
}
}
}
}
}
};
Shelly.call("PLUGS_UI.SetConfig", config);
}
function bleCallback(event, device) {
if (event !== 2) {
return;
}
if (device.addr !== BLE_DEVICE_ID) {
return;
}
let open = device.service_data.state === 1;
if (open) {
setLedColor(100, 0, 0); // rot
} else {
setLedColor(0, 100, 0); // grün
}
}
BLE.Scanner.Start({duration_ms: BLE.Scanner.INFINITE_SCAN});
BLE.Scanner.subscribe(bleCallback);
Alles anzeigen
Vielleicht kommst du damit weiter 🤞 - ich kann das leider nicht testen.
Das ist bei diesem Motor sinnlos! Aber das wirst Du merken…
Warum?
Ah, ok, das war mir nicht bewusst - bei Amazon kaufe ich seit Jahren nicht mehr
Berry Script für den LED-Ring
OT Frage: "autoexec.bec" ist das Berry Script, richtig? Das sieht binär aus, kann man sich das irgendwie anschauen, was es macht?
Hauptsache das Teil muss nicht nach China zurück gesendet werden
Wer kauft Shelly Plugs in China?
Ein Schaltplan nützt nix, wenn ich Dauerstrom und geschalteten Strom trotzdem falsch anschließe ;).
Vielleicht wäre es dir beim Zeichnen aufgefallen
dann wünsche ich mir das jetzt von Shelly in deren Forum
Das hier ist das Shelly Forum für die DACH Region
Die Aktion kann man nur über das lokale WebUI anlegen - und zwar auf dem Shelly, bei dem man die BLU Komponente angelegt hat (bei "Bluetooth (BTHome) devices"): http://<shelly-ip>/#/actions-all
Wenn man hier eine Action anlegt, kann man die BTHome Komponente und eine "Event condition" angeben sowie eine URL, die ausgeführt werden soll. Und dabei gibt man das das Script.eval an, von dem eiche geschrieben hat.
Bisher schrieb freudi_t nichts von Matter. Btw, ich brauche nach wie vor kein Matter und werde es vermutlich auch zukünftig nicht brauchen.
Ich glaube, da hast du was falsch verstanden - der Plug S Gen3 ist der erste Shelly mit Matter Support gewesen - deshalb hatte ich abkürzend "Matter Plugs" geschrieben, und eben damit "Plug S Gen3" gemeint. Tut mir leid, falls ich damit Verwirrung gestiftet habe.