
















Hallo an alle die mir geholfen haben 87insane (danke für das freundliche Teamviewer Angebot)
Guzzi-Charlie (du hast die meisten Stunden investiert....)
Es hat mir keine Ruhe gelassen warum das nicht funktioniert - habe dann schon an mir ernst gezweifelt. Am Anfang konnte ich ja aus FHEM heraus schalten. DAs habe ich ja überprüft. Doch plötzlich konnte ich nicht mehr schalten, geschweige die Anzeige stimmt.
Also habe ich in FGHEM das Device nochmals gelöscht und neu anlegen lassen.
Dann habe ich den Schmarren mit umbenennen vorerst gelassen und habe mit ein Template 2.5 hergenommen und bin Schritt für Schritt nochmals durchgegangen.
Vorerst konnte ich schalten - war schon wieder ein Erfolg. Danach habe ich Schritt für Schritt die cmdIcon, setList, setStateList, stateFormat und die webCmds angepasst.
Dazwischen immer wieder im Shelly und in FHEM Schaltbefehle ausgeführt.
Siehe da, alles funktioniert. Nun habe ich aber keine Umbenennung durchgeführt sondern habe einen Alias Namen vergeben und gut ist.
Ach ja, wie Bernd schrieb ist mir dann sofort der BUG aufgefallen. Während der Fahrt stimmten die Kommandos. Nur am Schluss die endgültige Stellung war verkehrt - hier habe ich dann im stateFormat bei der Ventilstellung $rm1 und 0 vertauscht und gut wars.
Hier nochmals die aktuelle RAW Def
defmod MQTT2_shellyswitch25_E098068D550B MQTT2_DEVICE shellyswitch25_E098068D550B
attr MQTT2_shellyswitch25_E098068D550B IODev myBroker
attr MQTT2_shellyswitch25_E098068D550B alias Motorventil
attr MQTT2_shellyswitch25_E098068D550B cmdIcon open:sani_solar close:sani_pump
attr MQTT2_shellyswitch25_E098068D550B group Motorventil
attr MQTT2_shellyswitch25_E098068D550B readingList shellies/shellyswitch25-E098068D550B/roller/0/pos:.* pct\
shellies/shellyswitch25-E098068D550B/status/0/rollers:.* power\
shellies/shellyswitch25-E098068D550B/online:.* online\
shellies/shellyswitch25-E098068D550B/announce:.* { json2nameValue($EVENT) }\
shellies/announce:.* { $EVENT =~ m,..id...shellyswitch25-E098068D550B...mac.*, ? json2nameValue($EVENT) : return }\
shellies/shellyswitch25-E098068D550B/roller/0:.* current\
shellies/shellyswitch25-E098068D550B/roller/0:open {{'state' => 'opening'}}\
shellies/shellyswitch25-E098068D550B/roller/0:close {{'state' => 'closing'}}\
shellies/shellyswitch25-E098068D550B/roller/0/pos:.* state\
shellies/shellyswitch25-E098068D550B/input/1:.* input1\
shellies/shellyswitch25-E098068D550B/input/0:.* input0\
shellies/shellyswitch25-E098068D550B/relay/power:.* power\
shellies/shellyswitch25-E098068D550B/relay/energy:.* energy\
shellies/shellyswitch25-E098068D550B/temperature:.* temperature\
shellies/shellyswitch25-E098068D550B/overtemperature:.* overtemperature\
shellyswitch25_E098068D550B:shellies/shellyswitch25-E098068D550B/roller/0/power:.* roller_0_power\
shellyswitch25_E098068D550B:shellies/shellyswitch25-E098068D550B/roller/0/energy:.* roller_0_energy\
shellyswitch25_E098068D550B:shellies/shellyswitch25-E098068D550B/temperature_f:.* temperature_f
attr MQTT2_shellyswitch25_E098068D550B room MQTT2_DEVICE,Poolsteuerung
attr MQTT2_shellyswitch25_E098068D550B setList open:noArg shellies/shellyswitch25-E098068D550B/roller/0/command open\
close:noArg shellies/shellyswitch25-E098068D550B/roller/0/command close\
x_recalibration:noArg shellies/shellyswitch25-E098068D550B/roller/0/command rc\
x_update:noArg shellies/shellyswitch25-E098068D550B/command update_fw\
x_mqttcom shellies/shellyswitch25-E098068D550B/command $EVTPART1
attr MQTT2_shellyswitch25_E098068D550B setStateList open close
attr MQTT2_shellyswitch25_E098068D550B sortby 1
attr MQTT2_shellyswitch25_E098068D550B stateFormat {\
\
my $soll = ReadingsVal($name, "current", "");;\
\
my $rm0 = ReadingsVal($name, "input0" , 0);;\
\
my $rm1 = ReadingsVal($name, "input1" , 0);;\
\
my $ventilstellung;;\
\
\
\
if(($soll eq "open") and ($rm0 == 0) and ($rm1 == 0))\
\
{ $ventilstellung = '==> Solar'}\
\
elsif ($rm1 == 1)\
\
{ $ventilstellung = 'Stellung: Solar'}\
\
elsif(($soll eq "close") and ($rm0 == 0) and ($rm1 == 0))\
\
{ $ventilstellung = '==> WP'}\
\
elsif ($rm0 == 1)\
\
{ $ventilstellung = 'Stellung: WP'};;\
\
}
attr MQTT2_shellyswitch25_E098068D550B webCmd :open:close:
setstate MQTT2_shellyswitch25_E098068D550B Stellung: Solar
setstate MQTT2_shellyswitch25_E098068D550B 2020-04-27 13:14:16 current open
setstate MQTT2_shellyswitch25_E098068D550B 2020-04-27 13:22:51 energy 84
setstate MQTT2_shellyswitch25_E098068D550B 2020-04-27 13:12:33 fw_ver 20200309-104051/v1.6.0@43056d58
setstate MQTT2_shellyswitch25_E098068D550B 2020-04-27 13:12:33 id shellyswitch25-E098068D550B
setstate MQTT2_shellyswitch25_E098068D550B 2020-04-27 13:22:51 input0 0
setstate MQTT2_shellyswitch25_E098068D550B 2020-04-27 13:22:51 input1 1
setstate MQTT2_shellyswitch25_E098068D550B 2020-04-27 13:12:33 ip 10.0.0.110
setstate MQTT2_shellyswitch25_E098068D550B 2020-04-27 13:12:33 mac E098068D550B
setstate MQTT2_shellyswitch25_E098068D550B 2020-04-27 13:12:33 new_fw false
setstate MQTT2_shellyswitch25_E098068D550B 2020-04-27 13:12:33 online true
setstate MQTT2_shellyswitch25_E098068D550B 2020-04-27 13:22:51 overtemperature 0
setstate MQTT2_shellyswitch25_E098068D550B 2020-04-27 13:22:50 pct -1
setstate MQTT2_shellyswitch25_E098068D550B 2020-04-27 13:22:51 power 0.00
setstate MQTT2_shellyswitch25_E098068D550B 2020-04-27 13:22:51 roller_0_energy 84
setstate MQTT2_shellyswitch25_E098068D550B 2020-04-27 13:22:50 roller_0_power 0.00
setstate MQTT2_shellyswitch25_E098068D550B 2020-04-27 13:22:50 state -1
setstate MQTT2_shellyswitch25_E098068D550B 2020-04-27 13:22:51 temperature 53.46
setstate MQTT2_shellyswitch25_E098068D550B 2020-04-27 13:22:51 temperature_f 128.23
setstate MQTT2_shellyswitch25_E098068D550B 2020-04-27 12:01:16 x_mqttcom set announce
Alles anzeigen
Der Inhalt kann nicht angezeigt werden, da Sie keine Berechtigung haben, diesen Inhalt zu sehen.
Der Inhalt kann nicht angezeigt werden, da Sie keine Berechtigung haben, diesen Inhalt zu sehen.
Der Inhalt kann nicht angezeigt werden, da Sie keine Berechtigung haben, diesen Inhalt zu sehen.
Der Inhalt kann nicht angezeigt werden, da Sie keine Berechtigung haben, diesen Inhalt zu sehen.
Inkl. meiner Ampel. Hier habe ich die DOIFS auf current statt state ausgebessert.
ich vermute, der Fehler lag beim Umbenennen. Habe auch immer wieder im Log diese komische Fehlermeldung >< Motorventil. erhalten
Nochmals ein herzliches Danke an ALLE
Gruß
Helmut