Rolladensteuerung mit Shelly 2.5
-
- Beiträge: 84
- Registriert: 11. Mär 2019 15:47
Re: Rolladensteuerung mit Shelly 2.5
Ist das deine vollständige Thing-Datei? Muss ich da ggf. etwas verändern?
Ich habe alles so kopiert. Auf Prozente fahren klappt tatsächlich damit.
Allerdings sind bei mir die Schalter (auf, ab) verdreht und die Funktion "Stop" funktioniert nicht.
Ich habe alles so kopiert. Auf Prozente fahren klappt tatsächlich damit.
Allerdings sind bei mir die Schalter (auf, ab) verdreht und die Funktion "Stop" funktioniert nicht.
-
- Beiträge: 162
- Registriert: 28. Dez 2017 11:37
Re: Rolladensteuerung mit Shelly 2.5
meine things Datei ist riesig. Aber so sollte es klappen:
Code: Alles auswählen
Bridge mqtt:broker:mosquitto "Mosquitto" [ host="localhost", port=1883, secure=false, username="openhabian", password="PASSWORD", clientID="openHAB" ]
{
Thing topic Shelly25-01 "Rollladen_WZ_01" {
Channels:
Type string : online "online" [ stateTopic="shellies/shellyswitch25-5D98C1/online" ]
Type rollershutter : control "control" [ stateTopic="shellies/shellyswitch25-5D98C1/roller/0/pos", commandTopic="shellies/shellyswitch25-5D98C1/roller/0/command/pos", transformationPattern="JS:InvertPercent.js", transformationPatternOut="JS:InvertPercent.js" ]
}
}
-
- Beiträge: 84
- Registriert: 11. Mär 2019 15:47
Re: Rolladensteuerung mit Shelly 2.5
Das Problem der umgekehrten Ansteuerung scheine ich gefunden zu haben.
Wo liegt mein Fehler?
Die Datei "InvertPercent.js" habe ich im transform-Ordner angelegt. Der Inhalt ist identisch mit deiner Datei.
EDIT:
Lag wohl daran, dass ich die javascript transformation nicht installiert hatte. Das habe ich nun nachgeholt und die Fehlermeldung erscheint nicht mehr. Die Rollade verwechselt aber leider immer noch die Kommandos.
Code: Alles auswählen
2019-08-13 16:05:45.341 [WARN ] [l.generic.ChannelStateTransformation] - Transformation service JS for pattern InvertPercent.js not found!
Die Datei "InvertPercent.js" habe ich im transform-Ordner angelegt. Der Inhalt ist identisch mit deiner Datei.
EDIT:
Lag wohl daran, dass ich die javascript transformation nicht installiert hatte. Das habe ich nun nachgeholt und die Fehlermeldung erscheint nicht mehr. Die Rollade verwechselt aber leider immer noch die Kommandos.
-
- Beiträge: 162
- Registriert: 28. Dez 2017 11:37
Re: Rolladensteuerung mit Shelly 2.5
zum testen kannst du einfach mal diese Zeile ändern:
return percent_oh.toFixed(0);
in
return 20;
Dann sollte egal bei welchem Befehl immer auf 20% geöffnet werden. Funktioniert das? Falls nicht, stimmen die Berechtigungen auf die InvertPercent.js Datei? Liegt sie im transform Verzeichnis?
return percent_oh.toFixed(0);
in
return 20;
Dann sollte egal bei welchem Befehl immer auf 20% geöffnet werden. Funktioniert das? Falls nicht, stimmen die Berechtigungen auf die InvertPercent.js Datei? Liegt sie im transform Verzeichnis?
-
- Beiträge: 84
- Registriert: 11. Mär 2019 15:47
Re: Rolladensteuerung mit Shelly 2.5
Hm also irgendwas stimmt da bei mir vorne und hinten nicht.
MIt der Änderung "return ;" fährt die Rollade immer noch falsch. Der Wert in der Sitemap wird dann aber durchgehend als "20" angezeigt.
Screenshot:
Zur Übersicht hier einfach mal meine ganzen relevanten Dateien.
mqtt.things
transform/InvertPercent.js
rollershutter.items
Über einen Dummyswitch und entsprechender rule lässt sich die Rollade problemlos auf z. B. 30 % anfahren.
Über das "Rolltershutter-Item" ist aber alles verdreht.
MIt der Änderung "return ;" fährt die Rollade immer noch falsch. Der Wert in der Sitemap wird dann aber durchgehend als "20" angezeigt.
Screenshot:
Zur Übersicht hier einfach mal meine ganzen relevanten Dateien.
mqtt.things
Code: Alles auswählen
Bridge mqtt:broker:brokerhome [ host="123.456.789.00", port=1111, secure=false, username="xxx", password="xxx" ]{
Thing topic shelly {
Channels:
Type rollershutter : control "control" [ stateTopic="shellies/shellyswitch25-E66FB6/roller/0/pos", commandTopic="shellies/shellyswitch25-E66FB6/roller/0/command/pos", transformationPattern="JS:InvertPercent.js", transformationPatternOut="JS:InvertPercent.js" ]
}
}
Code: Alles auswählen
(function(i) {
// shelly 0 = Closed / 100 = open
// oh2 UP cmnd = 0 / DOWN cmnd = 100
//The following script converts [0% - 100%] to [100% - 0%].
var percent_shelly = parseInt(i, 10);
var percent_oh = (100.0 - percent_shelly);
//Return result with one decimal accuracy
return 20;
})(input)
Code: Alles auswählen
Rollershutter Rollade_Kueche "Rollade Küche" (Rolladen) { channel="mqtt:topic:brokerhome:shelly:control" }
Über das "Rolltershutter-Item" ist aber alles verdreht.
- auf stop fährt die Rollade herunter
- und rauf bzw. runter sind vertauscht
-
- Beiträge: 162
- Registriert: 28. Dez 2017 11:37
Re: Rolladensteuerung mit Shelly 2.5
hmm, ja, der komisch. ich kann nur sagen, dass es bei mir so geht. vielleicht mal den openhab cache leeren? ich wuerde auch mal mit einem mqtt client lauschen, welcher wert denn an command/pos geschickt wird. da sollte der invertierte wert zu sehen sein.
-
- Beiträge: 84
- Registriert: 11. Mär 2019 15:47
Re: Rolladensteuerung mit Shelly 2.5
Hm, das habe ich auch alles schon versucht.
Runterfahren = close und ganz zu ist dann 0. Das passt ja dann eigentlich zum Script der InvertPercent.js.
Was für mich halt auch unerklärlich ist, dass er auf "stop" nicht mit STOP reagiert. Stop wird bei mir ja anscheinend als "runter" bzw. "close" gewertet.
Steht total auf dem Schlauch
Runterfahren = close und ganz zu ist dann 0. Das passt ja dann eigentlich zum Script der InvertPercent.js.
Was für mich halt auch unerklärlich ist, dass er auf "stop" nicht mit STOP reagiert. Stop wird bei mir ja anscheinend als "runter" bzw. "close" gewertet.
Steht total auf dem Schlauch
-
- Beiträge: 162
- Registriert: 28. Dez 2017 11:37
Re: Rolladensteuerung mit Shelly 2.5
aber es wird doch nur UP oder DOWN mit Zahlenwerten verwendet. kein close oder open
-
- Beiträge: 84
- Registriert: 11. Mär 2019 15:47
Re: Rolladensteuerung mit Shelly 2.5
Close und open bekomme ich aber im mqtt. fx angezeigt. Darauf war das bezogen. Ich sehe da in keinem Topic was von UP oder DOWN. Bei mir tauchen nur die Prozentwerte und Close/Open/Stop auf.
-
- Beiträge: 26
- Registriert: 21. Dez 2018 22:55
Re: Rolladensteuerung mit Shelly 2.5
ich nutze die shelly 2.5 positionsgesteuert auf oh 2.4
THING
ITEM
SITEMAP
habe 16 Stück im Einsatz und die laufen ohne Probleme.
Die Steuerung über Slider funktioniert gut. 50% entsprechen allerdings nicht dem halben Fenster, da der Shelly über working time arbeitet. d.h. der Weg aus dem Rollokasten raus zählt auch mit, ebenso die Zeit bis alle Lamellen geschlossen sind, wenn er runter fährt
THING
Code: Alles auswählen
// Wohnzimmer-Essplatz
// IP 192.168.178.43
Thing mqtt:topic:shellyswitch25-733D91 "Rollo WZ Essplatz" (mqtt:broker:mosquitto) {
Channels:
Type rollershutter : shelly_d "Rolladen Essen" [ commandTopic="shellies/shellyswitch25-733D91/roller/0/command/pos", stateTopic="shellies/shellyswitch25-733D91/roller/0/pos"]
}
Code: Alles auswählen
Rollershutter RS_WZ_Ess "Rollladen Essplatz" (gAllshutter, gEGshutter, gEGRS_WZ, gEGRS_WZKUE, gRSsued) [ "Lighting" ] {channel="mqtt:topic:shellyswitch25-733D91:shelly_d"}
Code: Alles auswählen
Text label="Wohnen/Essen" icon="parents_1_1" {
Switch item=gEGRS_WZ label="Alle Rolläden" icon="rollershutter" mappings=[100="OPEN", 70="3/4", 30="1/3", 0="CLOSE"]
Slider item=RS_WZ_Ess label="Wohnen Essplatz [%d %%]" icon="rollershutter"
Slider item=RS_WZ_Sofa label="Wohnen Terasse [%d %%]" icon="rollershutter"
Slider item=RS_WZ_LB label="Wohnen Lichtband [%d %%]" icon="rollershutter"
}
Die Steuerung über Slider funktioniert gut. 50% entsprechen allerdings nicht dem halben Fenster, da der Shelly über working time arbeitet. d.h. der Weg aus dem Rollokasten raus zählt auch mit, ebenso die Zeit bis alle Lamellen geschlossen sind, wenn er runter fährt