Shelly Pro 4 PM
shellypro4pm.txt (74,3 KB)
auch nach Neustart des Rechners, kommt der selbe Fehler.
Hein09
Der Fehler ist behoben und sollte mit dem neuen Update weg sein.
Grüße,
Kai
Funktioniert jetzt einwandfrei.
Vielen Dank.
hein09
Es gibt eine neue Beta Version:
Pro 2 und Pro 4:
Leistungsfaktor, Gerätetemperatur und Generic Status über MQTT eingebaut, somit sollte auch die Volt Variable immer aktualisiert werden.
Plus H&T:
Die Idents haben sich geändert, nach einem Update werden also alle Variablen doppelt sein, sollten die Variablen geloggt sein, muss das Archiv auf die neue Variable transferiert werden, nachdem die Daten transferiert wurden, können die Variablen gelöscht werden. Danach muss einmalig die Funktion restVariables über „Befehle testen“ aufgerufen werden.
Plus 1:
Hier hat sich nur der Ident der Erreichbar Variable geändert. Also ggf. die Archivdaten auf die neue Variable übertragen, danach die alte Variable löschen und die Funktion restVariables über „Befehle testen“ aufrufen.
Grüße,
Kai
Hallo Kai,
könntest du vielleicht auch eine Logpush Variable einrichten? Habe einige Szenarien wo ich mit einem Taster eine zweite Lampe ein bzw. ausschalten möchte.
Gruß
Jörg
Das müsste doch über die Ereignis Variable funktionieren.
Grüße,
Kai
Es gibt beim Shelly Pro 4PM aber nur eine Ereignis-Variable. Woher soll ich dann wissen, von welchem Taster der LogPush kam?
Ich müsste also bei einer Änderung der entsprechenden Status-Variable, schnell die Änderungen der Ereignis Variable speichern und gucken, ob „long_push“ dabei war.
Beim LongPush steht am Ende die Ereignis-Variable nach dem Loslassen des Tasters immer auf „btn_up“.
In der Ereignis-Variable sieht es nämlich so aus:
Normal : btn_down => btn_up => single_push
LongPush: btn_down => long_push => btn_up
Und es gibt noch die Variable EventComponent, da steht dann nämlich sowas wie input:0 drin.
Du musst also beide Variablen auswerten. Das hat Shelly mit der neuen API geändert.
Grüße,
Kai
Ich habe eben das neue Update installiert.
Bekomme jetzt folgende Fehlermeldungen:
23.09.2022, 11:56:15 | FlowHandler | Kann Daten nicht zur Instanz #31394 weiterleiten:
Fatal error: Uncaught ArgumentCountError: Too few arguments to function ShellyModule::SetValue(), 1 passed in C:\ProgramData\Symcon\modules\.store\info.schnittcher.ips.shelly\ShellyPro2\module.php on line 240 and exactly 2 expected in C:\ProgramData\Symcon\modules\.store\info.schnittcher.ips.shelly\libs\ShellyModule.php:127
Stack trace:
#0 C:\ProgramData\Symcon\modules\.store\info.schnittcher.ips.shelly\ShellyPro2\module.php(240): ShellyModule->SetValue('Powerfactor0,55')
#1 C:\Windows\System32\-(3): ShellyPro2->ReceiveData('{"DataID":"{7F7...')
#2 {main}
thrown in C:\ProgramData\Symcon\modules\.store\info.schnittcher.ips.shelly\libs\ShellyModule.php on line 127
Abort Processing during Fatal-Error: Uncaught ArgumentCountError: Too few arguments to function ShellyModule::SetValue(), 1 passed in C:\ProgramData\Symcon\modules\.store\info.schnittcher.ips.shelly\ShellyPro2\module.php on line 240 and exactly 2 expected in C:\ProgramData\Symcon\modules\.store\info.schnittcher.ips.shelly\libs\ShellyModule.php:127
Stack trace:
#0 C:\ProgramData\Symcon\modules\.store\info.schnittcher.ips.shelly\ShellyPro2\module.php(240): ShellyModule->SetValue('Powerfactor0,55')
#1 C:\Windows\System32\-(3): ShellyPro2->ReceiveData('{"DataID":"{7F7...')
#2 {main}
thrown
Error in Script C:\ProgramData\Symcon\modules\.store\info.schnittcher.ips.shelly\libs\ShellyModule.php on Line 127
Und folgende Benutzerdefinierte Meldung:
23.09.2022, 11:56:59 | PHP | Error: Error: Uncaught ArgumentCountError: Too few arguments to function ShellyModule::SetValue(), 1 passed in C:\ProgramData\Symcon\modules\.store\info.schnittcher.ips.shelly\ShellyPro2\module.php on line 240 and exactly 2 expected in C:\ProgramData\Symcon\modules\.store\info.schnittcher.ips.shelly\libs\ShellyModule.php:127
Stack trace:
#0 C:\ProgramData\Symcon\modules\.store\info.schnittcher.ips.shelly\ShellyPro2\module.php(240): ShellyModule->SetValue('Powerfactor0')
#1 C:\Windows\System32\-(3): ShellyPro2->ReceiveData('{"DataID":"{7F7...')
#2 {main}
thrown
Error in Script C:\ProgramData\Symcon\modules\.store\info.schnittcher.ips.shelly\libs\ShellyModule.php on Line 127
Hein09
Ja, wenn „long_push“ am Ende in der Ereignis-Variable drin stände, wäre es einfach.
Schau mal, ob das mit der aktuellen Version behoben ist.
Grüße,
Kai
Du musst einfach beide Variablen prüfen.
Ereignis Komponente = input:0
Ereignis = long_push
Laut Debug sollte das in den Variablen ankommen.
Grüße,
Kai
Leider nein, der Fehler ist noch vorhanden.
Hein09
Wie sieht es jetzt aus?
Grüße,
Kai
Jetzt sieht es wieder gut aus.
Die neue Variable Leistungsfaktor funktioniert auch.
Nur bei der neuen Variable Gerätetemperatur, steht nur false drin und Sie ändert sich auch nicht.
Hein09
Alles klar, hab’s so eingerichtet, funktioniert!
Danke dir
Sehr gut.
Grüße,
Kai
Das sollte jetzt gehen, du musst die Funktion restVariables ein Mal aufrufen.
Und dann kannst du die Variable löschen, welche als Boolean angelegt wurde.
Grüße,
Kai
Wo oder wie rufe ich die die Funktion restVariables auf?