Hat jemand einen 2PM im Einsatz. Ideal waere ein Gen3. Und kann mir ein Beispiel nennen, wie man den in FHEM am effizentesten
Einsetzt und entsprechen Schalter für die 2 Kanäle definiert.
Ok. Mit MQTT wird er erkannt. Gibt es ein sinnvolles
attrTemplate ??
Im MQTT Board wird zumindest über gen3 diskutiert. Wenn Du ein list vom Originalzustand lieferst könnte das helfen. ;)
LEider konnte ich im Forum noch nichts finden und es gab auch noch keine Hilfe von jemand, der einen Shelly 2PM verwendet ( ob GNE3 oder auch älter )
Ich hab mich jetzt durch viel altes Zeug durchgekämpft und getestet - denke am Ende wird es eine EInfache Lösung geben - Aber bisher leider nichts .
Ich bin jetzt wenigstens mit "attrTemplete" weitergekommen ( war bei mir deactiviert ! ) und hab mal "ShellyPlus_2pm_split" genommen --
HAt 2 channels, Powermetering - internen temp Sensor , ....
HAt meiner auch - aber das Ergebenis von attrTemplate passt nicht ---
aber vielleicht kann man es irgendwie hinbiegen --- Sollte ich es schaffen - poste ich es wenigstens - auch für andere
Was, wenn du einfach z.B. mit MQTT Explorer mal schaust, was der so published und dir dann einfach selbst jedenfalls mal eine readingList baust? Sollte ja eigentlich recht gut gehen. Wobei sich da doch auch nicht so viele Unterschiede zu vorherigen Modellen ergeben sollten?
Bei der SetList sollten sich doch auch nicht so viele Unterschiede ergeben, oder?
Hier scheint das alles jedenfalls einigermaßen transparent dokumentiert zu sein: https://shelly-api-docs.shelly.cloud/gen2/ComponentsAndServices/Mqtt (https://shelly-api-docs.shelly.cloud/gen2/ComponentsAndServices/Mqtt)
Zitat von: roli am 17 Oktober 2024, 19:39:05LEider konnte ich im Forum noch nichts finden und es gab auch noch keine Hilfe von jemand,
Die ersten zwei von https://www.google.de/search?q=site:forum.fhem.de+shelly+2pm
https://forum.fhem.de/index.php?topic=134282.0
https://forum.fhem.de/index.php?topic=138918.0
Dank an einen User, der mir die Lösung durch private Mail zukommen lies. Teilweise kann ich dies nachvollziehen, da doch oft eher nur oberflächlich geantwortet wird - und man sich nicht mit eventuell falscher Info outen will -- Aber, so wird es dann bald wie bei Google search, wo man dann immer einen Fake Eintrag auf Amazon Produkte bekommt.
Hier also meine Lösung die funktioniert hat, und die man sicher optimieren könnte:
-- siehe Anhang
Weitere Hinweise:
Ich hatte
# attr global disableFeatures attrTemplate
auskommentiert. Denke dies hat dazu geführt, dass zusätzlich
Einträge in der "readingList" aufgenommen wurden --
So funktioniert es erst mal. Aber bei einem Test erst mal die Schalter über die Cloud betätigen -- erst nach ein paar sekunden wird dann die MQTT Verbindung aktiv und dann hat bei mir alles funktioniert !
Danke an die ( den) hilfsbereiten Benutzer !!
Hat viel Zeit gespart.
Danke für's wieder aufmachen und verschieben!
Zitat von: roli am 21 Oktober 2024, 11:18:07Bzgl: Shelly_Bad:fhem2shelly/rpc:.* kann ich nur sagen, dass dies ohne meine eigene definition aufgetaucht ist -- und ich es deshalb übernommen habe - dachte es hängt mit attrTemplate zusammen -
Es hängt NICHT mit attrTemplate zusammen, diesen Eintrag hat "autocreate" erstellt, und er ist mAn. immer noch nicht sinnvoll, sondern "sinnvoll" ist das, was im attrTemplate zu den 3rd gen. vercoded ist (mache nichts mit dem Topic).
Auszugsweise meine Anmerkung aus dem anderen Post:
Zitat von: Beta-User am 21 Oktober 2024, 10:35:05[...] noch angemerkt, dass es m.E.
1. nicht sinnvoll ist, die Antwort (Shelly_Bad:fhem2shelly/rpc:.*) zu abonnieren, da steht araik nur drin, dass der Shelly den Befehl erhalten hat;
2. Wünsche zur Verbesserung der attrTemplate (zu MQTT2_DEVICE) im MQTT-Bereich besser aufgehoben sind, und
3. man ganz allgemein nicht direkt die cfg reinschreibt und auch keine (direkten) Auszüge posten sollte, sondern list/raw list/copy for forum (je nach Anwendungszweck)
PS: Es gibt einen Wiki-Artikel zu MQTT2_DEVICE (Schritt für Schritt), in dem (kurz!) erklärt wird, wie man rausbekommen kann, was auf welchem Topic kommt (und in etwa auch, was FHEM da als Readings draus macht).
Hallo, ich habe mich mittlerweile durch so allerhand Artikel/Informationen durchgearbeitet. Aber leider werde ich nicht so richtig schlau aus den Informationen und die Einbindung meines Shelly 2PM Gen3 liefert mir nicht die Möglichkeit einerseits die beiden Aktoren (als Lichtschalter) zu bedienen und zusätzlich auch noch die Messwerte analog zu den Shelly Plug S MTR Gen3 auszuwerten, da die Informationen gar nicht reinkommen.
Device List direkt nach "define ShellySwitchKitchen Shelly 192.168.0.120"
Internals:
.AttrList model:generic,shelly1,shelly1L,shelly1pm,shelly2,shelly2.5,shelly3em,shelly4,shellybulb,shellydimmer,shellyem,shellyi3,shellyplug,shellyplus010v,shellyplus1,shellyplus1pm,shellyplus2pm,shellyplusi4,shellyplusplug,shellypluspm,shellyplusrgbwpm,shellyplusuni,shellypmmini,shellypro1,shellypro1pm,shellypro2,shellypro2pm,shellypro3,shellypro3em,shellypro4pm,shellyprodm1pm,shellyprodm2pm,shellyprodual,shellyproem50,shellyrgbw,shellyuni,walldisplay1 maxAge ShellyName interval timeout shellyuser showunits:none,original webhook:WEB,WEBhook verbose:0,1,2,3,4,5 event-aggregator event-min-interval event-on-change-reading event-on-update-reading oldreadings stateFormat:textField-long timestamp-on-change-reading
CFGFN
DEF 192.168.0.120
FUUID 67812c21-f33f-2728-7a57-3ab28f611a0688db
INTERVAL 60
NAME ShellySwitchKitchen
NR 1081
NTFY_ORDER 50-ShellySwitchKitchen
STATE Error
TYPE Shelly
eventCount 7
units 0
.attraggr:
.attrminint:
READINGS:
2025-01-10 15:18:09 error error in command: id or component not found
2025-01-10 15:18:09 mac 8C:BF:EA:A2:9A:40
2025-01-10 15:18:09 model_ID S3SW-002P16EU
2025-01-10 15:18:09 model_function switch
2025-01-10 15:18:09 state Error
helper:
Sets config interval password reboot:noArg update:noArg name reset:noArg clear:disconnects,error,responsetimes actions
StatusCall 0
settings_time 0
timer 0
Attributes:
model generic
Bei mir handelt es sich nicht um den Hutschienen Shelly sondern um die Unterputz Variante.
In der Liste der verfügbaren Model:
generic,shelly1,shelly1L,shelly1pm,shelly2,shelly2.5,shelly3em,shelly4,shellybulb,shellydimmer,shellyem,shellyi3,shellyplug,shellyplus010v,shellyplus1,shellyplus1pm,shellyplus2pm,shellyplusi4,shellyplusplug,shellypluspm,shellyplusrgbwpm,shellyplusuni,shellypmmini,shellypro1,shellypro1pm,shellypro2,shellypro2pm,shellypro3,shellypro3em,shellypro4pm,shellyprodm1pm,shellyprodm2pm,shellyprodual,shellyproem50,shellyrgbw,shellyuni,walldisplay1
finde ich kein passenden.
Erst habe ich mal den shellypro2pm ausgewählt. Da kommen dann doch einige Readings. Aber es handelt sich hier nicht um das richtige Device.
Hat ev. bereits jemand den 2PM Gen3 so eingebunden, dass auch die Messwerte ausgelesen werden können und die beiden Schalter aktiviert werden können ?
Danke
Hallo Charity
Hier im Beitrag wird die Einbindung des Shelly 2PM Gen3 per MQTT diskutiert.
Du hast ihn jedoch mit dem SHELLY Modul versucht einzubinden.
Ich den Überblick über den SHELLY Zoo auch nicht mehr. In deinem Device ist lt. READING die Model-ID erkannt worden aber das Attribut Model ist auf generic. Also denke ich, dass das Modul (ist es aktuell?) den Shelly (noch?) nicht unterstützt - in der Liste findest du ihn ja auch nicht.
Damit geht du aber besser in den SHELLY Support Beitrag von Starkstrombastler - ich glaube in Sonstiges.
Gruß Ralf
Danke Ralf. Ich werde das gleich suchen und da nochmal entsprechend posten.
Hallo,
Ich stehe auch auf dem Schlauch. Ich habe viele Shellys per MQTT laufen und das auch sehr zuverlässig. Da mir jetzt ein 2.5 an der Rolllade kaputt gegangen ist, habe ich ihn durch einen Plus2PM gen 3 getauscht und versucht ihn einzubinden. Bei dem Plus 2PM und den 2,5 ging das super mit den Template. Der Gen3 schickt zwar Readings aber lässt sich nicht ansteuern. Weiß jemand was man evtl im Template ändern muss oder gibt es mitlerweile ein passendes Template für die neuen Dinger?
Vielen Dank schonmal und viele Grüße
Christian
ZitatWeiß jemand was man evtl im Template ändern muss oder gibt es mitlerweile ein passendes Template für die neuen Dinger?
_Vermutlich_ paßt da was von den "shellyPlus-xxx-roller"-attrTemplates.
Zitat von: seule3008 am 22 Januar 2025, 15:47:23Der Gen3 schickt zwar Readings aber lässt sich nicht ansteuern.
Aha.
Glaskugel sagt, du verwendest keine passende topic-payload-Kombination, das falsche IO oder der Aluhut ist kaputt....
Mehr und konkreter könnte das _vielleicht_ werden, wenn du die angepinnten Beiträge berücksichtigst.
Hallo
Mein Problem ist gelöst. Irgendwas hat sich beim Einspielen des Template verschluckt. Hab das am Zeitstempel im logfile gesehen. Ich hab dann das Device gelöscht und neu angelegt. Jetzt läuft es.
Mit freundlichen Grüßen
Christian
Hallo,
Ich hab jetzt den Gen3 gegen ein Shelly Plus2PM getauscht und der machst das gleiche Problem. Das devicetopic habe ich kontrolliert und auch mit - und _ ausprobiert. Keine Änderung. Da ich noch einen zweiten davon verbaut habe, habe ich mal verglichen. Siehe da in dem neuen kann man in den MQTT Einstellungen nicht mehr "kein ssl" auswählen siehe Bild. Alle anderen Einstellungen schicken zwar Readings er lässt sich aber über Fhem nicht ansteuern. Zum Thema TLS habe ich nicht wirklich was gefunden. Hat da einer eine Idee was man da machen kann? Für TLS braucht mal wohl irgendein Zertifikat. Aber wo bekommt man sowas und wie richtet man das ein?
Internals:
CFGFN
CID shellyplus2pm_c4d8d5422368
DEF shellyplus2pm_c4d8d5422368
FUUID 6794cc2f-f33f-b214-9318-d54e4277d022b8cd
IODev MQTT2
LASTInputDev MQTT2
MQTT2_CONN MQTT2_192.168.0.101_51991
MQTT2_MSGCNT 14
MQTT2_TIME 2025-01-25 12:39:50
MSGCNT 14
NAME shellyplus2pm_c4d8d5422368
NR 166
STATE set_open
TYPE MQTT2_DEVICE
eventCount 37
JSONMAP:
status_current_pos pct
status_state state
status_temperature_tC temperature
OLDREADINGS:
READINGS:
2025-01-25 12:34:07 IODev MQTT2
2025-01-25 12:35:23 attrTemplateVersion 20220623
2025-01-25 12:54:57 state set_open
Attributes:
cmdIcon open:fts_shutter_up close:fts_shutter_down stop:fts_shutter_manual half:fts_shutter_50
comment Shelly Plus 2 PM in Roller-Mode. 100=opened / 0=closed
devStateIcon opening:fts_shutter_up@red closing:fts_shutter_down@red true:10px-kreis-gruen false:10px-kreis-rot 0:fts_shutter_100 100:fts_shutter_10 9\d:fts_shutter_10 8\d:fts_shutter_20 7\d:fts_shutter_30 6\d:fts_shutter_40 5\d:fts_shutter_50 4\d:fts_shutter_60 3\d:fts_shutter_70 2\d:fts_shutter_80 1\d:fts_shutter_90 0\d:fts_shutter_100 set_.*:fts_shutter_updown
devicetopic shellyplus2pm_c4d8d5422368
icon fts_shutter
jsonMap status_state:state status_current_pos:pct status_temperature_tC:temperature
model shellyPlus_2pm_roller_invert_0
readingList $DEVICETOPIC/online:.* online
$DEVICETOPIC/status/mqtt:.* { json2nameValue($EVENT, 'mqtt_', $JSONMAP) }
$DEVICETOPIC/status/sys:.* { json2nameValue($EVENT, 'sys_', $JSONMAP) }
$DEVICETOPIC/status/cover_0:.* { json2nameValue($EVENT, 'status_', $JSONMAP) }
fhem2shelly/rpc:.* {}
room MQTT2_DEVICE
setList open:noArg $DEVICETOPIC/rpc {"id":0,"src":"fhem2shelly","method":"Cover.Open","params": {"id":0}}
close:noArg $DEVICETOPIC/rpc {"id":0,"src":"fhem2shelly","method":"Cover.Close","params": {"id":0}}
half:noArg $DEVICETOPIC/rpc {"id":0,"src":"fhem2shelly","method":"Cover.GoToPosition","params": {"id":0,"pos":50}}
stop:noArg $DEVICETOPIC/rpc {"id":0,"src":"fhem2shelly","method":"Cover.Stop","params": {"id":0}}
pct:slider,0,1,100 $DEVICETOPIC/rpc {"id":0,"src":"fhem2shelly","method":"Cover.GoToPosition","params": {"id":0,"pos":$EVTPART1}}
x_update:noArg $DEVICETOPIC/rpc {"id":0,"src":"fhem2shelly","method":"Shelly.Update","params": {"stage":"stable"}}
x_reboot:noArg $DEVICETOPIC/rpc {"id":0,"src":"fhem2shelly","method":"Shelly.Reboot"}
x_eco:true,false $DEVICETOPIC/rpc {"id":0,"src":"fhem2shelly","method":"Sys.SetConfig","params": {"config": {"device": {"eco_mode": $EVTPART1}}}}
setStateList open close half stop pct
stateFormat online
pct
webCmd :open:close:half:stop:pct
Vielen Dank
Christian
Für die "Nicht-MQTT" Lösung (hier eine Shelly Plus 2PM (2. gen), sollte mit 3. gen analog klappen):
Zitat von: Charity am 10 Januar 2025, 15:26:55model:generic,shelly1,shelly1L,shelly1pm,shelly2,shelly2.5,shelly3em,shelly4,shellybulb,shellydimmer,shellyem,shellyi3,shellyplug,shellyplus010v,shellyplus1,shellyplus1pm,shellyplus2pm,shellyplusi4,shellyplusplug,shellypl
Danke Charity! Dieser Hinweis hat mir mit Shelly Plus 2PM (2. gen) sehr geholfen! Leider ist die offizielle Dokumentation nicht in der Lage diese unterstützen "model" Werte zu nennen. Es gibt nur vage Tabellen im Netz und Hinweise auf generic und "weitere" Geräte, die unterstützt werden. Model "generic" ist tatsächlich nur read-only und alle Versuche damit z.B. den Status on/off zu ändern quittiert FHEM mit einem Zugriffsfehler. Man muss also ein spezifisches "model" wählen. Dazu hat diese Liste sehr geholfen!
Zusammen mit Shelly Aktionen (in der App bzw. im Web-Interface) für das Setzen des Zustands und auch das Liefern von Leistung power_0 bzw. power_1 hat schließlich dies bei mir zum Erfolg geführt:
1) Die zwei Channel Geräte erstellt - ich glaube dazu hatte ich
set MyShellyPlus2Pm xtrachannels
benutzt und diese dann von Hand angepasst. Wichtigste Erweiterung:
attr MyShellyPlus2Pm_Channel0 userReadings button {ReadingsVal("MyShellyPlus2Pm","button_0","");;},power {ReadingsVal("ShellyPlus2PmGarage","power_0","");;}
Selbiges für MyShellyPlus2Pm_Channel1 mit button_1, power_1
2) Shelly Aktionen hinzugefügt:
a) Für den Schaltzustand (für Channel0 Gerät):
http://<ip-address-fhem>:8083/fhem?cmd=set%20MyShellyPlus2PmChannel0%20on
Selbiges für MyShellyPlus2PmGarage_Channel1
b) Für die Leistungswerte (Beispiel hier Channel 0):
http://<ip-address-fhem>:8083/fhem?cmd=set%20ShellyPlus2PmChannel0%20power_0%20$active_power
Selbiges für MyShellyPlus2PmGarage_Channel1 mit power_1.
Shelly ersetzt $active_power mit den momentanen Leistungswerten.
Ich kann meine länger dauernden Versuche nicht mehr alle im Detail nachvollziehen, aber vielleicht helfen dem ein oder anderen diese Tipps...