NEWS
Jarvis V3 - BlindLevelAction + Shelly Wave Shutter
-
Hallo zusammen,
ich komme mit voran bei Jalousie mit dingz + Shelly Wave Shutter - 1. Mal iobroker (Jalouisien wurden Anfang der Woche montiert) und mache mir gerade eine schlichte Visulisierung, wofĂŒr sich Jarvis seht gut eignet.
Ăber Jarvis V3 - BlindLevelAction bin ich auf RolllĂ€den / Blind v3 | jarvis-Infos gestossen.Wie ich aber nun meinen Shelly Wave Shutter â Shelly Europe darin steuere ist mir dennoch schleierhaft. Ich habe es mal kurz probiert aber klappt nicht so wirklich.
Ich verwende momentan nur die Hoch- und Runter-Befehle.
Beide haben den Zustand An oder Stop.
Wie konfigurieren ich nunBlindLevelActiondass

folgendes setzt:- Hoch:
up_001=1&down_001=0 - Runter:
up_001=0&down_001=1 - Stop: :
up_001=0&down_001=0
vielen dank
stefan - Hoch:
-
Hallo zusammen,
ich komme mit voran bei Jalousie mit dingz + Shelly Wave Shutter - 1. Mal iobroker (Jalouisien wurden Anfang der Woche montiert) und mache mir gerade eine schlichte Visulisierung, wofĂŒr sich Jarvis seht gut eignet.
Ăber Jarvis V3 - BlindLevelAction bin ich auf RolllĂ€den / Blind v3 | jarvis-Infos gestossen.Wie ich aber nun meinen Shelly Wave Shutter â Shelly Europe darin steuere ist mir dennoch schleierhaft. Ich habe es mal kurz probiert aber klappt nicht so wirklich.
Ich verwende momentan nur die Hoch- und Runter-Befehle.
Beide haben den Zustand An oder Stop.
Wie konfigurieren ich nunBlindLevelActiondass

folgendes setzt:- Hoch:
up_001=1&down_001=0 - Runter:
up_001=0&down_001=1 - Stop: :
up_001=0&down_001=0
vielen dank
stefan@packelend Shelly-Adapter nutzen, siehe github Kommentar.
- Hoch:
-
@packelend Shelly-Adapter nutzen, siehe github Kommentar.
-
@mcu gerade dort beantwortet đ
https://github.com/Zefau/ioBroker.jarvis/issues/2869#issuecomment-2601428887
@packelend Ja, da wird man ein Skript schreiben mĂŒssen, das die notwendigen DPs emuliert.
-
@packelend Ja, da wird man ein Skript schreiben mĂŒssen, das die notwendigen DPs emuliert.
-
@packelend Das Skript muss die DPs erstellen und mit den DPs vom z-wave verbinden.
Du hast ja kein Stop und activity-DP.
Soweit ich es verstanden habe setzt man im DPzwave2.0.Node_003.Multilevel_Switch.targetValue_001den Wert der Position, wo das Rollo hin soll.-> Neues GerÀt mit Gewerk
blindbzwRollladenDort die Standard-DPs anlegen


FĂŒr Stop und activity fehlt noch das Skript.
Stop
Programm -> boolean DP true ->
zwave2.0.Node_003.Multilevel_Switch.down_001= false undzwave2.0.Node_003.Multilevel_Switch.up_001= false, wie du es erklÀrt hastactivity
on () Ănderungen der DPs down und up -> falls einer true -> activity = true
-
@packelend Das Skript muss die DPs erstellen und mit den DPs vom z-wave verbinden.
Du hast ja kein Stop und activity-DP.
Soweit ich es verstanden habe setzt man im DPzwave2.0.Node_003.Multilevel_Switch.targetValue_001den Wert der Position, wo das Rollo hin soll.-> Neues GerÀt mit Gewerk
blindbzwRollladenDort die Standard-DPs anlegen


