Shelly Intervall=0/ manuell

Begonnen von birdy, 27 Mai 2024, 15:56:31

Vorheriges Thema - Nächstes Thema

birdy

Wenn ich den Interval auf 0 gesetzt habe bleiben die automatischen Updates wie gewollt aus. 

set <name> interval <integer>
Temporarely set the update interval. Will be overwritten by the attribute on restart. A value of -1 set the interval to the default given by attribute, a value of 0 disables the automatic update.

Wenn ich keine automatischen Updates möchte, wie kann ich dann ein Update manuell auslösen?
FHEM  @Debian bullseye @Proxmox VE 8.4.1
GMKtec mit AMD Ryzen 7 5700U
CUL 433(a-culfw), CUL 868(SlowRF), Max-Cube CUN geflash, HM-CFG-USB-2 (HMALND)

birdy

#1
Wenn der Interval auf 0 gesetzt ist bewirkt der Befel
get status absolut nichts. Zumindest konnte ich nichts erkennen. Ob das wirklich so gewollt ist, sei mal dahingestellt.

Umgehungslösung:
Man setze den Wert für den Interval auf einen möglichst hohen Wert (die automatischen Updates bleiben nahezu aus), und triggert dann die manuellen Updates mit get satsusSobald ein Interval Wert gesetzt ist funktioniert auch get Satus wieder.
Evtl. gibt es noch eine besser Lösung.
FHEM  @Debian bullseye @Proxmox VE 8.4.1
GMKtec mit AMD Ryzen 7 5700U
CUL 433(a-culfw), CUL 868(SlowRF), Max-Cube CUN geflash, HM-CFG-USB-2 (HMALND)

Starkstrombastler

Zitat von: birdy am 27 Mai 2024, 18:04:59Wenn der Interval auf 0 gesetzt ist bewirkt der Befel
Code Auswählen Erweitern
get status absolut nichts. Zumindest konnte ich nichts erkennen. Ob das wirklich so gewollt ist, sei mal dahingestellt.
Nein, ist so nicht gewollt.

Zitat von: birdy am 27 Mai 2024, 18:04:59Sobald ein Interval Wert gesetzt ist funktioniert auch get Satus wieder.
Zur Fehlereingrenzung: hast du das Interval hierbei via Attribut oder via Set-Befehl gesetzt?
IPC\Ubuntu + Fhem, 1wire, Shellies, Siemens Logo!, Z-Wave, PhilipsTV, Vu+duo2, KM200

birdy

Mit den Set Befehl, so wie es auch die oben eingeführte Beschreibung erklärt.
set <name> interval <integer>
Temporarely set the update interval. Will be overwritten by the attribute on restart. A value of -1 set the interval to the default given by attribute, a value of 0 disables the automatic update.
FHEM  @Debian bullseye @Proxmox VE 8.4.1
GMKtec mit AMD Ryzen 7 5700U
CUL 433(a-culfw), CUL 868(SlowRF), Max-Cube CUN geflash, HM-CFG-USB-2 (HMALND)

birdy

Ich habe bzw. will keine automatisch aktualisierte Readings, und habe darum Intervall auf 99999 gesetzt.
Wenn ich aktualisierte Reading benötige, rufe ich in 99_myUtils.pm
fhem("get ShellyYXZ status");  auf.
Die Readings werden dann auch ,,zügig" aktualisiert.

