[Modul] Shelly

Sehr gerne. :slight_smile:

Grüße,
Kai

Hallo Kai,
vielen Dank für das tolle Modul.

Mein Shelly4ProPM kann ich auch auslesen und es werden die Daten wie gewünscht angezeigt.

Wenn ich nun aber versuche den Kanal zu schalten und ich mich nach Deiner Referenz halte, dann wird aber keine Änderung des Kanals durchgeführt.
2022-04-17 12_12_58-Window

Es gibt keine Fehlermeldung, aber der Kanal schaltet auch nicht aus. Muss ich hier vielleicht noch etwas beachten?

VG
fussi24

Eigentlich nicht, kannst du im Debug Meldungen sehen?

Grüße,
Kai

Hallo Kai,

hilft Dir dieses Debug Log!?
dump (1).txt (36,8 KB)

VG

fussi24

Ein Debug aus der Shelly Instanz wäre erstmal besser.

Grüße,
Kai

Hallo Kai,
anbei das Debug Log direkt aus der Shelly Instanz.

dump (2).txt (85,1 KB)

VG

fussi24

Hat jemand eine rechnerische Lösung zur fehlenden Saldierung des Shelly3em. Der Shelly saldiert nicht genau so wie ein normaler Zähler. Wenn man auf einer Phase einspeist bekommt man zwar einen negativen Leistungswert auf dieser Phase, die Energie in kWh für alle 3 Phasen ist aber falsch gerechnet. Im Homassistant Forum hat man sich über Hilfsvariablen und Integral (Left Riemann) beholfen. So weit ich das verstanden habe speichert eine Variable alle Werte wenn die Summe aus L1,L2,L3 > 0 ist (Netzbezug). Die zweite Variable speichert alle Werte wenn die Summe aus L1,L2,L3 < 0 ist, aber mit positivem Vorzeichen (Netzeinspeisung). Für die Energiesumme wird es dann noch komplizierter. Hat das schon jemand probiert?

Ich habe folgendes gemacht um den Saldierungsfehler zu korrigieren:

Ich bilde den Summenleistungswert aus allen 3 Phasen (L1,L2,L3). Ist dieser Wert momentan negativ, weiß ich, das gerade ins Netz eingespeist wird. Getriggert wird das Script zur Summenberechnung und Bildung der Leistungsvariable durch Änderung der Shelly Variablen L1 (L2 u. L3 werden synchron von Shelly aktualisiert). Solange der Summenleistungswert nicht positiv wird, ist der Status der Variablen „Messung läuft“ true und der Wert Gesamt eingespeist L2 (bei mir geändert in Netzeinspeisung Gesamt L2 seit 16.04.2022) wird in einen Zwischenspeicher geschrieben. Wird der Summenleistungswert irgendwann positiv, wird die Messung beendet und die Differenz aus Zwischenwert und aktueller Netzeinspeisung L2 berechnet. Man bekommt also als Ergebnis die Energiemenge, welche während der Hausverbrauch negativ war, vom Shelly für die Einspeisung auf der Phase berechnet wurde. Wichtig ist meiner Meinung nach, das diese Energiemenge vom Shelly selbst errechnet wurde. Wenn ich das selbst machen würde, hätte ich vermutlich Fehler auf Grund der Aktualisierungsgenauigkeiten der Variablen. Der Wert den man erhält ist dann der reale Einspeisungswert auf dieser Phase, da man ja in der Zeit der positiven Leistungssumme alles selbst vernascht hat. Ich hoffe ich habe keinen Denkfehler drin. Ich werde jetzt in den nächsten Tagen weiter testen und in der nächsten Phase einen Vergleich über einen Monat mit meinem saldierenden digitalen Einspeisezähler machen.

1 „Gefällt mir“

Moin zusammen - der alte Mann (ich) benötigt Eure Hilfe.
Ich habe gestern in unserem Verein einen Shelly Plus 1PM verbaut.
Um mir das Leben einfacher zu machen, habe ich mich für das Shelly Modul entschieden - so weit so gut, das hat geklappt:


Laut der Modulanleitung sollte man einfach mit den den Befehlen:

RequestAction(29429, true); //Einschalten

bzw.

RequestAction(29429, false); //Ausschalten

Ein- oder Ausschalten können.
Der Befehl wird ohne Fehler ausgeführt, zeigt allerdings keinen Effekt beim Shelly Device.
Hat jemand einen Tipp für mich was ich vielleicht falsch mache, oder wie ich aus SYCON heraus den Shelly Plus 1PM schalten kann?

MQTT-Server unter „Nettwork“ beim Shelly eingetragen?

Viele Grüße aus dem Unterallgäu
Harry

harry28 - Danke für die schnelle Antwort.
Es war tatsächlich ein Typo im Instanzeintrag - schnell geändert und jetzt funktioniert es.

wird der Shelly 1 plus PM vom Modul nicht unterstützt ?? bekomme ihn eingebunden aber nicht schaltbar ??

Es gibt eine neue Beta Version, diese Version beinhaltet ein langersehntes Feature einiger User.
In jeder Sehlly Instanz kann man nun Variable deaktivieren.

Hier ein Beispiel vom Shelly 3EM:

Ich würde mich über Feedback freuen, dafür musste einiges geändert werden.

Grüße,
Kai

1 „Gefällt mir“

Ich schaue es mir an.
Ich habe deinen Post mal in den Shelly Thread verschoben.

Grüße,
Kai

Genial, getestet mit einem Shelly1, Shelly 2.5 und Shelly Button 1. Funktioniert tadellos.
Dies war noch im Statusdialog zu sehen.

31.05.2022, 14:29:30 | PHPLibrary           | Parameter Payload in der Funktion SHELLY_setExtOpt hat keinen Datentyp. Definieren Sie entweder 'bool', 'int', 'float' oder 'string'

Setzt du dies in den anderen Modulen auch um? :slight_smile: :heart_eyes:

@docrossi kannst du eingrenzen, bei welchen Variablen der Fehler auftritt?

Grüße,
Kai

Ich weiß es noch nicht.
Beim Zigbee2MQTT Modul werde ich das zum Beispiel nicht umsetzen.

Grüße,
Kai

einen shellycolorbulb

Kannst du mal ein Debug erstellen?

Grüße,
Kai