FĂŒr Stop und activity fehlt noch das Skript.
Stop
Programm -> boolean DP true ->
zwave2.0.Node_003.Multilevel_Switch.down_001= false undzwave2.0.Node_003.Multilevel_Switch.up_001= false, wie du es erklÀrt hastactivity
on () Ănderungen der DPs down und up -> falls einer true -> activity = true
@mcu said in Jarvis V3 - BlindLevelAction + Shelly Wave Shutter:
@packelend Das Skript muss die DPs erstellen und mit den DPs vom z-wave verbinden.
probiere ich heute Abend, wenn mich mein Kinde machen lÀsst (Frau ist unterwegs).
-
@mcu said in Jarvis V3 - BlindLevelAction + Shelly Wave Shutter:
@packelend Das Skript muss die DPs erstellen und mit den DPs vom z-wave verbinden.
probiere ich heute Abend, wenn mich mein Kinde machen lÀsst (Frau ist unterwegs).
@packelend Ich mache mal ein Beispiel fertig. wo ist der Unterschied zwischen down_001 und down_002?
-
@mcu said in Jarvis V3 - BlindLevelAction + Shelly Wave Shutter:
@packelend Das Skript muss die DPs erstellen und mit den DPs vom z-wave verbinden.
probiere ich heute Abend, wenn mich mein Kinde machen lÀsst (Frau ist unterwegs).
@packelend Probiere mal.
// ********************* // Shelly Z-Wave v1.0.2 // ********************* // ToDo // - fĂŒr jedes Rollo eigenes Skript // - programm starten -> DPs werden angelegt // - DPs in einem neuen GerĂ€t in jarvis zuordnen // - Standard-datenpunkte erzeugen und die angelegten DPs verwenden // pro Rollladen anpassen let shellyDP = 'zwave2.0.Node_003' let jarvisDP = '0_userdata.0.jarvis.blindX' // shelly z-wave-DPs let downDP = shellyDP + '.Multilevel_Switch.down_001' let upDP = shellyDP + '.Multilevel_Switch.up_001' let levelDP = shellyDP + '.Multilevel_Switch.currentValue_001' let levelSetDP = shellyDP + '.Multilevel_Switch.targetValue_001' // jarvis-DPs, die werden in jarvis genutzt fĂŒr das GerĂ€t let jarvisLevelDP = jarvisDP + '.level' let jarvisStopDP = jarvisDP + '.stop' let jarvisActivityDP = jarvisDP + '.activity' createStateAsync(jarvisActivityDP, {read: true, write: true, name: "Jarvis Activity DP", desc:'', type: "boolean", role: "", unit:'', def: false }); createStateAsync(jarvisStopDP, {read: true, write: true, name: "Jarvis Stop DP", desc:'', type: "boolean", role: "", unit:'', def: false }); createStateAsync(jarvisLevelDP, {read: true, write: true, name: "Jarvis Level DP", desc:'', type: "number", role: "", unit:'', def: 0 }); on({id: downDP, change: "any"}, function (obj) { let value = obj.state.val; if(value){ setState(jarvisActivityDP, true, true) setState(jarvisStopDP, false, true) }else{ if(getState(upDP).val){ setState(jarvisActivityDP, true, true) setState(jarvisStopDP, false, true) }else{ setState(jarvisActivityDP, false, true) setState(jarvisStopDP, false, true) } } }); on({id: upDP, change: "any"}, function (obj) { let value = obj.state.val; if(value){ setState(jarvisActivityDP, true, true) setState(jarvisStopDP, false, true) }else{ if(getState(downDP).val){ setState(jarvisActivityDP, true, true) setState(jarvisStopDP, false, true) }else{ setState(jarvisActivityDP, false, true) setState(jarvisStopDP, false, true) } } }); on({id: jarvisStopDP, change: "any"}, function (obj) { let value = obj.state.val; if(value){ setState(upDP, false) setState(downDP, false) } }); on({id: jarvisLevelDP, change: "any"}, function (obj) { let value = obj.state.val; setState(levelSetDP, value) });Angepasst v1.0.2
-
@packelend Ich mache mal ein Beispiel fertig. wo ist der Unterschied zwischen down_001 und down_002?
@mcu said in Jarvis V3 - BlindLevelAction + Shelly Wave Shutter:
@packelend Ich mache mal ein Beispiel fertig
:hearts: :hearts: :hearts:
@mcu said in Jarvis V3 - BlindLevelAction + Shelly Wave Shutter:
wo ist der Unterschied zwischen down_001 und down_002?
Der Shutter hat zwei Betriebsmoden:- Rolladen
- Jalousie
bei zweiterem sind es bei Endpoints:
- Jalousie hoch und runter
2.. Lamelen drehen
Jeder Endpoint auch wiederrum mit seinen eigenen Laufzeiten, Zielwerten etc.
-
@mcu said in Jarvis V3 - BlindLevelAction + Shelly Wave Shutter:
@packelend Ich mache mal ein Beispiel fertig
:hearts: :hearts: :hearts:
@mcu said in Jarvis V3 - BlindLevelAction + Shelly Wave Shutter:
wo ist der Unterschied zwischen down_001 und down_002?
Der Shutter hat zwei Betriebsmoden:- Rolladen
- Jalousie
bei zweiterem sind es bei Endpoints:
- Jalousie hoch und runter
2.. Lamelen drehen
Jeder Endpoint auch wiederrum mit seinen eigenen Laufzeiten, Zielwerten etc.
@packelend In duration kann man die Laufzeit festlegen, oder wird sie nur angezeigt?
Du hast aber nur RolllÀden, oder sind es unterschiedliche in den RÀumen?
Bei Level 0 ist der Rollo oben oder unten?
Bei setzen vom target wird dann automatisch die Richtung gesetzt? up / down? -
- Jalousien, keine RolllÀden: VANTA et VANTA+ - Storenmaterial AG
- unterschiedliche Höhen (KĂŒche und Zimmer haben unterschiedliche Fenster)
- Laufzeit fĂŒr hoch runter wird bei der Kalibrierung ermittelt. Dies kann aber noch angepasst werden. Die Laufzeit zum Drehen der Lamellen muss man hĂ€ndisch eintragen: Shelly Qubino Wave Shutter Calibration
- Level, meinst
currentValue_00x- 99: vollen offen,
- 25: 25% geöffnet, sprich Jalouise ist beinah unten
- 0: ganz geschlossen
- Target, schaltet je nach positiver oder negativer Differenz von
currentValue_00x-targetValue_00xdie enstprechende Richtung.current=10;target= 99: fÀhrt aufcurrent=41;target=10: fÀhrt zuup_001=stopoderdown_001=stop: Motor stopt
-
@packelend Probiere mal.
// ********************* // Shelly Z-Wave v1.0.2 // ********************* // ToDo // - fĂŒr jedes Rollo eigenes Skript // - programm starten -> DPs werden angelegt // - DPs in einem neuen GerĂ€t in jarvis zuordnen // - Standard-datenpunkte erzeugen und die angelegten DPs verwenden // pro Rollladen anpassen let shellyDP = 'zwave2.0.Node_003' let jarvisDP = '0_userdata.0.jarvis.blindX' // shelly z-wave-DPs let downDP = shellyDP + '.Multilevel_Switch.down_001' let upDP = shellyDP + '.Multilevel_Switch.up_001' let levelDP = shellyDP + '.Multilevel_Switch.currentValue_001' let levelSetDP = shellyDP + '.Multilevel_Switch.targetValue_001' // jarvis-DPs, die werden in jarvis genutzt fĂŒr das GerĂ€t let jarvisLevelDP = jarvisDP + '.level' let jarvisStopDP = jarvisDP + '.stop' let jarvisActivityDP = jarvisDP + '.activity' createStateAsync(jarvisActivityDP, {read: true, write: true, name: "Jarvis Activity DP", desc:'', type: "boolean", role: "", unit:'', def: false }); createStateAsync(jarvisStopDP, {read: true, write: true, name: "Jarvis Stop DP", desc:'', type: "boolean", role: "", unit:'', def: false }); createStateAsync(jarvisLevelDP, {read: true, write: true, name: "Jarvis Level DP", desc:'', type: "number", role: "", unit:'', def: 0 }); on({id: downDP, change: "any"}, function (obj) { let value = obj.state.val; if(value){ setState(jarvisActivityDP, true, true) setState(jarvisStopDP, false, true) }else{ if(getState(upDP).val){ setState(jarvisActivityDP, true, true) setState(jarvisStopDP, false, true) }else{ setState(jarvisActivityDP, false, true) setState(jarvisStopDP, false, true) } } }); on({id: upDP, change: "any"}, function (obj) { let value = obj.state.val; if(value){ setState(jarvisActivityDP, true, true) setState(jarvisStopDP, false, true) }else{ if(getState(downDP).val){ setState(jarvisActivityDP, true, true) setState(jarvisStopDP, false, true) }else{ setState(jarvisActivityDP, false, true) setState(jarvisStopDP, false, true) } } }); on({id: jarvisStopDP, change: "any"}, function (obj) { let value = obj.state.val; if(value){ setState(upDP, false) setState(downDP, false) } }); on({id: jarvisLevelDP, change: "any"}, function (obj) { let value = obj.state.val; setState(levelSetDP, value) });Angepasst v1.0.2
-
habe die Test gemacht, letzter Post ist angepast.
@mcu said in Jarvis V3 - BlindLevelAction + Shelly Wave Shutter:
Angepasst v1.0.2
das geht in den Adapter Skripte?