Mein Problem: Das aktualisieren der Reading dauert wohl ein paar Millisekunden.
Wenn ich direkt nach get status
ReadingsVal("ShellyYXZ","power_0,0)ausführe, bekomme ich noch die alten Werte, die von vor der Aktualisierung >:(

Hat jemand eine Idee, was man machen kann, um bei den ReadingsVal die neuen Werte zu bekommen?
FHEM  @Debian bullseye @Proxmox VE 8.4.1
GMKtec mit AMD Ryzen 7 5700U
CUL 433(a-culfw), CUL 868(SlowRF), Max-Cube CUN geflash, HM-CFG-USB-2 (HMALND)

Starkstrombastler

Zitat von: birdy am 13 Juni 2024, 22:36:51Das aktualisieren der Reading dauert wohl ein paar Millisekunden.
Ja, das stimmt, weil die Anfrage "nonblocking" erfolgt.
Vorschlag: Benutze ein Notify, um auf aktualisierte Readings zu reagieren. Z.B. mit einem Trigger auf das Reading "uptime", weil dies bei jedem "get status" aktualisiert wird.
IPC\Ubuntu + Fhem, 1wire, Shellies, Siemens Logo!, Z-Wave, PhilipsTV, Vu+duo2, KM200

birdy

Schon gut, das die Anfrage "nonblocking" erfolgt.

Ist nicht wirklich ein Problem. Da ich aber mehrere Shelly's abfrage, benötige ich auch mehrere Notifiy's. Dachte, dass es evtl. noch eine andere Möglichkeit gibt.
Ich werde das also doch mit Notify's machen ;)
Vielen Dank für den Tipp

FHEM  @Debian bullseye @Proxmox VE 8.4.1
GMKtec mit AMD Ryzen 7 5700U
CUL 433(a-culfw), CUL 868(SlowRF), Max-Cube CUN geflash, HM-CFG-USB-2 (HMALND)

birdy

#7
Ich habe es nun mit einem AT Befehl gelöst, die Lösung mit Notifys hat mich nicht überzeugt.

So kann ich alle Shellys auf einmal aktualisieren. Die Readings werden dann für alle parallel/nonblocking nachgeführt. 2 Sekunden später wenn die Readings nachgeführt sind, beginne ich mit der Auswertung.
FHEM  @Debian bullseye @Proxmox VE 8.4.1
GMKtec mit AMD Ryzen 7 5700U
CUL 433(a-culfw), CUL 868(SlowRF), Max-Cube CUN geflash, HM-CFG-USB-2 (HMALND)

Starkstrombastler

Zitat von: birdy am 16 Juni 2024, 20:08:11Ich habe es nun mit einem AT Befehl gelöst
Schön, dass du eine für dich tragfähige Lösung gefunden hast.

Kannst du uns auch die Hintergründe für diese Anwendung erklären?
IPC\Ubuntu + Fhem, 1wire, Shellies, Siemens Logo!, Z-Wave, PhilipsTV, Vu+duo2, KM200

birdy

Der Hintergrund:
Ich ermittle von mehreren Shelly's den aktuellen Strom- "Verbrauch" auch von der PV. Je nach Situation treffe ich (bzw. FHEM) die Entscheidung einzelne Verbraucher hinzu oder wegzuschalten. Das Ziel ist es den Eigenverbrauch zu optimieren
ren.
FHEM  @Debian bullseye @Proxmox VE 8.4.1
GMKtec mit AMD Ryzen 7 5700U
CUL 433(a-culfw), CUL 868(SlowRF), Max-Cube CUN geflash, HM-CFG-USB-2 (HMALND)

Prof. Dr. Peter Henning

Das ist insofern gefährlich, als sich die Energieerzeugung einer PV-Anlage innerhalb von Sekunden ändern kann. Zur weiteren Diskussion bitte die relativ neue Forenkategorie Energieerzeugung beachten, dort auch mal bei Wallboxen reinschauen.

Für das solare Überschussladen muss ich beispielsweise die relevanten Daten alle 5 Sekunden an die Wallbox übermitteln.

LG

pah

birdy

Dass eine PV-Anlage innerhalb von Sekunden die Energieerzeugung ändert, würde ich als vollkommen normal bezeichnen. Was daran gefährlich sein soll, kann und muss ich nicht verstehen.

Es geht hier darum, dass das Shelly Modul nicht so funktioniert wie es solle.
Es gibt aber einen Workaround dazu.
FHEM  @Debian bullseye @Proxmox VE 8.4.1
GMKtec mit AMD Ryzen 7 5700U
CUL 433(a-culfw), CUL 868(SlowRF), Max-Cube CUN geflash, HM-CFG-USB-2 (HMALND)

Starkstrombastler

Zitat von: birdy am 22 Juni 2024, 21:14:24Dass eine PV-Anlage innerhalb von Sekunden die Energieerzeugung ändert, würde ich als vollkommen normal bezeichnen. Was daran gefährlich sein soll, kann und muss ich nicht verstehen.
Gefährlich wird das Konstrukt nur dann, wenn man nicht der Maxime "Sparen, koste es was es wolle" folgt und stattdessen eine wirtschafliche Rendite erzielen möchte. Durch ungünstige Profile von Erzeugung, Last und Ein-/Ausspeicherung kann nämlich der Bezug vom EVU steigen, statt zu sinken.

Im Übrigen geht es mit der Entwicklung des Moduls hier bald wieder weiter (Land ist in Sicht).

IPC\Ubuntu + Fhem, 1wire, Shellies, Siemens Logo!, Z-Wave, PhilipsTV, Vu+duo2, KM200

Prof. Dr. Peter Henning

"Gefährlich" wird es auch dann, wenn man Verbraucher mit mehreren kW im Sekundentakt an- und ausschaltet.

Dafür sind die Shellys eher ungeeignet.

LG

pah

birdy

ZitatGefährlich wird das Konstrukt nur dann, wenn man nicht der Maxime "Sparen, koste es was es wolle" folgt und stattdessen eine wirtschafliche Rendite erzielen möchte. Durch ungünstige Profile von Erzeugung, Last und Ein-/Ausspeicherung kann nämlich der Bezug vom EVU steigen, statt zu sinken.
Ach so, unter gefährlich verstehe ich definitiv etwas anderes  ;)
Aber ich weiss was Du meinst  :)

ZitatIm Übrigen geht es mit der Entwicklung des Moduls hier bald wieder weiter (Land ist in Sicht)
Easy, kein Stress. Mein Workaround funktioniert ausgezeichnet. Aber schon mal vielen Dank für deine Arbeit.
FHEM  @Debian bullseye @Proxmox VE 8.4.1
GMKtec mit AMD Ryzen 7 5700U
CUL 433(a-culfw), CUL 868(SlowRF), Max-Cube CUN geflash, HM-CFG-USB-2 (HMALND)