Shelly Pro Dimmer 2PM
-
- Beiträge: 2
- Registriert: 18. Okt 2022 08:16
Shelly Pro Dimmer 2PM
Hallo zusammen,
ich möchte gern einen Shelly Pro Dimmer 2PM in Open Hab einbinden.
Leider finde kein Binding kann es sein das es das noch noch gibt ?
Könnte ich den auch anders einbinden ?
Freue mich über eine Rückmeldung
ich möchte gern einen Shelly Pro Dimmer 2PM in Open Hab einbinden.
Leider finde kein Binding kann es sein das es das noch noch gibt ?
Könnte ich den auch anders einbinden ?
Freue mich über eine Rückmeldung
- peter-pan
- Beiträge: 2758
- Registriert: 28. Nov 2018 12:03
- Wohnort: Schwäbisch Gmünd
Re: Shelly Pro Dimmer 2PM
Schau mal im Add-On-Store ->Bindings in der Main-UI. Da solltest du eigentlich fündig werden:
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
Pi5/8GB(PiOS Lite 64-bit(bookworm)/SSD 120GB - OH4.3.5 openhabian
- udo1toni
- Beiträge: 15240
- Registriert: 11. Apr 2018 18:05
- Wohnort: Darmstadt
Re: Shelly Pro Dimmer 2PM
Ansonsten ginge auch immer noch die Einbindung mittels mqtt
das beherrschen die Shelly Geräte auch alle.

openHAB4.3.3 stable in einem Debian-Container (bookworm) (Proxmox 8.3.5, LXC), mit openHABian eingerichtet
-
- Beiträge: 224
- Registriert: 23. Jul 2020 17:49
- Wohnort: Kreis Wesel
-
- Beiträge: 1
- Registriert: 18. Mai 2023 20:15
Re: Shelly Pro Dimmer 2PM
Ich habe mit verschiedenen Shelly Modellen Probleme. Teilweise wohl, weil sie von OH noch gar nicht unterstützt werden, teilweise wegen der aktuellen Firmware Version.
Diese binde ich dann über MQTT ein. Zum Ein-und Ausschalten und Statusabfrage reicht es.
Diese binde ich dann über MQTT ein. Zum Ein-und Ausschalten und Statusabfrage reicht es.
- udo1toni
- Beiträge: 15240
- Registriert: 11. Apr 2018 18:05
- Wohnort: Darmstadt
Re: Shelly Pro Dimmer 2PM
Über mqtt sollten sich die Shelly Geräte alle vollständig steuern lassen. Allerdings ist die API... nunja... Murks, um es mal freundlich zu formulieren.
Letztlich muss man alles zu Fuß konfigurieren, jeden Pfad, jeden Wert, und teilweise muss man weite Umwege gehen, um triviale Funktionen zu steuern.
Ich habe all meine Shelly Devices mit Tasmota geflasht (ich habe nur solche Geräte, die auch kompatibel sind...) und damit ist die vollständige Steuerung vergleichsweise ein Kinderspiel.
Letztlich muss man alles zu Fuß konfigurieren, jeden Pfad, jeden Wert, und teilweise muss man weite Umwege gehen, um triviale Funktionen zu steuern.
Ich habe all meine Shelly Devices mit Tasmota geflasht (ich habe nur solche Geräte, die auch kompatibel sind...) und damit ist die vollständige Steuerung vergleichsweise ein Kinderspiel.
openHAB4.3.3 stable in einem Debian-Container (bookworm) (Proxmox 8.3.5, LXC), mit openHABian eingerichtet
-
- Beiträge: 29
- Registriert: 10. Feb 2023 12:30
Re: Shelly Pro Dimmer 2PM
Hallo liebes Forum,
ich habe das gleiche Problem und bekomme meinen ProDimmer2PM nicht über Openhab zum laufen. Bin eher Anfänger und Tasmota flashen ist daher für mich kein ganbarer Weg.
Ich habe aber das MQTT Binding installiert und beim ProDimmer2PM auch MQTT aktiviert. Nur hab ich keine Ahnung wie ich jetzt z.B. Einen an/aus Chanel meines Shelly's über MQTT in openhab bekomme. Vielleicht kan mir jemand ein Screenshot oder ähnliches senden
besten Dank
ich habe das gleiche Problem und bekomme meinen ProDimmer2PM nicht über Openhab zum laufen. Bin eher Anfänger und Tasmota flashen ist daher für mich kein ganbarer Weg.
Ich habe aber das MQTT Binding installiert und beim ProDimmer2PM auch MQTT aktiviert. Nur hab ich keine Ahnung wie ich jetzt z.B. Einen an/aus Chanel meines Shelly's über MQTT in openhab bekomme. Vielleicht kan mir jemand ein Screenshot oder ähnliches senden
besten Dank
- udo1toni
- Beiträge: 15240
- Registriert: 11. Apr 2018 18:05
- Wohnort: Darmstadt
Re: Shelly Pro Dimmer 2PM
Screenshot nicht, aber als ersten Anhaltspunkt hier die API Doku: https://shelly-api-docs.shelly.cloud/ge ... Dimmer2PM/
wobei der interessante Teil unter https://shelly-api-docs.shelly.cloud/ge ... tt-control startet.
Das heißt, das commandTopic wird so aussehen: <topic_prefix>/command/<component:id>, wobei <topic_prefix> gerätespezifisch ist und <component:id> mutmaßlich light:0 bzw. light:1 heißt. Und dann wird es vermutlich Set als Topic geben, wobei dort dann eine JSON Payload hingeschickt werden muss:
Diese Payload musst über formatBeforePublish erzeugt werden, <value> wird dabei durch ein %f ersetzt, also so:
Weil die Payload selbst doppelte Anführungszeichen enthält, muss der String mit einfachen Anführungszeichen markiert werden.
In der Gegenrichtung sollte das stateTopic dann so aussehen: <topic_prefix>/status/<component:id>, sinngemäß wie oben.
Das Topic liefert dann ebenfalls ein JSON zurück, also braucht es ein passendes transformationPattern, so:
Wobei die API Doku hier ein konkretes Beispiel schuldig bleibt, es wäre also nicht ganz unwichtig, die echte gelieferte Payload mittels MQTT Explorer (oder einem ähnlichen Werkzeug) anzuschauen und den JSONPath notfalls erst mal anzupassen.
Da ich selbst keinen solchen Dimmer habe, ist der Pfad halt nur geraten
Der Dimmer hat nur einen Thing Channel (bzw. zwei, weil es ja ein Doppel-Dimmer ist)! Es gibt keinen extra Channel zum Ein- oder Ausschalten, das geschieht durch Helligkeit 0 bzw. 100 (oder eben den gewünschten Helligkeitswert)
Wahlweise kann man in das Set Command JSON auch noch eine Dimmzeit eintragen, mit einem weiteren Datenpunkt, transition_duration, was die Dauer des Blendvorgangs in Sekunden angibt. Allerdings ist das wohl immer auf Start- und Ziel bezogen, sprich, bei einer fixen transition_duration 10, braucht der Dimmer immer diese 10 Sekunden, egal ob nun von 0 % auf 100 % gedimmt wird oder von 95 % auf 90 %.
Eventuell geht das Dimmen auch nur über den rpc Channel... habe ich schon erwähnt, dass Shelly das alles maximal komplex gestaltet und die (eigentlich sehr gute) Doku hier auch nicht eben hilfreich ist?
wobei der interessante Teil unter https://shelly-api-docs.shelly.cloud/ge ... tt-control startet.
Das heißt, das commandTopic wird so aussehen: <topic_prefix>/command/<component:id>, wobei <topic_prefix> gerätespezifisch ist und <component:id> mutmaßlich light:0 bzw. light:1 heißt. Und dann wird es vermutlich Set als Topic geben, wobei dort dann eine JSON Payload hingeschickt werden muss:
Code: Alles auswählen
{"id":0,"brightness":<value>}
Code: Alles auswählen
formatBeforePublish: '{"id":0,"brightness":%f}'
In der Gegenrichtung sollte das stateTopic dann so aussehen: <topic_prefix>/status/<component:id>, sinngemäß wie oben.
Das Topic liefert dann ebenfalls ein JSON zurück, also braucht es ein passendes transformationPattern, so:
Code: Alles auswählen
transformationPattern: JSONPATH:$["light:0"].brightness
Da ich selbst keinen solchen Dimmer habe, ist der Pfad halt nur geraten

Der Dimmer hat nur einen Thing Channel (bzw. zwei, weil es ja ein Doppel-Dimmer ist)! Es gibt keinen extra Channel zum Ein- oder Ausschalten, das geschieht durch Helligkeit 0 bzw. 100 (oder eben den gewünschten Helligkeitswert)
Wahlweise kann man in das Set Command JSON auch noch eine Dimmzeit eintragen, mit einem weiteren Datenpunkt, transition_duration, was die Dauer des Blendvorgangs in Sekunden angibt. Allerdings ist das wohl immer auf Start- und Ziel bezogen, sprich, bei einer fixen transition_duration 10, braucht der Dimmer immer diese 10 Sekunden, egal ob nun von 0 % auf 100 % gedimmt wird oder von 95 % auf 90 %.
Eventuell geht das Dimmen auch nur über den rpc Channel... habe ich schon erwähnt, dass Shelly das alles maximal komplex gestaltet und die (eigentlich sehr gute) Doku hier auch nicht eben hilfreich ist?
openHAB4.3.3 stable in einem Debian-Container (bookworm) (Proxmox 8.3.5, LXC), mit openHABian eingerichtet
-
- Beiträge: 29
- Registriert: 10. Feb 2023 12:30
Re: Shelly Pro Dimmer 2PM
Hallo Udo1toni,
auf Dich ist Verlass, du beantwortest hier sehr viel. Wie gesagt bin ich Anfänger und kann meinem Shelly im MQTT Explorer beim Arbeiten zusehen. Auf zwei Bildern sieht man wenn er light ID:0 ein- bzw. ausgeschalten ist.
Bild 1 : Promimmer2-Licht ID0 Eingeschalten
![Bild]()
Bild 2 : Prodimmer2-Licht ID0 ausgeschalten
![Bild]()
Im MQTT Explorer sieht man beim Ein- und Ausschalten des Dimmers den Wechsel von output true zu output false aber ich hab noch nicht mal verstanden was ich im MQTT Explorer eingeben müsste um diesen Statuswechsel zu inizieren und somit bin ich wohl noch viele Schritte vom Einbinden des Shellies über MQTT ins OH entfernt. Irgendie sieht es nicht nach einem einfachen Topic sondern nach einem langen String aus ?
auf Dich ist Verlass, du beantwortest hier sehr viel. Wie gesagt bin ich Anfänger und kann meinem Shelly im MQTT Explorer beim Arbeiten zusehen. Auf zwei Bildern sieht man wenn er light ID:0 ein- bzw. ausgeschalten ist.
Bild 1 : Promimmer2-Licht ID0 Eingeschalten
Bild 2 : Prodimmer2-Licht ID0 ausgeschalten
Im MQTT Explorer sieht man beim Ein- und Ausschalten des Dimmers den Wechsel von output true zu output false aber ich hab noch nicht mal verstanden was ich im MQTT Explorer eingeben müsste um diesen Statuswechsel zu inizieren und somit bin ich wohl noch viele Schritte vom Einbinden des Shellies über MQTT ins OH entfernt. Irgendie sieht es nicht nach einem einfachen Topic sondern nach einem langen String aus ?
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
- udo1toni
- Beiträge: 15240
- Registriert: 11. Apr 2018 18:05
- Wohnort: Darmstadt
Re: Shelly Pro Dimmer 2PM
Der output Parameter ist für openHAB irrelevant, es zählt hier ausschließlich brightness. Sobald die Steuerung über openHAB erfolgt, wird da dann bei ausgeschaltetem Licht auch zuverlässig eine 0 stehen 
Wie es aussieht liefert Shelly das JSON ja getrennt pro Channel aus, entsprechend musst Du die Topics ergänzen.
Beispiel:
Neben mqtt müssen außerdem regex und jsonpath Transformation installiert sein.
Ob die Befehle so korrekt sind, weiß ich natürlich nicht.
Wie schon häufiger erwähnt stehe ich mit der Shelly Doku etwas auf Kriegsfuß...

Wie es aussieht liefert Shelly das JSON ja getrennt pro Channel aus, entsprechend musst Du die Topics ergänzen.
Beispiel:
Code: Alles auswählen
UID: mqtt:topic:mosquitto:shellyprodm2pm_1
label: Shelly pro Dimmer 2 pm 1
thingTypeUID: mqtt:topic
configuration:
payloadNotAvailable: "false"
availabilityTopic: shellyprodm2pm-fce8c0d8c2ac/online
payloadAvailable: "true"
bridgeUID: mqtt:broker:mosquitto
channels:
- id: ch1
channelTypeUID: mqtt:dimmer
label: Dimmer Channel 1
configuration:
retained: false
postCommand: false
formatBeforePublish: '{"brightness":%d}'
commandTopic: shellyprodm2pm-fce8c0d8c2ac/command/light:0
step: 1
stateTopic: shellyprodm2pm-fce8c0d8c2ac/status/light:0
transformationPattern:
- REGEX:(.*brightness.*)∩JSONPATH:$.brightness
- id: ch2
channelTypeUID: mqtt:dimmer
label: Dimmer Channel 2
configuration:
retained: false
postCommand: false
formatBeforePublish: '{"brightness":%d}'
commandTopic: shellyprodm2pm-fce8c0d8c2ac/command/light:1
step: 1
stateTopic: shellyprodm2pm-fce8c0d8c2ac/status/light:1
transformationPattern:
- REGEX:(.*brightness.*)∩JSONPATH:$.brightness
Ob die Befehle so korrekt sind, weiß ich natürlich nicht.
Wie schon häufiger erwähnt stehe ich mit der Shelly Doku etwas auf Kriegsfuß...
openHAB4.3.3 stable in einem Debian-Container (bookworm) (Proxmox 8.3.5, LXC), mit openHABian eingerichtet