@packelend Ja, da mĂŒsste das Script hinzugefĂŒgt werden.
Da du ja Jalousien hast, nutzt du fĂŒr die EinstellungtargetValue_002?
targetValue_001wĂ€re ja fĂŒr einen Rollladen, oder?
Sprich bei Dir wĂŒrdetargetValue_001nicht funktionieren?-> Das script mĂŒsste dann noch angepasst werden.
-
@packelend Ja, da mĂŒsste das Script hinzugefĂŒgt werden.
Da du ja Jalousien hast, nutzt du fĂŒr die EinstellungtargetValue_002?
targetValue_001wĂ€re ja fĂŒr einen Rollladen, oder?
Sprich bei Dir wĂŒrdetargetValue_001nicht funktionieren?-> Das script mĂŒsste dann noch angepasst werden.
@mcu said in Jarvis V3 - BlindLevelAction + Shelly Wave Shutter:
Da du ja Jalousien hast, nutzt du fĂŒr die Einstellung targetValue_002?
bisher noch nicht, hauptsache erstmal nur voll geschlossen, voll offen. Damit hÀngt mir meine Familie nicht mehr im Nacken :grimacing: .
- Momentan reichen mir
up_001oderdown_001. - Im nÀchsten Schritt dann
targetValue_001. - SpÀter kommt dann
targetValue_002hinzu bzw.up_002oderdown_002.
let shellyDP = 'zwave2.0.Node_003'kann ich auch ersetzen durch Alias?
Bin mir noch ein Bilder machen ĂŒber Alias und Kategorie . - Momentan reichen mir
-
@mcu said in Jarvis V3 - BlindLevelAction + Shelly Wave Shutter:
Da du ja Jalousien hast, nutzt du fĂŒr die Einstellung targetValue_002?
bisher noch nicht, hauptsache erstmal nur voll geschlossen, voll offen. Damit hÀngt mir meine Familie nicht mehr im Nacken :grimacing: .
- Momentan reichen mir
up_001oderdown_001. - Im nÀchsten Schritt dann
targetValue_001. - SpÀter kommt dann
targetValue_002hinzu bzw.up_002oderdown_002.
let shellyDP = 'zwave2.0.Node_003'kann ich auch ersetzen durch Alias?
Bin mir noch ein Bilder machen ĂŒber Alias und Kategorie .@packelend sagte in Jarvis V3 - BlindLevelAction + Shelly Wave Shutter:
kann ich auch ersetzen durch Alias?
Sind denn im alias alle DPs vorhanden? dann ja.
Zeig mal die alias Struktur - Momentan reichen mir
-
@packelend sagte in Jarvis V3 - BlindLevelAction + Shelly Wave Shutter:
kann ich auch ersetzen durch Alias?
Sind denn im alias alle DPs vorhanden? dann ja.
Zeig mal die alias Struktur@mcu said in Jarvis V3 - BlindLevelAction + Shelly Wave Shutter:
Zeig mal die alias Struktur
soweit bin ich noch nicht :), arbeite mich noch durchs Konzept Alias, Kategorie usw.
Ich habe 3x11 GerĂ€te von gleichen Typ. Ich möchte die irgendwie durch nen 2xMaster abdecken und nicht wegen jeder Ănderung dann weitere 10 Mal Ă€ndern mĂŒssen. -
dazu auch eine andere Frage
Mal schnell im einem Widget alles umbennen (Suchen&Ersetzen) geht nicht?
Hier alles auf Node_003 anpassen:

@packelend Schnell geht schon, man dadurch aber auch schnell alles kaputt machen.
Man kann oben rechts den Editor umschalten


Da kann man dann die DPs schnell anpassen. -
@packelend Schnell geht schon, man dadurch aber auch schnell alles kaputt machen.
Man kann oben rechts den Editor umschalten


Da kann man dann die DPs schnell anpassen.@mcu said in Jarvis V3 - BlindLevelAction + Shelly Wave Shutter:
@packelend Schnell geht schon, man dadurch aber auch schnell alles kaputt machen.
Man kann oben rechts kann man den Editor umschaltenda habe ich jetzt öfters geklickt passiert nichts :cry: