FHEM Forum

FHEM - Hausautomations-Systeme => Unterstützende Dienste => Thema gestartet von: KernSani am 14 Januar 2019, 00:11:37

Titel: 44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: KernSani am 14 Januar 2019, 00:11:37
Vor fast genau drei Jahren hat ThomasRamm die erste Version des 44_ROLLO-Moduls bereitgestellt. In der Zwischenzeit haben RettungsTim, cuni und Andere das Modul erweitert und verbessert. Mit dem morgigen Update wird es nun endlich auch in der offiziellen FHEM-Auslieferung enthalten sein.

Was bietet das Modul?
Das Modul ermöglicht es auch Rollläden, die nur on/off oder open/close/stop verstehen präzise anzusteuern.

Was sind die Voraussetzungen?
ROLLO steuert keine Rollläden direkt an, der Rollladen muss bereits als Device in FHEM existieren und funktionieren (mit Befehlen für "hoch", "runter" und "stop").

ToDo

Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: meier81 am 14 Januar 2019, 09:13:04
Hallo und guten Morgen,

es freut mich das das Modul nun in der offiziellen Auslieferung mit vorhanden ist.

Habe es gerade installiert und auch gleich den ersten Fehler gefunden. Das Modul interessiert sich nicht mehr für den Parameter rl_autoStop, das heißt egal was ich dort einstelle der Stop-Befehl wird immer mitgeschickt. Diesen hatte ich aber mit rl_autoStop=1 ausgeschaltet damit meine Rolladen immer in die Endstellung fahren bei 0% bzw. 100%.

Das könntest du dir nochmal anschauen.

Gruß
Markus
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: Frank_Huber am 14 Januar 2019, 11:16:32
auf dem Testsystem eingerichtet und bischen mit dem Rollo hin und her gefahren.
Funktional keine Fehler festgestellt.
im Log habe ich folgendes gefunden:
2019.01.14 11:09:36 1: PERL WARNING: Use of uninitialized value $desiredPos in concatenation (.) or string at ./FHEM/44_ROLLO.pm line 351.
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: KernSani am 14 Januar 2019, 13:08:06
@Markus: Schau ich mir heute abend an... Bin mir aber ziemlich sicher, dass es bei mir zu Hause funktioniert. Evtl. frage ich dann noch nach detaillierteren Infos (list des ROLLO bzw. verbose 5 log)

@Frank, die Meldung hatte ich auch bei einem neu definiertem ROLLO device, konnte sie dann aber nicht mehr nachvollziehen... Schau ich mir auch nochmal an.
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: meier81 am 14 Januar 2019, 19:42:40
Hallo und guten Abend,

hab natürlich heute morgen vergessen mit ein paar mehr Infos um die Ecke zu kommen, hier noch etwas von mir nachgeliefert:

Definition:

define RolladenWohnzimmer ROLLO
attr RolladenWohnzimmer alias Rolladen Fenster
attr RolladenWohnzimmer cmdIcon open:fts_shutter_up closed:fts_shutter_down stop:fts_shutter_manual half:fts_shutter_50
attr RolladenWohnzimmer devStateIcon open:fts_shutter_10:closed closed:fts_shutter_100:open half:fts_shutter_50:closed drive-up:fts_shutter_up@red:stop drive-down:fts_shutter_down@red:stop pct-100:fts_shutter_100:open pct-90:fts_shutter_80:closed pct-80:fts_shutter_80:closed pct-70:fts_shutter_70:closed pct-60:fts_shutter_60:closed pct-50:fts_shutter_50:closed pct-40:fts_shutter_40:open pct-30:fts_shutter_30:open pct-20:fts_shutter_20:open pct-10:fts_shutter_10:open pct-0:fts_shutter_10:closed
attr RolladenWohnzimmer group Rolladen
attr RolladenWohnzimmer rl_autoStop 1
attr RolladenWohnzimmer rl_commandDown set Kanal_1 down
attr RolladenWohnzimmer rl_commandStop set Kanal_1 stop
attr RolladenWohnzimmer rl_commandUp set Kanal_1 up
attr RolladenWohnzimmer rl_excessBottom 3
attr RolladenWohnzimmer rl_excessTop 0
attr RolladenWohnzimmer rl_resetTime 0
attr RolladenWohnzimmer rl_secondsDown 18
attr RolladenWohnzimmer rl_secondsUp 19
attr RolladenWohnzimmer rl_switchTime 1
attr RolladenWohnzimmer rl_type normal
attr RolladenWohnzimmer room Wohnzimmer
attr RolladenWohnzimmer webCmd open:closed:half:stop:pct


Im verbose 5 log ist keinerlei Eintrag vorhanden bezüglich dem fahren, sieht alles soweit gut aus. Hab zur Info das Modul schon länger im Einsatz, war dann das vom GitHub. Habe heute morgen den Eintrag für das automatische Update entfernt und dann ein FHEM-Update ausgeführt, damit kam es dann vom offiziellen FHEM-Server. Daraufhin habe ich dann die Einträge im Log für die Umbenennung der Attribute. Hat er aber auch einwandfrei erledigt.

Gruß

Markus
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: KernSani am 14 Januar 2019, 22:37:20
Danke für die Hinweise. Beide Bugs gefixt. Ab sofort im Github oder ab morgen im Update.
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: grappa24 am 15 Januar 2019, 11:00:21
Glückwunsch zum "go live" und danke für die Arbeit an dem Modul!

Frage:
Ich hatte mich "damals" (vergeblich) an den DOIFs zur Synchronisation mit einer externen Steuerung versucht, würde das gern noch mal in Angriff nehmen. Hat das mittlerweile jemand erfolgreich realisiert und kann mir eine "Leseempfehlung" geben?

Danke, Dieter
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: Frank_Huber am 15 Januar 2019, 11:03:45
Zitat von: grappa24 am 15 Januar 2019, 11:00:21
Ich hatte mich "damals" (vergeblich) an den DOIFs zur Synchronisation mit einer externen Steuerung versucht, würde das gern noch mal in Angriff nehmen. Hat das mittlerweile jemand erfolgreich realisiert und kann mir eine "Leseempfehlung" geben?

Hallo Dieter,

was für eine "externe Steuerung"?
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: grappa24 am 15 Januar 2019, 11:46:10
Wenn ich mein Rollo über vorhandenen Wandtaster steuere, muss ich ja dem Modul mitteilen, dass extern gesteuert wurde. Dafür gibt es ja den set extern Befehl: set <Rollo-Device> extern <value>
if the shutter is started/stopped externaly, you can inform the module so it can calculate the current pct
.
Zur Umsetzung gibts im Wiki diesen Ansatz: define rollo_manuell_auf DOIF ([meinRollo_Kanal1] eq "on" and [meinRolloModul] ne "drive-up") (set meinRolloModul extern open) DOELSEIF ([meinRollo_Kanal1] eq "off" and [meinRolloModul] eq "drive-up") (set meinRolloModul extern stop)
define rollo_manuell_ab  DOIF ([meinRollo_Kanal2] eq "on" and [meinRolloModul] ne "drive-down") (set meinRolloModul extern closed) DOELSEIF ([meinRollo_Kanal2] eq "off" and [meinRolloModul] eq "drive-down") (set meinRolloModul extern stop)
der aber so bei mir nie 100% funktionierte.

Ich suche jetzt jemanden, der diese beiden DOIFs korrekt am Laufen hat  ;)
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: Frank_Huber am 15 Januar 2019, 12:06:48
Zitat von: grappa24 am 15 Januar 2019, 11:46:10
Wenn ich mein Rollo über vorhandenen Wandtaster steuere, muss ich ja dem Modul mitteilen, dass extern gesteuert wurde. Dafür gibt es ja den set extern Befehl: set <Rollo-Device> extern <value>
if the shutter is started/stopped externaly, you can inform the module so it can calculate the current pct
.
Zur Umsetzung gibts im Wiki diesen Ansatz: define rollo_manuell_auf DOIF ([meinRollo_Kanal1] eq "on" and [meinRolloModul] ne "drive-up") (set meinRolloModul extern open) DOELSEIF ([meinRollo_Kanal1] eq "off" and [meinRolloModul] eq "drive-up") (set meinRolloModul extern stop)
define rollo_manuell_ab  DOIF ([meinRollo_Kanal2] eq "on" and [meinRolloModul] ne "drive-down") (set meinRolloModul extern closed) DOELSEIF ([meinRollo_Kanal2] eq "off" and [meinRolloModul] eq "drive-down") (set meinRolloModul extern stop)
der aber so bei mir nie 100% funktionierte.

Ich suche jetzt jemanden, der diese beiden DOIFs korrekt am Laufen hat  ;)
Die vorhandenen Taster gehen direkt auf den Rollo?
Oder auch an FHEM?

Gesendet von meinem Doogee S60 mit Tapatalk

Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: grappa24 am 15 Januar 2019, 12:19:22
Ist KNX, die Taster gehen a) direkt ans Rollo und b) auch an FHEM.

Das funktioniert alles soweit, auch das ROLLO-Modul läuft bei mir.

Die Idee hinter den DOIFs war (am Beispiel manuell_ab):
"Fährt das Rollo extern gesteuert runter und der Status des virtuellen Rollos ist nicht ,,drive-down" dann setze es auf ,,closed". Dabei wird sein Status automatisch auf ,,drive-down" gesetzt und ein timer gestartet.
Stoppt dann das Rollo während ,,das virtuelle Rollo noch runterfährt", dann stoppe auch das virtuelle Rollo"
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: Frank_Huber am 15 Januar 2019, 12:23:00
Du könntest alternativ die gesamte Steuerung an FHEM übergeben. Taster --> DOIF --> Rollo Modul --> Rollo

Gesendet von meinem Doogee S60 mit Tapatalk

Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: KernSani am 15 Januar 2019, 12:32:09
Zitat von: Frank_Huber am 15 Januar 2019, 12:23:00
Du könntest alternativ die gesamte Steuerung an FHEM übergeben. Taster --> DOIF --> Rollo Modul --> Rollo

Gesendet von meinem Doogee S60 mit Tapatalk


Wäre vielleicht ungeschickt, wenn FHEM nicht verfügbar ist.

Für genau das oben geschilderte Szenario wurde der "extern"-Befehl eingeführt. Ich schau mir das heute abend mal an.
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: KernSani am 15 Januar 2019, 21:23:21
@grappa24: Was konkret funktioniert denn nicht richtig mit dem extern-Ansatz? Vom Grundgedanken her sollte das genau so funktionieren. Ich könnte mir allerdings vorstellen, dass es z.B. Unterschiede in den Reaktionszeiten gibt, je nachdem ob extern oder über FHEM geschaltet wird und daher die Kalkulation nicht passt. Vielleicht kann man da mit einem Korrekturfaktor o.ä. arbeiten.
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: grappa24 am 15 Januar 2019, 22:31:33
@KernSani: Gut, wenn Du sagst, der Ansatz ist richtig, dann muss ich an meinem DOIF arbeiten; irgendwie läuft es nicht in den "set extern closed" Zweig rein. Es ist kein Problem der Reaktionszeiten.
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: Dersch am 15 Januar 2019, 22:46:28
Hi, super! Dann kann ich ja mein doif fürs Garagentor und selbst gebauter Steuerung ersetzen :)

Ich habe noch einen ReedKontakt am Garagentor um den unten Status genau zu wissen. Könnte die Abfrage eines solchen Sensors evtl noch ins Modul eingebaut werden?

Grüße
Dirk
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: grappa24 am 15 Januar 2019, 22:53:12
zum extern Befehl:

Wenn mein Rollo im state closed ist, führt ein "set Rollo extern open" dazu dass der state zu "drive-up" wechselt und nach der entspr. Zeit zu "open".

Wenn aber mein Rollo im state open ist, führt ein "set Rollo extern closed" nicht zur gewünschten state Änderung (drive-down).
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: KernSani am 15 Januar 2019, 23:49:20
Zitat von: grappa24 am 15 Januar 2019, 22:53:12
zum extern Befehl:

Wenn mein Rollo im state closed ist, führt ein "set Rollo extern open" dazu dass der state zu "drive-up" wechselt und nach der entspr. Zeit zu "open".

Wenn aber mein Rollo im state open ist, führt ein "set Rollo extern closed" nicht zur gewünschten state Änderung (drive-down).


Ich habe die "extern" Kommandos nochmal durchgetestet und einen Bug behoben (kommt morgen im Update), der dein Problem beheben sollte. Ist mit dem morgigen Update verfügbar (und sofort auf Github). Ich habe noch ein paar mehr Ungereimtheiten festgestellt, in der Kombination von "extern" mit Schalten in FHEM (z.B. ROLLO wird extern gestartet aber über normales "stop"-Kommando gestoppt). Das muss ich mir aber mal in Ruhe anschauen und werde ich in den nächsten Tagen fixen.

Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: grappa24 am 16 Januar 2019, 06:28:44
 @KernSani: Danke, das hab ich fast vermutet  ;) Das erklärt auch die vielen verzweifelten Versuche aus der "Vergangenheit" , diese beiden DOIFs umzusetzen.
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: grappa24 am 16 Januar 2019, 19:58:43
Zitat von: KernSani am 15 Januar 2019, 23:49:20
Ich habe die "extern" Kommandos nochmal durchgetestet und einen Bug behoben (kommt morgen im Update), der dein Problem beheben sollte.
super, jetzt läufts wie gedacht - danke!
sprich: Die Logik der beiden DOIFs lässt sich zunächst umsetzen, aber nutzt man die beiden im Wechsel kommt das Modul durcheinander, irgenwas stimmt da noch nicht ....
Titel: Reset Time
Beitrag von: stefan-dd am 19 Januar 2019, 17:23:10
Seid dem letzten Update hat das attr "rl_resetTime" keine Wirkung mehr. Gibt es eine Abhilfe dafür?
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: KernSani am 19 Januar 2019, 20:15:13
Zitat von: stefan-dd am 19 Januar 2019, 17:23:10
Seid dem letzten Update hat das attr "rl_resetTime" keine Wirkung mehr. Gibt es eine Abhilfe dafür?
Ich habe mir das gerade angesehen und kann keinen Fehler entdecken. Die resetTime wird bei mir korrekt zur Fahrzeit addiert, wenn 0 oder 100 (= open/closed) angefahren wird. Kannst du mir ein list des devices und ein verbose 5 log (während des Fahrens zur Endposition) zur Verfügung stellen?
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: KernSani am 19 Januar 2019, 20:16:49
Zitat von: grappa24 am 16 Januar 2019, 19:58:43
aber nutzt man die beiden im Wechsel kommt das Modul durcheinander, irgenwas stimmt da noch nicht ....
Ich denke heute habe ich die Möglichkeit mir das mal in Ruhe anzusehen. Kannst "Irgendwas stimmt da nicht" etwas genauer spezifizieren?

EDIT: Mir ist am DOIF noch etwas aufgefallen, das triggert auch auf Events von "meinRolloModul". Das ist nicht ganz optimal. Bitte in den Bedingungen durch
[?meinRolloModul]
ersetzen
Titel: ResetTime
Beitrag von: stefan-dd am 19 Januar 2019, 21:14:01
Wenn das Rollo den Anschlag noch nicht erreicht hatte, zB. durch ein Timing Problem, konnte früher durch das Attribut "resetTime" mittels Richtungstaste das Rollo noch einmal in Gang gesetzt werden.
Das funktioniert nicht mehr. Wenn 100% erreicht ist, fährt das Rollo keinen mm in die Richtung weiter.
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: KernSani am 19 Januar 2019, 21:27:27
Zitat von: stefan-dd am 19 Januar 2019, 21:14:01
Wenn das Rollo den Anschlag noch nicht erreicht hatte, zB. durch ein Timing Problem, konnte früher durch das Attribut "resetTime" mittels Richtungstaste das Rollo noch einmal in Gang gesetzt werden.
Das funktioniert nicht mehr. Wenn 100% erreicht ist, fährt das Rollo keinen mm in die Richtung weiter.
Am Verhalten von resetTime habe ich nie etwas geändert. Das Attribut bewirkt eigentlich nur, dass der Rollo um die resetTime länger fährt, wenn er auf open oder closed fährt. Ich hatte aber - als ich bei mir selbst auf Rollo umgestellt hatte - genau das selbe Problem und habe daher ein neues Attribut eingebaut (ich glaube das war meine erste Contribution zu ROLLO):

Zitat
rl_forceDrive attr <Rollo-Device> rl_forceDrive [0|1]
force open/closed even if device is already in target position
(heisst letztendlich, Das funktioniert allerdings nur, wenn der Rollo auto-stop hat.
Würde das dein Problem lösen?
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: grappa24 am 20 Januar 2019, 11:46:36
Zitat von: KernSani am 19 Januar 2019, 20:16:49
Mir ist am DOIF noch etwas aufgefallen, das triggert auch auf Events von "meinRolloModul". Das ist nicht ganz optimal. Bitte in den Bedingungen durch
[?meinRolloModul]
ersetzen
das wars, jetzt funktionieren die beiden DOIFs und das Modul zeigt die externen Steuerungen korrekt an :)

Dank Deiner/Eurer Arbeit kann ich das Rollo_Modul nun nach fast zwei Jahren endlich so benutzen, wie ich es mir vorgestellt hatte.
Wer pflegt denn den wiki-Eintrag https://wiki.fhem.de/wiki/ROLLO ? Unter dem Abschnitt 4.2 "Zusammenspiel mit externem Taster" müssten die DOIFs korrigiert werden?
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: KernSani am 20 Januar 2019, 11:48:45
Zitat von: grappa24 am 20 Januar 2019, 11:46:36
das wars, jetzt funktionieren die beiden DOIFs und das Modul zeigt die externen Steuerungen korrekt an :)
Das freut mich :)

Zitat von: grappa24 am 20 Januar 2019, 11:46:36
Wer pflegt denn den wiki-Eintrag https://wiki.fhem.de/wiki/ROLLO ? Unter dem Abschnitt 4.2 "Zusammenspiel mit externem Taster" müssten die DOIFs korrigiert werden?
Wiki steht auf der Todo-Liste :) Freiwillige gesucht... Die kleine Änderung mache ich aber auf die Schnelle...
EDIT: Änderung im Wiki eingepflegt... Habe gesehen, da war schon ein fleissiger Helfer am Werk - Danke, @MarkusHiba!
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: MarkusHiba am 20 Januar 2019, 14:01:30
Hallo Ihr,
hatte mal Zeit das Wiki zupflegen. [emoji16]

Was müsste noch so geändert werden?

Grüße

MarkusHiba

Gesendet von meinem G8141 mit Tapatalk

Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: MarkusSi am 20 Januar 2019, 16:03:40
Hallo,
habe gerade mal ein Update von der alten Version gemacht.

Jetzt kann ich nicht mehr die position angeben und es bleibt öfters mal ein drive-up Symbol hängen.

Wurde da was geändert ?

Gruß
Markus
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: KernSani am 20 Januar 2019, 16:11:10
Zitat von: MarkusSi am 20 Januar 2019, 16:03:40
Hallo,
habe gerade mal ein Update von der alten Version gemacht.

Jetzt kann ich nicht mehr die position angeben.

Wurde da was geändert ?

Gruß
Markus

Kam irgendwo weiter oben schonmal zur Sprache... das wurde etwa vor einem halben Jahr an den "Standard" angepasst, um mit anderen Modulen (wie z.B. AutoShutters) kompatibel zu sein. die readings heißen jetzt "pct" statt "position" und der set-Befehl ebenfalls (wobei der alte "position"-Befehl eigentlich noch funktionieren sollte und intern in pct umgewandelt wird). Ich werde den Punkt mal in der commandref ergänzen.
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: MarkusSi am 20 Januar 2019, 16:29:51
habe es umgeschrieben und es funktioniert.

Danke schön !!! :) :) :) :)

Gruß Markus

Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: KernSani am 20 Januar 2019, 16:34:34
...und ich habe commandref und Wiki ergänzt :)
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: grappa24 am 23 Januar 2019, 18:44:27
Zitat von: KernSani am 15 Januar 2019, 23:49:20
Ich habe noch ein paar mehr Ungereimtheiten festgestellt, in der Kombination von "extern" mit Schalten in FHEM (z.B. ROLLO wird extern gestartet aber über normales "stop"-Kommando gestoppt). Das muss ich mir aber mal in Ruhe anschauen und werde ich in den nächsten Tagen fixen.
würdest Du Dir bitte die extern Befehle noch mal kritisch anschauen, ich hab sporadisch Probleme, wenn zwischen Modul- und Extern-Steuerung gewechselt wird. Wenn ich was konkretes testen kann, sag bitte Bescheid - der Fehler ist nur schwer reproduzierbar  :-[
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: KernSani am 23 Januar 2019, 19:55:31
Zitat von: grappa24 am 23 Januar 2019, 18:44:27
würdest Du Dir bitte die extern Befehle noch mal kritisch anschauen, ich hab sporadisch Probleme, wenn zwischen Modul- und Extern-Steuerung gewechselt wird. Wenn ich was konkretes testen kann, sag bitte Bescheid - der Fehler ist nur schwer reproduzierbar  :-[
Ich hatte auch den Eindruck, dass da was nicht ganz rund läuft, könnte aber auch nichts konkretes finden. Ich schau nochmal...


Kurz, weil mobil
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: Dieter68 am 27 Januar 2019, 08:33:03
Hallo,

leider habe ich auf meinem perfekt funktionierendem System ein Update Fhem laufen lassen.

Jetzt stehen bei mir alle Rollos still.

Per Set Befehl den ich über at zeitgesteuert ausführen ließ geht jetzt nichts mehr - was für ein Mist.

Wenn ich auf die Icons direkt in FHEM klicke laufen die Motoren erst immer nach dem 2. Klick.

Ich für meinen Fall habe vor einiger Zeit genau diesen Fehler an einem Rollo gehabt und habe darum mein ganzes System neu aufgesetzt.

Dazu habe ich auch hier schon einiges in einem anderen Teil gefragt - bin aber eben um eine Neuinstallation nicht herum gekommen.

Ich für meinen Fall werde wohl versuchen mein System per Backup wieder zurück zu setzen und hoffe das die Sache dann wieder läuft.

Für mich als Anfänger bringt das ganze Spiel jetzt mehr Arbeit als es an Nutzen bringt - schade. >:(

Wie kann ich das Modul Rolle von einem Update ausschließen.

Es wäre klasse wenn Ihr mir hier einen Tipp geben könntet.

Danke und Gruß
Dieter68



Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: mrfloppy am 27 Januar 2019, 09:55:05
ZitatWie kann ich das Modul Rolle von einem Update ausschließen.

attr global exclude_from_update 44_ROLLO.pm

LG
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: KernSani am 27 Januar 2019, 10:04:12
Hallo Dieter,
das ist natürlich ärgerlich, ich glaube aber nicht dass ein backup einspielen oder gar neu aufsetzen des Systems notwendig ist. Auch ROLLO vom update ausschliessen wird dir früher oder später Probleme bereiten, da FHEM sich weiter entwickelt. Lass uns lieber das Problem lösen. Ich vermute es hängt damit zusammen, dass ROLLO vor ca. Einem halben Hahr von ,,position" auf ,,pcr" umgestellt wurde, um mit anderen Modulen kompatibel zu sein. Bitte stelle mal einen ROLLO auf verbose 5, steuere ihn manuell und poste das zugehörige Log hier. Mach dann bitte noch ein ,,list" vom ROLLO und poste den Output.
Zudem wäre es hilfreich zu wissen, wie deine Zeitsteuerung aussieht (bitte entsprechendes DOIF oder was du sonst nutzt hier posten).
Grüße
Oli


Kurz, weil mobil
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: Dieter68 am 27 Januar 2019, 13:47:58
Hallo Oli,

natürlich hast Du da Recht aber ich habe jetzt und in der Vergangenheit schon soviel Zeit gerade mit dem Modul verbracht das ich da wirklich entnervt bin.

Genau das aktuelle Fehlverhalten hatte ich ja am meinem letzten Fenster welches ich einbinden wollte. Ich habe damals tagelang gesucht und keinen Fehler finden können. Nach einer kompletten Neueinrichtung wofür ich 4 Abende geopfert habe hat die Sache funktioniert.

Jetzt hatte ich mal kurz Spaß mit der Sache da es endlich funktionierte und jetzt habe ich den Fehler an allen Fenstern. Was ich festgestellt habe ist das es eventuell mit den externen Steuerbefehlen zu tun hat aber ich als Anfänger in der Materie komme da nicht weiter.

Meine Anlage besteht aus je einem ESP8266 pro Rollo. An jedem Rolle gibt es noch einen Kipptaste mit Mittelstellung also ON:OFF:ON um die Motoren auch vor Ort per Hand zu steuern. An den Wohnzimmerfenstern habe ich an den ESP noch zwei zusätzliche Tasten um damit im Garten die Brunnenpumpe und die Außenbeleuchtung zu schalten. An den Steuerungen sind auch noch 2 LED die den jeweiligen Zustand anzeigen.

Ich habe mal eine Ansicht wie das bei mir in Fhem aktuell aussieht angehängt. Da ist jetzt keine besondere Ordnung drin da ich erst einmal nur auf die Funktion Wert gelegt habe.

Man sieht ja da ja auch die aktuell roten "Aus"-Schaltflächen über die ich die Motoren auch direkt ansteuern kann. Passieren kann da nichts da die Relais si geschaltet sind das sie sich gegenseitig verriegeln selbst wenn man gleichzeitig "Hoch" und "Runter" fahren würde.

Über den Zustand der Schaltflächen kann man auch direkt sehen ob die Motoren wirklich angesteuert werden oder eben nicht.

Aktuell ist es so das ich erst immer einen "Stop" Befehl senden muss bevor ich überhaupt die Motoren über das Rollo_Modul zu laufen bekomme.

Hier mal das Listing von einem Rollo-Modul
Internals:
   FUUID      5c4cc90e-f33f-f169-a3bf-46d78df780bb983c
   NAME       1.OG_WZ_Fenster
   NR         195
   STATE      closed
   TYPE       ROLLO
   stoptime   1548591512
   READINGS:
     2019-01-27 13:18:21   command         stop
     2019-01-27 13:18:21   desired_pct     99
     2019-01-27 13:18:21   drive-type      na
     2019-01-27 13:18:20   last_drive      drive-down
     2019-01-27 13:18:21   pct             99
     2019-01-27 13:18:21   state           closed
Attributes:
   cmdIcon    open:fts_shutter_up closed:fts_shutter_down stop:fts_shutter_manual half:fts_shutter_50
   devStateIcon open:fts_shutter_10:closed closed:fts_shutter_100:open half:fts_shutter_50:closed drive-up:fts_shutter_up@red:stop drive-down:fts_shutter_down@red:stop pct-100:fts_shutter_100:open pct-90:fts_shutter_80:closed pct-80:fts_shutter_80:closed pct-70:fts_shutter_70:closed pct-60:fts_shutter_60:closed pct-50:fts_shutter_50:closed pct-40:fts_shutter_40:open pct-30:fts_shutter_30:open pct-20:fts_shutter_20:open pct-10:fts_shutter_10:open pct-0:fts_shutter_10:closed
   rl_autoStop 0
   rl_commandDown set ESPEasy_Rollade_1.OG_WZ_Fenster_schliessen on
   rl_commandStopDown set ESPEasy_Rollade_1.OG_WZ_Fenster_schliessen off
   rl_commandStopUp set ESPEasy_Rollade_1.OG_WZ_Fenster_oeffnen off
   rl_commandUp set ESPEasy_Rollade_1.OG_WZ_Fenster_oeffnen on
   rl_excessBottom 8
   rl_excessTop 4
   rl_resetTime 3
   rl_secondsDown 6
   rl_secondsUp 10
   rl_switchTime 1
   rl_type    normal
   room       1.OG Wohnzimmer
   verbose    5
   webCmd     open:closed:half:stop:pct



Die externen Tasten erledige ich über zwei DoIF

Internals:
   DEF        ([ESPEasy_Rollade_1.OG_WZ_Fenster_oeffnen] eq "on" and [1.OG_WZ_Fenster] ne "drive-up") (set 1.OG_WZ_Fenster extern open) DOELSEIF ([ESPEasy_Rollade_1.OG_WZ_Fenster_oeffnen] eq "off") (set 1.OG_WZ_Fenster extern stop)
   FUUID      5c4cc90f-f33f-f169-e4e0-8b643b5d5dad540f
   MODEL      FHEM
   NAME       rollo_1.OG_WZ_Fenster_manuell_oeffnen
   NR         197
   NTFY_ORDER 50-rollo_1.OG_WZ_Fenster_manuell_oeffnen
   STATE      cmd_2
   TYPE       DOIF
   READINGS:
     2019-01-27 13:43:47   Device          ESPEasy_Rollade_1.OG_WZ_Fenster_oeffnen
     2019-01-27 13:18:05   cmd             2
     2019-01-27 13:18:05   cmd_event       ESPEasy_Rollade_1.OG_WZ_Fenster_oeffnen
     2019-01-27 13:18:05   cmd_nr          2
     2019-01-27 13:18:21   e_1.OG_WZ_Fenster_STATE closed
     2019-01-27 13:43:47   e_ESPEasy_Rollade_1.OG_WZ_Fenster_oeffnen_STATE off
     2018-12-06 18:17:08   mode            enabled
     2019-01-27 13:18:05   state           cmd_2
   Regex:
   attr:
     cmdState:
     wait:
     waitdel:
   condition:
     0          ::InternalDoIf($hash,'ESPEasy_Rollade_1.OG_WZ_Fenster_oeffnen','STATE') eq "on" and ::InternalDoIf($hash,'1.OG_WZ_Fenster','STATE') ne "drive-up"
     1          ::InternalDoIf($hash,'ESPEasy_Rollade_1.OG_WZ_Fenster_oeffnen','STATE') eq "off"
   devices:
     0           ESPEasy_Rollade_1.OG_WZ_Fenster_oeffnen 1.OG_WZ_Fenster
     1           ESPEasy_Rollade_1.OG_WZ_Fenster_oeffnen
     all         ESPEasy_Rollade_1.OG_WZ_Fenster_oeffnen 1.OG_WZ_Fenster
   do:
     0:
       0          set 1.OG_WZ_Fenster extern open
     1:
       0          set 1.OG_WZ_Fenster extern stop
     2:
   helper:
     event      Rel: off
     globalinit 1
     last_timer 0
     sleeptimer -1
     timerdev   ESPEasy_Rollade_1.OG_WZ_Fenster_oeffnen
     timerevent Rel: off
     triggerDev ESPEasy_Rollade_1.OG_WZ_Fenster_oeffnen
     DOIF_eventas:
       cmd_nr: 2
       cmd: 2
       cmd_event: ESPEasy_Rollade_1.OG_WZ_Fenster_oeffnen
       state: cmd_2
     timerevents:
       Rel: off
     timereventsState:
       state: Rel: off
     triggerEvents:
       Rel: off
     triggerEventsState:
       state: Rel: off
   internals:
     0           ESPEasy_Rollade_1.OG_WZ_Fenster_oeffnen:STATE 1.OG_WZ_Fenster:STATE
     1           ESPEasy_Rollade_1.OG_WZ_Fenster_oeffnen:STATE
     all         ESPEasy_Rollade_1.OG_WZ_Fenster_oeffnen:STATE 1.OG_WZ_Fenster:STATE
   itimer:
   perlblock:
   readings:
   trigger:
   uiState:
   uiTable:
Attributes:
   room       1.OG Wohnzimmer



Internals:
   DEF        ([ESPEasy_Rollade_1.OG_WZ_Fenster_schliessen] eq "on" and [1.OG_WZ_Fenster] ne "drive-down") (set 1.OG_WZ_Fenster extern closed) DOELSEIF ([ESPEasy_Rollade_1.OG_WZ_Fenster_schliessen] eq "off") (set 1.OG_WZ_Fenster extern stop)
   FUUID      5c4cc90f-f33f-f169-96c1-397f47bc019c0533
   MODEL      FHEM
   NAME       rollo_1.OG_WZ_Fenster_manuell_schliessen
   NR         198
   NTFY_ORDER 50-rollo_1.OG_WZ_Fenster_manuell_schliessen
   STATE      cmd_2
   TYPE       DOIF
   READINGS:
     2019-01-27 13:43:48   Device          ESPEasy_Rollade_1.OG_WZ_Fenster_schliessen
     2019-01-27 13:18:21   cmd             2
     2019-01-27 13:18:21   cmd_event       ESPEasy_Rollade_1.OG_WZ_Fenster_schliessen
     2019-01-27 13:18:21   cmd_nr          2
     2019-01-27 13:18:20   e_1.OG_WZ_Fenster_STATE closed
     2019-01-27 13:43:48   e_ESPEasy_Rollade_1.OG_WZ_Fenster_schliessen_STATE off
     2018-12-06 18:17:44   mode            enabled
     2019-01-27 13:18:21   state           cmd_2
   Regex:
   attr:
     cmdState:
     wait:
     waitdel:
   condition:
     0          ::InternalDoIf($hash,'ESPEasy_Rollade_1.OG_WZ_Fenster_schliessen','STATE') eq "on" and ::InternalDoIf($hash,'1.OG_WZ_Fenster','STATE') ne "drive-down"
     1          ::InternalDoIf($hash,'ESPEasy_Rollade_1.OG_WZ_Fenster_schliessen','STATE') eq "off"
   devices:
     0           ESPEasy_Rollade_1.OG_WZ_Fenster_schliessen 1.OG_WZ_Fenster
     1           ESPEasy_Rollade_1.OG_WZ_Fenster_schliessen
     all         ESPEasy_Rollade_1.OG_WZ_Fenster_schliessen 1.OG_WZ_Fenster
   do:
     0:
       0          set 1.OG_WZ_Fenster extern closed
     1:
       0          set 1.OG_WZ_Fenster extern stop
     2:
   helper:
     event      Rel: off
     globalinit 1
     last_timer 0
     sleeptimer -1
     timerdev   ESPEasy_Rollade_1.OG_WZ_Fenster_schliessen
     timerevent Rel: off
     triggerDev ESPEasy_Rollade_1.OG_WZ_Fenster_schliessen
     DOIF_eventas:
       cmd_nr: 2
       cmd: 2
       cmd_event: ESPEasy_Rollade_1.OG_WZ_Fenster_schliessen
       state: cmd_2
     timerevents:
       Rel: off
     timereventsState:
       state: Rel: off
     triggerEvents:
       Rel: off
     triggerEventsState:
       state: Rel: off
   internals:
     0           ESPEasy_Rollade_1.OG_WZ_Fenster_schliessen:STATE 1.OG_WZ_Fenster:STATE
     1           ESPEasy_Rollade_1.OG_WZ_Fenster_schliessen:STATE
     all         ESPEasy_Rollade_1.OG_WZ_Fenster_schliessen:STATE 1.OG_WZ_Fenster:STATE
   itimer:
   perlblock:
   readings:
   trigger:
   uiState:
   uiTable:
Attributes:
   room       1.OG Wohnzimmer



Ich habe bisher immer nur das eigentliche Logfile verwendet. Kann man da wie im Eventmonitor auch LOG-Files für einzelne Devices erstellen?

So dann bin ich mal gespannt was Ihr Profis zu dem Problem finden könnt.

Danke für Eure Hilfe

Gruß
Dieter68
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: KernSani am 27 Januar 2019, 14:10:57
Hallo Dieter,
Ich schaue mir das heute Abend mal im Detail an. Was mir direkt auffällt: Im DOIF wird auch auf drive-up bzw. drive-down getriggert. Da müsste jeweils ein ? Davor (ist etwas weiter oben hier im Thread beschrieben und auch im Wiki angepasst).

Wenn du am ROLLO das Attribut verbose 5 serzt werden für dieses eine Device die verbose 5 Meldungen ins globale Log geschrieben.


Kurz, weil mobil
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: grappa24 am 27 Januar 2019, 15:08:55
Zitat von: KernSani am 27 Januar 2019, 14:10:57
Was mir direkt auffällt: Im DOIF wird auch auf drive-up bzw. drive-down getriggert. Da müsste jeweils ein ? Davor (ist etwas weiter oben hier im Thread beschrieben und auch im Wiki angepasst).
Das kommt halt davon, weil fast zwei Jahre die fehlerhaften DOIFs im Wiki standen - gut dass Du das jetzt gefixt hast  ;)
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: Frank_Huber am 27 Januar 2019, 15:42:38
Wenn der Auslöser Als event triggert und nicht als Zustand spielt das eigentlich keine Rolle.

Gesendet von meinem Doogee S60 mit Tapatalk

Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: Dieter68 am 27 Januar 2019, 16:37:52
Zitat von: grappa24 am 27 Januar 2019, 15:08:55
Das kommt halt davon, weil fast zwei Jahre die fehlerhaften DOIFs im Wiki standen - gut dass Du das jetzt gefixt hast  ;)

Hallo grappa24,

was hat es denn mit dem ? an der Stelle aufsich?

Gruß
Dieter68
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: Dieter68 am 27 Januar 2019, 19:10:25
Zitat von: Dieter68 am 27 Januar 2019, 16:37:52
Hallo grappa24,

was hat es denn mit dem ? an der Stelle aufsich?

Gruß
Dieter68

Hat sich erledigt - habe die Funktion gefunden.

Gruß
Dieter68
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: Dieter68 am 27 Januar 2019, 20:04:55
Ich habe an einem Fenster die DOIF Anweisungen mal mit dem Fragezeichen abgeändert - brachte aber leider keine Besserung.

Nur mal so als Zwischenmeldung ...

Gruß
Dieter68
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: CoolTux am 27 Januar 2019, 20:13:41
Es fehlt der Aufschluss gebende Log 5 Auszug bei einem Schaltbefehl.
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: Dieter68 am 27 Januar 2019, 21:06:57
So ich habe das jetzt mal an einem Fenster getestet an dem ich noch keine Änderungen vorgenommen habe.

Hier mal die Log-Datei:

2019.01.27 20:51:45 5: ROLLO (1.OG_EZ_Fenster) >> Set (open,)
2019.01.27 20:51:45 5: ROLLO (1.OG_EZ_Fenster) DesiredPos set to open, ()
2019.01.27 20:51:45 5: ROLLO (1.OG_EZ_Fenster) DesiredPos now 0, open
2019.01.27 20:51:45 5: ROLLO (1.OG_EZ_Fenster) >> Start
2019.01.27 20:51:45 4: ROLLO (1.OG_EZ_Fenster) drive from 100 to 0. command: open. state: closed
2019.01.27 20:51:45 4: ROLLO (1.OG_EZ_Fenster) pct: 100 -> 0 / direction: up
2019.01.27 20:51:45 5: ROLLO (1.OG_EZ_Fenster) >> calculateDriveTime | going up: from 100 to 0
2019.01.27 20:51:45 5: ROLLO (1.OG_EZ_Fenster) netto drive time = 15
2019.01.27 20:51:45 4: ROLLO (1.OG_EZ_Fenster) calculateDriveTime: oldpos=100,newpos=0,direction=up,time=15,steps=100,drivetime=22
2019.01.27 20:51:45 4: ROLLO (1.OG_EZ_Fenster) execute following commands: set ESPEasy_Rollade_1.OG_EZ_Fenster_oeffnen on; ;
2019.01.27 20:51:45 3: ESPEasy ESPEasy_Rollade_1.OG_EZ_Fenster_oeffnen: set ESPEasy_Rollade_1.OG_EZ_Fenster_oeffnen gpio 13 off
2019.01.27 20:51:45 4: ROLLO (1.OG_EZ_Fenster) stop in 22 seconds.
2019.01.27 20:52:07 5: ROLLO (1.OG_EZ_Fenster) >> Timer
2019.01.27 20:52:07 5: ROLLO (1.OG_EZ_Fenster) >> Stop
2019.01.27 20:52:07 4: ROLLO (1.OG_EZ_Fenster) stops from drive-up at pct 0
2019.01.27 20:52:07 3: ESPEasy ESPEasy_Rollade_1.OG_EZ_Fenster_oeffnen: set ESPEasy_Rollade_1.OG_EZ_Fenster_oeffnen gpio 13 on
2019.01.27 20:52:07 4: ROLLO (1.OG_EZ_Fenster) stopped by excuting the command: set ESPEasy_Rollade_1.OG_EZ_Fenster_oeffnen off
2019.01.27 20:52:07 5: ROLLO (1.OG_EZ_Fenster) >> Set (extern,open)
2019.01.27 20:52:07 5: ROLLO (1.OG_EZ_Fenster) DesiredPos set to open, ()
2019.01.27 20:52:07 5: ROLLO (1.OG_EZ_Fenster) DesiredPos now 0, open
2019.01.27 20:52:07 5: ROLLO (1.OG_EZ_Fenster) >> Start
2019.01.27 20:52:07 4: ROLLO (1.OG_EZ_Fenster) drive from 0 to 0. command: open. state: open
2019.01.27 20:52:07 4: ROLLO (1.OG_EZ_Fenster) pct: 0 -> 0 / direction: up
2019.01.27 20:52:07 5: ROLLO (1.OG_EZ_Fenster) >> calculateDriveTime | going up: from 0 to 0
2019.01.27 20:52:07 4: ROLLO (1.OG_EZ_Fenster) already at position!
2019.01.27 20:52:07 5: ROLLO (1.OG_EZ_Fenster) netto drive time = 0
2019.01.27 20:52:07 5: ROLLO (1.OG_EZ_Fenster) >> Set (extern,stop)
2019.01.27 20:52:07 5: ROLLO (1.OG_EZ_Fenster) DesiredPos set to stop, ()
2019.01.27 20:52:07 5: ROLLO (1.OG_EZ_Fenster) DesiredPos now 0, stop
2019.01.27 20:52:07 5: ROLLO (1.OG_EZ_Fenster) >> Start
2019.01.27 20:52:07 4: ROLLO (1.OG_EZ_Fenster) drive from 0 to 0. command: stop. state: open
2019.01.27 20:52:07 4: ROLLO (1.OG_EZ_Fenster) pct: 0 -> 0 / direction: up
2019.01.27 20:52:07 5: ROLLO (1.OG_EZ_Fenster) >> calculateDriveTime | going up: from 0 to 0
2019.01.27 20:52:07 4: ROLLO (1.OG_EZ_Fenster) already at position!
2019.01.27 20:52:07 5: ROLLO (1.OG_EZ_Fenster) netto drive time = 0
2019.01.27 20:52:13 5: ROLLO (1.OG_EZ_Fenster) >> Set (closed,)
2019.01.27 20:52:13 5: ROLLO (1.OG_EZ_Fenster) DesiredPos set to closed, ()
2019.01.27 20:52:13 5: ROLLO (1.OG_EZ_Fenster) DesiredPos now 100, closed
2019.01.27 20:52:13 5: ROLLO (1.OG_EZ_Fenster) >> Start
2019.01.27 20:52:13 4: ROLLO (1.OG_EZ_Fenster) drive from 0 to 100. command: closed. state: open
2019.01.27 20:52:13 4: ROLLO (1.OG_EZ_Fenster) pct: 0 -> 100 / direction: down
2019.01.27 20:52:13 5: ROLLO (1.OG_EZ_Fenster) >> calculateDriveTime | going down: from 0 to 100
2019.01.27 20:52:13 5: ROLLO (1.OG_EZ_Fenster) netto drive time = 12
2019.01.27 20:52:13 4: ROLLO (1.OG_EZ_Fenster) calculateDriveTime: oldpos=0,newpos=100,direction=down,time=12,steps=100,drivetime=19
2019.01.27 20:52:13 4: ROLLO (1.OG_EZ_Fenster) drive-type is extern, not executing driving commands
2019.01.27 20:52:13 4: ROLLO (1.OG_EZ_Fenster) stop in 19 seconds.
2019.01.27 20:52:32 5: ROLLO (1.OG_EZ_Fenster) >> Timer
2019.01.27 20:52:32 5: ROLLO (1.OG_EZ_Fenster) >> Stop
2019.01.27 20:52:32 4: ROLLO (1.OG_EZ_Fenster) stops from drive-down at pct 100
2019.01.27 20:52:32 3: ESPEasy ESPEasy_Rollade_1.OG_EZ_Fenster_schliessen: set ESPEasy_Rollade_1.OG_EZ_Fenster_schliessen gpio 14 on
2019.01.27 20:52:32 4: ROLLO (1.OG_EZ_Fenster) stopped by excuting the command: set ESPEasy_Rollade_1.OG_EZ_Fenster_schliessen off


Mein Problem ist das ich den Fehler schlecht nachstellen kann da sich kein wiederkehrendes Fehlerbild zeigt. Soweit ich die Log-Einträge deute war dem Modul die tatsächliche Stellung des Rollos nicht bekannt und es ging von einer anderen Stellung aus. Da wurden ja z.B. drive from 0 to 0 ausgegeben.
Dann wäre ja klar das die Motoren nicht angefahren werden.

Darum habe ich die ganze Sache noch einmal auf den gleichen Stand gebracht also tatsächliche Stellung des Rollos mit der Information der Stellung im Modul.

Aktuell teste ich hier selber noch Euch genauer zu schreiben unter welchen Bedingungen hier die Sache ausflippt.

Gruß
Dieter68
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: KernSani am 27 Januar 2019, 21:25:57
Jetzt müsste ich natürlich genau wissen, was du tatsächlich gemacht hast, das Log sagt mir folgendes:
1. Du hast über ROLLO aufgemacht, der ESPEasy hat auch korrekt geschaltet
2. Du hast über extern nochmal den ROLLO aufgemacht und dann stop, da der Rollo wegen 1. ja schon offen war hat er nix gemacht
3. Du hast den Rollo über ROLLO wieder zugemacht --> aus irgendeinem Grund denkt der Rolladen er wir extern gesteuert und macht daher nichts... Ich habe was womit ich arbeiten kann.
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: KernSani am 27 Januar 2019, 21:36:43
Fehler gefunden. Bitte mal angehängte Version ins /FHEM Verzeichnis kopieren (auf richtige Owner und Berechtigungen achten) und im FHEM ein

reload 44_ROLLO

machen.

Vielleicht kannst du bevor du das machst auch nochmal testen, Rollo verschluckt sich, wenn er extern gesteuert wird aber nicht fahren muß (also wie im Beispiel vorhin, wenn er bereits offen ist und dann von extern nochmal auf offen gesetzt wird) - Vielleicht macht grappa24 ja auch mit :)

Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: Dieter68 am 27 Januar 2019, 21:40:43
Hallo,

ich habe jetzt mal an allen Rollos das Fragezeichen eingebaut und dann die tatsächliche Stellung der Rollos mit der gespeicherten Stellung des Moduls durch zwei Läufe von 0% auf 100% und dann wieder von 100% auf 0% gefahren abgeglichen.

Diesen Abgleich hatte ich beim ersten Einbau des ? nicht gemacht. Könnte es nicht schon daran gelegen haben?

Aktuell bekomme ich jetzt kein Fehlverhalten mehr aber ich teste gerade noch so nach und nach alle 13 Motoren durch.

Ich habe jetzt gerade alle Module auf verbose 5 stehen um den Fehler wenn er dann mal auftritt auch sicher im log zu haben.

Gruß
Dieter68
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: Dieter68 am 27 Januar 2019, 21:52:51
Zitat von: KernSani am 27 Januar 2019, 21:36:43
Fehler gefunden. Bitte mal angehängte Version ins /FHEM Verzeichnis kopieren (auf richtige Owner und Berechtigungen achten) und im FHEM ein

reload 44_ROLLO

machen.

Vielleicht kannst du bevor du das machst auch nochmal testen, Rollo verschluckt sich, wenn er extern gesteuert wird aber nicht fahren muß (also wie im Beispiel vorhin, wenn er bereits offen ist und dann von extern nochmal auf offen gesetzt wird) - Vielleicht macht grappa24 ja auch mit :)


Habe ich gerade eingebaut und werde das testen - jetzt muss ich aber zum Dienst...

Ich melde mich sofort wenn ich Ergebnisse habe.

Danke für die schnelle Hilfe!

Gruß
Dieter68
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: KernSani am 27 Januar 2019, 21:55:43
Okidoki, ich hab' den Fix auch eingecheckt, d.h. kommt mit dem update morgen.
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: grappa24 am 27 Januar 2019, 22:20:09
Zitat von: KernSani am 27 Januar 2019, 21:36:43
Fehler gefunden.
Vielleicht macht grappa24 ja auch mit :)
Klar teste ich das, aber leider erst morgen früh, meine Frau bringt mich um, wenn ich heute noch die Rollos hoch und runterfahre - der user stört halt immer  ;)

Danke Oli, Grüße Dieter
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: grappa24 am 28 Januar 2019, 09:02:52
Zitat von: KernSani am 27 Januar 2019, 21:36:43
Fehler gefunden ... Rollo verschluckt sich, wenn er extern gesteuert wird aber nicht fahren muß (also wie im Beispiel vorhin, wenn er bereits offen ist und dann von extern nochmal auf offen gesetzt wird) - Vielleicht macht grappa24 ja auch mit :)
sieht gut aus, jetzt klappt bei mir auch der Wechsel von extern-up und extern-down - was vorher manchmal nicht ging. Werde den Tag über meine Rollos noch etwas quälen und nochmal berichten.
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: Dieter68 am 28 Januar 2019, 15:36:21
Hallo,

bei mir läuft das auch wieder super....bis jetzt keine Fehler mehr zu entdecken.

Super Arbeit die Ihr/Du da gemacht habt - und so schnell.

Meine Frau musste heute erdulden das die Rollos den ganzen Tag auf und zu gefahren wurden  ;D

Das geht auch vom Bürorechner aus über die Firewall und per Außenkamera sieht man auch direkt ob die Dinger richtig laufen.

Also nochmal ein großes Dankeschön.

Gruß
Dieter68

Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: KernSani am 29 Januar 2019, 23:09:41
Ich danke euch, Dieter und grappa, ohne eure Logfiles, Geduld und Tests hätte ich denn bug wohl kaum beheben können :-)
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: pc1246 am 01 Februar 2019, 14:58:57
Zitat von: MarkusHiba am 20 Januar 2019, 14:01:30
Hallo Ihr,
hatte mal Zeit das Wiki zupflegen. [emoji16]

Was müsste noch so geändert werden?

Grüße

MarkusHiba

Gesendet von meinem G8141 mit Tapatalk
Moin
Da sind einige fehlende/falsche Zeichen in den Tabellen von Attribute. Was auch fehlt ist der Wertebereich!
Da Ihr das urspruengliche Modul ja komplett umgebaut habt, habe ich jetzt meine Probleme, dass zu verstehen.
Es waere aus diesem Grund gut, wenn die Beispiele expliziter waeren! Besonders die Attribute sind quasi gar nicht behandelt. Wie trage ich z.B. den string fuer "rl_commandup" ein?
Ich habe da zwei Befehle, und eigentlich auch eine Abfrage mit drin!
Danke und Gruss Christoph
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: KernSani am 01 Februar 2019, 15:51:44
eigentlich hat sich
Zitat von: pc1246 am 01 Februar 2019, 14:58:57
Da Ihr das urspruengliche Modul ja komplett umgebaut habt, habe ich jetzt meine Probleme, dass zu verstehen.
Eigentlich hat sich gegenüber dem ursprünglichen Modul da nichts geändert. Funktioniert prinzipiell alles noch genauso wie zuvor. Im Zweifelsfall bitte auch die Commandref beachten.   

ZitatWie trage ich z.B. den string fuer "rl_commandup" ein?
Ich habe da zwei Befehle, und eigentlich auch eine Abfrage mit drin!
Wenn du ein konkretes Problem hast, das einzubauen, dann bitte etwas ausführlicher beschreiben ;)
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: pc1246 am 01 Februar 2019, 17:49:29
Moin
Wenn Du magst, dann kann ich Dir das Original gerne mal schicken. Das ist aber auch egal. Es wird ja wohl so aehnlich funktionieren.
Es sollte auch nur aufzeigen, dass ich meine, dass im Wiki noch was fehlt. Wenn ich auf meinem Testsystem das Modul teste, dann weiss ich mehr!
Danke und Gruss Christoph
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: KernSani am 01 Februar 2019, 20:22:55
Zitat von: pc1246 am 01 Februar 2019, 17:49:29
Moin
Wenn Du magst, dann kann ich Dir das Original gerne mal schicken. Das ist aber auch egal. Es wird ja wohl so aehnlich funktionieren.
Es sollte auch nur aufzeigen, dass ich meine, dass im Wiki noch was fehlt. Wenn ich auf meinem Testsystem das Modul teste, dann weiss ich mehr!
Danke und Gruss Christoph
Hi Christoph,
Wenn du von der allerersten Version von 2014 ausgehst, dann hat sich sicher einiges geändert ;) Ich habe mich mehr auf die letzte nicht in der offiziellen Auslieferung enthaltene Version bezogen.
Wenn du magst: Hol dir doch kurz einen Wiki-User und dokumentiere ergänze das Wiki gleich an den Stellen, wo du beim Testen das Gefühl hast, dass es ausführlicher oder detaillierter sein könnte.
Danke :)
Grüße,
Oli
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: pc1246 am 02 Februar 2019, 12:12:37
Hi Oli
Das mit dem Wiki mache ich gerne bei Gelegenheit. Momentan habe ich aber genug mit der Sammelbestellung zu tun! Und da ich seit 2014 den Umbau in der S7 vor mir herschiebe, kann das auch noch dauern!
Gruss Christoph
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: RPunkt am 02 Februar 2019, 13:51:34
Hallo liebe Leute,
ich bin auf euer Modul gestossen und habe eine eher Anfängerfrage:
Im Wiki steht:
ZitatDas eigentliche ansteuern des Rollo muss mit FHEM Befehlen ausführbar sein, diese Modul ist "nur" eine Oberfläche/Bedienmodul, kein Hardwaremodul.
Wie verlinke ich aber nun das ROLLO- Modul mit den eigentlichen Befehlen?
Also mal angenommen ich habe ein DEVICE "Gartenfenster", dass über Fhem mit den Befehlen "up down stop top bottom" (Type Kopp_FC) zu bedienen ist.
Dieses Device soll nun über ROLLO bedient werden - wo oder wie bekomme ich die Verlinkung/Verbindung hin?

Gruß,
RPunkt
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: KernSani am 02 Februar 2019, 15:53:29
Zitat von: RPunkt am 02 Februar 2019, 13:51:34
Hallo liebe Leute,
ich bin auf euer Modul gestossen und habe eine eher Anfängerfrage:
Im Wiki steht:Wie verlinke ich aber nun das ROLLO- Modul mit den eigentlichen Befehlen?
Also mal angenommen ich habe ein DEVICE "Gartenfenster", dass über Fhem mit den Befehlen "up down stop top bottom" (Type Kopp_FC) zu bedienen ist.
Dieses Device soll nun über ROLLO bedient werden - wo oder wie bekomme ich die Verlinkung/Verbindung hin?

Gruß,
RPunkt
Schau dir mal die Attribute rl_command.* an. Da schreibst du z.B.
set myKopp_FC up rein, Top und bottom wird von ROLLO selbst gesteuert...


Kurz, weil mobil
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: 87insane am 18 Februar 2019, 18:33:43
Hallo zusammen,

nutze das Modul nun schon ein paar monate und habe viel getestet. Nun ist es so, dass ich sonoff Schalter nutze, die mit espeasy geflasht sind. So pi mal auge stimmt die Position der rolladen. Allerdings denke ich geht es besser. Die Zeiten habe ich so genau wie möglich angepasst. Teilweise nach 2 Fahrten ändert sich aber das ganze schon.

Ich selber kann nur für espeasy sprechen. Aber da die schalter im wlan hängen und ich leider auch repeater nutze, habe ich an gewissen Stellen Delays. Bis ein schlater hinter den repeatern anfängt das Rollo laufen zu lassen, ist eine gewisse zeit um. Da es sich hier aber um Netzwerke handelt, ist der Zeitraum nicht immer der gleiche. Bedeutet, das Rollo in der küche zb soll auf pct 80 anlaufen. Aber es wird erst mal in einen Connection Error laufen und dann starten. Also noch ein paar ms mehr. Naja lange rede kurzer Sinn... Das Rollo steht dan eher auf pct 50 als 80.

Nun habe ich mir gedanken gemacht und wollte mal fragen ob es irgendwie möglich ist, dem Modul zu sagen, bitte warte das du eine Bestätigung bekommen hast für den befehlsempfang (Event) und erst dann sarte den Timer für die Fahrt. Das würde meine Rollo Positionen sicher um einiges verbessern.

Danke für Ideen oder Infos!
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: KernSani am 19 Februar 2019, 21:17:10
Zitat von: 87insane am 18 Februar 2019, 18:33:43
Nun habe ich mir gedanken gemacht und wollte mal fragen ob es irgendwie möglich ist, dem Modul zu sagen, bitte warte das du eine Bestätigung bekommen hast für den befehlsempfang (Event) und erst dann sarte den Timer für die Fahrt. Das würde meine Rollo Positionen sicher um einiges verbessern.
Als Lösung könnte ich mir vorstellen, dass ich ein Attribut "rl_startEvent" o.ä. einbaue, wenn dieses gesetzt ist wartet ROLLO bis dieses Event ausgelöst wird und startet erst dann den Timer, allerdings dürfte das selbe Problem ja dann beim Stop eintreten (also Stop-CKommando ist lange unterwegs und der ROLLO fährt deshalb weiter als geplant).
Auf der anderen Seite fällt es mir schwer zu glauben, dass Laufzeiten in einem Netzwerk so stark schwanken... Könnte es nicht andere Gründe geben (irgendwelche blocking calls in FHEM, die das System ausbremsen o.ä.?)
 
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: 87insane am 19 Februar 2019, 21:24:38
Das würde in meinen Augen helfen. Genau in diese Richtung meinte ich das. Der comand müsste dann vom jeweiligem Nutzer eingegeben werden, wenn benötigt und fertig.

Wenn ein Rollo hinter den repeatern das erste ich lebe sendet ist es auch erst mal da. Wie lange genau weiß ich nicht. Allerdings über 1std. Also genug Zeit um bei rückantwort schnell genug zu sein. Als rückantwort bräuchte ich nichts. Aber ggf gibt es auch dafür einen Sinn.

Geile idee und danke, das du es ernst nimmst :)

Gesendet von meinem LG-H850 mit Tapatalk

Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: KernSani am 23 Februar 2019, 00:10:11
Zitat von: 87insane am 19 Februar 2019, 21:24:38
Das würde in meinen Augen helfen. Genau in diese Richtung meinte ich das. Der comand müsste dann vom jeweiligem Nutzer eingegeben werden, wenn benötigt und fertig.

Wenn ein Rollo hinter den repeatern das erste ich lebe sendet ist es auch erst mal da. Wie lange genau weiß ich nicht. Allerdings über 1std. Also genug Zeit um bei rückantwort schnell genug zu sein. Als rückantwort bräuchte ich nichts. Aber ggf gibt es auch dafür einen Sinn.

Geile idee und danke, das du es ernst nimmst :)
Ich habe das mal ganz rudimentär umgesetzt, um zu sehen, ob es hilft. Wenn's klappt kann ich das auch ordentlich machen. So wie ich mir das ursprünglich gedacht hatte würde größere Umbau-Massnahmen erfordern daher folgendes Konzept:
Mit dem neuen Attribut rl_wakeUpCmd musst du ein Kommando definieren, mit dem du den Rollo aufweckst (z.b. sowas wie "set derRollo stop")
Im neuen Attribut rl_startEvent definierst du in der Form Device:Event das event, dass das tatsächliche Fahren des Rollos antriggern soll (Beispiel wäre: "derRollo:stopped")
Wenn du nun (z.B.) den Rollo runterfahren willst, schickt der erstmal das wakeUpCommand und wartet dann, bis das startEvent eintrifft, erst dann macht er die ganze Positionsberechnung und startet den Rollo tatsächlich.
Das Ganze ist sehr basic implementiert (keine checks usw...) hat bei mir aber mit einem Dummy funktioniert wie geplant.
Schönes Wochenende!
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: 87insane am 23 Februar 2019, 09:07:02
Super das du so schnell alles eingebaut hast auch wenn es nur zum testen ist.
Nun habe ich aber das Problem, dass bei mir ein EVENT auf die Schalter so passiert:

Das erste sendet das Rollo beim hoch fahren...
2019-02-23 08:59:19 ESPEasy ESPEasy_az_rollo event taste_hoch#taste_hoch

Das hier kommt als Antwort:
2019-02-23 08:59:19 ESPEasy ESPEasy_az_rollo strom_output_hoch: on

Gleiches gilt für runter. Das Modul hier, hat für alles mehrere Attribute.
rl_commandDown set ESPEasy_az_rollo event taste_runter#taste_runter
rl_commandStopDown set ESPEasy_az_rollo event taste_runter#taste_runter
rl_commandStopUp set ESPEasy_az_rollo event taste_hoch#taste_hoch
rl_commandUp set ESPEasy_az_rollo event taste_hoch#taste_hoch


Jetzt müsste ich entweder die gleichen als Trigger nehmen können oder aber hoch und runter einzeln eingeben können.
Ansonsten könne ich mit den Änderungen immer nur eine Richtung testen. Am Ende wäre das Rollo dann auch auf halb 11.

Natürlich könnte ich das Rollo einfach über GPIOs steuern. ABER dann würden die Regeln im Schalter nicht greifen und somit
wäre mein Software-Schutz gegen das doppel-Schalten von Relays weg.

Oder habe ich ggf. etwas übersehen oder falsch verstanden?


EDIT:
Hab ne Idee. Müsste nur in jedem Schalter eine Regel anlegen. Hatte das ca. so vor....

on IsAlive#IsAlive do
Sende eine Nachricht an FHEM - Hallo ich lebe (Hier weiß ich noch nicht wie ich FHEM etwas vom Schalter aus sende bzw. sage..google noch)
endon
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: 87insane am 23 Februar 2019, 13:02:54
Zitat von: KernSani am 23 Februar 2019, 00:10:11
Ich habe das mal ganz rudimentär umgesetzt, um zu sehen, ob es hilft. Wenn's klappt kann ich das auch ordentlich machen. So wie ich mir das ursprünglich gedacht hatte würde größere Umbau-Massnahmen erfordern daher folgendes Konzept:
Mit dem neuen Attribut rl_wakeUpCmd musst du ein Kommando definieren, mit dem du den Rollo aufweckst (z.b. sowas wie "set derRollo stop")
Im neuen Attribut rl_startEvent definierst du in der Form Device:Event das event, dass das tatsächliche Fahren des Rollos antriggern soll (Beispiel wäre: "derRollo:stopped")
Wenn du nun (z.B.) den Rollo runterfahren willst, schickt der erstmal das wakeUpCommand und wartet dann, bis das startEvent eintrifft, erst dann macht er die ganze Positionsberechnung und startet den Rollo tatsächlich.
Das Ganze ist sehr basic implementiert (keine checks usw...) hat bei mir aber mit einem Dummy funktioniert wie geplant.
Schönes Wochenende!

Okay habe es nun gelöst. Glaube aber mit dem Trigger Event stimmt was nicht.

rl_wakeUpCmd set ESPEasy_az_rollo taskvalueset 5 2 1
rl_startEvent ESPEasy_az_rollo:taskvalueset 5 2 1


EVENT MONITOR:
2019-02-23 12:57:07 ESPEasy ESPEasy_az_rollo taskvalueset 5 2 1

Und es passiert nichts. Wenn ich wie wild drauf rum klicke bewegt es sich. Die Position des Rollos stimmt also aktuell gar nicht mehr. Nehme das mal rauß, bis du Fragen stellst oder mir Änderungen zum testen benennst...
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: KernSani am 23 Februar 2019, 13:25:10
Kannst du beim ROLLO device verbose 5 einstellen, nochmal probieren und die Ligausgabe posten?


Kurz, weil mobil
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: 87insane am 23 Februar 2019, 13:37:10
2019.02.23 13:32:11 5: ROLLO (az_rollo) >> Get
2019.02.23 13:32:26 5: ROLLO (az_rollo) >> Set (closed,)
2019.02.23 13:32:26 5: ROLLO (az_rollo) DesiredPos set to closed, ()
2019.02.23 13:32:26 5: ROLLO (az_rollo) DesiredPos now 100, closed
2019.02.23 13:32:26 5: ROLLO (az_rollo) >> Start
2019.02.23 13:32:26 5: ROLLO (az_rollo) >> wakeUpCommand set ESPEasy_az_rollo taskvalueset 5 2 1
2019.02.23 13:32:26 5: ROLLO (az_rollo) >> waiting for event ESPEasy_az_rollo:taskvalueset 5 2 1
2019.02.23 13:32:28 2: ESPEasy ESPEasy_az_rollo: Warning: Command 'taskvalueset' requires authentication but no adminpassword ist set.
2019.02.23 13:32:28 5: >>> Processing Event state: 2: 0 3: 0 4: 0 RSS: -41
2019.02.23 13:32:29 5: ROLLO (az_rollo) >> Set (closed,)
2019.02.23 13:32:29 5: ROLLO (az_rollo) DesiredPos set to closed, ()
2019.02.23 13:32:29 5: ROLLO (az_rollo) DesiredPos now 100, closed
2019.02.23 13:32:29 5: >>> Processing Event command: closed
2019.02.23 13:32:29 5: >>> Processing Event desired_pct: 100
2019.02.23 13:32:29 5: ROLLO (az_rollo) >> Start
2019.02.23 13:32:29 4: ROLLO (az_rollo) drive from 0 to 100. command: closed. state: open
2019.02.23 13:32:29 4: ROLLO (az_rollo) pct: 0 -> 100 / direction: down
2019.02.23 13:32:29 5: ROLLO (az_rollo) >> calculateDriveTime | going down: from 0 to 100
2019.02.23 13:32:29 5: ROLLO (az_rollo) netto drive time = 17
2019.02.23 13:32:29 4: ROLLO (az_rollo) calculateDriveTime: oldpos=0,newpos=100,direction=down,time=17,steps=100,drivetime=17
2019.02.23 13:32:29 4: ROLLO (az_rollo) execute following commands: set ESPEasy_az_rollo event taste_runter#taste_runter; ;
2019.02.23 13:32:29 4: ROLLO (az_rollo) stop in 17 seconds.
2019.02.23 13:32:33 5: ROLLO (az_rollo) >> Set (stop,)
2019.02.23 13:32:33 5: ROLLO (az_rollo) DesiredPos set to stop, ()
2019.02.23 13:32:33 5: ROLLO (az_rollo) DesiredPos now 100, stop
2019.02.23 13:32:33 5: ROLLO (az_rollo) >> calculatepct
2019.02.23 13:32:33 4: ROLLO (az_rollo) calculated pct is 29.4117647058823; rest drivetime is 12
2019.02.23 13:32:33 5: ROLLO (az_rollo) >> Start
2019.02.23 13:32:33 5: ROLLO (az_rollo) >> wakeUpCommand set ESPEasy_az_rollo taskvalueset 5 2 1
2019.02.23 13:32:33 5: ROLLO (az_rollo) >> waiting for event ESPEasy_az_rollo:taskvalueset 5 2 1
2019.02.23 13:32:37 5: >>> Processing Event on_time: 3698193
2019.02.23 13:32:37 5: >>> Processing Event rssi: -69
2019.02.23 13:32:37 5: >>> Processing Event current: 0.012881
2019.02.23 13:32:37 5: >>> Processing Event voltage: 240.098495
2019.02.23 13:32:37 2: ESPEasy ESPEasy_az_rollo: Warning: Command 'taskvalueset' requires authentication but no adminpassword ist set.
2019.02.23 13:32:37 5: ROLLO (az_rollo) >> Set (stop,)
2019.02.23 13:32:37 5: ROLLO (az_rollo) DesiredPos set to stop, ()
2019.02.23 13:32:37 5: ROLLO (az_rollo) DesiredPos now 29.4117647058823, stop
2019.02.23 13:32:37 5: ROLLO (az_rollo) >> calculatepct
2019.02.23 13:32:37 4: ROLLO (az_rollo) calculated pct is 29.4117647058823; rest drivetime is 8
2019.02.23 13:32:37 5: >>> Processing Event pct: 29.4117647058823
2019.02.23 13:32:37 5: >>> Processing Event pct: 29.4117647058823
2019.02.23 13:32:37 5: >>> Processing Event desired_pct: 29.4117647058823
2019.02.23 13:32:37 5: >>> Processing Event command: stop
2019.02.23 13:32:37 5: ROLLO (az_rollo) >> Start
2019.02.23 13:32:37 4: ROLLO (az_rollo) drive from 29.4117647058823 to 29.4117647058823. command: stop. state: drive-down
2019.02.23 13:32:37 4: ROLLO (az_rollo) pct: 29.4117647058823 -> 29.4117647058823 / direction: down
2019.02.23 13:32:37 5: ROLLO (az_rollo) >> Stop
2019.02.23 13:32:37 4: ROLLO (az_rollo) stops from drive-down at pct 29.4117647058823
2019.02.23 13:32:37 4: ROLLO (az_rollo) stopped by excuting the command: set ESPEasy_az_rollo event taste_runter#taste_runter
2019.02.23 13:32:37 4: ROLLO (az_rollo) updating state to pct-30
2019.02.23 13:32:41 5: ROLLO (az_rollo) >> Set (stop,)
2019.02.23 13:32:41 3: WARNING: command is stop but shutter is not driving!
2019.02.23 13:32:41 5: ROLLO (az_rollo) >> Stop
2019.02.23 13:32:41 4: ROLLO (az_rollo) stops from pct-30 at pct 29.4117647058823
2019.02.23 13:32:41 4: ROLLO (az_rollo) stopped by excuting the command: set ESPEasy_az_rollo event taste_hoch#taste_hoch
2019.02.23 13:32:41 4: ROLLO (az_rollo) updating state to pct-30
2019.02.23 13:32:42 5: ROLLO (az_rollo) >> Set (extern,open)
2019.02.23 13:32:42 5: ROLLO (az_rollo) DesiredPos set to open, ()
2019.02.23 13:32:42 5: ROLLO (az_rollo) DesiredPos now 0, open
2019.02.23 13:32:42 5: ROLLO (az_rollo) >> Start
2019.02.23 13:32:42 5: ROLLO (az_rollo) >> wakeUpCommand set ESPEasy_az_rollo taskvalueset 5 2 1
2019.02.23 13:32:42 5: ROLLO (az_rollo) >> waiting for event ESPEasy_az_rollo:taskvalueset 5 2 1
2019.02.23 13:32:42 5: >>> Processing Event state: 2: 0 3: 0 4: 0 RSS: -41 str: on str: off
2019.02.23 13:32:42 5: >>> Processing Event state: connected
2019.02.23 13:32:43 5: >>> Processing Event state: connected
2019.02.23 13:32:44 5: >>> Processing Event state: connected
2019.02.23 13:32:45 2: ESPEasy ESPEasy_az_rollo: Warning: Command 'taskvalueset' requires authentication but no adminpassword ist set.
2019.02.23 13:32:45 5: >>> Processing Event state: 2: 0 3: 0 4: 0 RSS: -41 str: on str: off
2019.02.23 13:32:48 5: >>> Processing Event mode: manual
2019.02.23 13:32:48 5: >>> Processing Event battery: ok
2019.02.23 13:32:48 5: >>> Processing Event batteryState: ok
2019.02.23 13:32:48 5: >>> Processing Event desiredTemperature: 15.0
2019.02.23 13:32:48 5: >>> Processing Event temperature: 15.2
2019.02.23 13:32:48 5: >>> Processing Event valveposition: 9
2019.02.23 13:32:48 5: >>> Processing Event state: 15.0 °C
2019.02.23 13:32:48 5: >>> Processing Event RSSI: -62.5
2019.02.23 13:32:48 5: >>> Processing Event state: connected
2019.02.23 13:32:49 5: >>> Processing Event azimuth: 193.03
2019.02.23 13:32:49 5: >>> Processing Event elevation: 28.66
2019.02.23 13:32:49 5: >>> Processing Event twilight: 100
2019.02.23 13:32:49 5: >>> Processing Event twilight_weather: 100
2019.02.23 13:32:49 5: >>> Processing Event compasspoint: south
2019.02.23 13:32:49 5: >>> Processing Event state: connected
2019.02.23 13:32:49 5: >>> Processing Event list_SHOPPING_ITEM:
2019.02.23 13:32:50 5: >>> Processing Event state: connected
2019.02.23 13:32:50 5: >>> Processing Event list_TASK:
2019.02.23 13:32:51 5: >>> Processing Event state: connected
2019.02.23 13:32:54 5: >>> Processing Event state: connected
2019.02.23 13:32:56 5: >>> Processing Event state: connected
2019.02.23 13:32:58 5: >>> Processing Event state: connected
2019.02.23 13:33:02 5: >>> Processing Event strom_output_hoch: off
2019.02.23 13:33:02 5: >>> Processing Event state: 2: 0 3: 0 4: 0 RSS: -41 str: off str: off


Das mit 2019.02.23 13:32:45 2: ESPEasy ESPEasy_az_rollo: Warning: Command 'taskvalueset' requires authentication but no adminpassword ist set.
ist doch ein Witz? Wenn ich im Gerät diesen Befehl ausführe, wird der ohne PW einfach gemacht. Der EventMonitor sagt ja auch es wurde gesetzt.
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: KernSani am 23 Februar 2019, 15:48:34
Das sieht seltsam aus... Schau ich mir heute Abend mal im Detail an.


Kurz, weil mobil
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: KernSani am 23 Februar 2019, 20:54:03
Hi nochmal,
zwei Dinge, die mich verwirren:
1. Der Befehl taskvalueset - keine AHnung was der macht (kenne ESPEasy nicht) aber egal - was ich aber nicht sehe, ist ein gleichlautendes Event...
2. Das erste Event, das nach taskvalueset kommt ist "state: 2: 0 3: 0 4: 0 RSS: -41" - kommt das vom ESPEasy?
Noch eine Frage? Nutzt du den ESPEasy zusätzlich noch mit einem Taster (der ROLLO mit "extern" Kommandos steuert)? Da ist der Kram noch nicht implementiert, sollte nur über die ROLLO Oberfläche direkt funktionieren.

Ich habe die Logausgabe angepasst, damit die verarbeiteten Events besser dargestellt werden, sonst bin ich aktuell etwas ratlos...
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: 87insane am 28 Februar 2019, 12:34:35
Zuerst DANKE!

Bin aktuell noch nicht wieder ganz fit und deswegen noch nicht weiter gekommen. Versuche aber mal deine Fragen zu beantworten....

Zitat1. Der Befehl taskvalueset - keine AHnung was der macht (kenne ESPEasy nicht) aber egal - was ich aber nicht sehe, ist ein gleichlautendes Event...
2. Das erste Event, das nach taskvalueset kommt ist "state: 2: 0 3: 0 4: 0 RSS: -41" - kommt das vom ESPEasy?
Noch eine Frage? Nutzt du den ESPEasy zusätzlich noch mit einem Taster (der ROLLO mit "extern" Kommandos steuert)? Da ist der Kram noch nicht implementiert, sollte nur über die ROLLO Oberfläche direkt funktionieren.

1. Such noch mehr oder weniger verzweifelt nach einem geeignetem Befehl. Problem ist, schalte ich einen GPIO würde ein EVENT erzeugt aber er würde auch etwas machen. Schalte ich ein EVENT, brauche ich natürlich eine Rückanwort vom Gerät. Hier wird aber nicht immer auch ein EVENT bei jeder Aktion erzeugt. Hab dazu mal einen Thread eröffnet. Nun müsste ich gleich mal schauen ob dort jemand schon eine gute bzw. geeignete Idee hatte. Ich selber hatte z.B. vor ein Event nur dafür als Rule zu hinterlegen. Das hat nur leider nicht so geklappt wie ich dachte. Werde aber schon was finden...

2. Ja kommt er. taskvalueset ist eigentlich nichts anderes als Taskbasierend eine Aktion durch zu führen. Das state: 2: 0 3: 0 4: 0 RSS: -41 ist eher zufällig genau da mit drin. Das liegt daran das die ESPs alle Sekunden x einen Status senden. Dafür hatte ich in dem Fall (wie die Meisten vermutlich) einfach RSSI genommen. In der FW die ich nutze, muss ich aber alle vier Felder ausfüllen. Deswegen auch noch RSSI, 2, 3, 4....  Aber siehe Punkt 1. Werde am WE, denke ich wieder fit genug sein und was finden. Danach würde ich erneut berichten.

3. Ich nutze die ESPs als Schalter. Sind Sonoff T1 EU. Genau wegen der externen/internen Berechnung ist das ja immer wieder nicht korrekt. Zum testen reicht aber wohl auch erstmal deine Variante. Mit der hier von dir gebauten Lösung, sollte das Problem bei Schaltern verschwinden, bei denen der Befehl nicht direkt ankommt sondern erst nach einem Wakeup oder nach dem erreichen dessen. Das wird sicher einigen helfen und nützlich sein.

Wie oben gesagt, melde mich sobald möglich mit Ergebnissen....

Danke, danke!
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: 87insane am 01 März 2019, 11:27:03
ZitatHi nochmal,
zwei Dinge, die mich verwirren:
1. Der Befehl taskvalueset - keine AHnung was der macht (kenne ESPEasy nicht) aber egal - was ich aber nicht sehe, ist ein gleichlautendes Event...
2. Das erste Event, das nach taskvalueset kommt ist "state: 2: 0 3: 0 4: 0 RSS: -41" - kommt das vom ESPEasy?
Noch eine Frage? Nutzt du den ESPEasy zusätzlich noch mit einem Taster (der ROLLO mit "extern" Kommandos steuert)? Da ist der Kram noch nicht implementiert, sollte nur über die ROLLO Oberfläche direkt funktionieren.

Ich habe die Logausgabe angepasst, damit die verarbeiteten Events besser dargestellt werden, sonst bin ich aktuell etwas ratlos...


Hey und guten Morgen,

bin nun wieder halbwegs auf dem Weg der Besserung :)

Anbei mal meine Tests.

Als WakeUp habe ich nun: set ESPEasy_az_rollo status GPIO 9
Eine Antwort sollte so aussehen: ESPEasy_az_rollo GPIO9: on oder off (um es einfach zu halten habe ich erst mal: ESPEasy_az_rollo GPIO9:.*)

Habe mal ein wenig hoch/runter/stop/reset open über die FHEM Oberfläche angestoßen und das LOG anbei. Am besten sag mir einmal wie du am liebsten den Test machen wollen würdest.
Aktuell stimmen die Positionen garnicht mehr oder er will erst beim zweiten Klick stoppen usw. Vermutlich ist es noch nicht überall hinterlegt und deswegen geht es nicht so richtig.

Ich warte mal auf deinen Input....

Anbei das LOG:
2019.03.01 11:16:57 5: ROLLO (az_rollo) >> Get
2019.03.01 11:17:49 5: ROLLO (az_rollo) >> Set (closed,)
2019.03.01 11:17:49 5: ROLLO (az_rollo) DesiredPos set to closed, ()
2019.03.01 11:17:49 5: ROLLO (az_rollo) DesiredPos now 100, closed
2019.03.01 11:17:49 5: ROLLO (az_rollo) >> Start
2019.03.01 11:17:49 4: ROLLO (az_rollo) drive from 10 to 100. command: closed. state: pct-10
2019.03.01 11:17:49 4: ROLLO (az_rollo) pct: 10 -> 100 / direction: down
2019.03.01 11:17:49 5: ROLLO (az_rollo) >> calculateDriveTime | going down: from 10 to 100
2019.03.01 11:17:49 5: ROLLO (az_rollo) netto drive time = 15.3
2019.03.01 11:17:49 4: ROLLO (az_rollo) calculateDriveTime: oldpos=10,newpos=100,direction=down,time=17,steps=90,drivetime=15.3
2019.03.01 11:17:49 4: ROLLO (az_rollo) execute following commands: set ESPEasy_az_rollo event taste_runter#taste_runter; ;
2019.03.01 11:17:49 4: ROLLO (az_rollo) stop in 15.3 seconds.
2019.03.01 11:17:51 5: ROLLO (az_rollo) >> Set (stop,)
2019.03.01 11:17:51 5: ROLLO (az_rollo) DesiredPos set to stop, ()
2019.03.01 11:17:51 5: ROLLO (az_rollo) DesiredPos now 100, stop
2019.03.01 11:17:51 5: ROLLO (az_rollo) >> calculatepct
2019.03.01 11:17:51 4: ROLLO (az_rollo) calculated pct is 29.4117647058823; rest drivetime is 12
2019.03.01 11:17:51 5: ROLLO (az_rollo) >> Start
2019.03.01 11:17:51 5: ROLLO (az_rollo) >> wakeUpCommand set ESPEasy_az_rollo status GPIO 9
2019.03.01 11:17:51 5: ROLLO (az_rollo) >> waiting for event ESPEasy_az_rollo:GPIO9:.*
2019.03.01 11:17:53 5: ROLLO (az_rollo) >> Set (stop,)
2019.03.01 11:17:53 5: ROLLO (az_rollo) DesiredPos set to stop, ()
2019.03.01 11:17:53 5: ROLLO (az_rollo) DesiredPos now 29.4117647058823, stop
2019.03.01 11:17:53 5: ROLLO (az_rollo) >> calculatepct
2019.03.01 11:17:53 4: ROLLO (az_rollo) calculated pct is 29.4117647058823; rest drivetime is 10
2019.03.01 11:17:53 5: ROLLO (az_rollo) >> Start
2019.03.01 11:17:53 4: ROLLO (az_rollo) drive from 29.4117647058823 to 29.4117647058823. command: stop. state: drive-down
2019.03.01 11:17:53 4: ROLLO (az_rollo) pct: 29.4117647058823 -> 29.4117647058823 / direction: down
2019.03.01 11:17:53 5: ROLLO (az_rollo) >> Stop
2019.03.01 11:17:53 4: ROLLO (az_rollo) stops from drive-down at pct 29.4117647058823
2019.03.01 11:17:53 4: ROLLO (az_rollo) stopped by excuting the command: set ESPEasy_az_rollo event taste_runter#taste_runter
2019.03.01 11:17:53 4: ROLLO (az_rollo) updating state to pct-30
2019.03.01 11:19:27 5: ROLLO (az_rollo) >> Set (pct,0)
2019.03.01 11:19:27 5: ROLLO (az_rollo) DesiredPos set to pct, (0)
2019.03.01 11:19:27 5: ROLLO (az_rollo) DesiredPos now 0, 0
2019.03.01 11:19:27 5: ROLLO (az_rollo) DesiredPos now 0, pct-0
2019.03.01 11:19:27 5: ROLLO (az_rollo) >> Start
2019.03.01 11:19:27 5: ROLLO (az_rollo) >> wakeUpCommand set ESPEasy_az_rollo status GPIO 9
2019.03.01 11:19:27 5: ROLLO (az_rollo) >> waiting for event ESPEasy_az_rollo:GPIO9:.*
2019.03.01 11:19:32 5: ROLLO (az_rollo) >> Get
2019.03.01 11:19:38 5: ROLLO (az_rollo) >> Set (open,)
2019.03.01 11:19:38 5: ROLLO (az_rollo) DesiredPos set to open, ()
2019.03.01 11:19:38 5: ROLLO (az_rollo) DesiredPos now 0, open
2019.03.01 11:19:38 5: ROLLO (az_rollo) >> Start
2019.03.01 11:19:38 4: ROLLO (az_rollo) drive from 29.4117647058823 to 0. command: open. state: pct-30
2019.03.01 11:19:38 4: ROLLO (az_rollo) pct: 29.4117647058823 -> 0 / direction: up
2019.03.01 11:19:38 5: ROLLO (az_rollo) >> calculateDriveTime | going up: from 29.4117647058823 to 0
2019.03.01 11:19:38 5: ROLLO (az_rollo) netto drive time = 5.29411764705882
2019.03.01 11:19:38 4: ROLLO (az_rollo) calculateDriveTime: oldpos=29.4117647058823,newpos=0,direction=up,time=18,steps=29.4117647058823,drivetime=5.29411764705882
2019.03.01 11:19:38 4: ROLLO (az_rollo) execute following commands: set ESPEasy_az_rollo event taste_hoch#taste_hoch; ;
2019.03.01 11:19:38 4: ROLLO (az_rollo) stop in 5.29411764705882 seconds.
2019.03.01 11:19:43 5: ROLLO (az_rollo) >> Timer
2019.03.01 11:19:43 5: ROLLO (az_rollo) >> Stop
2019.03.01 11:19:43 4: ROLLO (az_rollo) stops from drive-up at pct 0
2019.03.01 11:19:43 4: ROLLO (az_rollo) stopped by excuting the command: set ESPEasy_az_rollo event taste_hoch#taste_hoch
2019.03.01 11:19:43 4: ROLLO (az_rollo) updating state to open
2019.03.01 11:19:50 5: ROLLO (az_rollo) >> Set (pct,10)
2019.03.01 11:19:50 5: ROLLO (az_rollo) DesiredPos set to pct, (10)
2019.03.01 11:19:50 5: ROLLO (az_rollo) DesiredPos now 10, 10
2019.03.01 11:19:50 5: ROLLO (az_rollo) DesiredPos now 10, pct-10
2019.03.01 11:19:50 5: ROLLO (az_rollo) >> Start
2019.03.01 11:19:50 5: ROLLO (az_rollo) >> wakeUpCommand set ESPEasy_az_rollo status GPIO 9
2019.03.01 11:19:50 5: ROLLO (az_rollo) >> waiting for event ESPEasy_az_rollo:GPIO9:.*
2019.03.01 11:19:56 5: ROLLO (az_rollo) >> Set (pct,0)
2019.03.01 11:19:56 5: ROLLO (az_rollo) DesiredPos set to pct, (0)
2019.03.01 11:19:56 5: ROLLO (az_rollo) DesiredPos now 0, 0
2019.03.01 11:19:56 5: ROLLO (az_rollo) DesiredPos now 0, pct-0
2019.03.01 11:19:56 5: ROLLO (az_rollo) >> Start
2019.03.01 11:19:56 4: ROLLO (az_rollo) drive from 0 to 0. command: pct-0. state: open
2019.03.01 11:19:56 4: ROLLO (az_rollo) pct: 0 -> 0 / direction: up
2019.03.01 11:19:56 5: ROLLO (az_rollo) >> calculateDriveTime | going up: from 0 to 0
2019.03.01 11:19:56 4: ROLLO (az_rollo) already at position!
2019.03.01 11:19:56 5: ROLLO (az_rollo) netto drive time = 0
2019.03.01 11:20:07 5: ROLLO (az_rollo) >> Set (closed,)
2019.03.01 11:20:07 5: ROLLO (az_rollo) DesiredPos set to closed, ()
2019.03.01 11:20:07 5: ROLLO (az_rollo) DesiredPos now 100, closed
2019.03.01 11:20:07 5: ROLLO (az_rollo) >> Start
2019.03.01 11:20:07 5: ROLLO (az_rollo) >> wakeUpCommand set ESPEasy_az_rollo status GPIO 9
2019.03.01 11:20:07 5: ROLLO (az_rollo) >> waiting for event ESPEasy_az_rollo:GPIO9:.*
2019.03.01 11:20:32 5: ROLLO (az_rollo) >> Set (closed,)
2019.03.01 11:20:32 5: ROLLO (az_rollo) DesiredPos set to closed, ()
2019.03.01 11:20:32 5: ROLLO (az_rollo) DesiredPos now 100, closed
2019.03.01 11:20:32 5: ROLLO (az_rollo) >> Start
2019.03.01 11:20:32 4: ROLLO (az_rollo) drive from 0 to 100. command: closed. state: open
2019.03.01 11:20:32 4: ROLLO (az_rollo) pct: 0 -> 100 / direction: down
2019.03.01 11:20:32 5: ROLLO (az_rollo) >> calculateDriveTime | going down: from 0 to 100
2019.03.01 11:20:32 5: ROLLO (az_rollo) netto drive time = 17
2019.03.01 11:20:32 4: ROLLO (az_rollo) calculateDriveTime: oldpos=0,newpos=100,direction=down,time=17,steps=100,drivetime=17
2019.03.01 11:20:32 4: ROLLO (az_rollo) execute following commands: set ESPEasy_az_rollo event taste_runter#taste_runter; ;
2019.03.01 11:20:32 4: ROLLO (az_rollo) stop in 17 seconds.
2019.03.01 11:20:35 5: ROLLO (az_rollo) >> Set (stop,)
2019.03.01 11:20:35 5: ROLLO (az_rollo) DesiredPos set to stop, ()
2019.03.01 11:20:35 5: ROLLO (az_rollo) DesiredPos now 100, stop
2019.03.01 11:20:35 5: ROLLO (az_rollo) >> calculatepct
2019.03.01 11:20:35 4: ROLLO (az_rollo) calculated pct is 23.5294117647059; rest drivetime is 13
2019.03.01 11:20:36 5: ROLLO (az_rollo) >> Start
2019.03.01 11:20:36 5: ROLLO (az_rollo) >> wakeUpCommand set ESPEasy_az_rollo status GPIO 9
2019.03.01 11:20:36 5: ROLLO (az_rollo) >> waiting for event ESPEasy_az_rollo:GPIO9:.*
2019.03.01 11:20:40 5: ROLLO (az_rollo) >> Set (stop,)
2019.03.01 11:20:40 5: ROLLO (az_rollo) DesiredPos set to stop, ()
2019.03.01 11:20:40 5: ROLLO (az_rollo) DesiredPos now 23.5294117647059, stop
2019.03.01 11:20:40 5: ROLLO (az_rollo) >> calculatepct
2019.03.01 11:20:40 4: ROLLO (az_rollo) calculated pct is 23.5294117647059; rest drivetime is 8
2019.03.01 11:20:40 5: ROLLO (az_rollo) >> Start
2019.03.01 11:20:40 4: ROLLO (az_rollo) drive from 23.5294117647059 to 23.5294117647059. command: stop. state: drive-down
2019.03.01 11:20:40 4: ROLLO (az_rollo) pct: 23.5294117647059 -> 23.5294117647059 / direction: down
2019.03.01 11:20:40 5: ROLLO (az_rollo) >> Stop
2019.03.01 11:20:40 4: ROLLO (az_rollo) stops from drive-down at pct 23.5294117647059
2019.03.01 11:20:40 4: ROLLO (az_rollo) stopped by excuting the command: set ESPEasy_az_rollo event taste_runter#taste_runter
2019.03.01 11:20:40 4: ROLLO (az_rollo) updating state to pct-20
2019.03.01 11:20:46 5: ROLLO (az_rollo) >> Get
2019.03.01 11:20:48 5: ROLLO (az_rollo) >> Get
2019.03.01 11:20:50 5: ROLLO (az_rollo) >> Get
2019.03.01 11:20:56 5: ROLLO (az_rollo) >> Set (pct,0)
2019.03.01 11:20:56 5: ROLLO (az_rollo) DesiredPos set to pct, (0)
2019.03.01 11:20:56 5: ROLLO (az_rollo) DesiredPos now 0, 0
2019.03.01 11:20:56 5: ROLLO (az_rollo) DesiredPos now 0, pct-0
2019.03.01 11:20:56 5: ROLLO (az_rollo) >> Start
2019.03.01 11:20:56 5: ROLLO (az_rollo) >> wakeUpCommand set ESPEasy_az_rollo status GPIO 9
2019.03.01 11:20:56 5: ROLLO (az_rollo) >> waiting for event ESPEasy_az_rollo:GPIO9:.*
2019.03.01 11:21:32 5: ROLLO (az_rollo) >> Set (open,)
2019.03.01 11:21:32 5: ROLLO (az_rollo) DesiredPos set to open, ()
2019.03.01 11:21:32 5: ROLLO (az_rollo) DesiredPos now 0, open
2019.03.01 11:21:32 5: ROLLO (az_rollo) >> Start
2019.03.01 11:21:32 4: ROLLO (az_rollo) drive from 23.5294117647059 to 0. command: open. state: pct-20
2019.03.01 11:21:32 4: ROLLO (az_rollo) pct: 23.5294117647059 -> 0 / direction: up
2019.03.01 11:21:32 5: ROLLO (az_rollo) >> calculateDriveTime | going up: from 23.5294117647059 to 0
2019.03.01 11:21:32 5: ROLLO (az_rollo) netto drive time = 4.23529411764706
2019.03.01 11:21:32 4: ROLLO (az_rollo) calculateDriveTime: oldpos=23.5294117647059,newpos=0,direction=up,time=18,steps=23.5294117647059,drivetime=4.23529411764706
2019.03.01 11:21:32 4: ROLLO (az_rollo) execute following commands: set ESPEasy_az_rollo event taste_hoch#taste_hoch; ;
2019.03.01 11:21:32 4: ROLLO (az_rollo) stop in 4.23529411764706 seconds.
2019.03.01 11:21:36 5: ROLLO (az_rollo) >> Timer
2019.03.01 11:21:36 5: ROLLO (az_rollo) >> Stop
2019.03.01 11:21:36 4: ROLLO (az_rollo) stops from drive-up at pct 0
2019.03.01 11:21:36 4: ROLLO (az_rollo) stopped by excuting the command: set ESPEasy_az_rollo event taste_hoch#taste_hoch
2019.03.01 11:21:36 4: ROLLO (az_rollo) updating state to open
2019.03.01 11:21:38 5: ROLLO (az_rollo) >> Get
2019.03.01 11:21:41 5: ROLLO (az_rollo) >> Set (open,)
2019.03.01 11:21:41 5: ROLLO (az_rollo) DesiredPos set to open, ()
2019.03.01 11:21:41 5: ROLLO (az_rollo) DesiredPos now 0, open
2019.03.01 11:21:41 5: ROLLO (az_rollo) >> Start
2019.03.01 11:21:41 5: ROLLO (az_rollo) >> wakeUpCommand set ESPEasy_az_rollo status GPIO 9
2019.03.01 11:21:41 5: ROLLO (az_rollo) >> waiting for event ESPEasy_az_rollo:GPIO9:.*
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: 87insane am 01 März 2019, 22:08:00
ZitatROLLO hat auch das "drive" Command, dem man mitgeben kann, wie lange in welche Richtung gefahren werden soll (als Alternative zum wait Attribut)

Als Anregung... So sieht mein notify (mit Hilfe von hier natürlich) aus...
Es handelt sich um das manuelle schalten. Das könnte man ja ein wenig manipulieren.... Namenskürzung usw. sind natürlich einfach nur drin, da es dann komplett ist:

ESPEasy_.*_rollo:strom_output_(runter|hoch):.* {
my $richtung = '';
my $zustand = '';
my $geraet = $NAME;
$geraet =~ s/^ESPEasy_//;

if ($EVTPART0 eq "strom_output_hoch:") {
  $richtung = "drive-up";
  $zustand = "open";
}
if ($EVTPART0 eq "strom_output_runter:") {
  $richtung = "drive-down";
  $zustand = "closed";
}

if ($EVTPART1 eq "on" && Value("$geraet") ne "$richtung") {
  fhem("set $geraet extern $zustand");
  fhem("$geraet extern $zustand");
}
elsif ($EVTPART1 eq "off" && Value("$geraet") eq "$richtung") {
  fhem("set $geraet extern stop");
  fhem("$geraet extern stop");
}
}


PS: Der Post hier, da es sonst immer weiter geht in dem alten...
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: bismosa am 03 März 2019, 11:37:33
Hallo!

Ich habe heute mal ein Update vom ROLLO-Modul gemacht. Ich nutze es schon etwas länger...einfach super!
Super finde ich auch, dass es jetzt möglich ist die Zwischenpositionen (pct 55) anzufahren! Das habe ich immer vermisst :-)

Ich habe nun aber ein Problem. Ich habe folgende Konfiguration:
- Sender / Empfänger als Device
- DOIF um auf den Empfang zu reagieren
- ROLLO-Modul

Also sobald von der FB ein Signal empfangen wird, starte ich die Berechnung mit "set ROLLO extern <befehl>". Klappt bestens.
Nun aber der Fall, das ich eine Position mit dem ROLLO-Modul anfahren will...dann wird mein Sende-Device getriggert. Dieses triggert aber sofort wieder mein DOIF und dies teilt dem ROLLO Modul dann die Fahrtrichtung mit. (set ROLLO extern <befehl>)
Dadurch kommt es zu einem Fehler in der Berechnung... Beispiel:
Rollo ist unten und soll auf 90% fahren (über das ROLLO Modul):

2019.03.03 11:20:13 5: ROLLO (Rolladen_Buero) >> Set (pct,90)
2019.03.03 11:20:13 5: ROLLO (Rolladen_Buero) DesiredPos set to pct, (90)
2019.03.03 11:20:13 5: ROLLO (Rolladen_Buero) DesiredPos now 90, 90
2019.03.03 11:20:13 5: ROLLO (Rolladen_Buero) DesiredPos now 90, pct-90
2019.03.03 11:20:13 5: ROLLO (Rolladen_Buero) >> Start
2019.03.03 11:20:13 4: ROLLO (Rolladen_Buero) drive from 100 to 90. command: pct-90. state: closed
2019.03.03 11:20:13 4: ROLLO (Rolladen_Buero) pct: 100 -> 90 / direction: up
2019.03.03 11:20:13 5: ROLLO (Rolladen_Buero) >> calculateDriveTime | going up: from 100 to 90
2019.03.03 11:20:13 5: ROLLO (Rolladen_Buero) netto drive time = 3.5
2019.03.03 11:20:13 4: ROLLO (Rolladen_Buero) calculateDriveTime: oldpos=100,newpos=90,direction=up,time=35,steps=10,drivetime=3.5
2019.03.03 11:20:13 4: ROLLO (Rolladen_Buero) execute following commands: set SD_Rollo_16ch up 9; ;
2019.03.03 11:20:14 3: SIGNALduino: SD_Rollo_16ch set up 9
2019.03.03 11:20:14 3: di_Rollo: Device: SD_Rollo_16ch  Event:LastAction_Channel_09: up
2019.03.03 11:20:14 3: di_Rollo: JaroCmd: up
2019.03.03 11:20:14 3: di_Rollo: cmd: open
2019.03.03 11:20:14 3: di_Rollo: RolloDev: Rolladen_Buero
2019.03.03 11:20:14 3: di_Rollo: set Rolladen_Buero extern open
2019.03.03 11:20:14 5: ROLLO (Rolladen_Buero) >> Set (extern,open)
2019.03.03 11:20:14 5: ROLLO (Rolladen_Buero) DesiredPos set to open, ()
2019.03.03 11:20:14 5: ROLLO (Rolladen_Buero) DesiredPos now 0, open
2019.03.03 11:20:14 5: ROLLO (Rolladen_Buero) >> calculatepct
2019.03.03 11:20:14 4: ROLLO (Rolladen_Buero) calculated pct is 100; rest drivetime is 20
2019.03.03 11:20:14 5: ROLLO (Rolladen_Buero) >> Start
2019.03.03 11:20:14 4: ROLLO (Rolladen_Buero) drive from 100 to 0. command: open. state: drive-up
2019.03.03 11:20:14 4: ROLLO (Rolladen_Buero) pct: 100 -> 0 / direction: up
2019.03.03 11:20:14 5: ROLLO (Rolladen_Buero) >> calculateDriveTime | going up: from 100 to 0
2019.03.03 11:20:14 5: ROLLO (Rolladen_Buero) netto drive time = 35
2019.03.03 11:20:14 4: ROLLO (Rolladen_Buero) calculateDriveTime: oldpos=100,newpos=0,direction=up,time=35,steps=100,drivetime=67
2019.03.03 11:20:14 4: ROLLO (Rolladen_Buero) drive-type is extern, not executing driving commands
2019.03.03 11:20:14 4: ROLLO (Rolladen_Buero) stop in 67 seconds.
2019.03.03 11:20:14 4: ROLLO (Rolladen_Buero) stop in 3.5 seconds.
2019.03.03 11:20:17 5: ROLLO (Rolladen_Buero) >> Timer
2019.03.03 11:20:17 5: ROLLO (Rolladen_Buero) >> Stop
2019.03.03 11:20:17 4: ROLLO (Rolladen_Buero) stops from drive-up at pct 0
2019.03.03 11:20:17 3: SIGNALduino: SD_Rollo_16ch set stop 9
2019.03.03 11:20:17 3: di_Rollo: Device: SD_Rollo_16ch  Event:LastAction_Channel_09: stop
2019.03.03 11:20:17 3: di_Rollo: JaroCmd: stop
2019.03.03 11:20:17 3: di_Rollo: cmd: stop
2019.03.03 11:20:17 3: di_Rollo: RolloDev: Rolladen_Buero
2019.03.03 11:20:17 3: di_Rollo: set Rolladen_Buero extern stop
2019.03.03 11:20:17 5: ROLLO (Rolladen_Buero) >> Set (extern,stop)
2019.03.03 11:20:17 5: ROLLO (Rolladen_Buero) DesiredPos set to stop, ()
2019.03.03 11:20:17 5: ROLLO (Rolladen_Buero) DesiredPos now 0, stop
2019.03.03 11:20:17 5: ROLLO (Rolladen_Buero) >> calculatepct
2019.03.03 11:20:17 4: ROLLO (Rolladen_Buero) calculated pct is 0; rest drivetime is -32
2019.03.03 11:20:17 5: ROLLO (Rolladen_Buero) >> Start
2019.03.03 11:20:17 4: ROLLO (Rolladen_Buero) drive from 0 to 0. command: stop. state: drive-up
2019.03.03 11:20:17 4: ROLLO (Rolladen_Buero) pct: 0 -> 0 / direction: up
2019.03.03 11:20:17 5: ROLLO (Rolladen_Buero) >> Stop
2019.03.03 11:20:17 4: ROLLO (Rolladen_Buero) stops from drive-up at pct 0
2019.03.03 11:20:17 4: ROLLO (Rolladen_Buero) is in drive-type extern
2019.03.03 11:20:17 4: ROLLO (Rolladen_Buero) updating state to open
2019.03.03 11:20:17 4: ROLLO (Rolladen_Buero) stopped by excuting the command: set SD_Rollo_16ch stop 9
2019.03.03 11:20:17 4: ROLLO (Rolladen_Buero) updating state to open
2019.03.03 11:20:20 5: ROLLO (Rolladen_Buero) >> Get


Dadurch ist die Position auf "0" gesetzt worden. Der Rolladen ist aber nur die 10% gefahren.

Ist dies ein Bug oder sogar ein feature?
Umgehen kann ich diesen effekt wohl nur, wenn ich im DOIF aufpasse, ob bereits der Fahrbefehl ausgeführt wird...eigentlich nicht so richtig schön.

Gruß
Bismosa
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: 87insane am 03 März 2019, 11:53:03
Also das richtige doif prüft das doch. Mein notify genau über deinem Post macht genau das.

Gesendet von meinem LG-H850 mit Tapatalk

Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: bismosa am 03 März 2019, 12:30:16
Hallo!

Danke für die schnelle Antwort!
ZitatAlso das richtige doif prüft das doch
Welches richtige doif meinst du?

ZitatMein notify genau über deinem Post macht genau das
Stimmt. Wer lesen kann ist klar im Vorteil. Ich dachte das gehört zu einer ganz anderen Thematik...daher hatte ich mir das nicht genauer angesehen.  ::)

Sehr gut ist die Idee über das state Reading. Habe ich direkt so umgesetzt. Läuft. Damit ist die Frage quasi schon erledigt  :)
DANKE!

Gruß
Bismosa
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: 87insane am 03 März 2019, 12:42:08
Freut mich :)

Gesendet von meinem LG-H850 mit Tapatalk

Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: lambi am 04 März 2019, 09:14:56
Ich habe die Rolloansteuerung auch mit einem Vor-Ort-Schalter und demzufolge die Einbindung mit den beiden DOIF eingebaut.
Es kam zu unerwünschter Darstellung in FHEM, da die DOIF in Endlage in cmd_1 festhingen. Ursache ist nach meinem Verständnis, dass der DOELSEIF-Zweig (cmd_2) wg. der Prüfung von drive_up bzw. down nicht durchlaufen wurde. Ich habe die beiden Zeilen wie folgt abgeändert und nun läuft alles perfekt:


define rollo_manuell_auf DOIF ([meinRollo_Kanal1] eq "on" and [?meinRolloModul] ne "drive-up") (set meinRolloModul extern open) DOELSEIF ([meinRollo_Kanal1] eq "off") (set meinRolloModul extern stop)
define rollo_manuell_ab  DOIF ([meinRollo_Kanal2] eq "on" and [?meinRolloModul] ne "drive-down") (set meinRolloModul extern closed) DOELSEIF ([meinRollo_Kanal2] eq "off") (set meinRolloModul extern stop)
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: grappa24 am 04 März 2019, 10:50:07
@lambi: Was meinst Du mit "unerwünschter Darstellung in FHEM" genau?
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: lambi am 04 März 2019, 16:42:28
Zitat@lambi: Was meinst Du mit "unerwünschter Darstellung in FHEM" genau?

Die vom ROLLO-Modul angezeigte Position stimmte nach Verfahren des Rollos über den Vor-Ort-Schalters in Endlage nicht mehr, da die DOIFs das nicht korrekt weitergereicht haben.
Hinweis: In meinem Fall habe ich das Attribut rl_autoStop = 0 gesetzt, um in Endlage den Stop-Befehl abzusetzen.

Ich hoffe, das ist soweit nachvollziehbar...
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: Kuehnhackel am 04 März 2019, 19:39:14
Hi, ich würde dieses "Rollo" auch gerne anwenden und zwar, bei Sonnenuntergang, 50% runter und bei der nautischen Dämmerung ganz runter.

Im Augenblick ist es so, dass die Rolladen komplett runterfahren. Habe schon mal was probiert, aber finde keinen rechten Ansatz.

Könnte mir jemand aufs Rad helfen?


###Rolladen HWR Manuell###
define Roll_HWR dummy
attr Roll_HWR alias Rollladen HWR
attr Roll_HWR eventMap BI:auf B0:ab BS:stop
attr Roll_HWR fp_Grundriss_EG 14,318,7,Roll_HWR
attr Roll_HWR icon scene_hall
attr Roll_HWR room HWR
attr Roll_HWR webCmd auf:ab:stop
define Roll_HWR_ntfy notify Roll_HWR:.* {\
    my $v=Value("Roll_HWR");;\
    if ($v eq "auf") {rollo_HWR("auf")};;\
    if ($v eq "ab") {rollo_HWR("ab")};;\
    if ($v eq "stop") {rollo_HWR("stop")};;\
    }

###Rolladen HWR zeitabhängig schliessen###
define Roll_HWR_zu at *{sunset("CIVIL",0)} set Roll_HWR ab

###Rolladen HWR zeitabhängig öffnen###
define Roll_HWR_auf at *{sunrise("REAL",0)} set Roll_HWR auf


Es gibt keine Taster "vor Ort", sondern nur eine Bedienung per Funk, die über ein Brematik-Gateway läuft, falls es wichtig ist.
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: pc1246 am 06 März 2019, 09:30:29
Zitat von: Kuehnhackel am 04 März 2019, 19:39:14
Hi, ich würde dieses "Rollo" auch gerne anwenden und zwar, bei Sonnenuntergang, 50% runter und bei der nautischen Dämmerung ganz runter.

Im Augenblick ist es so, dass die Rolladen komplett runterfahren. Habe schon mal was probiert, aber finde keinen rechten Ansatz.

Könnte mir jemand aufs Rad helfen?

Es gibt keine Taster "vor Ort", sondern nur eine Bedienung per Funk, die über ein Brematik-Gateway läuft, falls es wichtig ist.
Moin
Guckst du hier: https://forum.fhem.de/index.php/topic,92628.0/topicseen.html
Gruss Christoph
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: KernSani am 06 März 2019, 23:50:59
Mit ROLLO bringst du deinem Rolladen bei, verschiedene Positionen anzufahren, ASC macht dann die Automatisierung


Kurz, weil mobil
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: Kuehnhackel am 07 März 2019, 08:51:20
Zitat von: KernSani am 06 März 2019, 23:50:59
Mit ROLLO bringst du deinem Rolladen bei, verschiedene Positionen anzufahren, ASC macht dann die Automatisierung


Kurz, weil mobil

Danke, für die Info.

Mir würde schon mal reichen, wenn ich ich es manuell schaffen würde  :)

Liebe Grüße
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: 87insane am 07 März 2019, 09:01:47
Zitat von: Kuehnhackel am 04 März 2019, 19:39:14
Hi, ich würde dieses "Rollo" auch gerne anwenden und zwar, bei Sonnenuntergang, 50% runter und bei der nautischen Dämmerung ganz runter.

Im Augenblick ist es so, dass die Rolladen komplett runterfahren. Habe schon mal was probiert, aber finde keinen rechten Ansatz.

Könnte mir jemand aufs Rad helfen?


###Rolladen HWR Manuell###
define Roll_HWR dummy
attr Roll_HWR alias Rollladen HWR
attr Roll_HWR eventMap BI:auf B0:ab BS:stop
attr Roll_HWR fp_Grundriss_EG 14,318,7,Roll_HWR
attr Roll_HWR icon scene_hall
attr Roll_HWR room HWR
attr Roll_HWR webCmd auf:ab:stop
define Roll_HWR_ntfy notify Roll_HWR:.* {\
    my $v=Value("Roll_HWR");;\
    if ($v eq "auf") {rollo_HWR("auf")};;\
    if ($v eq "ab") {rollo_HWR("ab")};;\
    if ($v eq "stop") {rollo_HWR("stop")};;\
    }

###Rolladen HWR zeitabhängig schliessen###
define Roll_HWR_zu at *{sunset("CIVIL",0)} set Roll_HWR ab

###Rolladen HWR zeitabhängig öffnen###
define Roll_HWR_auf at *{sunrise("REAL",0)} set Roll_HWR auf


Es gibt keine Taster "vor Ort", sondern nur eine Bedienung per Funk, die über ein Brematik-Gateway läuft, falls es wichtig ist.

Wieso steuerst du nicht über PCT? Bei Sonnenuntergang 50% und danach eben PCT 100%. Du löst es aktuell über at. Kannst es aber auch z.B. Über doif oder so machen.

Anbei mal alles was ich so gebastelt habe...mit oder ohne Hilfe.... Denke damit solltest du es verstehen und anpassen können.

# Rollos runter fahren nach Sonnenuntergang. Frühestens ab 17:00 Uhr bis spätestens 23:30 Uhr
define sonnenuntergang_rollos DOIF ([{twilight("sonnenuntergang_nv","ss_civil","17:00","23:30")}]) \
(set [a-z]?[a-z]_rollo pct 80)\
DOELSEIF ([00:15])

# Rollos hoch, außer SZ, nach Sonnenaufgang. Frühestens ab 6:00 Uhr bis spätestens 9:30 Uhr
define sonnenaufgang_rollos DOIF ([{twilight("sonnenuntergang_nv","sr_civil","06:00","09:30")}]) \
(set ^((?!sz)[a-z]?[a-z])_rollo pct 0)\
DOELSEIF ([00:15])

# Letzten Wecker aus Alexa berechnen
define letzter_wecker notify (ECHO_1234:alarm_.._status:.(on|off)) {\
my $k = "0";;\
my $alarmoff = "0";;\
my $schleifennr = "1";;\
my $lastalarmalexa = "0";;\
\
foreach $k (1..ReadingsVal("$NAME", "AlarmCount", ""))\
{\
$schleifennr = sprintf("%02d", $k);;\
my $wecker = ReadingsVal("$NAME", "alarm_".$schleifennr."_originalTime" ,"0");;\
$wecker =~ s/:00.000$//;;\
\
if (ReadingsVal("$NAME", "alarm_".$schleifennr."_status", "") eq "on" && "$wecker" gt "$lastalarmalexa") \
{\
$lastalarmalexa = $wecker;;\
}\
\
elsif (ReadingsVal("$NAME", "alarm_".$schleifennr."_status", "") eq "off") \
{\
$alarmoff = $alarmoff + 1;;\
\
if (sprintf("%02d", $alarmoff) eq $schleifennr) \
{\
$lastalarmalexa = 0;;\
}\
}\
fhem("setreading $NAME LastAlarm $lastalarmalexa")\
}\
}\


# Rollos hoch fahren nach letzten Wecker.
define letzter_wecker_rollos DOIF ([[ECHO_1234:LastAlarm]] and [ECHO_1234:LastAlarm] ne "0")\
(set sz_rollo pct 0)\
DOELSEIF ([00:15])
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: Kuehnhackel am 08 März 2019, 20:49:52
Danke, für die Hilfestellung.

Aber ich blicke das nicht und werde wohl alles beim alten lassen.

Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: KernSani am 10 März 2019, 11:17:11
Zitat von: Kuehnhackel am 08 März 2019, 20:49:52
Danke, für die Hilfestellung.

Aber ich blicke das nicht und werde wohl alles beim alten lassen.
Wo liegen denn konkret deine Schwierigkeiten? Wenn ich das richtig sehe, kann dein Rollladen nur "auf" und "ab", richtig? Du müsstest dir jetzt ein ROLLO Device definieren, die entsprechenden Attribute (siehe Doku/Wiki) pflegen und dann kannst du über das ROLLO Device deinen Rollladen auf 50% o.ä. stellen - zeitgesteuert oder per Button oder was auch immer...


Kurz, weil mobil
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: Kuehnhackel am 10 März 2019, 18:28:23
Zitat von: KernSani am 10 März 2019, 11:17:11
Wo liegen denn konkret deine Schwierigkeiten? Wenn ich das richtig sehe, kann dein Rollladen nur "auf" und "ab", richtig? Du müsstest dir jetzt ein ROLLO Device definieren, die entsprechenden Attribute (siehe Doku/Wiki) pflegen und dann kannst du über das ROLLO Device deinen Rollladen auf 50% o.ä. stellen - zeitgesteuert oder per Button oder was auch immer...
Kurz, weil mobil

Danke, dass Du antwortest.
Zusaätzlich, wird das ganze ja noch per Funk über ein Gateway gesteuert:
###GWY###
sub connair($$$){
my ($Master,$Slave,$action) = @_;
my  $SendData="";
my    $sA=0;
my    $sG=0;
my    $sRepeat=20;
my    $sPause=5600;
my    $sTune=350;
my    $sBaud=25;
my    $sSpeed=16;
my    $uSleep=800000;
my    $txversion=2;
my    $HEAD="TXP:$sA,$sG,$sRepeat,$sPause,$sTune,$sBaud,";
my    $TAIL=",$txversion,1,$sSpeed,;";
my    $AN="1,3,1,3,3";
my    $AUS="3,1,1,3,1";
my    $bitLow=1;
my    $bitHgh=3;
my    $seqLow=$bitHgh.",".$bitHgh.",".$bitLow.",".$bitLow.",";
my    $seqHgh=$bitHgh.",".$bitLow.",".$bitHgh.",".$bitLow.",";
my    $i=0;
my    $bit="";   
my    $msg="";

my  $bits=$Master;
    for($i=0; $i<length($bits); $i++) {   
        $bit=substr($bits,$i,1);
        if($bit=="0") {
            $msg=$msg.$seqLow;
        } else {
            $msg=$msg.$seqHgh;
        }
    }
my    $msgM=$msg;
   
    $bits=$Slave;
   
    $msg="";
    for($i=0; $i<length($bits); $i++) {
        $bit=substr($bits,$i,1);
        if($bit=="0") {
            $msg=$msg.$seqLow;
        } else {
            $msg=$msg.$seqHgh;
        }
    }
my    $msgS=$msg;

    if($action eq "on") {
        $SendData = $HEAD.$bitLow.",".$msgM.$msgS.$bitHgh.",".$AN.$TAIL;
    } else {
        $SendData = $HEAD.$bitLow.",".$msgM.$msgS.$bitHgh.",".$AUS.$TAIL;
    }
my ($socket,$data);
#  We call IO::Socket::INET->new() to create the UDP Socket
$socket = new IO::Socket::INET(PeerAddr=>'192.168.178.31:49880',Proto=>'udp') or die "ERROR in Socket Creation : $!\n";
$socket->send($SendData);

$socket->close();

}

und dann der eigentliche Code für die jeweilige Rollade
####################################################
####################Rollo HWR################
####################################################
sub rollo_HWR {

my ($state) = "$_[0]";
my $pid = 0;


if ($state eq "auf")
{

system("echo \"TXP:0,0,10,10920,91,41,57,18,8,4,8,4,4,8,4,8,4,8,8,4,8,4,4,8,4,8,4,8,4,8,8,4,4,8,4,8,4,8,4,8,4,8,4,8,8,4,8,4,8,4,4,8,8,4,4,8,4,8,8,4,8,4,8,4,8,4,8,4,4,8,4,8,4,8,4,8,4,8,8,4,4,8,4,8,4,8,8,61;\" | nc -u 192.168.178.31 49880 & pid=$! sleep 1 kill $pid 2>/dev/null >/dev/null");
}
else
{
    if ($state eq "stop")
    {
system("echo \"TXP:0,0,10,10920,91,41,57,18,8,4,8,4,4,8,4,8,4,8,8,4,8,4,4,8,4,8,4,8,4,8,8,4,4,8,4,8,4,8,4,8,4,8,4,8,8,4,8,4,8,4,4,8,8,4,4,8,4,8,8,4,8,4,8,4,8,4,8,4,4,8,4,8,4,8,8,4,4,8,8,4,4,8,8,4,4,8,8,61;\" | nc -u 192.168.178.31 49880 & pid=$! sleep 1 kill $pid 2>/dev/null >/dev/null");
    }
    else
    {
system("echo \"TXP:0,0,10,10920,91,41,57,18,8,4,8,4,4,8,4,8,4,8,8,4,8,4,4,8,4,8,4,8,4,8,8,4,4,8,4,8,4,8,4,8,4,8,4,8,8,4,8,4,8,4,4,8,8,4,4,8,4,8,8,4,8,4,8,4,8,4,8,4,4,8,4,8,4,8,4,8,8,4,8,4,4,8,4,8,8,4,8,61;\" | nc -u 192.168.178.31 49880 & pid=$! sleep 1 kill $pid 2>/dev/null >/dev/null");
    }
}
}

Diese beide Codes stehen in meiner 99_myutils.pm

Habe ich nicht ein Device angelegt? Könntest du mir oder jemand anhand meines Beispieles näher erklären?
Beispielsweise so?

define HWR_Test ROLLO
set HWR_Test pct 50
set HWR_Test geschlossen
set HWR_Test offen


Bin für jede Hilfe dankbar. Bin ja auch blutiger Anfänger.
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: KernSani am 10 März 2019, 19:48:26
Schau dir mal das Wiki an: https://wiki.fhem.de/wiki/ROLLO - ist vielleicht nicht 100%ig aktuell und vollständig, sollte aber weitestgehend passen.

Du musst noch im HWR_Test Device die entsprechenden Attribute pflegen - insbesondere rl_commandUp (in deinem Fall sollte da sowas rein, wie "set Roll_HWR auf"), rl_commandDown und rl_commandStop. Zudem sind natürlich die Zeiten (insbesondere rl_secondsDown und rl_secondsUp) wichtig, sonst kommt Unfug raus.

Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: Kuehnhackel am 10 März 2019, 21:30:48
So, dadurch, dass ich näher am Rolladen im WZ  sitze teste ich hier.

###Rolladen Wohnzimmer Manuell###
define Roll_WZ ROLLO
attr Roll_WZ rl_secondsDown 10
attr Roll_WZ rl_secondsUp 10
set Roll_WZ pct 50
set Roll_WZ ab
set Roll_WZ auf


dann kommt folgende Meldung nach dem Speichern:
Unknown argument ab, choose one of down:noArg reset:open,closed extern:open,closed,stop half:noArg unblocked:noArg blocked:noArg stop:noArg up:noArg pct:0,10,20,30,40,50,60,70,80,90,100 open:noArg closed:noArg drive:textField Unknown argument auf, choose one of down:noArg reset:open,closed extern:open,closed,stop half:noArg unblocked:noArg blocked:noArg stop:noArg up:noArg pct:0,10,20,30,40,50,60,70,80,90,100 open:noArg closed:noArg drive:textField

auf bzw. ab wird ja wohl nicht erkannt. Muss ich in den anderen Teilen ab durch closed ersetzen oder was mache ich sonst falsch?
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: KernSani am 10 März 2019, 21:51:11
Zitat von: Kuehnhackel am 10 März 2019, 21:30:48
So, dadurch, dass ich näher am Rolladen im WZ  sitze teste ich hier.

###Rolladen Wohnzimmer Manuell###
define Roll_WZ ROLLO
attr Roll_WZ rl_secondsDown 10
attr Roll_WZ rl_secondsUp 10
set Roll_WZ pct 50
set Roll_WZ ab
set Roll_WZ auf


dann kommt folgende Meldung nach dem Speichern:
Unknown argument ab, choose one of down:noArg reset:open,closed extern:open,closed,stop half:noArg unblocked:noArg blocked:noArg stop:noArg up:noArg pct:0,10,20,30,40,50,60,70,80,90,100 open:noArg closed:noArg drive:textField Unknown argument auf, choose one of down:noArg reset:open,closed extern:open,closed,stop half:noArg unblocked:noArg blocked:noArg stop:noArg up:noArg pct:0,10,20,30,40,50,60,70,80,90,100 open:noArg closed:noArg drive:textField

auf bzw. ab wird ja wohl nicht erkannt. Muss ich in den anderen Teilen ab durch closed ersetzen oder was mache ich sonst falsch?

Sorry, aber bitte mach dich erstmal mit den Grundlagen von FHEM vertraut (im Anfängerforum sind da ein paar hilfreiche Beiträge oben angepinnt).
Du schreibst den Kram doch nicht etwa von Hand in die fhem.cfg?? Bitte gib mal den define Befehl in der Kommandozeile der FHEM Web-Oberfläche ein und Pflege die Attribute dann (so wie ich es vorhin beschrieben hatte) über die Web-Oberfläche, dann sollte das klarer werden...
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: Kuehnhackel am 10 März 2019, 22:13:07
Habe jetzt mal nach Deinen Anweisungen folgende Befehle in die Kommandozeile eingegeben:

define Roll_WZ ROLLO
attr Roll_WZ rl_commandDown Roll_WZ ab
attr Roll_WZ rl_secondsDown 10
attr Roll_WZ rl_commandUp Roll_WZ auf
attr Roll_WZ rl_secondsUp 10

set Roll_WZ pct 50
set Roll_WZ ab
set Roll_WZ auf


Aber keine Reaktion
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: KernSani am 10 März 2019, 22:24:54
ok, ich versuche es nochmal... Du hast ein funktionierendes (Dummy-) Device namens Roll_HWR, das du mit den Kommandos "set Roll_HWR ab", "set Roll_HWR auf" und "set Roll_HWR stop" steuern kannst, richtig?

Mit ROLLO legen wir jetzt eine Schicht darüber. Wir legen also ein neues Device vom Typ ROLLO an, das dein existierendes Roll_HWR steuert. Dieses neue ROLLO-Device muß wissen, welche Befehle es ausführen soll, um Roll_HWR zu steuern. Das passiert über die Attribute. Wenn du also sowas eingibst (einzeln, über die Weboberfläche, nicht in der fhem.cfg):

define Roll_WZ ROLLO
attr Roll_WZ rl_commandDown set Roll_HWR ab
attr Roll_WZ rl_secondsDown 10
attr Roll_WZ rl_commandUp set Roll_HWR auf
attr Roll_WZ rl_secondsUp 10
attr Roll_WZ rl_commandStop set Roll_HWR stop

sollten wir ein Stück weiter kommen. Du solltest dann auch ein paar hübsche Icons sehen, über die du den ROLLO hoch und runter fahren kannst. Wenn das nicht funktioniert, bitte verbose 5 am ROLLO Device setzen, einen Versuch unternehmen und die Logausgabe posten.
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: Kuehnhackel am 10 März 2019, 23:20:22
Zitatok, ich versuche es nochmal... Du hast ein funktionierendes (Dummy-) Device namens Roll_HWR, das du mit den Kommandos "set Roll_HWR ab", "set Roll_HWR auf" und "set Roll_HWR stop" steuern kannst, richtig?
Ja, Roll_WZ, aber ist ja egal.

ZitatMit ROLLO legen wir jetzt eine Schicht darüber. Wir legen also ein neues Device vom Typ ROLLO an, das dein existierendes Roll_HWR steuert. Dieses neue ROLLO-Device muß wissen, welche Befehle es ausführen soll, um Roll_HWR zu steuern. Das passiert über die Attribute. Wenn du also sowas eingibst

Folgendes habe ich daraufhin eingegeben:
define Rollade_WZ ROLLO
attr Rollade_WZ rl_commandDown set Roll_WZ ab
attr Rollade_WZ rl_secondsDown 10
attr Rollade_WZ rl_commandUp set Roll_WZ auf
attr Rollade_WZ rl_secondsUp 10
attr Rollade_WZ rl_commandStop set Roll_WZ stop


Die 5 Icons sehe ich, kann och ja auch anklicken, aber es funktioniert nicht.

Ob ich das jetzt mit "attr global verbose 5" richtig gemacht habe weiß ich nicht

AUf jeden Fall steht folgendes im LOG
2019.03.10 23:10:23 5: Cmd: >set Rollade_WZ open<
2019.03.10 23:10:23 5: ROLLO (Rollade_WZ) >> Set (open,)
2019.03.10 23:10:23 5: ROLLO (Rollade_WZ) DesiredPos set to open, ()
2019.03.10 23:10:23 5: ROLLO (Rollade_WZ) DesiredPos now 0, open
2019.03.10 23:10:23 5: Starting notify loop for Rollade_WZ, 2 event(s), first is command: open
2019.03.10 23:10:23 5: End notify loop for Rollade_WZ
2019.03.10 23:10:23 5: ROLLO (Rollade_WZ) >> Start
2019.03.10 23:10:23 4: ROLLO (Rollade_WZ) drive from 40 to 0. command: open. state: pct-40
2019.03.10 23:10:23 4: ROLLO (Rollade_WZ) pct: 40 -> 0 / direction: up
2019.03.10 23:10:23 5: ROLLO (Rollade_WZ) >> calculateDriveTime | going up: from 40 to 0
2019.03.10 23:10:23 5: ROLLO (Rollade_WZ) netto drive time = 4
2019.03.10 23:10:23 4: ROLLO (Rollade_WZ) calculateDriveTime: oldpos=40,newpos=0,direction=up,time=10,steps=40,drivetime=8
2019.03.10 23:10:23 5: Starting notify loop for Rollade_WZ, 2 event(s), first is last_drive: drive-up
2019.03.10 23:10:23 5: End notify loop for Rollade_WZ
2019.03.10 23:10:23 4: ROLLO (Rollade_WZ) execute following commands: ; ;
2019.03.10 23:10:23 5: Starting notify loop for Rollade_WZ, 1 event(s), first is drive-type: modul
2019.03.10 23:10:23 5: End notify loop for Rollade_WZ
2019.03.10 23:10:23 4: ROLLO (Rollade_WZ) stop in 8 seconds.


Ich weiß ich bin ein schwierigeer Fall ...
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: KernSani am 10 März 2019, 23:58:59
Das mit dem verbose 5 hat schonmal geklappt :) Was mich irritiert ist die Zeile:

ROLLO (Rollade_WZ) execute following commands: ; ;

da sollte eigentlich das Kommando stehen... Mach bitte mal ein

list Rollade_WZ
und poste das Ergebnis...
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: Kuehnhackel am 11 März 2019, 18:49:07
Hallo, nochmal danke an alle, für die Mithilfe und euren Langmut mir zu helfen.

Nachdem ich alles noch einmal eingetragen habe funktioniert alles.

Jetzt werde und kann ich ja ein bisschen mit den Zeiten basteln, mal sehen ob ich das alleine hinbekomme, oder in kürze wieder nerve.

Danke

Kuehnhackel
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: AxelR am 01 April 2019, 09:22:53
Hallo Entwickler des Moduls 44_ROLLO,

ein klasse Modul, jedoch komme ich mit  der Dokumentation ich nicht ganz klar.

In der englischen Commandref unter Attributes ist zu lesen:
--
rl_secondsDown attr <Rollo-Device> rl_secondsDown <number>
time in seconds needed to drive the shutter down
--
und in der deutschen und im Wiki ist folgender Eintrag zu finden:
--
rl_secondsDown attr <Rollo-Device> rl_secondsDown <number>
Sekunden zum hochfahren
--

Genau so verhält es sich mit der Beschreibung von "rl_secondsUp". Sind die beiden Beschreibungen für Up und Down nicht vertauscht? Die englische Beschreibung sollte wohl die Richtige sein.

Nach meinen Tests sollten die Zeiten von "rl_excessTop" und "rl_excessBottom" von den Zeiten von "rl_secondsDown" und "rl_secondsUp" abgezogen werden. Oder die Zeiten von "rl_secondsDown" und "rl_secondsUp" sind die Fahrzeiten, von den Scheiben Ober und Unterkanten, dann muss nichts abgezogen werden.
Ansonsten ist z.B. ein anfahren der Position "half" irgendwo, nur nicht in der Mitte des Fensters.


Ein Beispiel von meinem Schlafzimmer Rolladen, den ich mit einem Sonoff T1 2Kanal, geflasht mit der Tasmota Firmware, als MQTT2_DEVICE steuere. Die Bezeichnungen für die beiden Schalter (Kanäle) des Sonoff lauten SzRollK1 und SzRollK2.
Die Fahrzeiten wurden mit der Stoppuhr eines Smartphones ermittelt.

Beispiel:
Zeit zum Runterfahren gesamt = 27 Sek.
Zeit zum Hochfahren gesamt = 28 Sek.
Zeit von oberem Scheibenrand, bis der Rolladen komplett hochgefahren ist = 1 Sek.
Zeit vom unteren Scheibenrand, bis komplett geschlossen, Lamellen sind zu = 10 Sek.

Somit ergeben sich folgende Werte:
Fahrzeit Runterfahren gesamt - Top - Bottom: 27 - 1 - 10 = 16
rl_secondsDown: 16

Fahrzeit Hochfahren gesamt - Top - Bottom: 28 - 1 - 10 = 17
rl_secondsUp: 17

Hier nun die eingesetzten/geänderten Attribute:
rl_autoStop 0
rl_commandDown set SzRollK2 on
rl_commandStopDown set SzRollK2 off
rl_commandStopUp set SzRollK1 off
rl_commandUp set SzRollK1 on
rl_excessBottom 10
rl_excessTop 1
rl_resetTime 2
rl_secondsDown 16
rl_secondsUp 17
rl_switchTime 1
rl_type normal
room Schlafzimmer


Sollte ich hier richtig liegen, bitte ich die vertauschten Werte im Wiki und in der Commandref zu berichtigen und das Beispiel, oder ein ähnliches, wegen der besseren Verständlichkeit  in der Wiki aufzunehmen. Bei meinem Rolladen funktioniert es mit diesen Werten.

Gruß
Axel
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: 87insane am 01 April 2019, 09:32:50
Hey und guten Morgen,

auch wenn ich die Fragen alle beantworten könnte verweise ich mal auf: https://forum.fhem.de/index.php/topic,98366.msg917091.html#msg917091
Das funktioniert besser als ohne den Shutter Fork. Hinzu wird dann alles im Schalter berechnet. Die Symbolik ist fast identisch zu diesem Modul.

Das 44er Modul ist wirklich klasse. Allerdings für deine Konstellation nicht notwendig. Hier hat Beta-User ganze Arbeit geleistet mit den Templates usw.

An sich sind die Dokus alle ein wenig veraltet aber lassen sich durch einfache Tests ja ableiten (die Befehle).

Was die Position half angeht, kann diese auch bei z.B. 65% der eigentlichen Fahrt liegen. Jeder hat auch ein anderes Empfinden für "halb". Auch das würde mit der Einrichtung aus dem Link oben einstellbar sein.

Gruß,
Kai
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: KernSani am 06 April 2019, 09:56:38
Zitat von: AxelR am 01 April 2019, 09:22:53

Sollte ich hier richtig liegen, bitte ich die vertauschten Werte im Wiki und in der Commandref zu berichtigen und das Beispiel, oder ein ähnliches, wegen der besseren Verständlichkeit  in der Wiki aufzunehmen. Bei meinem Rolladen funktioniert es mit diesen Werten.

Gruß
Axel
Danke für den Hinweis. CommandRef schaue ich mir an und passe sie an. Das Wiki lebt vom Mitmachen - User.anlegen und selber machen ;-)


Kurz, weil mobil
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: Sunless am 06 April 2019, 16:37:32
Hallo in die Runde,
habe nun endlich mal meine Rollos ins FHEM gezerrt, das Modul ist eine sehr feine Sache.

Kurz zur Hardware: ESP8266 mit EspEasy steuert ein Doppel-SSR, welches je nach gewünschter Fahrtrichtung die Schaltkontakte meiner GW195 (Gurtwickler) überbrückt und Rückmeldung ans FHEM gibt, welche Taste gerade "gedrückt" wurde. Endpunkte sind direkt im Wickler gespeichert und die Laufzeiten passen auch recht gut. Klappt also super ...

Nur ein kleines 'Problem' habe ich: Da, wie gesagt, Gurtwickler im Einsatz sind und einige Rollladen zudem in der Welle auch noch ein Getriebe haben (groß, schwer, wurden irgendwann mal nachgerüstet - praktisch jeder im Haus ist anders aufgebaut) passen die PCT-Werte gar nicht.
Bei geschlossenem Rollo z.B. Terrassentür Arbeitszimmer orgelt der Wickler erstmal rund 30 Sekunden (Gesamtlaufzeit 70 Sekunden), bis er das Rollo ca. 20cm hochgezogen hat. Danach geht es dann rasant(er) weiter, je mehr "Material" aufgerollt wird und je weniger Rollogewicht noch hochzuwuchten ist (Küchenfenster dauert beispielsweise nur 15s zu und 19s auf - ist ohne Getriebe, kleiner und auch ansich leichter).
Also generell progressiv beim Öffnen und regressiv beim Schließen.

Gäbe es eine Möglichkeit, diese Option mit ins Modul zu integrieren? Könnte mir vorstellen, eine Auswahl möglich zu machen, ob das Rollo linear läuft oder nicht und dann für jede +/-10% PCT die Laufzeit für hoch und runter eingeben zu können - alternativ die PCT/Fahrzeit berechnen, was allerdings u.U. reichlich kompliziert werden könnte ...

Ist jetzt nichts ultrawichtiges, wäre aber evtl. eine Idee.

Gruß Sebastian
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: KernSani am 12 April 2019, 23:24:43
Hi Sebastian,

eine ähnliche Anfrage gab es schon mal. Dmals war die Überlegung, einen Faktor mit einzubauen, in der Art 0.9:1.1, heißt beim ersten Prozent bewegt sich der Rolle nur 0,9%, beim letzten Prozent 1,1% (also eine konstante Steigung - ich habe schon damals die Integralrechnung geliebt ;-)) Das würde in deinem Fall aber wahrscheinlich nicht wirklich helfen... Ich denke übers Wochenende mal drüber nach, wie man so ein %-Staffelung einbauen könnte.

Grüße,

Oli
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: Sunless am 22 April 2019, 00:10:18
Hi Oli,
ich denke, mit einer Art "manuellen Mapping" wäre jedem in einer ähnlichen Situation geholfen. Bei mir kommt noch hinzu, dass einige Rolladen nicht ganz bis "offen" gefahren werden könne, da dann nicht genug Eigengewicht "herunterzieht", damit der Wickler schließen kann - fährt an, Rollo zuckt sich nicht - er merkt dann keinen Widerstand und geht auf Fehler - Die Rollläden hängen also eh schon zwischen ca 10 und 20% unten, damit der Wickler funktioniert ...
Mach Dir keinen Streß, ist nicht wirklich wichtig  :D
benutze derzeit nur die privacy vom ASC und komplett hoch resp. herunter nach Sonnenauf- und untergang und ich "weiss" ja, wieviel ich fahren müsste, um die gewünschte reale Postion zu erreichen, sollte ich es einmal wollen  8)

Schöne RestOstern noch

Sebastian
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: Beagel am 06 Mai 2019, 21:33:24
Hallo zusammen,

hab mich jetzt mal daran versucht meine Jaroliftrolladen (mit Rolling Code) Smart zubekommen.
Dafür hab ich eine 16Kanalfernbedienung umgebaut um sie über GPIO Pin anzusteuern, die Anregung dafür hab von hier
https://forum.fhem.de/index.php/topic,27114.0.html und von hier https://forum-raspberrypi.de/forum/thread/12341-rollladen-steuerung-per-modifizierter-fb/?pageNo=1. Leider hab ich keine Ahnung vom Programmieren, die Sache mir den Script oder Pyhdon
hab ich nicht hin bekommen, daher sieht meine Rolladensteuerung im Moment so aus:

für jede Funktion der Fernbedienung gibt es ein Device (Dummy) z.B. Kanal hoch (set GPIO17 blink bis der Gewünschte Kanal erreicht)
für jede Rollade muss der Kanal wieder zum Anfang zurück

Ein Dummy (rollo_8auf) schaltet dann ein Diof in dem mehre Befehle abgearbeitet werden:
defmod do_rollo_8auf DOIF ([rollo_8auf:"on"]) (set GPIO17 blink 3 1) (set Rollo_Auf Impuls3sek) (set GPIO23 blink 3 1) (set rollo_8auf off)
attr do_rollo_8auf room 7_Jaro
attr do_rollo_8auf verbose 5
attr do_rollo_8auf wait 0,5,4,5

setstate do_rollo_8auf cmd_1
setstate do_rollo_8auf 2019-05-06 19:52:32 Device rollo_8auf
setstate do_rollo_8auf 2019-05-06 19:52:46 cmd 1.4
setstate do_rollo_8auf 2019-05-06 19:52:46 cmd_event rollo_8auf
setstate do_rollo_8auf 2019-05-06 19:52:46 cmd_nr 1
setstate do_rollo_8auf 2019-05-06 19:52:46 cmd_seqnr 4
setstate do_rollo_8auf 2019-05-06 19:52:32 e_rollo_8auf_events on
setstate do_rollo_8auf 2019-05-06 14:50:33 mode enabled
setstate do_rollo_8auf 2019-05-06 19:52:46 state cmd_1
setstate do_rollo_8auf 2019-05-06 19:52:46 wait_timer no timer


Es gibt noch Doif für Runter und Stop und für die Beschattung, jetzt würde ich gerne die Bedienung der einzlen Dummys (DIOF)
über das Modul ROLLO machen leider funktioniert es nicht. Die Doif werden nicht abgearbeitet, Rollade fährt nicht.

defmod Rolladen_WZ_Fenster ROLLO
attr Rolladen_WZ_Fenster alias Rollo_Wohnzimmerfenster
attr Rolladen_WZ_Fenster cmdIcon open:fts_shutter_up closed:fts_shutter_down stop:fts_shutter_manual half:fts_shutter_50
attr Rolladen_WZ_Fenster devStateIcon open:fts_shutter_10:closed closed:fts_shutter_100:open half:fts_shutter_50:closed drive-up:fts_shutter_up@red:stop drive-down:fts_shutter_down@red:stop pct-100:fts_shutter_100:open pct-90:fts_shutter_80:closed pct-80:fts_shutter_80:closed pct-70:fts_shutter_70:closed pct-60:fts_shutter_60:closed pct-50:fts_shutter_50:closed pct-40:fts_shutter_40:open pct-30:fts_shutter_30:open pct-20:fts_shutter_20:open pct-10:fts_shutter_10:open pct-0:fts_shutter_10:closed
attr Rolladen_WZ_Fenster rl_autoStop 0
attr Rolladen_WZ_Fenster rl_commandDown set rollo_8zu on
attr Rolladen_WZ_Fenster rl_commandStop set rollo_8stop on
attr Rolladen_WZ_Fenster rl_commandUp set rollo_8auf
attr Rolladen_WZ_Fenster rl_excessBottom 2
attr Rolladen_WZ_Fenster rl_excessTop 4
attr Rolladen_WZ_Fenster rl_secondsDown 20
attr Rolladen_WZ_Fenster rl_secondsUp 20
attr Rolladen_WZ_Fenster rl_switchTime 1
attr Rolladen_WZ_Fenster rl_type normal
attr Rolladen_WZ_Fenster room 7_Jaro
attr Rolladen_WZ_Fenster verbose 5
attr Rolladen_WZ_Fenster webCmd open:closed:half:stop:pct

setstate Rolladen_WZ_Fenster closed
setstate Rolladen_WZ_Fenster 2019-05-06 19:02:09 command closed
setstate Rolladen_WZ_Fenster 2019-05-06 19:02:09 desired_pct 100
setstate Rolladen_WZ_Fenster 2019-05-06 19:02:10 drive-type modul
setstate Rolladen_WZ_Fenster 2019-05-06 19:02:10 last_drive drive-down
setstate Rolladen_WZ_Fenster 2019-05-06 19:02:36 pct 100
setstate Rolladen_WZ_Fenster 2019-05-06 19:02:36 state closed


Leider konnte ich den Logeintrag nicht kopieren :( daher ein Screenshot

Vielleicht kann mir ja jemand auf die Sprünge helfen oder falls es mit dem Modul wegen der Kanal anwahl nicht geht eine schönere Rolladensteuerung empfehlen. Würde natürlich gerne irgend wann die Beschattung und automatisierte (Zeit) Steuerung verwirklichen, auch dafür brauche ich noch Anregungen.

Schon mal Vielen Dank
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: 87insane am 07 Mai 2019, 08:28:30
Guten Morgen,

nach dem ganzen Text....
... Normal würdest du die Dummys steuern und diese wiederum die DOIFs. DOIF triggert auf ein EVENT. In deinem Fall (das einzige DOIF was auch angehangen ist):
rollo_8auf:"on" <- Darauf wartet er im Event Monitor. Wenn das nicht kommt, wird das DOIF auch nicht laufen. Dazu lohnt es sich das DOIF etwas schöner zu machen / bzw. richtiger...

Trennzeichen für Befehle ist das Komma, daher ist keine Verdoppelung der Trennzeichen erforderlich.
(<Befehl 1>, <Befehl 2>, ... <Befehl n>)

Quelle: https://wiki.fhem.de/wiki/DOIF/Einsteigerleitfaden,_Grundfunktionen_und_Erl%C3%A4uterungen (https://wiki.fhem.de/wiki/DOIF/Einsteigerleitfaden,_Grundfunktionen_und_Erl%C3%A4uterungen)

Wichtig ist bei dem Modul hier, das du eben die entsprechenden Befehle ausfüllst und zwar so wie du sie in FHEM auch über die Comand-Zeile oben eingeben würdest.

Wenn du dort set rollo_8auf ausführst, was passiert dann? Aufgrund dessen was du hier gepostet hast, würde ich mal sagen nicht viel, oder?
Ach ja und dein DOIF sollte in meinen Augen nicht wirklich oft laufen... Entweder hast du einen DOELSEIF Zweig oder doalways. So könnte ein DOIF aussehen:

defmod sonnenaufgang_rollos DOIF ([{twilight("sonnenuntergang_nv","sr_civil","06:00","09:30")}]) \
(set ^((?!sz)[a-z]?[a-z])_rollo pct 0)\
DOELSEIF ([00:15])

(Dieses DOIF fährt alle Rollos, bis auf das Rollo im SZ hoch. Das macht es immer wenn die Sonne aufgeht aber nicht vor 06:00 Uhr und nicht nach 09:30 Uhr).
Das DOELSIF ist nur dafür, das dieses DOIF mehrfach ausgeführt wird. DOALWAY würde das gleiche tun, ist aber mit Problemen verbunden (weiß gerade nicht mehr was das war ist aber auch unwichtig, an der Stelle).

Hier steht nur ein Befehl zum ausführen drin. Weitere einfach mit "," trennen und beifügen.
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: Beagel am 07 Mai 2019, 11:17:30
Guten Morgen,

ja ein langer Text, wollte soviel Info wie möglich geben.
Das angehängte DOIF ist nur eins von vielen, für jeden Rolladen gibt es 4 Stück ( rauf, runter, stop, Beschattung ).
Hab auch gerade gesehen das im Modul ROLLO bei "attr Rolladen_WZ_Fenster rl_commandUp set rollo_8auf " das on fehlt, werden dann die anderen Befehle " attr Rolladen_WZ_Fenster rl_commandDown set rollo_8zu on ; attr Rolladen_WZ_Fenster rl_commandStop set rollo_8stop on " auch nicht ausgeführt ?

Werden die dummys ( webcmd on:off, set rollo_8auf on ) direkt geschaltet funktionieren alle, Rollos fahren wie gewünscht.
Wenn ich die Befehle mit Komma getrennt werden, wird dann auch die Zeitverzögerung (wait ) berücksichtig, ohne Verzögerung verschluckt er sich in der reihenvolge der Befehle.
Das DOELSEIF ([00:15]), heist das das Doif nach 15 sek wieder audführbar ist ?

Danke
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: 87insane am 07 Mai 2019, 13:16:35
ZitatDas angehängte DOIF ist nur eins von vielen, für jeden Rolladen gibt es 4 Stück ( rauf, runter, stop, Beschattung ).
Geht sicherlich mit weniger DOIFs und schöner. Im Rollo Wiki stehen auch die DOIFs für Schalter z.B... Da kann man sich gut orientieren.

ZitatHab auch gerade gesehen das im Modul ROLLO bei "attr Rolladen_WZ_Fenster rl_commandUp set rollo_8auf " das on fehlt, werden dann die anderen Befehle " attr Rolladen_WZ_Fenster rl_commandDown set rollo_8zu on ; attr Rolladen_WZ_Fenster rl_commandStop set rollo_8stop on " auch nicht ausgeführt ?
Die Frage verstehe ich nicht! Im Wiki steht genau wie man das einrichten muss. Du brauchst hoch und runter Befehle. Diese muss das Rollo Modul ja auch kennen. Du muss dir das Rollo Modul vorstellen als wäre es einfach nur ein Dummy (nicht böse nehmen an die Entwickler, dient nur der Erklärung). Damit der Dummy etwas machen kann, muss dieser auch wissen wie er dies machen kann. Am besten machst du erstmal eine Bestandsaufnahme.
- Welchen Befehl brauchen deine Rollos für hoch?
- Welchen Befehl für runter?
- Welchen Befehl für stop bei hoch und welchen für stop bei runter?
- Welche Befehle brauchst du bei deiner speziellen Konfig? (Hatte nicht die gleiche Steuerung wie du aber wenn man das Modul einmal kennt, ist das einfach...)

ZitatWerden die dummys ( webcmd on:off, set rollo_8auf on ) direkt geschaltet funktionieren alle, Rollos fahren wie gewünscht.
Gut... Auch wenn man sicherlich, wie oben schon gesagt, etwas verbessern/verschönern/Code verkürzen kann.

ZitatWenn ich die Befehle mit Komma getrennt werden, wird dann auch die Zeitverzögerung (wait ) berücksichtig, ohne Verzögerung verschluckt er sich in der reihenvolge der Befehle.
Ein DOIF wird ja ganz normal abgearbeitet... Also sollte es bei korrekter Syntax auch korrekt durch laufen. Du muss auch nicht für jedes Rollo ein eigenes DOIF haben. Dafür kann man auch mit Regex arbeiten. In dem von mir geposteten DOIF sieht man z.B. Regex. Anfangs nervten mich diese Regex sehr aber die sind einfach super nützlich. Aber man muss sich eben ein paar Stunden (ich zumindest) hinsetzen um es zu verstehen.
Nochmal zu dem DOIF. Da muss du natürlich bei allen deinen zukünftigen DOIFs immer mal selber testen lernen. Dazu empfehle ich auch wieder das Wiki. Das gibt es einen ausführlichen Teil "Debug DOIF". Der hat mir auch schon geholfen.

ZitatDas DOELSEIF ([00:15]), heist das das Doif nach 15 sek wieder audführbar ist ?
Nein. Das bedeutet 00:15 Uhr. Und steht hier nur für einen pseudo Zweig. Ich weiß nicht mehr wer mir das hier sagte aber doalways macht in bestimmten Konstellationen wohl Probleme. Um dem aus dem Weg zu gehen, ist es sinnvoll mit dieser Lösung zu arbeiten. An sich würde der ELSIF Zweig nur dann geschehen wenn der erste Teil nicht passiert.

Zur Inspiration nochmal ein altes Stückchen Code. Das macht auch nichts anderes als die DOIFs im Wiki. Also es gibt verschiedene Wege.
Das notify ist damit Rollo den Tastendruck an einem Schalter mitbekommt. Hinzu ist es für alle meine Rollos gewesen. So hatte ich eins für alle Rollos.

(Kopiert aus der Konfig. Da ich das nicht mehr nutze, hatte ich es nur gelassen, wenn ich sowas nochmal bauen will. Am besten garnicht erst anfangen aus der Konfig zu kopieren oder sonst was. Immer den DEF Editor nehmen).
define rollos_manuell notify ESPEasy_.*_rollo:strom_output_(runter|hoch):.* {\\
my $richtung = '';;\
my $zustand = '';;\
my $geraet = $NAME;;\
$geraet =~ s/^ESPEasy_//;;\
\
if ($EVTPART0 eq "strom_output_hoch:") {\
  $richtung = "drive-up";;\
  $zustand = "open";;\
}\
if ($EVTPART0 eq "strom_output_runter:") {\
  $richtung = "drive-down";;\
  $zustand = "closed";;\
}\
\
if ($EVTPART1 eq "on" && Value("$geraet") ne "$richtung") {\
  fhem("set $geraet extern $zustand");;\
  fhem("$geraet extern $zustand");;\
}\
elsif ($EVTPART1 eq "off" && Value("$geraet") eq "$richtung") {\
  fhem("set $geraet extern stop");;\
  fhem("$geraet extern stop");;\
}\
}


Ich hoffe ich kann/konnte dir ein wenig helfen... Viel Erfolg :)
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: Vorhand am 07 Mai 2019, 18:01:33
Danke an die Macher von Rollo.
Ich verwende das Modul zusammen mit 24V Rolladenrelais von Schalk. Geht wunderbar. Darüber sitzt die Steuerung ASC - ist noch nicht ganz fertig, aber mächtig.
Meiner Frau gefällt die händische Bedienebene mit den Icons. Zum Fahren und Stoppen z.B. über Handy nutzt sie die hoch runter Icons und wie selbstverständlich klickt sie das FahrIcon an (links) um zu stoppen. Das rechte Icon mit der Hand soll wohl für Stop sein - ist aber überflüssig. Was sie vermisst, ist die Möglichkeit, die Läden einzeln aus der Automatik zu nehmen.
Sie schlägt vor, das rechte Icon für die Hand/Auto-Umschaltung umzuwidmen.
Was haltet ihr davon?

Weitere Frage. Außerdem habe ich ein paar Läden mit dem Jarolift Funkmotor. Leider gibt es in fhem keine Möglichkeit der Funkansteuerung. Aber es gibt noch einen Tastereingang am Motor, den ich z.Zt. mit einem Relais aus FS20 ansteuere. Mit ein paar at-Befehlen fahren sie dann hoch bzw. runter. Bei Handbedienung verlieren sie natürlich die Synchronität zur Automatik. Selbst das ist kein Problem, weil mit 2 x drücken des Tasters bzw. der FB alles wieder stimmt.
Optimal wäre, wenn das Modul Rollo auch diese Toggle Funktion verwalten könnte. Dann wären alle möglichen Hardware-Ebenen erfasst.
Die Oberfläche könnte so bleiben. Falls der Laden in die falsche Richtung läuft könnte man z.B. mit einem Doppelklick auf den Icons eine Richtungsänderung herbeiführen - dauert ohnehin 1s.
Wäre toll. Was haltet ihr davon?

Noch ne Frage. Im Wohnzimmer haben wir Jalousien mit Lamellen verbaut (Relaistechnik), weil man durch ein Beschattungsrollo nicht durchsehen kann. Bei Lamellen sehr wohl. Natürlich nur wenn sie geeignet gekippt sind. Das wird in der Regel mit einem kurzen Gegenlauf von ca. 0,5 s gemacht. Das sollte natürlich auch auf der Handebene (Rollo) funktionieren. Die ASC könnte das irgendwann auch in Abhängigkeit des Sonnenstandes machen - kann es z.Zt noch nicht.
Da dem Modul Rollo alle Zwischenpositionen bekannt sind, könnte man einen Bereich definieren, z.B. 50-90%, bei dem ein einstellbarer Gegenlauf Impuls abgegeben wird. Die Beschattung wäre perfekt. Außerdem bräuchte ASC nicht mehr darauf eingehen.
Mehr braucht der Mensch nicht. Was haltet ihr davon?
Danke



Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: cs-online am 12 Mai 2019, 19:45:16
Hallo zusammen,

wahrscheinlich steht die Lösung schon irgendwo hier, aber ich habe die leider nicht gefunden. Ich würde mit dem Modul gerne eine Leinwand steuern. Diese wird über 3 Relais gesteuert, eben rauf, stop, runter.

Ich habe versucht die drei Relais so einzubinden:

attr Leinwand rl_commandDown Relais_16 An
attr Leinwand rl_commandStop Relais_14 An
attr Leinwand rl_commandUp Relais_12 An


nur wenn ich auf öffnen oder schließen drücke, tut sich an den Relais rein gar nichts. Was kann ich da falsch gemacht haben ?

Würde mich über Hilfe freuen,

Grüße

Christian
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: MarkusHiba am 12 Mai 2019, 21:11:08
Hallo,

der Set Befehl fehlt
Zum Beispiel:
set (Name Device) open

Grüße

MarkusHiba

Gesendet von meinem G8141 mit Tapatalk

Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: cs-online am 13 Mai 2019, 08:26:51
Danke, das war's :-)
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: grappa24 am 13 Mai 2019, 17:18:44
muss jetzt mal ein Lob loswerden. Nachdem 44_ROLLO offiziell aufgenommen wurde, hatte ich mich entschlossen, es noch einmal damit zu probieren, hatte auch viel Unterstützung beim Finalisieren der "berüchtigten" DOIFs zum Synchronisieren mit externen Tastern.

Seitdem läuft das Modul ohne Probleme und macht genau das, was es soll; das war in meinem Fall die korrekte Anzeige der Stati in meinen floorplänen - neben der Ansteuerung meiner KNX Rollos natürlich.

Grüße Dieter/grappa24

P.S. Blos nix mehr dran ändern bitte .... ;D
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: Thunder2001 am 14 Mai 2019, 09:33:15
Hallo Leute,

folgendes Problem. Ich habe FS20 Funkschalter und FS20 rsu Rollladenschalter. Ich habe die Rollläden in fhem Eingebunden und kann diese hoch und runter fahren.

Nun wollte ich das Modul Rollo probieren, damit ich auch Zwischenstellungen usw. realisieren kann.
Leider komme ich nicht klar. Ich dachte, ich muss das zu steuernde Device erstmal löschen und dann mit dem Modul Rollo verknüpfen.
So in Etwa:

define FS20_2c610d ROLLO
attr FS20_2c610d rl_secondsDown 30
attr FS20_2c610d rl_secondsUp 30

Befehle werden in keinster Weise angenommen.

set FS20_2c610d 25 zum Beispiel.

Wo liegt mein Denkfehler? Auf jedenfall möchte ich, dass ich weiterhin mit den FS20 Tastern die Rolläden noch steuern kann unabhängig ob fhem läuft.


Vielen Dank!
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: CoolTux am 14 Mai 2019, 09:40:36
Das Du das eigentliche Device gelöscht hast!
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: Thunder2001 am 14 Mai 2019, 09:46:12
@CoolTux

Wenn ein bestehendes Device so eintrage (mit vergebenden Alias) kommt diese Meldung:

Fenster_WZ already defined. delete it first.
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: CoolTux am 14 Mai 2019, 09:53:24
Zitat von: Thunder2001 am 14 Mai 2019, 09:46:12
@CoolTux

Wenn ein bestehendes Device so eintrage (mit vergebenden Alias) kommt diese Meldung:

Fenster_WZ already defined. delete it first.

Entweder Du benennst die anderen etwas um, oder Du nennt die neuen Devices anders.

define RolloWohnzimmer Rollo

Den Verweis auf das dann zu steuernde Device gibt der eigentliche Device Befehl. So verstehe ich zu mindest die Commandref
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: Thunder2001 am 14 Mai 2019, 10:22:10
Ok. Ich muss also im Modul Rollo die Steuerungsbefehle auf Alias Fenster_WZ weiter ausführen lassen.
Irgendwie finde ich das komisch. Es wäre doch einfacher, wenn ich dem Modul Rollo mitteilen könnte, das er beim Ansprechen von Rollowohnzimmer >> Fenster_WZ ansprechen soll.
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: Frank_Huber am 14 Mai 2019, 10:29:27
dann lies doch mal Wiki / Commandref. ;-)

Was deinem define auf jeden Fall fehlt sind die Fahr und Stop-Befehle!

Hier ein Beispiel von einem meiner Rollos:
defmod Rollo4_Dachterrasse ROLLO
attr Rollo4_Dachterrasse cmdIcon open:fts_shutter_up closed:fts_shutter_down stop:fts_shutter_manual half:fts_shutter_50
attr Rollo4_Dachterrasse devStateIcon open:fts_shutter_10:closed closed:fts_shutter_100:open half:fts_shutter_50:closed drive-up:fts_shutter_up@red:stop drive-down:fts_shutter_down@red:stop pct-100:fts_shutter_100:open pct-90:fts_shutter_80:closed pct-80:fts_shutter_80:closed pct-70:fts_shutter_70:closed pct-60:fts_shutter_60:closed pct-50:fts_shutter_50:closed pct-40:fts_shutter_40:open pct-30:fts_shutter_30:open pct-20:fts_shutter_20:open pct-10:fts_shutter_10:open pct-0:fts_shutter_10:closed
attr Rollo4_Dachterrasse rl_autoStop 0
attr Rollo4_Dachterrasse rl_commandDown set OUT_1 PortA6 on
attr Rollo4_Dachterrasse rl_commandStopDown set OUT_1 PortA6 off
attr Rollo4_Dachterrasse rl_commandStopUp set OUT_1 PortA6,A7 off
attr Rollo4_Dachterrasse rl_commandUp set OUT_1 PortA7 on
attr Rollo4_Dachterrasse rl_commandUp2 set OUT_1 PortA6 on
attr Rollo4_Dachterrasse rl_excessBottom 2
attr Rollo4_Dachterrasse rl_excessTop 4
attr Rollo4_Dachterrasse rl_resetTime 0
attr Rollo4_Dachterrasse rl_secondsDown 30
attr Rollo4_Dachterrasse rl_secondsUp 30
attr Rollo4_Dachterrasse rl_switchTime 1
attr Rollo4_Dachterrasse rl_type normal
attr Rollo4_Dachterrasse webCmd open:closed:half:stop:pct
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: CoolTux am 14 Mai 2019, 10:29:50
Zitat von: Thunder2001 am 14 Mai 2019, 10:22:10
Ok. Ich muss also im Modul Rollo die Steuerungsbefehle auf Alias Fenster_WZ weiter ausführen lassen.
Irgendwie finde ich das komisch. Es wäre doch einfacher, wenn ich dem Modul Rollo mitteilen könnte, das er beim Ansprechen von Rollowohnzimmer >> Fenster_WZ ansprechen soll.

Also ich habe so ein Rolllo Ding nicht, aber wenn ich mir die Commandref durchlese dann setzt Du di Befehle zum fahren des Rolllos einfach in die Attribute rl_command und gut ist.
Wenn Du Dir unsicher bist baue Dir einen kleinen Test auf. Setzte die Steuerbefehle von Deinem eigentlichen Rolllo in FHEM in einem Dummy um. Also die Set Befehle und dann steuerst Du erstmal nur den Dummy mit dem Rollo Modul.
So schwer ist das glaube alles doch nicht.
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: 87insane am 14 Mai 2019, 10:53:17
Hey und guten Morgen,

macht es an dieser Stelle nicht Sinn ggf. auf der ersten Seite mal was zu schreiben? Ggf. in ROT und mega fett. Die einzigen Fragen in der letzten Zeit hier drehen sich immer um das selbe. Immer wieder geht es um die Hoch/Runter Kommandos. Ich selber hatte das Modul ca. ein Jahr im Einsatz und kam gut damit klar. "Damals" waren noch die falschen DOIFs im Wiki, das hatte mir echt zugesetzt aber mit Hilfe von einige netten Kollegen hier, ging es dann. Ich verstehe leider nicht, warum wenige auch nur zwei Beiträge weiter oben gucken. Also jetzt in diesem Fall ist es der dritte direkt nacheinander....


ZitatOk. Ich muss also im Modul Rollo die Steuerungsbefehle auf Alias Fenster_WZ weiter ausführen lassen.
Irgendwie finde ich das komisch. Es wäre doch einfacher, wenn ich dem Modul Rollo mitteilen könnte, das er beim Ansprechen von Rollowohnzimmer >> Fenster_WZ ansprechen soll.
Macht in meinen Augen gar keinen Sinn. Du muss dem Modul einfach nur genau den Befehl mitgeben, den du auch in dem eigentlichem Gerät nutzt. Also es sollte meist ein "set NAME power1/power2 on. power1/2 sind hier nur pseudo Befehle. Ob du hier bei NAME den Namen des wz_rollos oder einer Toilette mit Funk eingibst ist egal. Du muss eben das eingeben, was bei dir auch das Rollo steuert.
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: Vorhand am 24 Mai 2019, 18:46:11
Nochmals zur Lamellen-Verstellung bei Beschattung für das Rollo-Modul mit nachfolgen Relais. Die Jalousie muss nach Erreichen der Pos wieder etwas hoch gefahren werden. Dann Kippen die Lamellen.
Ich bin jetzt zu einer recht einfachen Lösung gekommen.
Beim Rollo-Modul kann man für Stop einen aktiven Befehl auswählen. Das ist der richtige Zeitpunkt, um ca 1-2 sec später, die Jalousie wieder für ein paar hundert Millisekunden hochzufahren.
Also
Code: [Auswählen]
attr JalousieKuecheW rl_autoStop 0
attr JalousieKuecheW rl_commandDown set Zu7 on
attr JalousieKuecheW rl_commandStopDown set Zu7 off;;sleep 2;;set Auf6 on-for-timer 0.5
attr JalousieKuecheW rl_commandStopUp set Auf6 off
attr JalousieKuecheW rl_commandUp set Auf6 on
Es funktioniert. Allerdings muss ich mir für 100% geschlossen noch was einfallen lassen. Da soll sie blickdicht zu sein.

Ich schreibe das hier, weil im ASC-Forum mit Verweis auf Rollo, diese Funktionalität abgelehnt wurde.
Da dem Modul Rollo alle Zwischenpositionen bekannt sind, könnte man einen Bereich definieren, z.B. 50-90%, bei dem ein einstellbarer Gegenlauf Impuls abgegeben wird. Die Beschattung wäre perfekt. Außerdem bräuchte ASC nicht mehr darauf eingehen.
Danke
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: 87insane am 24 Mai 2019, 18:48:50
Auch wenn ich das nicht brauche... Finde ich es schade so was nicht zu integrieren. Da es das nicht givt aktuell hast du dir selber geholfen. Funktioniert das nicht oder hast du eine Frage?

Gesendet von meinem LG-H850 mit Tapatalk

Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: Frank_Huber am 24 Mai 2019, 18:55:04
Ungetestete Idee,
Könnte man nicht mit einem doif oder so auf das stop des rollo reagieren und bei unter 90% die gegenfahrt starten?

Gesendet von meinem Doogee S60 mit Tapatalk

Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: 87insane am 24 Mai 2019, 19:04:37
Würde sich verhalten wie auch die doif oder notify um dem Modul zu sagen wann ein externer schalter steuert. Auch das könnte in das Rollo Modul integriert werden. Gute Idee!

Gesendet von meinem LG-H850 mit Tapatalk

Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: Vorhand am 25 Mai 2019, 19:53:44
Das Rollo-Modul funktioniert ganz schön perfekt. Aber es kennt leider keine Jalousien, die noch den Bedarf der Lamellen-Verstellung haben.
Meine Lösung nach 2s für eine 1/4 sek umzukehren funktioniert super - nur eben auch bei 100%. Da soll die Jalousie aber zu sein, praktisch sollen die Lamellen senkrecht stehen.
Sicher kann man das mit einem DOIF lösen.
Alle Lösungen "außenrum" führen jedoch zu Provisorien.
"Rollo" selbst lässt ja intern einen virtuellen Laden mitlaufen und kann damit auch Positionieren usw. Alles das geht bei solchen Außenrum-Konstrukten verloren.
Perfekt wäre, wenn auch die Lamellenstellung virtuell mitlaufen würde. Damit könnte man unabhängig von der Position der Jalousie, einen beliebigen Lamellenwinkel einstellen.
Händisch über Tasten (gar Eintasterbetrieb) ist das eine elende Fummelei.
Wahrscheinlich haben aber zuwenige auch Jalousien verbaut und der Bedarf an so einer Lösung ist damit rel. gering.
Jede Zwischenlösung auf dem Weg dorthin wäre schon besser als außenrum.
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: 87insane am 25 Mai 2019, 20:01:22
Mag ja sein aber ist leider so. Wie schon gesagt sind auch die externen taster mit sowas zu versorgen. Ich denke auch das man sowas implementieren sollte. Am sich müsste man ja nur das jeweilige event hinterlegen.

Gesendet von meinem LG-H850 mit Tapatalk

Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: ole1986 am 17 Juli 2019, 22:07:46
Ein Vorschlag von mir das ROLLO Module um nachfolgendes zu erweitern:

* Eine Möglichkeit den webCmd "half" mit einem command zu definieren- z.B. rl_commandHalf - Einige Rolles wie z.b. Becker haben die Option Zwischenpositionen zu speichern und diese direkt anzufahren

Gruß
Ole
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: D3ltorohd am 21 August 2019, 15:01:46
Gibt es hier eine Möglichkeit ein Rollo Device für alle Rollos zu erstellen, oder eine Gruppensteuerung zu erstellen ? Ich hätte gern ein Device mit dem ich alle Rollos auf einmal fahren kann, oder auf Räume getrennt.
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: cs-online am 21 August 2019, 15:07:09
...ich würde meinen, dass das mit einer structure gehen müsste, so mach ich das bei Rollläden...
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: 87insane am 21 August 2019, 15:13:12
Hey, ich löse das via regex. Bei mir haben die rollos gute Namen bekommen.

Gesendet von meinem LG-H850 mit Tapatalk

Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: Frank_Huber am 21 August 2019, 15:24:35
Ich habe zu jedem Rollo ein DOIF.
darin triggere ich auf die Taster und einen Dummy.

Im Dummy habe ich readings wie "EG", "OG", "SUED", "WEST", "KINDER" etc.
wenn sich im Dummy etwas ändert springt der jeweilige Rollo dazu an. z.B. die Rollo-DOIFs der Kinderzimmer reagieren auf [Dummy:KINDER] usw.

Das funktioniert über 4 Instanzen hinweg über RFHEM seit fast 3 Jahren einwandfrei.
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: D3ltorohd am 21 August 2019, 17:09:09
Zitat von: cs-online am 21 August 2019, 15:07:09
...ich würde meinen, dass das mit einer structure gehen müsste, so mach ich das bei Rollläden...

Zitat von: 87insane am 21 August 2019, 15:13:12
Hey, ich löse das via regex. Bei mir haben die rollos gute Namen bekommen.

Gesendet von meinem LG-H850 mit Tapatalk



Hättet ihr mir dafür mal ein Beispiel ? Bin noch blutiger Anfänger und das ist noch nicht alles so klar.
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: 87insane am 21 August 2019, 17:49:49
set ^((?!sz)[a-z]?[a-z])_rollo pct 0

Wäre ein, az,wz,bz,k usw Rollo aber OHNE sz. Das wäre eine variante. Das kannst du dir so anpassen, wie du es gerne hättest. Thema: regex

Am Ende wirst du aber bei meinem vor Redner landen. Ich selber, Steuer so gut wie nie, meine rollos manuell. Die machen 99% von alleine. Solltest du die rollos wirklich weiterhin selber steuern, macht eine Kombi Sinn. Sowas wie ein notify/Dummy oder sonst was, was variabel reagiert. Oder aber ganz stumpf für alle Etagen oder Räume.....einen dummy mit dem set Befehl und regex. Dann hast du es komplett auf dich angepasst.

Gesendet von meinem LG-H850 mit Tapatalk

Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: Frank_Huber am 21 August 2019, 18:06:00
das DOIF für einen Rollo als Beispiel:
defmod Rollo_Luisa DOIF ([GPIO_IN_04:"^on$"] and [?Rollo1_Luisa] ne "drive-up") (set Rollo1_Luisa open)\
DOELSEIF ([GPIO_IN_05:"^on$"] and [?Rollo1_Luisa] ne "drive-down") (set Rollo1_Luisa closed)\
DOELSEIF (([GPIO_IN_04:"^on$"] or [GPIO_IN_05:"^on$"]) and [?Rollo1_Luisa] =~ "drive-down|drive-up") (set Rollo1_Luisa stop)\
DOELSEIF ([Rollo:og]) (set Rollo1_Luisa [Rollo:og])\
DOELSEIF ([Rollo:sued]) (set Rollo1_Luisa [Rollo:sued])\
DOELSEIF ([Rollo:kinder]) (set Rollo1_Luisa [Rollo:kinder])
attr Rollo_Luisa checkReadingEvent 1
attr Rollo_Luisa cmdpause 2:2:2
attr Rollo_Luisa do always


der Dummy dazu im Anhang. als Bild sieht man es besser.

Ich steuere über Taster manuell (ganz selten) oder zentral über den Dummy.
Der Dummy wird dann von meiner Beschattung oder sonstigen Steuerungen eingestellt.

Die letzte Steuerung war Süd und West auf pct 80. Da bin ich nach Hause gekommen. :)
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: 87insane am 21 August 2019, 19:08:10
Dein doif ist doch eigentlich (3/4) nur die schalter in fhem ein zu binden um die zeit zu zählen...
Gibt es für dich noch einen Grund das überhaupt zu nutzen? Ich hatte diese ungenaue steuerung bzw das abfangen der Tasten echt satt am Ende. (Hab es aber nicht mehr :))

Gesendet von meinem LG-H850 mit Tapatalk
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: Frank_Huber am 21 August 2019, 19:24:48
Die doif setzen hauptsächlich den Dummy auf die Rollos um.
Manuell fahren über die Taster machen wir fast nie.

Gesendet von meinem S60 mit Tapatalk

Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: 87insane am 21 August 2019, 20:33:37
Auch..dachte nur es wäre erwähnenswert für den frage steller. Er sagte ja, er weiß nicht 100%. Kenne mich selber in solchen Momenten ja. Also Hinweis! Tatsächlich sind auf meinem Handy relativ genau 50% der Zeilen, etwas was eh schon da sein müsste, für externe schalter.
Der untere Teil sind die Zuweisungen. (Wie ich finde, sehr gut gelöst).

Gesendet von meinem LG-H850 mit Tapatalk

Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: Frank_Huber am 21 August 2019, 20:59:47
Danke. [emoji854][emoji854][emoji854]
Ich sollte evtl noch erwähnen dass bei mir nur fhem steuert.
Die Taster gehen nur auf fhem, sonst nirgends hin.

Gesendet von meinem S60 mit Tapatalk

Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: cs-online am 21 August 2019, 22:14:11
Zitat von: D3ltorohd am 21 August 2019, 17:09:09
Hättet ihr mir dafür mal ein Beispiel ? Bin noch blutiger Anfänger und das ist noch nicht alles so klar.


define Rolladen structure room Rolladen_Esszimmer_Links Rolladen_Esszimmer_Rechts Rolladen_Schlafzimmer_Links Rolladen_Schlafzimmer_Rechts Rolladen_Gaestezimmer Rolladen_Tanjas_Zimmer Rolladen_Wohnzimmer


...in der Commandref ist das aber, glaube ich, auch gut beschrieben...
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: D3ltorohd am 22 August 2019, 09:56:12
Zitat von: cs-online am 21 August 2019, 22:14:11

define Rolladen structure room Rolladen_Esszimmer_Links Rolladen_Esszimmer_Rechts Rolladen_Schlafzimmer_Links Rolladen_Schlafzimmer_Rechts Rolladen_Gaestezimmer Rolladen_Tanjas_Zimmer Rolladen_Wohnzimmer


...in der Commandref ist das aber, glaube ich, auch gut beschrieben...

Danke, das sieht doch recht einfach aus. So dieses Device wird dann gesteuert mit den selben Befehlen wie ich die einzelnen Rollos steure ?
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: cs-online am 22 August 2019, 18:22:02
jawoll, sieht dann aus wie das Device selber  ;)
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: mahil am 30 August 2019, 15:29:20
Hallo,

habe ein Problem, evtl. auch Fehler, bei der Benutzung der Option "rl_type HomeKit" in Verbindung mit den "extern" Kommandos. Dies kann man mit folgender Konfig reproduzieren:


defmod Test_Rollo ROLLO
attr Test_Rollo cmdIcon open:fts_sunblind_100 closed:fts_sunblind_0 stop:control_x half:fts_sunblind_50
attr Test_Rollo devStateIcon open:fts_sunblind_100:closed closed:fts_sunblind_0:open half:fts_sunblind_50:closed drive-up:fts_sunblind_up@red:stop drive-down:fts_sunblind_down@red:stop pct-100:fts_sunblind_10:open pct-90:fts_sunblind_10:closed pct-80:fts_sunblind_20:closed pct-70:fts_sunblind_30:closed pct-60:fts_sunblind_40:closed pct-50:fts_sunblind_50:closed pct-40:fts_sunblind_60:open pct-30:fts_sunblind_70:open pct-20:fts_sunblind_80:open pct-10:fts_sunblind_90:open pct-0:fts_sunblind_100:closed
attr Test_Rollo group Rollladen
attr Test_Rollo rl_autoStop 0
attr Test_Rollo rl_commandDown set Test_Rollo_Schalter cmd Power2 on
attr Test_Rollo rl_commandStopDown set Test_Rollo_Schalter cmd Power2 off
attr Test_Rollo rl_commandStopUp set Test_Rollo_Schalter cmd Power1 off
attr Test_Rollo rl_commandUp set Test_Rollo_Schalter cmd Power1 on
attr Test_Rollo rl_excessBottom 0
attr Test_Rollo rl_excessTop 0
attr Test_Rollo rl_resetTime 2
attr Test_Rollo rl_secondsDown 10
attr Test_Rollo rl_secondsUp 10
attr Test_Rollo rl_switchTime 1
attr Test_Rollo rl_type HomeKit
attr Test_Rollo room 1_Test
attr Test_Rollo verbose 5
attr Test_Rollo webCmd open:closed:half:stop:pct

defmod Test_Rollo_Schalter dummy
attr Test_Rollo_Schalter devStateIcon on:control_on_off@red:off off:control_home:on
attr Test_Rollo_Schalter eventMap /cmd Power2 on:schliessen/cmd Power2 off:aus/cmd Power1 on:öffnen/cmd Power1 off:aus
attr Test_Rollo_Schalter group Rollladen
attr Test_Rollo_Schalter icon fts_shutter_up
attr Test_Rollo_Schalter room 1_Test
attr Test_Rollo_Schalter setList cmd
attr Test_Rollo_Schalter webCmd on:off


Wenn ich jetzt z.B. von einer Linx Kommandozeile folgende Befehle ausführe:

# definierten Zustand herstellen
perl /opt/fhem/fhem.pl 7072 'set Test_Rollo extern closed'
# Rollo öffnen
perl /opt/fhem/fhem.pl 7072 'set Test_Rollo extern open'
# 2 Sekunden warten
sleep 2
# öffnen stoppen
perl /opt/fhem/fhem.pl 7072 'set Test_Rollo extern stop'


Sollte der Rollo bei obigen Einstellungen eine PCT etwas über 20 haben. Es kommt aber 70 dabei raus. Wenn ich diese Kommandos wiederhole, bekomme ich den Rollo damit überhaupt nicht auf.

In 44_ROLLO.pm steht in der Funktion ROLLO_calculatepct ab Zeile 677:

    my $savepos = $pct;
    $savepos = 100 - $pct if $type eq "HomeKit";
    readingsSingleUpdate( $hash, "pct", $savepos, 100 );
   
    return $pct;


Wenn ich daraus

    return $savepos;


am Ende der Funktion mache, funkioniert es bei mir.

Mache ich hier einen Denkfehler oder ist das vielleicht ein Bug?

Danke und viele Grüße
Marcus
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: Frank_Huber am 30 August 2019, 21:58:34
Es sind % geschlossen, von daher kann ich in deinen Ausführungen keinen Fehler sehen.

Gesendet von meinem S60 mit Tapatalk

Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: mahil am 02 September 2019, 09:07:32
Meine Ausgangslage ist 'closed' mit pct = 0. Wenn ich dann mit 'extern open', 2 Sekunden warten, 'extern stop', den Rolladen öffne, sollte er etwa bei einer pct von 20-30 stehen, da rl_secondsDown/rl_secondsUp auf 10 Sekunden steht. Als Ergebnis bekomme ich aber 70 angezeigt. Wenn ich jetzt nochmal 'extern open', 2 Sekunden warten, 'extern stop' mache, ist der Rollo sogar wieder 'closed' mit pct = 0. Das passt doch nicht wirklich oder?
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: Frank_Huber am 02 September 2019, 09:25:58
Ah, deine pct sind invertiert.
dann scheint in der Tat etwas nicht zu passen.
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: D3ltorohd am 06 Oktober 2019, 11:26:33
Gibt es auch eine Möglichkeit der Gruppensteuerung ? Das man mehrere Rollos zusammen nimmt und dann ein ganzes Zimmer abdunkeln kann, oder gar alle im Haus ?
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: 87insane am 06 Oktober 2019, 11:53:49
Structure?

Gesendet von meinem LG-H850 mit Tapatalk

Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: D3ltorohd am 06 Oktober 2019, 13:05:32
Zitat von: 87insane am 06 Oktober 2019, 11:53:49
Structure?

Gesendet von meinem LG-H850 mit Tapatalk
Kann ich leider nichts mit anfangen. War froh das ich die Rollos einzeln hinbekommen habe.
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: 87insane am 06 Oktober 2019, 13:11:00
Guck mal im Wiki. Für dein Vorhaben gibt es x wege. Es gibt hier auch kein richtig oder falsch.

Gesendet von meinem LG-H850 mit Tapatalk

Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: 87insane am 06 Oktober 2019, 13:32:12
Will mal nicht so sein...
defmod alle_rollos structure EG az_rollo bz_rollo k_rollo sz_rollo wz_rollo

Ist ein Beispiel ...so ist das bei mir. Einlesen muss du dich aber selber ;)
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: D3ltorohd am 06 Oktober 2019, 14:43:09
Danke dir, alles ok. Ich hatte nach deinem Post direkt mal im Wiki nach Structure gesucht und mir das mal grob angeschaut. Ich werde mich da mal durchlesen und probieren.

EDIT:: War ja richtig leicht. Zumindest die beiden Rollos im Büro haben direkt funktioniert. Aber wenn ich set up ausführe, fahren sie ca. 1 Sekunde und bleiben dann wieder stehen. Das gleiche wenn ich auf down klicke. Nur wenn ich pct 100 oder eben 0 eingebe, fahren sie bis ganz nach oben. Ist das dann ein Rollo Modul Problem ?

Das ganze läuft über den Signalduino und mit dem Jaro Modul für Jarolift Rollos.
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: 87insane am 06 Oktober 2019, 15:24:02
Structure übernimmt einfach alle Befehle aus den einzelnen Geräten. Weswegen es gut ist wenn diese auch alle gleich sind. Hat mit deinem Problem aber vermutlich nix zu tun.

Wenn du eines der Rollos, die nicht laufen, mit dem Befehl steuerst. Geht das dann? Normal würde ich sagen, geht es dann auch nicht. Vermutlich hast du irgendwas nicht eingestellt. Ich selber nutze dieses Modul nicht mehr.  Also kenne ich vermutlich auch nicht mehr alle variablen. Da du selber aber schon gesagt hast, dass es für dich ein Akt war das ans laufen zu bekommen - schau dir bitte echt mal die dokus an. Meist hast du danach mehr Ideen als vorher und zudem findest du Optionen die dir x Möglichkeiten öffnen. Ach ja, und ganz nebenbei würdest du zukünftig nur noch eine Minute brauchen um sowas ein zu richten :)
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: D3ltorohd am 06 Oktober 2019, 18:38:04
Ist mir so nie aufgefallen, da das eigentlich alles über das ASC Modul läuft. Wenn ich aber im Rollo Device auf das runter Icon klicke fahren sie auch, genau so wie in die andere Richtung.
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: 87insane am 06 Oktober 2019, 18:40:00
Und hinter dem Icon ist welcher Befehl? Da es kein list vom Gerät gibt, kann sich das keiner vorstellen. Structure nutzt keine anderen Befehle. Es muss was krum sein.

Gesendet von meinem LG-H850 mit Tapatalk

Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: D3ltorohd am 06 Oktober 2019, 20:48:16


Internals:
   FUUID      5ce427ff-f33f-fc62-1775-191cf7a596c1a099
   NAME       Bad
   NR         34
   STATE      closed
   TYPE       ROLLO
   stoptime   1570381088
   READINGS:
     2019-07-07 13:59:18   ASC_Enable      on
     2019-10-06 18:58:08   ASC_ShuttersLastDrive night close
     2019-10-06 18:48:59   ASC_Time_DriveDown  7.10.2019 - 18:48
     2019-10-06 18:48:59   ASC_Time_DriveUp  7.10.2019 - 07:32
     2019-10-06 09:18:52   associatedWith  ASControl
     2019-10-06 18:57:45   command         pct-100
     2019-10-06 18:57:45   desired_pct     100
     2019-10-06 18:57:45   drive-type      modul
     2019-10-06 18:57:45   last_drive      drive-down
     2019-10-06 18:58:08   pct             0
     2019-10-06 18:58:08   state           closed
Attributes:
   ASC        2
   ASC_Drive_OffsetStart 1
   ASC_Pos_Reading pct
   cmdIcon    open:fts_shutter_up closed:fts_shutter_down stop:fts_shutter_manual half:fts_shutter_50
   devStateIcon open:fts_shutter_10:closed closed:fts_shutter_100:open half:fts_shutter_50:closed drive-up:fts_shutter_up@red:stop drive-down:fts_shutter_down@red:stop pct-100:fts_shutter_10:open pct-90:fts_shutter_10:closed pct-80:fts_shutter_20:closed pct-70:fts_shutter_30:closed pct-60:fts_shutter_40:closed pct-50:fts_shutter_50:closed pct-40:fts_shutter_60:open pct-30:fts_shutter_70:open pct-20:fts_shutter_80:open pct-10:fts_shutter_90:open pct-0:fts_shutter_100:closed
   rl_autoStop 1
   rl_commandDown set JaroFB down 9
   rl_commandStop set JaroFB stop 9
   rl_commandUp set JaroFB up 9
   rl_excessBottom 2
   rl_excessTop 0
   rl_resetTime 0
   rl_secondsDown 21
   rl_secondsUp 21
   rl_switchTime 1
   rl_type    HomeKit
   room       Jalousien
   userattr   ASC_Antifreeze:off,soft,hard,am,pm ASC_Antifreeze_Pos:5,10,15,20,25,30,35,40,45,50,55,60,65,70,75,80,85,90,95,100 ASC_AutoAstroModeEvening:REAL,CIVIL,NAUTIC,ASTRONOMIC,HORIZON ASC_AutoAstroModeEveningHorizon:-9,-8,-7,-6,-5,-4,-3,-2,-1,0,1,2,3,4,5,6,7,8,9 ASC_AutoAstroModeMorning:REAL,CIVIL,NAUTIC,ASTRONOMIC,HORIZON ASC_AutoAstroModeMorningHorizon:-9,-8,-7,-6,-5,-4,-3,-2,-1,0,1,2,3,4,5,6,7,8,9 ASC_BlockingTime_afterManual ASC_BlockingTime_beforDayOpen ASC_BlockingTime_beforNightClose ASC_BrightnessSensor ASC_Closed_Pos:0,10,20,30,40,50,60,70,80,90,100 ASC_ComfortOpen_Pos:0,10,20,30,40,50,60,70,80,90,100 ASC_Down:time,astro,brightness,roommate ASC_DriveUpMaxDuration ASC_Drive_Offset ASC_Drive_OffsetStart ASC_GuestRoom:on,off ASC_LockOut:soft,hard,off ASC_LockOut_Cmd:inhibit,blocked,protection ASC_Mode_Down:absent,always,off,home ASC_Mode_Up:absent,always,off,home ASC_Open_Pos:0,10,20,30,40,50,60,70,80,90,100 ASC_Partymode:on,off ASC_Pos_Reading ASC_PrivacyDownTime_beforNightClose ASC_PrivacyDown_Pos ASC_RainProtection:on,off ASC_Roommate_Device ASC_Roommate_Reading ASC_Self_Defense_AbsentDelay ASC_Self_Defense_Exclude:on,off ASC_Self_Defense_Mode:absent,gone ASC_Shading_Angle_Left ASC_Shading_Angle_Right ASC_Shading_Direction ASC_Shading_MinMax_Elevation ASC_Shading_Min_OutsideTemperature ASC_Shading_Mode:absent,always,off,home ASC_Shading_Pos:10,20,30,40,50,60,70,80,90,100 ASC_Shading_StateChange_Cloudy ASC_Shading_StateChange_Sunny ASC_Shading_WaitingPeriod ASC_ShuttersPlace:window,terrace ASC_TempSensor ASC_Time_Down_Early ASC_Time_Down_Late ASC_Time_Up_Early ASC_Time_Up_Late ASC_Time_Up_WE_Holiday ASC_Up:time,astro,brightness,roommate ASC_Ventilate_Pos:10,20,30,40,50,60,70,80,90,100 ASC_Ventilate_Window_Open:on,off ASC_WiggleValue ASC_WindParameters ASC_WindProtection:on,off ASC_WindowRec ASC_WindowRec_PosAfterDayClosed:open,lastManual ASC_WindowRec_subType:twostate,threestate
   webCmd     open:closed:half:stop:pct


Unter state steht dann "drive-up" und drive-down". Das gleiche steht auch wenn ich es mit Structure bediene, nur da fährt er nach dem Befehl ca 1 Sekunde und dann stoppt der Rollo.
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: 87insane am 06 Oktober 2019, 21:13:53
1. Bitte für sowas immer list senden wenn du genau das getan hast was nicht geht.

2. am besten event Monitor mit dran hängen. Da sieht man relativ schnell was sache ist.

3. hinzu ist hier structure dein Thema und auch ein oder mehrere Rollos. Macht dann Sinn auch die entsprechenden list zu senden.

So...genug gemeckert.
Ich kenne nicht alle Attribute, da ich es ja selber nicht mehr nutze. Aber ich glaube das du mal schauen solltest warum rl_autostop auf 1 steht.

Anmerkung: Ich kann mir noch immer nicht vorstellen das es normal geht aber nicht mit structure.

Hier haben wir aber auch eine Besonderheit. Wir haben zum einen ein oder mehrere Rollos Geräte. Zum anderen sind diese inkludiert in ASC. Wo hier was stoppt und warum, kann man nur sehen wenn du die oben genannten Sachen sendest.

Am besten meldet sich auch mal einer von den Kollegen die das Modul nutzen.

Sorry für mein genörgel..Männer Grippe :-P

Gesendet von meinem LG-H850 mit Tapatalk

Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: D3ltorohd am 06 Oktober 2019, 21:37:43
So hier mal ein Event::
2019-10-06 21:31:35 structure Buero_Rollos_all up
2019-10-06 21:31:35 ROLLO Buero_li command: up
2019-10-06 21:31:35 ROLLO Buero_li desired_pct: 90
2019-10-06 21:31:35 ROLLO Buero_li last_drive: drive-up
2019-10-06 21:31:35 ROLLO Buero_li drive-up
2019-10-06 21:31:35 ROLLO Buero_li drive-type: modul
2019-10-06 21:31:35 MQTT_BRIDGE mqtt_Bridge_JaroFB transmission-state: outgoing publish sent
2019-10-06 21:31:35 MQTT_BRIDGE mqtt_Bridge_JaroFB transmission-state: outgoing publish sent
2019-10-06 21:31:35 MQTT_BRIDGE mqtt_Bridge_JaroFB transmission-state: outgoing publish sent
2019-10-06 21:31:35 MQTT_BRIDGE mqtt_Bridge_JaroFB transmission-state: outgoing publish sent
2019-10-06 21:31:35 MQTT_BRIDGE mqtt_Bridge_JaroFB transmission-state: outgoing publish sent
2019-10-06 21:31:36 SD_Keeloq JaroFB button: up
2019-10-06 21:31:36 SD_Keeloq JaroFB channel: 10
2019-10-06 21:31:36 SD_Keeloq JaroFB counter_send: 3355
2019-10-06 21:31:36 SD_Keeloq JaroFB send up
2019-10-06 21:31:36 SD_Keeloq JaroFB LastAction_Channel_10: up
2019-10-06 21:31:36 SD_Keeloq JaroFB channel_control: no
2019-10-06 21:31:36 ROLLO Buero_re command: up
2019-10-06 21:31:36 ROLLO Buero_re desired_pct: 90
2019-10-06 21:31:36 ROLLO Buero_re last_drive: drive-up
2019-10-06 21:31:36 ROLLO Buero_re drive-up
2019-10-06 21:31:36 ROLLO Buero_re drive-type: modul
2019-10-06 21:31:36 MQTT_BRIDGE mqtt_Bridge_JaroFB transmission-state: outgoing publish sent
2019-10-06 21:31:36 MQTT_BRIDGE mqtt_Bridge_JaroFB transmission-state: outgoing publish sent
2019-10-06 21:31:36 MQTT_BRIDGE mqtt_Bridge_JaroFB transmission-state: outgoing publish sent
2019-10-06 21:31:36 MQTT_BRIDGE mqtt_Bridge_JaroFB transmission-state: outgoing publish sent
2019-10-06 21:31:36 MQTT_BRIDGE mqtt_Bridge_JaroFB transmission-state: outgoing publish sent
2019-10-06 21:31:36 SD_Keeloq JaroFB button: up
2019-10-06 21:31:36 SD_Keeloq JaroFB channel: 11
2019-10-06 21:31:36 SD_Keeloq JaroFB counter_send: 3356
2019-10-06 21:31:36 SD_Keeloq JaroFB send up
2019-10-06 21:31:36 SD_Keeloq JaroFB LastAction_Channel_11: up
2019-10-06 21:31:36 SD_Keeloq JaroFB channel_control: no
2019-10-06 21:31:40 structure Buero_Rollos_all drive-up
2019-10-06 21:31:40 AutoShuttersControl ASControl Buero_li_PosValue: 10
2019-10-06 21:31:40 AutoShuttersControl ASControl manual
2019-10-06 21:31:40 ROLLO Buero_li pct: 10
2019-10-06 21:31:40 MQTT_BRIDGE mqtt_Bridge_JaroFB transmission-state: outgoing publish sent
2019-10-06 21:31:40 MQTT_BRIDGE mqtt_Bridge_JaroFB transmission-state: outgoing publish sent
2019-10-06 21:31:40 MQTT_BRIDGE mqtt_Bridge_JaroFB transmission-state: outgoing publish sent
2019-10-06 21:31:40 MQTT_BRIDGE mqtt_Bridge_JaroFB transmission-state: outgoing publish sent
2019-10-06 21:31:40 MQTT_BRIDGE mqtt_Bridge_JaroFB transmission-state: outgoing publish sent
2019-10-06 21:31:40 SD_Keeloq JaroFB button: stop
2019-10-06 21:31:40 SD_Keeloq JaroFB channel: 10
2019-10-06 21:31:40 SD_Keeloq JaroFB counter_send: 3357
2019-10-06 21:31:40 SD_Keeloq JaroFB send stop
2019-10-06 21:31:40 SD_Keeloq JaroFB LastAction_Channel_10: stop
2019-10-06 21:31:40 SD_Keeloq JaroFB channel_control: no
2019-10-06 21:31:40 structure Buero_Rollos_all undefined
2019-10-06 21:31:40 ROLLO Buero_li pct-10
2019-10-06 21:31:40 structure Buero_Rollos_all undefined
2019-10-06 21:31:40 ROLLO Buero_li ASC_ShuttersLastDrive: manual
2019-10-06 21:31:41 structure Buero_Rollos_all undefined
2019-10-06 21:31:41 AutoShuttersControl ASControl Buero_re_PosValue: 10
2019-10-06 21:31:41 AutoShuttersControl ASControl manual
2019-10-06 21:31:41 ROLLO Buero_re pct: 10
2019-10-06 21:31:41 MQTT_BRIDGE mqtt_Bridge_JaroFB transmission-state: outgoing publish sent
2019-10-06 21:31:41 MQTT_BRIDGE mqtt_Bridge_JaroFB transmission-state: outgoing publish sent
2019-10-06 21:31:41 MQTT_BRIDGE mqtt_Bridge_JaroFB transmission-state: outgoing publish sent
2019-10-06 21:31:41 MQTT_BRIDGE mqtt_Bridge_JaroFB transmission-state: outgoing publish sent
2019-10-06 21:31:41 MQTT_BRIDGE mqtt_Bridge_JaroFB transmission-state: outgoing publish sent
2019-10-06 21:31:41 SD_Keeloq JaroFB button: stop
2019-10-06 21:31:41 SD_Keeloq JaroFB channel: 11
2019-10-06 21:31:41 SD_Keeloq JaroFB counter_send: 3358
2019-10-06 21:31:41 SD_Keeloq JaroFB send stop
2019-10-06 21:31:41 SD_Keeloq JaroFB LastAction_Channel_11: stop
2019-10-06 21:31:41 SD_Keeloq JaroFB channel_control: no
2019-10-06 21:31:41 structure Buero_Rollos_all pct-10
2019-10-06 21:31:41 ROLLO Buero_re pct-10
2019-10-06 21:31:41 structure Buero_Rollos_all pct-10
2019-10-06 21:31:41 ROLLO Buero_re ASC_ShuttersLastDrive: manual


Hier das List vom Structure, direkt nach dem ausführen..


Internals:
   ATTR       Jalousien
   CFGFN     
   CHANGEDCNT 120
   DEF        Jalousien Buero_li Buero_re
   FUUID      5d99e51b-f33f-fc62-c3a2-1f965ab3a43d2818
   NAME       Buero_Rollos_all
   NR         573
   NTFY_ORDER 50-Buero
   STATE      pct-10
   TYPE       structure
   READINGS:
     2019-10-06 21:31:41   LastDevice      Buero_re
     2019-10-06 21:31:41   LastDevice_Abs  Buero_re
     2019-10-06 21:31:41   state           pct-10
Attributes:
   devStateIcon open:fts_shutter_10:closed closed:fts_shutter_100:open half:fts_shutter_50:closed drive-up:fts_shutter_up@red:stop drive-down:fts_shutter_down@red:stop pct-100:fts_shutter_10:open pct-90:fts_shutter_10:closed pct-80:fts_shutter_20:closed pct-70:fts_shutter_30:closed pct-60:fts_shutter_40:closed pct-50:fts_shutter_50:closed pct-40:fts_shutter_60:open pct-30:fts_shutter_70:open pct-20:fts_shutter_80:open pct-10:fts_shutter_90:open pct-0:fts_shutter_100:closed
   icon       fts_shutter_manual
   room       Jalousien


Ok wenn ich auf das Icon klicke, dann fährt er in eine Richtung komplett durch. Klicke ich es noch mals an fährt der Rollo in die andere Richtung. Das Icon hatte ich erst später mit devstateicon hinzugefügt, damit ich sehe wo der Rollo ca. steht. Das hatte ich vorher nicht so. Ich hab das vorher über set down oder up getestet. Dabei fährt er eben nur kurz, gefühlt genau um pct 10. Immer in 10er Schritten.

Mir ist aber beim schreiben noch mal was aufgefallen, es gibt ja auch open und closed, das hatte ich jetzt erst gesehen, damit fahren sie komplett bis zum Endpunkt. Indem Fall hat sich das wohl alles geklärt.

Indem Fall konntest du mir doch helfen und Licht ins Dunkle bringen. Ich hab nun auch gefunden warum. Wollte grad testen ob er sich im Rollo Modul selber auch so verhält beim anwählen von set up stand das drunter ::
up set <Rollo-Device> up
opens the shutter one step (pct +10)


Aber weil ich eigentlich nur das Rollo Device eingerichtet habe und dann direkt den Rest mit dem ASC ist mir das nie aufgefallen.
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: 87insane am 06 Oktober 2019, 22:02:40
Super...freut mich..! :)

Da du mqtt nutzt, kann ich nur die fertigen Device Templates empfehlen. Dann hast du ein super Rollo Gerät und brauchst für deine 2, 3 zusätzlichen Funktionen nur noch ein notify o.ä.
Das war mein Grund ASC (was ein super Modul ist) nicht mehr zu nutzen. Ich wollte das alles besser verstehen u hinzu kam dann die Lust am basteln ;)


Gesendet von meinem LG-H850 mit Tapatalk

Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: piet_pit am 07 Oktober 2019, 15:40:48
Hallo Zusammen,

ich möchte gerne das Modul für meine RSU-Aktoren in Verbindung mit dem ASC-Modul nutzen.
Bei meinen 2 Testkandidaten klappt das auch soweit, nur manchmal fährt ein Rollo leider nicht hoch, obwohl es sollte... ;D
Ich steuere die Rollos über FHEM und extern (über Funktaster).

Meine Frage wäre nun. ob diese DOIFs für den externen Zugriff zwingend einzurichten sind oder nicht, ich bin mir da nicht sicher.
Bis jetzt habe ich diese nicht eingerichtet und evtl. kommt daher das Problem, das manchmal das Rollo nicht hoch bzw. runter fährt.

Danke für eure Hilfe.
VG
Pit
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: dora71 am 09 Oktober 2019, 13:14:24
Hallo zusammen,

habe mir auch seit ein paar Tagen dieses Modul mit Erfolg zu Gemüte geführt und frage mich jetzt, ob es auch kompatibel mit Alexa ist.

Also: Wenn ich Alexa beibringe, dass dieses Modul einen Rolladenschalter darstellt, würde das funktionieren? Das wäre echt klasse.

Hat das schon jemand probiert oder sogar im Einsatz?

Gruß Rainer
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: 87insane am 09 Oktober 2019, 13:16:29
Geht. Am besten mal in Alexa-fhem einlesen. Kannst dann zb sagen: Alexa, Arbeitszimmer Rollo 50% ... Dann geht die wilde Fahrt los

Gesendet von meinem LG-H850 mit Tapatalk

Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: grappa24 am 13 Oktober 2019, 10:09:38
Hallo Rainer,
geht wunderbar, habe zunächst nur ein/aus verwendet und war völlig überrascht, dass auch die Ansteuerung mit Prozent-Werten funtkioniert.

Hier mal ein (Teil)Listing: Internals:
   NAME       Rollo_Schlafzimmer
   STATE      open
   TYPE       ROLLO
   READINGS:
     2019-10-13 07:37:43   command         open
     2019-10-13 07:37:43   desired_pct     0
     2019-10-13 07:37:43   drive-type      na
     2019-10-13 07:37:43   last_drive      drive-up
     2019-10-13 07:38:41   pct             0
     2019-10-13 07:38:41   state           open
Attributes:
   alexaName  Rollo Schlafzimmer
   genericDeviceType switch
   homebridgeMapping On:cmdOn=closed,cmdOff=open
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: piet_pit am 14 Oktober 2019, 15:38:22
Hallo Zusammen,

im Wiki des Moduls ROLLO steht ja, dass "position" durch "pct" ersetzt wurde, um die Kompatibilität mit anderen Modulen (u.a. Automatic Shutter Control - ASC) sicher zu stellen. Nun finde ich unter den Attributen meines Rollo-Devices unter ASC_Pos_Reading auch das Attribut "position".

Muss das auch angepasst und somit in "pct" geändert werden?
VG
Pit
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: CoolTux am 14 Oktober 2019, 15:44:09
JA!  :)
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: piet_pit am 14 Oktober 2019, 16:30:26
Hallo CoolTux,

danke für die Antwort... :)

VG
Pit
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: jumperger am 10 Januar 2020, 01:03:19
Hallo, als Noob habe ich es jetzt geschaft einen Düwi Jalousieschalter in FHEM einzubinden.
Dazu habe ich das Intertechno Modul IT benutzt mit dem Attribut IT-Switch.
Meine Jalousie fährt hoch und runter, nur leider wird in FHEM eine Glühbirne zur Darstellung benutzt und ich schalte mit den On / Off schaltern.

Mir wurde nun zum Modul ROLLO geraten, ich habe Wiki und Commandref dazu gelesen, nur isr mir leider nicht ersichtlich wie ich die Module IT und ROLLO mit ein ander verbinden kann.

Danke für Tips in welche Richtung ich suchen sollte.
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: KernSani am 10 Januar 2020, 06:00:06
Wenn es dir nur um die Darstellung geht, setze das Attribut devStateIcon deines IT Devices. Wenn du die Funktionalität von ROLLO möchtest, musst du im Grunde nur ein ROLLO Device anlegen und in die Befehle, die du heute an dein IT Device schickst in den entsprechenden Attributen (rl_cmdUp, rl_cmdDown usw....) des ROLLO Devices pflegen:-)


Kurz, weil mobil
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: jumperger am 10 Januar 2020, 19:51:33
Kurz aber dafür auch bündig  ;D
Danke für die Hilfe, nur bin ich eben selten dämlich und tue mich immerwieder schwer als Noob die Infos aus der CommandRef umzusetzen, Zitat Commandref/Wiki/Fhem-Oberfläche:
Zitatrl_commandUp attr <Rollo-Device> rl_commandUp <string>
Es werden bis zu 3 beliebige Befehle zum hochfahren ausgeführt
In meinem ROLLO Device (SDB_Rollo) habe ich somit die attr-Zeile:

attr  SDB_Rollo rl_commandUp WEISSE EINGABEBOX

Nur was kommt in die WEISSE BOX stehen.
<Rollo-Device> nehme ich an dass es mein aktuelles Intertechno-Device (DüwiRolloSdb) ist welches als Switch funktioniert und den Rollo rauf und runter fährt mit den Befehlen "On" und "Off"

hier die Raw-Def des Intertechno Moduls:
defmod DuewiRolloSdb IT F00000000F FF F0
attr DuewiRolloSdb IODev sduino2
attr DuewiRolloSdb model itswitch

setstate DuewiRolloSdb off
setstate DuewiRolloSdb 2020-01-08 22:34:27 protocol V1
setstate DuewiRolloSdb 2020-01-10 18:43:24 state off


und auch ein List:
Internals:
   CFGFN     
   DEF        F00000000F FF F0
   FUUID      5e1658ca-f33f-062d-5f4a-d879393fed81e5d7
   IODev      sduino2
   NAME       DuewiRolloSdb
   NR         1080
   STATE      off
   TYPE       IT
   XMIT       f00000000f
   XMITdimdown 00
   XMITdimup  00
   XMIToff    f0
   XMITon     ff
   CODE:
     1          f00000000f
   READINGS:
     2020-01-08 22:34:27   protocol        V1
     2020-01-10 18:43:24   state           off
   userV1setCodes:
     closed     1110
     open       1010
     tamper     0111
Attributes:
   IODev      sduino2
   model      itswitch
   room       1


Danke für eure Erläuterungen.
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: KernSani am 10 Januar 2020, 20:21:09
Eigentlich hast du es dir schon fast selbst beantwortet: Der Befehl für das commandUp Attribut wàre
set DuewiRolloSdb on
entsprechend für down das gleiche mit off. Je nachdem wie du den Rollladen stoppst müsstest du dann noch das stopCommand bzw. die stopCommands pflegen


Kurz, weil mobil
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: jumperger am 11 Januar 2020, 00:08:24
auf das set bin ich nicht gekommen. Vielen Dank für den Schubs in die richtige Richtung
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: jumperger am 14 Januar 2020, 11:49:57
Vielen Dank das funktioniert nun,
der Rollo fährt nur 20 von Min bis Max also brauche ich keine Zwischenstellung.

attr  SDB_Rollo rl_commandUp set DuewiRolloSdb on
attr  SDB_Rollo rl_commandDown set DuewiRolloSdb off

haben also alles gebracht was ich brauche.
Ein zweiter klick auf Up stoppt das Hochfahren falls nötig (wird nie gemacht, da immer nur ganz auf oder zu ist).

Das List sieht nun folgendermassen aus:
Internals:
   FUUID      5e16fbd2-f33f-062d-adb4-f1cdc0a17a876509
   NAME       SDB_Rollo
   NR         79
   STATE      closed
   TYPE       ROLLO
   stoptime   1578853575
   READINGS:
     2020-01-12 18:26:13   command         closed
     2020-01-12 18:26:13   desired_pct     100
     2020-01-12 18:26:13   drive-type      modul
     2020-01-12 18:26:13   last_drive      drive-down
     2020-01-12 18:26:15   pct             100
     2020-01-12 18:26:15   state           closed
Attributes:
   cmdIcon    open:fts_shutter_up closed:fts_shutter_down stop:fts_shutter_manual half:fts_shutter_50
   devStateIcon open:fts_shutter_10:closed closed:fts_shutter_100:open half:fts_shutter_50:closed drive-up:fts_shutter_up@red:stop drive-down:fts_shutter_down@red:stop pct-100:fts_shutter_100:open pct-90:fts_shutter_80:closed pct-80:fts_shutter_80:closed pct-70:fts_shutter_70:closed pct-60:fts_shutter_60:closed pct-50:fts_shutter_50:closed pct-40:fts_shutter_40:open pct-30:fts_shutter_30:open pct-20:fts_shutter_20:open pct-10:fts_shutter_10:open pct-0:fts_shutter_10:closed
   rl_autoStop 0
   rl_commandDown set DuewiRolloSdb off
   rl_commandUp set DuewiRolloSdb on
   rl_excessBottom 2
   rl_excessTop 4
   rl_secondsDown 30
   rl_secondsUp 30
   rl_switchTime 1
   rl_type    normal
   room       E1_SdB
   webCmd     open:closed:half:stop:pct


Vielen Dank für die Unterstützung.
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: Vaillant VWS am 08 April 2020, 13:15:20
Hallo,

zuerst mal möchte ich den Machern und Pflegenden für dieses erstklassige Modul meinen Dank sagen.

Es läuft bei mir bestens als Jalousiensteuerung und bietet fast alle Möglichkeiten einer Topsteuerung. Allerdings fehlt mir immer mal wieder eine Lamellenverstellung für die Jalousien, wie sie bei zeitgemäßen Haussteuerungssysteme zur Lichtsteuerung untertags stand ist. Soweit ich weiß, hat vor einem Jahr schon mal jemand danach gefragt. Vielleicht würde so eine Erweiterung doch dem ein- oder anderem nützen.

Ich denke, dazu bräuchte man ein weiteres Reading für den Kippwinkel, der beim runterfahren um 90° und beim hochfahren ca. 0° ist. Dann noch Attribut für die Kippzeit. Ein zusätzlicher Gewinn wäre die Integration in die Homekit-Steuerung (Characteristic CurrentTiltAngle/TargetTiltAngle) und der Möglichkeit der Steuerung mit Siri! So würde das Rollo-Modul alles mitbringen, was heute Stand der Technik ist.

Wie sehen die Entwickler des Moduls so eine Erweiterung einzubauen?

vielen Dank
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: KernSani am 08 April 2020, 13:27:16
Zitat von: Vaillant VWS am 08 April 2020, 13:15:20

Wie sehen die Entwickler des Moduls so eine Erweiterung einzubauen?

vielen Dank
Können wir gerne mal diskutieren. Ich habe nur keine Möglichkeit sowas zu testen, d.h ich wäre da auf Hilfe angewiesen.

Für den Anfang würde mir ein List des physischen Gerätes und die Befehle die zum ansteuern notwendig sind schonmal helfen, dann könnte ich mir mal Gedanken machen, wie man das in ROLLO reinbekommt.


Gesendet von iPhone mit Tapatalk
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: CoolTux am 08 April 2020, 13:34:56
Ich habe die selbe Anfrage an ASC schon seit einem Jahr. Komme einfach zu keinen vernünftigen Gedanken diesbezüglich. Vielleicht findet man ja zusammen Logiken  ;D
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: KernSani am 08 April 2020, 14:38:35
Zitat von: CoolTux am 08 April 2020, 13:34:56
Ich habe die selbe Anfrage an ASC schon seit einem Jahr. Komme einfach zu keinen vernünftigen Gedanken diesbezüglich. Vielleicht findet man ja zusammen Logiken  ;D
Wusste doch, dass mir das Thema bekannt vorkommt ;-) Ja, lass uns gemeinsam brainstormen...


Gesendet von iPhone mit Tapatalk
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: Vaillant VWS am 08 April 2020, 15:57:24
Hallo KernSani,

danke für die schnelle Antwort, bin echt überrascht.



Internals:
   FUUID      5c84f5af-f33f-cb06-8dcd-8079b06dc86acca7
   NAME       RolloOst
   NR         62
   STATE      open
   TYPE       ROLLO
   driveDir   down
   driveTime  0.1
   stoptime   1586352955
   OLDREADINGS:
   READINGS:
     2020-04-08 15:34:12   command         pct-50
     2020-04-08 15:35:55   desired_pct     2
     2020-04-08 15:35:55   drive-type      modul
     2020-04-08 15:35:55   last_drive      drive-down
     2020-04-08 15:35:55   pct             98
     2020-04-08 15:35:55   state           open
Attributes:
   cmdIcon    open:fts_shutter_up closed:fts_shutter_down stop:fts_shutter_manual half:fts_shutter_50
   devStateIcon open:fts_shutter_10:closed closed:fts_shutter_100:open half:fts_shutter_50:closed drive-up:fts_shutter_up@red:stop drive-down:fts_shutter_down@red:stop  pct-100:fts_shutter_100:open pct-90:fts_shutter_90:closed pct-80:fts_shutter_80:closed  pct-70:fts_shutter_70:closed pct-60:fts_shutter_60:closed pct-50:fts_shutter_50:closed  pct-40:fts_shutter_40:open pct-30:fts_shutter_30:open pct-20:fts_shutter_20:open  pct-10:fts_shutter_10:open pct-0:fts_shutter_10:open
   genericDeviceType blind
   homebridgeMapping clear CurrentPosition=pct,minValue=0,maxValue=100,minStep=10 TargetPosition=CurrentPosition,cmd=pct CurrentTiltAngle=tilt,minValue=0,maxValue=90 TargetTiltAngle=target_tilt::tilt,minValue=0,maxValue=90,minStep=30
   rl_autoStop 0
   rl_commandDown set PCF8574 Port5 on
   rl_commandStopDown set PCF8574 Port5 off
   rl_commandStopUp set PCF8574 Port1 off
   rl_commandUp set PCF8574 Port1 on
   rl_excessBottom 2
   rl_excessTop 2
   rl_resetTime 0
   rl_secondsDown 40
   rl_secondsUp 40
   rl_switchTime 1
   rl_type    HomeKit
   room       Homekit,WG
   webCmd     open:closed:half:stop:pct

Ich schreibe einfach mal über meine Situation: steuere mit dem Modul drei Jalousien am Wintergarten, die up, down, stopup, stopdown-Befehle gehen auf einen I2C-8574 Portbaustein der Relais schaltet (set PCF8574 Port1 on). Gesteuert wird das ganze automatisch mit einer (Eigenbau)Funktion aus der '99_myUtils' nach Temperatur Sonne und Wind immer komplett offen/geschlossen. Händisch habe ich keine Taster etc. zum steuern eingebunden, nur über iPhone > Homekit/Homebridge kann ich die Jalousien manuell fahren.

Das verstellen des Kippwinkels stelle ich mir vor, wie beim Reading 'pct': ich gebe den Befehl 'set RolloOst closed', 'pct' ist anfangs 0 und am Ende 100. Beim Kippwinkel könnte das ähnlich sein, z. B. ein Reading 'tilt' ist in der  waagerechten 0 und in der annäherend senkrechten Lage 100. Allerdings ist während des herabfahres der Jalousie der Kippwinkel schon geschlossen (annäherend senkrecht=100) und beim hochfahren waagerecht=0. Für das umsteuern von waagerecht nach senkrecht müsste man eine Zeit vorgeben können, ähnlich 'rl_secondsUp/Down' bei für die komplette Rollo-Fahrt. Allerdings ist die Umsteuerzeit zwischen waagerecht und senkrecht vergleichsweise kurz, so um eine Sekunde, und kann durch driveUp/Down erreicht werden. Für den Kippwinkel sollten 3 - 5 Zwischenstufen reichen, denke ich.

Ich hoffe, ich habe mich halbwegs verständlich ausgedrückt und es finden sich noch weitere Ideengeber  :)

Nochwas: wie füge ich in meinem Beitrag ein List oder Codeblock ein ?


Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: CoolTux am 08 April 2020, 16:01:48
du machst

eckige klamme auf schreibst code und machst eckige klammer zu.
oder nimmst das raute symbol in der symbolleiste
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: Vaillant VWS am 08 April 2020, 16:08:39
Danke CoolTux  :D ich versuch's gleich nochmal:


Internals:
   FUUID      5c84f5af-f33f-cb06-8dcd-8079b06dc86acca7
   NAME       RolloOst
   NR         62
   STATE      open
   TYPE       ROLLO
   driveDir   down
   driveTime  0.1
   stoptime   1586352955
   OLDREADINGS:
   READINGS:
     2020-04-08 15:34:12   command         pct-50
     2020-04-08 15:35:55   desired_pct     2
     2020-04-08 15:35:55   drive-type      modul
     2020-04-08 15:35:55   last_drive      drive-down
     2020-04-08 15:35:55   pct             98
     2020-04-08 15:35:55   state           open
Attributes:
   cmdIcon    open:fts_shutter_up closed:fts_shutter_down stop:fts_shutter_manual half:fts_shutter_50
   devStateIcon open:fts_shutter_10:closed closed:fts_shutter_100:open half:fts_shutter_50:closed drive-up:fts_shutter_up@red:stop drive-down:fts_shutter_down@red:stop  pct-100:fts_shutter_100:open pct-90:fts_shutter_90:closed pct-80:fts_shutter_80:closed  pct-70:fts_shutter_70:closed pct-60:fts_shutter_60:closed pct-50:fts_shutter_50:closed  pct-40:fts_shutter_40:open pct-30:fts_shutter_30:open pct-20:fts_shutter_20:open  pct-10:fts_shutter_10:open pct-0:fts_shutter_10:open
   genericDeviceType blind
   homebridgeMapping clear CurrentPosition=pct,minValue=0,maxValue=100,minStep=10 TargetPosition=CurrentPosition,cmd=pct CurrentTiltAngle=tilt,minValue=0,maxValue=90 TargetTiltAngle=target_tilt::tilt,minValue=0,maxValue=90,minStep=30
   rl_autoStop 0
   rl_commandDown set PCF8574 Port5 on
   rl_commandStopDown set PCF8574 Port5 off
   rl_commandStopUp set PCF8574 Port1 off
   rl_commandUp set PCF8574 Port1 on
   rl_excessBottom 2
   rl_excessTop 2
   rl_resetTime 0
   rl_secondsDown 40
   rl_secondsUp 40
   rl_switchTime 1
   rl_type    HomeKit
   room       Homekit,WG
   webCmd     open:closed:half:stop:pct


Ich schreibe einfach mal über meine Situation: steuere mit dem Modul drei Jalousien am Wintergarten, die up, down, stopup, stopdown-Befehle gehen auf einen I2C-8574 Portbaustein der Relais schaltet (set PCF8574 Port1 on). Gesteuert wird das ganze automatisch mit einer (Eigenbau)Funktion aus der '99_myUtils' nach Temperatur Sonne und Wind immer komplett offen/geschlossen. Händisch habe ich keine Taster etc. zum steuern eingebunden, nur über iPhone > Homekit/Homebridge kann ich die Jalousien manuell fahren.

Das verstellen des Kippwinkels stelle ich mir vor, wie beim Reading 'pct': ich gebe den Befehl 'set RolloOst closed', 'pct' ist anfangs 0 und am Ende 100. Beim Kippwinkel könnte das ähnlich sein, z. B. ein Reading 'tilt' ist in der  waagerechten 0 und in der annäherend senkrechten Lage 100. Allerdings ist während des herabfahres der Jalousie der Kippwinkel schon geschlossen (annäherend senkrecht=100) und beim hochfahren waagerecht=0. Für das umsteuern von waagerecht nach senkrecht müsste man eine Zeit vorgeben können, ähnlich 'rl_secondsUp/Down' bei für die komplette Rollo-Fahrt. Allerdings ist die Umsteuerzeit zwischen waagerecht und senkrecht vergleichsweise kurz, so um eine Sekunde, und kann durch driveUp/Down erreicht werden. Für den Kippwinkel sollten 3 - 5 Zwischenstufen reichen, denke ich.

Ich hoffe, ich habe mich verständlich ausgedrückt und es finden sich noch weitere Ideengeber  :)
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: KernSani am 08 April 2020, 17:18:48
Du kannst Beiträge auch ändern ;-)

Grundsätzlich sehe ich Schaltzeiten < 1 Sekunde (oder auch 2-3) Sekunden kritisch, da gibt es erfahrungsgemäß häufig nicht beeinflussbare Latenzen (nicht in FHEM, aber auf dem Übertragungsweg), die eine präzise Steuerung quasi unmöglich machen. Hängt natürlich jeweils von den individuellen Gegebenheiten ab, kommt also auf einen Versuch an...


Gesendet von iPhone mit Tapatalk
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: Vaillant VWS am 08 April 2020, 18:04:39
Danke für den hinweis  :'(

Zitat von: KernSani am 08 April 2020, 17:18:48
Du kannst Beiträge auch ändern ;-)

Grundsätzlich sehe ich Schaltzeiten < 1 Sekunde (oder auch 2-3) Sekunden kritisch, da gibt es erfahrungsgemäß häufig nicht beeinflussbare Latenzen (nicht in FHEM, aber auf dem Übertragungsweg), die eine präzise Steuerung quasi unmöglich machen. Hängt natürlich jeweils von den individuellen Gegebenheiten ab, kommt also auf einen Versuch an...

Gesendet von iPhone mit Tapatalk

Ja, habe ich schon irgendwo gelesen, war eine Anbindung über WLAN mit geflashten Sonoffs. Ich habe über I2C-Bus drahtgebundene Relais am werkeln. Da gehen auch kurze Impulse mit 'set drive up 0.001'  :). Ist bestimmt länger als 1 mS, klar, aber wirklich nur ganz kurz, das geht schon.


rl_commandStopDown          set PCF8574 Port5 off;sleep 1;set RolloOst drive up 1


Diese Befehlsfolge funktioniert z.B. auch zuverlässig zu waagrecht stellen nach dem runterfahren, aber halt auch dann, wenn eine völlige Verschattung im Hochsommer gewünscht ist!
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: alpinestars am 24 April 2020, 11:05:22
Erst einmal besten Dank für das Modul!

Ich habe folgenden Aufbau und benötige bitte einmal Eure Hilfe:
Ich habe eine "FHEM-Zentrale" auf einem Raspi4 mit MQTT2_SERVER etc. und einen "Remote-FHEM" auf Raspi Pi Zero laufen. Dieser Raspi Pi Zero steuert ein 16-fach Relais, was im Endeffekt alte Funkschalter der 5 Rollläden im Erdgeschoß steuert. Auf dem Raspi Pi Zero gibt es nun die folgenden Devices, funktioniert auch wirklich prima.

define Shutter2_up RPI_GPIO 12
attr Shutter2_up direction output
define Shutter2_stop RPI_GPIO 13
attr Shutter2_stop direction output
define Shutter2_down RPI_GPIO 15
attr Shutter2_down direction output

define TestRollo ROLLO
attr TestRollo cmdIcon open:fts_shutter_up closed:fts_shutter_down stop:fts_shutter_manual half:fts_shutter_50
attr TestRollo devStateIcon open:fts_shutter_10:closed closed:fts_shutter_100:open half:fts_shutter_50:closed drive-up:fts_shutter_up@red:stop drive-down:fts_shutter_down@red:stop pct-100:fts_shutter_100:open pct-90:fts_shutter_80:closed pct-80:fts_shutter_80:closed pct-70:fts_shutter_70:closed pct-60:fts_shutter_60:closed pct-50:fts_shutter_50:closed pct-40:fts_shutter_40:open pct-30:fts_shutter_30:open pct-20:fts_shutter_20:open pct-10:fts_shutter_10:open pct-0:fts_shutter_10:closed
attr TestRollo rl_autoStop 0
attr TestRollo rl_commandDown set Shutter2_down on-for-timer 0.5
attr TestRollo rl_commandStop set Shutter2_stop on-for-timer 0.5
attr TestRollo rl_commandUp set Shutter2_up on-for-timer 0.5
attr TestRollo rl_excessBottom 2
attr TestRollo rl_excessTop 1
attr TestRollo rl_forceDrive 1
attr TestRollo rl_resetTime 2
attr TestRollo rl_secondsDown 22
attr TestRollo rl_secondsUp 22
attr TestRollo rl_switchTime 1
attr TestRollo rl_type normal
attr TestRollo webCmd open:closed:half:stop:pct


Jetzt möchte ich natürlich gern die Rollladen über den Raspi4 ("FHEM-Zentrale") steuern, hierüber werden auch weitere Rollladen via Shelly2.5 und MQTT angesprochen. Jetzt bin ich allerdings ein wenig "lost", wie ich eine sinnvolle Verbindung zwischen meinen beiden Raspis hinbekomme  :) Auf dem Raspi Pi Zero laufen bei Bedarf ein MQTTBroker oder ein MQTT2Client, diese sind auch zum MQTT2_SERVER verbunden. Nutze ich nun sinnvollerweise eine MQTT_BRIDGE oder MQTT2_DEVICE?

Vielen lieben Dank!
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: Frank_Huber am 24 April 2020, 11:47:41
Module dazu:

RFHEM
FHEM2FHEM
FHEMSYNC (gerade in Entwicklung)

Ich habe bei mir zwischen 4 FHEM Instanzen seit Jahren RFHEM laufen.

Gesendet von meinem S68Pro mit Tapatalk

Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: KernSani am 24 April 2020, 11:50:53
Frank war schneller ;) Ist eigentlich keine ROLLO-Frage sondern ein generelles Thema zu dem du unter den genannten Stichworten einiges im Forum finden wirst.


Kurz, weil mobil....
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: GU!DO am 29 April 2020, 21:03:41
Hallo zusammen,

ich habe ein merkwürdiges Phenomen mit diesem tollen Modul und hoffe Ihr könnt mir helfen.

Meine Raffstores werden durch 2 Taster gesteuert. ("Up" und "Down")
Eine Fahrt kann mit beiden Tastern gestoppt werden. D.h. Wenn das Raffstore z.B. nach oben fährt, kann ich sowohl mit dem "UP" als auch mit dem "DOWN" Taster stoppen.

Damit der Status im Rollo Modul geändert wird wenn der Raffstore manuell gefahren wird, habe ich, in Anlehung an das Wiki, folgendes DOIF erstellt:
(HCANDeviceRolladen51 ist das Device das mit der Hardware kommuniziert. Raffstore51 mein Rollo Device)

define doif_Raffstore51 DOIF
([HCANDeviceRolladen51:"DOWN"] and [?Raffstore51] ne "drive-down") (set Raffstore51 extern closed) DOELSEIF
([HCANDeviceRolladen51:"DOWN"] and [?Raffstore51] =~ "drive") (set Raffstore51 extern stop) DOELSEIF
([HCANDeviceRolladen51:"UP"] and [?Raffstore51] ne "drive-up") (set Raffstore51 extern open) DOELSEIF
([HCANDeviceRolladen51:"UP"] and [?Raffstore51] =~ "drive") (set Raffstore51 extern stop)


Wenn ich eine Fahrt nach oben mit dem "UP"-Taster stoppe ist alles ok.
Eine Fahrt nach unten mit dem "DOWN" Taster gestoppt: ebenfalls alles gut.

Phenomenal wird es wenn ich eine Fahrt mit dem "falschen" Taster stoppe. Also z.B. Fahrt nach unten und Taster "UP".
Dann passiert folgendes:
Nehmen wir an der Raffstore steht auf Positon 50.
Ich drücke "DOWN". Das Raffstore fährt nach unten. Nun Stoppe mit "UP". Ergebnis (ja nach Laufzeit) z.B. State = 35 (eigentlich hätte der State > 50 sein müssen)
Gehe ich nun nochmals genau so vor, (Taster "DOWN" => Raffstore fährt nach unten => Taster "UP"): Dieses mal wurde in die richtige "Richtung" gezählt. State ändert sich (je nach Laufzeit) von 35 auf z.B. 57
Wir wiederholen das Spiel (Taster "DOWN" => Raffstore fährt nach unten => Taster "UP"): Nun zählt er wieder rückwärts. Also State, obwohl der Raffstore nach unten gefahren ist z.B. auf 38.

Das ganze wechselt dann bei jedem neuen Versuch: Der Raffstore fährt grundstätzlich nach unten. Die Fahrzeit wird jedoch abwechseln addiert bzw. subtrahiert.

Hier mal ein List meine Rollo Devices (die ASC Attribute habe ich heraus gelöscht!)

Internals:
   FUUID      5ea85953-f33f-8741-46fe-de58a7cd866530f8
   NAME       Raffstore51
   NR         175
   STATE      half
   TYPE       ROLLO
   stoptime   1588183116
   READINGS:
     2020-04-29 19:58:07   command         stop
     2020-04-29 19:58:07   desired_pct     51.7857142857143
     2020-04-29 19:58:07   drive-type      na
     2020-04-29 19:58:07   last_drive      drive-up
     2020-04-29 19:58:36   pct             51.7857142857143
     2020-04-29 19:58:36   state           half
Attributes:
   cmdIcon    open:fts_shutter_up closed:fts_shutter_down stop:fts_shutter_manual half:fts_shutter_50
   devStateIcon open:fts_shutter_10:closed closed:fts_shutter_100:open half:fts_shutter_50:closed drive-up:fts_shutter_up@red:stop drive-down:fts_shutter_down@red:stop pct-100:fts_shutter_100:open pct-90:fts_shutter_80:closed pct-80:fts_shutter_80:closed pct-70:fts_shutter_70:closed pct-60:fts_shutter_60:closed pct-50:fts_shutter_50:closed pct-40:fts_shutter_40:open pct-30:fts_shutter_30:open pct-20:fts_shutter_20:open pct-10:fts_shutter_10:open pct-0:fts_shutter_10:closed
   group      01-Kochen
   rl_autoStop 1
   rl_commandDown set HCANDeviceRolladen51 DOWN
   rl_commandStopDown set HCANDeviceRolladen51 DOWN
   rl_commandStopUp set HCANDeviceRolladen51 UP
   rl_commandUp set HCANDeviceRolladen51 UP
   rl_excessBottom 0
   rl_excessTop 0
   rl_resetTime 2
   rl_secondsDown 56
   rl_secondsUp 56
   rl_switchTime 0
   rl_type    normal
   room       HCAN


Ich hoffe Ihr könnt wir helfen.

Vielen Dank schon mal

Guido
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: KernSani am 29 April 2020, 22:45:31
Ok, kurze Analyse was passiert im DOIF:

ZitatNehmen wir an der Raffstore steht auf Positon 50.
Ich drücke "DOWN". Das Raffstore fährt nach unten. Nun Stoppe mit "UP".
CMD_3 wird getriggert, weil "UP" und "drive-down" ne "drive-up". "extern open" wird gesetzt, d.h. ROLLO denkt er fährt nach oben, ich frage mich nur, warum er nicht bis 0 fährt...
ZitatGehe ich nun nochmals genau so vor, (Taster "DOWN" => Raffstore fährt nach unten => Taster "UP")
Das DOIF steht in CMD_3, wenn ich mich recht erinnere tickt DOIF so, dass es dann (es sei denn do always ist gesetzt) nicht nochmal CMD_3 auslöst, aber
CMD_4 wird getriggert weil "UP" und  "drive-down" =~ "drive", d.h. diesmal wird korrekt extern stop ausgeführt.
Problem ist also das DOIF. Du müsstest im ersten und dritten Zweig auf !~ "drive" abfragen, also immer wenn er gerade nicht fährt (egal in welche Richtung) wird extern closed bzw. open ausgeführt.
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: GU!DO am 29 April 2020, 23:08:31
Danke für die schnelle Antwort zu so später Zeit.  :D

Da ich Deinen Gedanken um diese Zeit nicht mehr folgen konnte, habe das so zu sagen blind, wie folgt, geändert:

define doif_Raffstore51 DOIF
([HCANDeviceRolladen51:"DOWN"] and [?Raffstore51] !~ "drive") (set Raffstore51 extern closed) DOELSEIF
([HCANDeviceRolladen51:"DOWN"] and [?Raffstore51] =~ "drive") (set Raffstore51 extern stop) DOELSEIF
([HCANDeviceRolladen51:"UP"] and [?Raffstore51] !~ "drive") (set Raffstore51 extern open) DOELSEIF
([HCANDeviceRolladen51:"UP"] and [?Raffstore51] =~ "drive") (set Raffstore51 extern stop)


Ergebnis:
Wenn ich Down drücke und das Raffstore herunter fährt und ich dann Up drücke fährt er das Rollo Device direkt herauf, hält also nicht an.
Hingegen kann ich eine Abwärtsfahrt mittel Taster Down stoppen, benötige danach aber zum erneuten Starten in Richtung Up 2x den Up Taster.  ???

Ich glaube ich denke darüber nach wenn ich ausgeschlafen bin...

Vielen Dank schonmal!
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: KernSani am 30 April 2020, 07:38:04
Moin,
Beobachte am Besten mal im Eventmonitor, was da getriggert wird und versuche nach zu vollziehen in welche DOIF Zweige er läuft.


Kurz, weil mobil....
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: GU!DO am 30 April 2020, 08:36:22
Also so gehts:

define doif_Raffstore51 DOIF
([HCANDeviceRolladen51:"DOWN"] and [?Raffstore51] ne "drive-down" and [?Raffstore51] ne "drive-up") (set Raffstore51 extern closed) DOELSEIF
([HCANDeviceRolladen51:"DOWN"] and [?Raffstore51] =~ "drive") (set Raffstore51 extern stop) DOELSEIF 
([HCANDeviceRolladen51:"UP"] and [?Raffstore51] ne "drive-down" and [?Raffstore51] ne "drive-up") (set Raffstore51 extern open) DOELSEIF
([HCANDeviceRolladen51:"UP"] and [?Raffstore51] =~ "drive") (set Raffstore51 extern stop)


Dann scheinen sich

([?Raffstore51] ne "drive-down" and [?Raffstore51] ne "drive-up")

und

[?Raffstore51] !~ "drive"

zu unterscheiden, obwohl es keinen anderen "drive"-Zustand als down und up gibt?!?
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: GU!DO am 30 April 2020, 08:42:06
Zitat von: KernSani am 30 April 2020, 07:38:04
Moin,
Beobachte am Besten mal im Eventmonitor, was da getriggert wird und versuche nach zu vollziehen in welche DOIF Zweige er läuft.


Kurz, weil mobil....

Sorry, habe Deine Mail erst grad gesehen. Ich habe die Zustände nicht getestet. Er muß aber, nachdem ich DOWN gedrückt und cmd1 gegriffen hat nach dem Drücken von UP in cmd3 gesprungen sein. Das physische Raffstore hat dann angehalten, das Rollo Modul fuhr jedoch munter nach oben.
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: sparkiie am 30 April 2020, 08:58:24
Mal eine kurze Frage zum Modul.

Beim Fhem update wird auch das Rollo Modul immer mal wieder aktualisiert. Sehe ich irgendwo die Änderungen, also eine Art Changelog?
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: KernSani am 30 April 2020, 23:51:46
Zitat von: sparkiie am 30 April 2020, 08:58:24
Mal eine kurze Frage zum Modul.

Beim Fhem update wird auch das Rollo Modul immer mal wieder aktualisiert. Sehe ich irgendwo die Änderungen, also eine Art Changelog?

Tatsächlich gab es an ROLLO schon recht lange keine Änderungen mehr. Wenn es Änderungen gibt, kann man die der SVN History entnehmen und im Quelltext des Moduls steht oben ebenfalls ein changelog:

Revision: 18436
Author: KernSani
Date: Sonntag, 27. Januar 2019 21:46:04
Message:
44_ROLLO.pm: Fixed an issue with external driving (when already at position)
----
Modified : /trunk/fhem/FHEM/44_ROLLO.pm

Revision: 18352
Author: KernSani
Date: Sonntag, 20. Januar 2019 16:24:51
Message:
44_ROLLO.pm: Hint in Commandref regarding position->pct
----
Modified : /trunk/fhem/FHEM/44_ROLLO.pm

Revision: 18350
Author: KernSani
Date: Sonntag, 20. Januar 2019 11:13:22
Message:
44_ROLLO.pm: Loglevel from 3 to 5 for few messages,Rollo should only drive 10 steps in "force" mode for up/down
----
Modified : /trunk/fhem/FHEM/44_ROLLO.pm

Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: sparkiie am 01 Mai 2020, 06:42:23
Okay, danke für die Info.

Ich dachte diese Zeile bedeutet, dass es ein Update gab?
2020.05.01 06:40:21 1 : UPD FHEM/44_ROLLO.pm
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: GU!DO am 13 Mai 2020, 20:42:36
Hallo,

ich möchte nun eine Beschattungsautomation in Betrieb nehmen und habe noch ein Problem und eine Frage:

Vielleicht zuerst zu meinem Problem:

Meine Raffstores bediene ich über 2 Taster UP und DOWN. Die zugehörigen Events lauten: set HCANDeviceRolladen53 DOWN und set HCANDeviceRolladen53 UP
Wenn ich nun während einer Fahrt UP bzw. DOWN sende, wird die Fahrt gestoppt egal ob sie grad aufwärts oder abwärts geht. 

Das Device habe ich daher wie folgt konfiguriert:


rl_commandDown set HCANDeviceRolladen53 DOWN
rl_commandStopDown set HCANDeviceRolladen53 DOWN
rl_commandStopUp set HCANDeviceRolladen53 UP
rl_commandUp set HCANDeviceRolladen53 UP


Ich habe die Icons im Webcmd in Standart Konfiguration:
Wenn ich über das 1. Icon starte und stoppe läuft alles wie erwartet. Ich hab zwar noch nicht herausbekommen wann er von Down nach Up bzw. zurück wechselt, aber das passt schon.
Wenn ich über das 3. Icon nach unten fahre und damit auch wieder stoppe, hält mein Raffstore an, das Rollo Device läuft aber weiter nach unten.
Ebenso wenn ich über das 2. Icon nach oben fahre und über das 2. Icon stoppe: Raffstore hält an, Rollo Device fährt weiter nun aber natürlich nach oben.
Tausche ich Start und Stop, fahre also über das 3. Icon herunter und stoppe über das 2. (UP) Icon, hält der Raffstore an, das Rollo Device ändert die Richtung und fährt nach oben.

Anbei mal ein List von einem Testdevice:

Internals:
   CFGFN     
   FUUID      5eb79632-f33f-8741-abb4-797f460e2113bc54
   NAME       Raffstore53
   NR         1128
   STATE      open
   TYPE       ROLLO
   stoptime   1589394376
   READINGS:
     2020-05-13 20:26:08   command         open
     2020-05-13 20:26:08   desired_pct     0
     2020-05-13 20:26:08   drive-type      modul
     2020-05-13 20:26:08   last_drive      drive-up
     2020-05-13 20:26:16   pct             0
     2020-05-13 20:26:16   state           open
Attributes:
   cmdIcon    open:fts_shutter_up closed:fts_shutter_down stop:fts_shutter_manual half:fts_shutter_50
   devStateIcon open:fts_shutter_10:closed closed:fts_shutter_100:open half:fts_shutter_50:closed drive-up:fts_shutter_up@red:stop drive-down:fts_shutter_down@red:stop pct-100:fts_shutter_100:open pct-90:fts_shutter_80:closed pct-80:fts_shutter_80:closed pct-70:fts_shutter_70:closed pct-60:fts_shutter_60:closed pct-50:fts_shutter_50:closed pct-40:fts_shutter_40:open pct-30:fts_shutter_30:open pct-20:fts_shutter_20:open pct-10:fts_shutter_10:open pct-0:fts_shutter_10:closed
   group      01-Kochen
   rl_autoStop 1
   rl_commandDown set HCANDeviceRolladen53 DOWN
   rl_commandStopDown set HCANDeviceRolladen53 DOWN
   rl_commandStopUp set HCANDeviceRolladen53 UP
   rl_commandUp set HCANDeviceRolladen53 UP
   rl_excessBottom 2
   rl_excessTop 4
   rl_resetTime 2
   rl_secondsDown 56
   rl_secondsUp 56
   rl_switchTime 0
   rl_type    normal
   room       HCAN
   webCmd     open:closed:half:stop:pct


Nun noch zu meiner Frage:

Ich habe meine Raffstores nach Räumen nummeriert. So haben z.B. die alle Raffstores in der Küche die Gruppen-ID 10. Dann werden sie gemeinsam gefahren. Gleichzeitig haben Sie aber noch eine Einzel-ID. Bei 11 bzw. 12 nur das jeweils zugehörige. Im Esszimmer habe ich 6 Raffstores: Also 20 für die Gruppe und 21-26 für die einzelnen Raffstores.

Ich habe für die einzelnen Raffstores jeweils ein Rollo Device angelegt. Das funktioniert auch soweit wenn ich einzelne Raffstores fahre sowohl über das Rollo Device als auch von Extern (Taster).
Nun möchte ich jedoch auch gerne die Gruppe fahren. Wenn ich jedoch z.B. 20 sende, reagierten die Rollo Device 21-26 natürlich nicht.

Was wäre die eleganteste Möglichkeit Gruppen zu definieren? Vielleicht ein DoIF?
Über die 3 Start / Stop Befehle komme ich im Rollo-Device leider nicht weiter, da ich ja bis zu 6 Raffstores in einer Gruppe habe.

Ich hoffe auf Eure Hilfe.

Vielen Dank schonmal

Guido
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: KernSani am 13 Mai 2020, 20:47:32
Kannst du nicht eine STRUCTURE für die gemeinsam zu schaltenden ROLLO Devices anlegen?


Kurz, weil mobil....
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: GU!DO am 13 Mai 2020, 21:03:25
Damit habe ich mich noch nicht beschäftigt. Schaue ich mir an. Danke.

Irgend eine Idee zu meinem "Problem"?
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: 87insane am 13 Mai 2020, 21:54:39
Denke auch das du nur sowas nachbauen muss...

defmod alle_rollos structure EG az_rollo bz_rollo k_rollo sz_rollo wz_rollo
attr alle_rollos alias ALLE ROLLOS
attr alle_rollos clientstate_behavior last
attr alle_rollos cmdIcon open:fts_shutter_up close:fts_shutter_down stop:fts_shutter_manual half:fts_shutter_50
attr alle_rollos devStateIcon { my $con = ReadingsVal($name,"state","undef");;;;  my $pic = $con eq "opening" ? 'fts_shutter_up@red' : $con eq "closing" ? 'fts_shutter_down@red' : $con eq "100" ? 'fts_shutter_100' : $con =~ /(\d)\d/ ? 'fts_shutter_'.$1.'0' : $con =~ /\b\d\b/ ? 'fts_shutter_10' : 'fts_shutter_updown';;;;  "<div>&nbsp;;&nbsp;;&nbsp;;<a href=\"/fhem?cmd.dummy=set $name toggle&XHR=1\"></a>".FW_makeImage($pic)." </div>" }
attr alle_rollos genericDeviceType blind
attr alle_rollos group Rollo
attr alle_rollos room Alexa,FHEM / Info
attr alle_rollos webCmd :open:close:half:stop:pct


So mache ich das zb im EG. Ein wenig regex könnte das leben vereinfachen.

Gesendet von meinem LM-G810 mit Tapatalk

Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: GU!DO am 14 Mai 2020, 06:36:38
Hallo KernSani & 87insane,

perfekt. Genau das was ich gesucht habe. Läuft wie Teufel!

Vielen Dank!
@87insane auch für den Code. Damit war es in 2 Minuten umgesetzt.  :D

Hat vielleicht auch noch jemand einen Lösungsansatz für mein Problem aus:

Zitat von: GU!DO am 13 Mai 2020, 20:42:36

Dann wäre es perfekt! Ist wahrscheinlich nur eine Misskonfiguration. Ich glaube ich sehe den Wald vor lauter Bäumen nicht.

Vielen Dank & viele Grüße

Guido
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: GU!DO am 14 Mai 2020, 07:08:46
Ich habe das grad alles nochmal mit `nem Rollo "Dummy" probiert, so dass dieser von keinem extern Trigger beeinflusst wird. Nachdem sich der Dummy genau so verhielt, habe ich festgestellt, dass es ein Denkfehler von mir ist.

Ich habe mich immer gefragt: Wozu ist das Icon mit der Hand? ??? Nun habe ich mir grad webCmd angesehen und bemerkt: Der Name ist stop!  :o

Damit ist natürlich auch die Funktion klar und läuft auch wie gewollt.

Nun ergibt sich für mich jedoch folgendes Problem:

Wenn ich, während einer Fahrt, auf Icon "open" bzw. Icon "closed" klicke sendet Rollo den Befehl und:
- mein Raffstore stoppt, da ich es aus laufender Fahrt mit einem erneuten Fahrbefehl anhalte.
- Das Rollo-Device läuft jedoch munter drauf los, da ich ihm ja einen Fahrbefehl gegeben habe.

Ist meine Steuerung denn die Einzige, die mittels erneutem "UP"/"DOWN" Befehl eine begonnene Fahrt stoppt?

Gibt es eine Möglichkeit das Modulintern zu lösen, oder muß ich die Steuerung auslagern und die Logik in ein DoIf integrieren?

Vielen Dank

Guido
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: 87insane am 14 Mai 2020, 07:41:01
Eigentlich ist die Doku zu dem Modul mal richtig gut gewesen. Ich weiß nicht wie sie aktuell aussieht aber ich denke da solltest du ein paar Minuten investieren. Ich denke schon das mehr Personen so eine steuerung haben. Es ist ja auch nix verwunderliches. Allerdings macht es echt Sinn, die Doku mal zu durchstöbern. Ich denke da wirst du zu deiner Antwort auch noch andere nützliche Dinge finden :)

Gesendet von meinem LM-G810 mit Tapatalk

Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: KernSani am 14 Mai 2020, 07:47:48
Schau dir mal die Attribute rl_commandStopUp und rl_commandStopDown an. Die sollten genau das machen, was du möchtest.


Kurz, weil mobil....
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: GU!DO am 14 Mai 2020, 08:51:18
@87insane:
Die Doku habe ich schon rauf und runter gelesen. Entweder ferstehe ich irgend etwas komplett flasch, oder da steht es nicht drin. Den Forenthread (zumindest den nachdem das Modul offiziell geworden ist) habe ich ebenfalls durch.

@KernSani
Das hatte ich so verstanden und auch so eingestellt:
Zitat von: GU!DO am 13 Mai 2020, 20:42:36

rl_commandDown set HCANDeviceRolladen53 DOWN
rl_commandStopDown set HCANDeviceRolladen53 DOWN
rl_commandStopUp set HCANDeviceRolladen53 UP
rl_commandUp set HCANDeviceRolladen53 UP


Wenn jemand unterschiedliche Befehle für Start und Stop hat funktioniert das auch. Er drückt z.B. während einer "Down" Fahrt nochmals "Down": Es passiert nix weder an seinen Rollos noch am Device. Die Fahrt wird fortgesetzt.

Wenn ich jedoch, mit meinen gleichen Befehlen, während einer "Down"Fahrt nochmals auf "Down" drücke: Stoppen meine Raffstores aber das Rollo Modul fährt weiter.

Jetzt kann man natürlich sagen: Drück halt nicht auf "UP" oder "Down" zum Stoppen sondern auf das "Stop" Icon. Das wiederspricht jedoch der manuellen Logik unserer Rolladentaster. Bei denen man "UP" bzw. "DOWN" drücken muß um das Raffstore anzuhalten. Da wir das schon seit 10 Jahren so praktizieren ist das natürlich drin.

Klasse wäre wenn man eine Funktion der Art

WHEN STATE =~ "drive" AND (rl_commandDOWN OR rl_commandUP) THEN stop

aktivieren könnte.

Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: GU!DO am 14 Mai 2020, 17:19:00
@KernSani
Hi, ich habe mal ein wenig herum gespielt und mich mittels copy and paste Deines Codes bemächtigt - sorry.

Dabei ist das herausgekommen:

  0     #### Stop when in motion and get new drive command
  1     if ( ( ( $cmd eq "open" ) || ( $cmd eq "closed" ) ) && ( ReadingsVal( $name, "state", '' ) =~ /drive/ ) ) {
  2         #Log3 $name, 3, "Stop drive cause of an additional drive command while device is in motion!";
  3         $cmd = "stop";
  4     }


Das würde mir, soweit ich es zwischen Bier und Schaum getestet habe, schon helfen.

Könntest Du das ggf. mit einbauen und über ein Attribut aktivierbar machen?

Viele Grüße & vielen Dank

Guido
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: flummy1978 am 20 Mai 2020, 02:27:50
Guten Morgen,

die originalen Rolladen Module von Homematic lassen einen "UP xx" oder "DOWN xx" Befehl zu, den ich für meine Jalousien zum "kippen" genutzt habe. Der vorhandene Befehle UP / DOWN ermöglicht ja nur 10 Schritte, also musste da was anderes her.  Die Gedanken das irgendwie zu berechnen und +10 -9 oder -10 +9 zu rechenen hab ich schnell verworfen, aber im Rollo Modul kam es mir "einfacher" vor.

Da ich (erstmal) nur den +-1 Befehl brauchte und der Rest für mich wohl auch n bissl zu kompliziert geworden wäre mit Argumenten etc, habe ich die aktuelle Version um den Befehl down1 und up1 erweitert.
Habt bitte ein wenig Mitgefühl bei der Bewertung meiner Laienhaften Erfänzung, aber vielleicht kann der Modul Dev das Ganze übernehmen oder angepasst einsetzen ?

Alter Zustand Code Zeile 340-349:

        if ( $cmd eq "down" || $cmd eq "up" ) {

            # Recalculate the desired pct
            my $posin = ReadingsVal( $name, "pct", 0 );
            $posin = 100 - $posin if ( $typ eq "HomeKit" );
            $desiredPos = int( ( $posin - 10 ) / 10 + 0.5 ) * 10;
            $desiredPos = int( ( $posin + 10 ) / 10 + 0.5 ) * 10 if $cmd eq "down";
            $desiredPos = 100 if $desiredPos > 100;
            $desiredPos = 0   if $desiredPos < 0;
        }


Neu Zeile 46 + 47
    "up1"        => "noArg",
    "down1"      => "noArg",


Zeile 342 - 363
        if ( $cmd eq "down1" || $cmd eq "up1" ) {

            # Recalculate the desired pct
            my $posin = ReadingsVal( $name, "pct", 0 );
            $posin = 100 - $posin if ( $typ eq "HomeKit" );
            $desiredPos = $posin - 1;
            $desiredPos = $posin + 1 if $cmd eq "down1";
            $desiredPos = 100 if $desiredPos > 100;
            $desiredPos = 0   if $desiredPos < 0;
Log3 $name, 5, "ROLLO UP1 oder DOWN1 aufgerufen Akt: $posin Ziel: $desiredPos";
       
        }
        elsif ( $cmd eq "down" || $cmd eq "up" ) {

            # Recalculate the desired pct
            my $posin = ReadingsVal( $name, "pct", 0 );
            $posin = 100 - $posin if ( $typ eq "HomeKit" );
            $desiredPos = int( ( $posin - 10 ) / 10 + 0.5 ) * 10;
            $desiredPos = int( ( $posin + 10 ) / 10 + 0.5 ) * 10 if $cmd eq "down";
            $desiredPos = 100 if $desiredPos > 100;
            $desiredPos = 0   if $desiredPos < 0;
        }


Natürlich bin ich sehr neugierig was die Profis unter Euch dazu sagen. Aber auch wenn es Laienhaft umgesetzt sein sollte, wollte ich es nicht nur für mich selbst behalten ;)

Viele Grüße
Andreas
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: KernSani am 20 Mai 2020, 07:39:01
Hi Andreas und Guido,
Danke für die Erweiterungsvorschläge. Ich schaue mir beides heute Abend mal an. Und keine Sorge: Profi ist hier niemand ;-)
Vielleicht nehme ich das ja mal zum Anlass, das Modul dem (dringend notwendigen) komplettem Refactoring zu unterziehen...
Grüße,
Oli


Kurz, weil mobil....
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: alpinestars am 26 Mai 2020, 08:24:38
Guten Morgen zusammen,

ich betreibe mehrere Rollläden im HomeKit-Modus. Das Anfahren von Positionen (z.B. 60%) klappt wunderbar, pct stimmt dann auch.
Fahre ich aber z.B. aus Position 100 (=offen) manuell herunter und stoppe dann ebenfalls manuell wird m.E. die pct falsch berechnet. Stoppe ich nach 2-3 Sekunden wird mir so z.B. pct=10.x angezeigt, obwohl es eigentlich pct=90.x heissen müsste.

define Shutter4 ROLLO
attr Shutter4 cmdIcon open:fts_shutter_up closed:fts_shutter_down stop:fts_shutter_manual half:fts_shutter_50
attr Shutter4 rl_autoStop 0
attr Shutter4 rl_commandDown set Shutter4_down on-for-timer 0.1
attr Shutter4 rl_commandStop set Shutter4_stop on-for-timer 0.1
attr Shutter4 rl_commandUp set Shutter4_up on-for-timer 0.1
attr Shutter4 rl_excessBottom 1
attr Shutter4 rl_excessTop 1
attr Shutter4 rl_forceDrive 1
attr Shutter4 rl_resetTime 2
attr Shutter4 rl_secondsDown 31
attr Shutter4 rl_secondsUp 32
attr Shutter4 rl_switchTime 2
attr Shutter4 rl_type HomeKit
attr Shutter4 webCmd open:closed:half:stop:pct


Ist das ein Fehler oder muss ich ggf. noch irgendetwas einstellen?

Vielen Dank!
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: 87insane am 26 Mai 2020, 09:15:42
Ich nutze das Modul nicht mehr aber ich weiß dunkel im Hinterkopf, dass man für ext schalter noch einen delay einstellen konnte. 100% genaue pct habe ich nicht hinbekommen aber auf 1% Abweichung war für mich ok.

Edit: ach ja und das mit dem "falsch rum fahren" ist auch eine einstellungs sache. Ich fahre zb anders rum. 0% = Rollo komplett geöffnet, 100 = Rollo komplett geschlossen.

Gesendet von meinem LM-G810 mit Tapatalk
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: flummy1978 am 10 Juni 2020, 00:43:17
Hey Oli,

Zitat von: KernSani am 20 Mai 2020, 07:39:01
Danke für die Erweiterungsvorschläge. Ich schaue mir beides heute Abend mal an. Und keine Sorge: Profi ist hier niemand ;-)

Hat sich da noch etwas getan ? Oder anders gefragt: Gibt es die Chance dass etwas wie das von mir (oder ähnliches) eingeführt wird ?

Ich frage nur, weil ich gern zwischendurch immer mal updaten würde. Natürlich ist danach dann die Änderung erstmal wieder weg ;(
Ich könnte es natürlich vom Update ausgrenzen befürchte aber dass ich dann verpeilen würde wenn es eine neue Version gibt....

Viele Grüße
Andreas
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: KernSani am 10 Juni 2020, 07:33:37
Hi Andreas,
ich werde mir das über das lange Wochenende mal ansehen, versprochen;-)
Grüße,
Oli
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: KernSani am 15 Juni 2020, 23:45:08
@Andreas: ich habe mir das endlich mal genauer angesehen. Wäre es für deinen Fall nicht auch möglich, den "drive" Befehl zu verwenden? Der nimmt zwar Sekunden, nicht pct als Parameter, aber für dich sollte das doch ausreichen, oder?
Egal, ich habe ein neues Attribut eingebaut (rl_stepUpDown) mit dem die Schrittweite für die up- und down-Befehle gesetzt werden kann (default bleibt 10). Passt das für dich?
@Gu!do: Ich nehme an dein Coding hängt irgendwo recht weit oben in der ROLLO_Set Sub, oder? So um Zeile 246?
#### Stop if not driving - do we need that?
Habe das Coding übernommen und ein Attribut mit dem schönen Namen rl_stopOnCmdWhileDrive eingeführt :-)

Könntet ihr angehängte Version mal testen?

Danke,

Oli
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: flummy1978 am 16 Juni 2020, 15:36:59
Hallo Oli,

vielen Dank dass Du Dir die Zeit dafür genommen hast, Dir das in Ruhe anzuschauen:

Zitat von: KernSani am 15 Juni 2020, 23:45:08
Wäre es für deinen Fall nicht auch möglich, den "drive" Befehl zu verwenden? Der nimmt zwar Sekunden, nicht pct als Parameter, aber für dich sollte das doch ausreichen, oder?
Äöhm.. ja.... warte mal ich such mal ne Ausrede, die mich da halbwegs adäquat rausboxt  ;D
Ne mal im Ernst: wäre wahrscheinlich ohne Problme einsetzbar. Warum ich diese Funktion übersehen hab ist mir ein Rätsel .. sorry :( Wahrscheinlich hab ich gar nicht danach geschaut, weil ich die gleichen Sachen bei HM Geräten hatte. Dort hat das Device selbst die Funktion eben auch pctxx+1 zu fahren und daher deswegen wahrscheinlich übersehen.
ABER zu meiner Ausrede passt auch: Wenn ich zeitlich gesteuert fahre ist es nicht sicher dass ich 1000%ig bei 98 / 99 rauskomme - Meine devstateicon zeigen aber bei 98 99 bestimmte icons an und das Device erlaubt dann eine "flip" Steuerung der Jalousie.

Zitat von: KernSani am 15 Juni 2020, 23:45:08
Egal, ich habe ein neues Attribut eingebaut (rl_stepUpDown) mit dem die Schrittweite für die up- und down-Befehle gesetzt werden kann (default bleibt 10). Passt das für dich?
Zunächst einmal die Änderung: Für diesen einen MEINEN Fall würde die Änderung wohl reichen (sofern sie funktioniert) - Aber ich könnte mir vorstellen, dass der nächste dann wieder +2 -3 oder +4 fahren will. Dann wiederum einmal +1 und dann -2 usw.... Das wäre mit einem einzigen Attribut nicht möglich. Vorschlag von meiner Seite:
Statt dem Attribut rl_stepUpDown lieber

#44 "up"        => "textField",
#45 "down"      => "textField",

nehmen und den Benutzer selbst entscheiden lassen welche Schritte er dort einsetzt. Mache ich nun up1 oder down3 oder up7 oder down15 ist alles abgedeckt und ich habe Spielraum in alle Richtungen.
Meiner Meinung nach bietet diese Lösung lediglich den Nachteil dass:
- up / down für bestehende Installation auf leeres Argument geprüft werden muss. In dem Fall würde dann die "alte" Standard Einstellung '10' greifen
- up / down muss auf ZAHLEN geprüft werden
-> restliche Berechnung erfolgt analog zum bisherigen.
Zitat
Könntet ihr angehängte Version mal testen?
Habe ich gemacht. Leider mit wenig Erfolg:
Habe das Attribut mit 1 belegt und dann up gefahren. (leider noch nicht um Log) Das Device ist dann runter gefahren (falsch herum). Danach hab ich ein paar mal hin und her gedrückt (verbose5 Log)  bin ich dann auf pct 83 gefahren und habe ein paar mal up / down gedrückt. Bis auf einmal 83->80 (was auch nicht 1 sondern 3 entspricht) ist das Device sonst nicht gefahren weil er ja "drive from 80 to 80" anzeigt. Die letzten beiden Einträge sind sogar mit "rl_stepUpDown 2" und es fuhr trotzdem nicht. Irgendwie passt auch die Richtung nach der Berechnung nicht, weil jedes mal im Log steht: set to up ..... direction: down

2020.06.16 15:10:56.051 5: ROLLO (Rollo_EG_WZ_terrasse_tuer) >> Get
2020.06.16 15:11:03.197 5: ROLLO (Rollo_EG_WZ_terrasse_tuer) >> Set (up,)
2020.06.16 15:11:03.197 5: ROLLO (Rollo_EG_WZ_terrasse_tuer) DesiredPos set to up, ()
2020.06.16 15:11:03.197 5: ROLLO (Rollo_EG_WZ_terrasse_tuer) DesiredPos now 100, up
2020.06.16 15:11:03.199 5: ROLLO (Rollo_EG_WZ_terrasse_tuer) >> Start
2020.06.16 15:11:03.199 4: ROLLO (Rollo_EG_WZ_terrasse_tuer) drive from 100 to 100. command: up. state: closed
2020.06.16 15:11:03.200 4: ROLLO (Rollo_EG_WZ_terrasse_tuer) pct: 100 -> 100 / direction: down
2020.06.16 15:11:03.201 5: ROLLO (Rollo_EG_WZ_terrasse_tuer) >> calculateDriveTime | going down: from 100 to 100
2020.06.16 15:11:03.201 4: ROLLO (Rollo_EG_WZ_terrasse_tuer) already at position!
2020.06.16 15:11:03.201 5: ROLLO (Rollo_EG_WZ_terrasse_tuer) netto drive time = 0
2020.06.16 15:11:03.241 5: ROLLO (Rollo_EG_WZ_terrasse_tuer) >> Get
2020.06.16 15:11:17.450 5: ROLLO (Rollo_EG_WZ_terrasse_tuer) >> Set (down,)
2020.06.16 15:11:17.450 5: ROLLO (Rollo_EG_WZ_terrasse_tuer) DesiredPos set to down, ()
2020.06.16 15:11:17.451 5: ROLLO (Rollo_EG_WZ_terrasse_tuer) DesiredPos now 100, down
2020.06.16 15:11:17.472 5: ROLLO (Rollo_EG_WZ_terrasse_tuer) >> Start
2020.06.16 15:11:17.473 4: ROLLO (Rollo_EG_WZ_terrasse_tuer) drive from 100 to 100. command: down. state: closed
2020.06.16 15:11:17.473 4: ROLLO (Rollo_EG_WZ_terrasse_tuer) pct: 100 -> 100 / direction: down
2020.06.16 15:11:17.474 5: ROLLO (Rollo_EG_WZ_terrasse_tuer) >> calculateDriveTime | going down: from 100 to 100
2020.06.16 15:11:17.474 4: ROLLO (Rollo_EG_WZ_terrasse_tuer) already at position!
2020.06.16 15:11:17.474 5: ROLLO (Rollo_EG_WZ_terrasse_tuer) netto drive time = 0
2020.06.16 15:11:17.549 5: ROLLO (Rollo_EG_WZ_terrasse_tuer) >> Get
2020.06.16 15:11:23.214 5: ROLLO (Rollo_EG_WZ_terrasse_tuer) >> Set (pct,83)
2020.06.16 15:11:23.214 5: ROLLO (Rollo_EG_WZ_terrasse_tuer) DesiredPos set to pct, (83)
2020.06.16 15:11:23.219 5: ROLLO (Rollo_EG_WZ_terrasse_tuer) DesiredPos now 83, 83
2020.06.16 15:11:23.220 5: ROLLO (Rollo_EG_WZ_terrasse_tuer) DesiredPos now 83, pct-83
2020.06.16 15:11:23.268 5: ROLLO (Rollo_EG_WZ_terrasse_tuer) >> Start
2020.06.16 15:11:23.268 4: ROLLO (Rollo_EG_WZ_terrasse_tuer) drive from 100 to 83. command: pct-83. state: closed
2020.06.16 15:11:23.268 4: ROLLO (Rollo_EG_WZ_terrasse_tuer) pct: 100 -> 83 / direction: up
2020.06.16 15:11:23.269 5: ROLLO (Rollo_EG_WZ_terrasse_tuer) >> calculateDriveTime | going up: from 100 to 83
2020.06.16 15:11:23.270 5: ROLLO (Rollo_EG_WZ_terrasse_tuer) netto drive time = 7.65
2020.06.16 15:11:23.270 4: ROLLO (Rollo_EG_WZ_terrasse_tuer) calculateDriveTime: oldpos=100,newpos=83,direction=up,time=45,steps=17,drivetime=9.15
2020.06.16 15:11:23.327 4: ROLLO (Rollo_EG_WZ_terrasse_tuer) execute following commands: set dev_terrasse_jalou_tuer open; ;
2020.06.16 15:11:23.382 4: ROLLO (Rollo_EG_WZ_terrasse_tuer) stop in 9.15 seconds.
2020.06.16 15:11:32.001 5: ROLLO (Rollo_EG_WZ_terrasse_tuer) >> Timer
2020.06.16 15:11:32.072 5: ROLLO (Rollo_EG_WZ_terrasse_tuer) >> Stop
2020.06.16 15:11:32.072 4: ROLLO (Rollo_EG_WZ_terrasse_tuer) stops from drive-up at pct 83
2020.06.16 15:11:32.175 4: ROLLO (Rollo_EG_WZ_terrasse_tuer) stopped by excuting the command: set dev_terrasse_jalou_tuer stop
2020.06.16 15:11:32.175 4: ROLLO (Rollo_EG_WZ_terrasse_tuer) updating state to pct-80
2020.06.16 15:11:44.948 5: ROLLO (Rollo_EG_WZ_terrasse_tuer) >> Set (up,)
2020.06.16 15:11:44.948 5: ROLLO (Rollo_EG_WZ_terrasse_tuer) DesiredPos set to up, ()
2020.06.16 15:11:44.954 5: ROLLO (Rollo_EG_WZ_terrasse_tuer) DesiredPos now 80, up
2020.06.16 15:11:44.989 5: ROLLO (Rollo_EG_WZ_terrasse_tuer) >> Start
2020.06.16 15:11:44.989 4: ROLLO (Rollo_EG_WZ_terrasse_tuer) drive from 83 to 80. command: up. state: pct-80
2020.06.16 15:11:44.990 4: ROLLO (Rollo_EG_WZ_terrasse_tuer) pct: 83 -> 80 / direction: up
2020.06.16 15:11:44.991 5: ROLLO (Rollo_EG_WZ_terrasse_tuer) >> calculateDriveTime | going up: from 83 to 80
2020.06.16 15:11:44.991 5: ROLLO (Rollo_EG_WZ_terrasse_tuer) netto drive time = 1.35
2020.06.16 15:11:44.992 4: ROLLO (Rollo_EG_WZ_terrasse_tuer) calculateDriveTime: oldpos=83,newpos=80,direction=up,time=45,steps=3,drivetime=1.85
2020.06.16 15:11:45.024 4: ROLLO (Rollo_EG_WZ_terrasse_tuer) execute following commands: set dev_terrasse_jalou_tuer open; ;
2020.06.16 15:11:45.079 4: ROLLO (Rollo_EG_WZ_terrasse_tuer) stop in 1.85 seconds.
2020.06.16 15:11:45.297 5: ROLLO (Rollo_EG_WZ_terrasse_tuer) >> Get
2020.06.16 15:11:46.001 5: ROLLO (Rollo_EG_WZ_terrasse_tuer) >> Timer
2020.06.16 15:11:46.060 5: ROLLO (Rollo_EG_WZ_terrasse_tuer) >> Stop
2020.06.16 15:11:46.061 4: ROLLO (Rollo_EG_WZ_terrasse_tuer) stops from drive-up at pct 80
2020.06.16 15:11:46.115 4: ROLLO (Rollo_EG_WZ_terrasse_tuer) stopped by excuting the command: set dev_terrasse_jalou_tuer stop
2020.06.16 15:11:46.116 4: ROLLO (Rollo_EG_WZ_terrasse_tuer) updating state to pct-80
2020.06.16 15:11:57.080 5: ROLLO (Rollo_EG_WZ_terrasse_tuer) >> Set (down,)
2020.06.16 15:11:57.081 5: ROLLO (Rollo_EG_WZ_terrasse_tuer) DesiredPos set to down, ()
2020.06.16 15:11:57.081 5: ROLLO (Rollo_EG_WZ_terrasse_tuer) DesiredPos now 80, down
2020.06.16 15:11:57.103 5: ROLLO (Rollo_EG_WZ_terrasse_tuer) >> Start
2020.06.16 15:11:57.104 4: ROLLO (Rollo_EG_WZ_terrasse_tuer) drive from 80 to 80. command: down. state: pct-80
2020.06.16 15:11:57.104 4: ROLLO (Rollo_EG_WZ_terrasse_tuer) pct: 80 -> 80 / direction: down
2020.06.16 15:11:57.105 5: ROLLO (Rollo_EG_WZ_terrasse_tuer) >> calculateDriveTime | going down: from 80 to 80
2020.06.16 15:11:57.106 4: ROLLO (Rollo_EG_WZ_terrasse_tuer) already at position!
2020.06.16 15:11:57.106 5: ROLLO (Rollo_EG_WZ_terrasse_tuer) netto drive time = 0
2020.06.16 15:11:57.150 5: ROLLO (Rollo_EG_WZ_terrasse_tuer) >> Get
2020.06.16 15:12:02.906 5: ROLLO (Rollo_EG_WZ_terrasse_tuer) >> Set (down,)
2020.06.16 15:12:02.907 5: ROLLO (Rollo_EG_WZ_terrasse_tuer) DesiredPos set to down, ()
2020.06.16 15:12:02.911 5: ROLLO (Rollo_EG_WZ_terrasse_tuer) DesiredPos now 80, down
2020.06.16 15:12:02.914 5: ROLLO (Rollo_EG_WZ_terrasse_tuer) >> Start
2020.06.16 15:12:02.914 4: ROLLO (Rollo_EG_WZ_terrasse_tuer) drive from 80 to 80. command: down. state: pct-80
2020.06.16 15:12:02.915 4: ROLLO (Rollo_EG_WZ_terrasse_tuer) pct: 80 -> 80 / direction: down
2020.06.16 15:12:02.916 5: ROLLO (Rollo_EG_WZ_terrasse_tuer) >> calculateDriveTime | going down: from 80 to 80
2020.06.16 15:12:02.917 4: ROLLO (Rollo_EG_WZ_terrasse_tuer) already at position!
2020.06.16 15:12:02.918 5: ROLLO (Rollo_EG_WZ_terrasse_tuer) netto drive time = 0
2020.06.16 15:12:03.015 5: ROLLO (Rollo_EG_WZ_terrasse_tuer) >> Get
2020.06.16 15:12:12.923 5: ROLLO (Rollo_EG_WZ_terrasse_tuer) >> Set (down,)
2020.06.16 15:12:12.924 5: ROLLO (Rollo_EG_WZ_terrasse_tuer) DesiredPos set to down, ()
2020.06.16 15:12:12.925 5: ROLLO (Rollo_EG_WZ_terrasse_tuer) DesiredPos now 80, down
2020.06.16 15:12:12.928 5: ROLLO (Rollo_EG_WZ_terrasse_tuer) >> Start
2020.06.16 15:12:12.928 4: ROLLO (Rollo_EG_WZ_terrasse_tuer) drive from 80 to 80. command: down. state: pct-80
2020.06.16 15:12:12.929 4: ROLLO (Rollo_EG_WZ_terrasse_tuer) pct: 80 -> 80 / direction: down
2020.06.16 15:12:12.930 5: ROLLO (Rollo_EG_WZ_terrasse_tuer) >> calculateDriveTime | going down: from 80 to 80
2020.06.16 15:12:12.931 4: ROLLO (Rollo_EG_WZ_terrasse_tuer) already at position!
2020.06.16 15:12:12.932 5: ROLLO (Rollo_EG_WZ_terrasse_tuer) netto drive time = 0
2020.06.16 15:12:13.043 5: ROLLO (Rollo_EG_WZ_terrasse_tuer) >> Get
2020.06.16 15:12:31.088 5: ROLLO (Rollo_EG_WZ_terrasse_tuer) >> Attr
2020.06.16 15:12:31.311 5: ROLLO (Rollo_EG_WZ_terrasse_tuer) >> Get
2020.06.16 15:12:34.693 5: ROLLO (Rollo_EG_WZ_terrasse_tuer) >> Set (down,)
2020.06.16 15:12:34.694 5: ROLLO (Rollo_EG_WZ_terrasse_tuer) DesiredPos set to down, ()
2020.06.16 15:12:34.696 5: ROLLO (Rollo_EG_WZ_terrasse_tuer) DesiredPos now 80, down
2020.06.16 15:12:34.698 5: ROLLO (Rollo_EG_WZ_terrasse_tuer) >> Start
2020.06.16 15:12:34.700 4: ROLLO (Rollo_EG_WZ_terrasse_tuer) drive from 80 to 80. command: down. state: pct-80
2020.06.16 15:12:34.701 4: ROLLO (Rollo_EG_WZ_terrasse_tuer) pct: 80 -> 80 / direction: down
2020.06.16 15:12:34.702 5: ROLLO (Rollo_EG_WZ_terrasse_tuer) >> calculateDriveTime | going down: from 80 to 80
2020.06.16 15:12:34.703 4: ROLLO (Rollo_EG_WZ_terrasse_tuer) already at position!
2020.06.16 15:12:34.704 5: ROLLO (Rollo_EG_WZ_terrasse_tuer) netto drive time = 0
2020.06.16 15:12:34.777 5: ROLLO (Rollo_EG_WZ_terrasse_tuer) >> Get
2020.06.16 15:12:40.936 5: ROLLO (Rollo_EG_WZ_terrasse_tuer) >> Set (up,)
2020.06.16 15:12:40.938 5: ROLLO (Rollo_EG_WZ_terrasse_tuer) DesiredPos set to up, ()
2020.06.16 15:12:40.939 5: ROLLO (Rollo_EG_WZ_terrasse_tuer) DesiredPos now 80, up
2020.06.16 15:12:41.009 5: ROLLO (Rollo_EG_WZ_terrasse_tuer) >> Start
2020.06.16 15:12:41.010 4: ROLLO (Rollo_EG_WZ_terrasse_tuer) drive from 80 to 80. command: up. state: pct-80
2020.06.16 15:12:41.011 4: ROLLO (Rollo_EG_WZ_terrasse_tuer) pct: 80 -> 80 / direction: down
2020.06.16 15:12:41.012 5: ROLLO (Rollo_EG_WZ_terrasse_tuer) >> calculateDriveTime | going down: from 80 to 80
2020.06.16 15:12:41.012 4: ROLLO (Rollo_EG_WZ_terrasse_tuer) already at position!
2020.06.16 15:12:41.013 5: ROLLO (Rollo_EG_WZ_terrasse_tuer) netto drive time = 0
2020.06.16 15:12:41.059 5: ROLLO (Rollo_EG_WZ_terrasse_tuer) >> Get



2020.06.16 15:27:50.865 5 : ROLLO (Rollo_EG_WZ_terrasse_tuer) >> Set (down,)
2020.06.16 15:27:50.866 5 : ROLLO (Rollo_EG_WZ_terrasse_tuer) DesiredPos set to down, ()
2020.06.16 15:27:50.867 5 : ROLLO (Rollo_EG_WZ_terrasse_tuer) DesiredPos now 80, down
2020-06-16 15:27:50.908 ROLLO Rollo_EG_WZ_terrasse_tuer command: down
2020.06.16 15:27:50.908 5 : ROLLO (Rollo_EG_WZ_terrasse_tuer) >> Start
2020.06.16 15:27:50.909 4 : ROLLO (Rollo_EG_WZ_terrasse_tuer) drive from 80 to 80. command: down. state: pct-80
2020.06.16 15:27:50.910 4 : ROLLO (Rollo_EG_WZ_terrasse_tuer) pct: 80 -> 80 / direction: down
2020.06.16 15:27:50.911 5 : ROLLO (Rollo_EG_WZ_terrasse_tuer) >> calculateDriveTime | going down: from 80 to 80
2020.06.16 15:27:50.912 4 : ROLLO (Rollo_EG_WZ_terrasse_tuer) already at position!
2020.06.16 15:27:50.912 5 : ROLLO (Rollo_EG_WZ_terrasse_tuer) netto drive time = 0
2020.06.16 15:27:50.953 5 : ROLLO (Rollo_EG_WZ_terrasse_tuer) >> Get
2020.06.16 15:27:56.473 5 : ROLLO (Rollo_EG_WZ_terrasse_tuer) >> Set (up,)
2020.06.16 15:27:56.474 5 : ROLLO (Rollo_EG_WZ_terrasse_tuer) DesiredPos set to up, ()
2020.06.16 15:27:56.478 5 : ROLLO (Rollo_EG_WZ_terrasse_tuer) DesiredPos now 80, up
2020-06-16 15:27:56.573 ROLLO Rollo_EG_WZ_terrasse_tuer command: up
2020.06.16 15:27:56.573 5 : ROLLO (Rollo_EG_WZ_terrasse_tuer) >> Start
2020.06.16 15:27:56.574 4 : ROLLO (Rollo_EG_WZ_terrasse_tuer) drive from 80 to 80. command: up. state: pct-80
2020.06.16 15:27:56.574 4 : ROLLO (Rollo_EG_WZ_terrasse_tuer) pct: 80 -> 80 / direction: down
2020.06.16 15:27:56.576 5 : ROLLO (Rollo_EG_WZ_terrasse_tuer) >> calculateDriveTime | going down: from 80 to 80
2020.06.16 15:27:56.577 4 : ROLLO (Rollo_EG_WZ_terrasse_tuer) already at position!
2020.06.16 15:27:56.577 5 : ROLLO (Rollo_EG_WZ_terrasse_tuer) netto drive time = 0
2020-06-16 15:27:56.599 CUL_HM virtual_BAD_OG_Temperatur commState: CMDs_pending
2020-06-16 15:27:56.618 CUL_HM virtual_BAD_OG_Temperatur CMDs_pending
2020-06-16 15:27:56.640 CUL_HM virtual_BAD_OG_Temperatur commState: CMDs_done
2020-06-16 15:27:56.659 CUL_HM virtual_BAD_OG_Temperatur CMDs_done
2020.06.16 15:27:56.692 5 : ROLLO (Rollo_EG_WZ_terrasse_tuer) >> Get

Wie gesagt, bevor Du da zu viel Arbeit nur für mich da reinstecken müsstest, wäre die o.g. Lösung (up/down+Arg) oder alternativ auch meine Lösungvöllig ausreichend.

Bei Fragen fragen... und danke schon mal für Deinen Einsatz :)
Viele Grüße
Andreas
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: KernSani am 16 Juni 2020, 22:57:10
Hi Andreas,
danke für die ausführliche Antwort. Tatsächlich habe ich auch über die Option up & down + Textfeld nachgedacht, das hätte aber ein paar Umstellungen im Coding erfordert. Was ich nicht bedacht habe: Up/Down rundet immer auf die nächste 10er-Stelle (also 83 - 1 wird auf 80 gerundet und 80+1 wird auch auf 80 gerundet). Da muss ich wohl doch noch ein bisschen Gehirnschmalz reinstecken... Das selbe Phänomen hätten wir nämlich auch beim up/down + Textfeld-Ansatz. Ich denke das sinnvollste wäre dann ein "drivePct"-Befehl, der einfach nur x Prozent fährt... Das kann zwar in bestimmten Situationen auch ungenau werden aber damit muss man leben.
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: flummy1978 am 17 Juni 2020, 00:28:47
Hey Olli,
Zitat von: KernSani am 16 Juni 2020, 22:57:10
danke für die ausführliche Antwort.

Sehr gern. Wenn ich damit zur Verbesserung eines Moduls beitragen kann, dann mache ich das gern...

Aaahhh stimmt. Das *10 +5 /10 "runden" habe ich auch nicht bedacht. Im Code mehrmals gelesen und doch vergessen :(

Wenn die Umsetzung viel Aufwand erfordert wäre wohl meine Lösung dann doch erstmal die einfachste / schnellste um sicher zu stellen dass man nicht nur +- 10 sondern auch mal +-2 oder in meinem Falle 1 fahren kann..

Rechtschreibfehler sind aufs Mäusekino zurück zu führen
viele Grüße
Andreas
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: 1234chs am 04 Juli 2020, 13:44:06
Hallo KernSani und alle die mitgearbeitet haben,
zuerst vielen Dank für das sehr gute Modul.
Leider habe ich ein kleines Problem damit. Ich habe Jarolift Funkmotore die ich mit dem Modul aus Bastelbuden über ESP anspreche. (der Grund für diese Lösung ist dass ich damit für jeden Rollladen mehrere Funkfernbedienungen weiter benutzen kann. Mit Signalduino und Keeloq kann ich nur eine Fernbedienung benutzen)
Mein eigentliches Problem:
Wenn ich einen Rollladen über das jarolift modul, mit einer Fernbedienung oder über einen at Befehl fahre und dies dem Rollo Modul über die extern Befehle mitteile wird dies einwandfrei im devStateIcon angezeigt aber nicht bei Pct. Der Befehl stop funktioniert nicht mehr. Die pct Befehle funktionieren nicht mehr. Der Rollladen fährt immer auf closed oder open.
Hier meine define
[/
define AFkl ROLLO
setuuid AFkl 5ed11147-f33f-362a-b34b-0cabfd94a44e2a6e
attr AFkl alias Arbeitszimmer Fenster kl
attr AFkl cmdIcon open:fts_shutter_up closed:fts_shutter_down stop:fts_shutter_manual half:fts_shutter_50
attr AFkl devStateIcon open:fts_shutter_10@orange:closed closed:fts_shutter_100@red:open half:fts_shutter_50:closed drive-up:fts_shutter_up@red:stop drive-down:fts_shutter_down@red:stop pct-100:fts_shutter_100:open pct-90:fts_shutter_80:closed pct-80:fts_shutter_80:closed pct-70:fts_shutter_70:closed pct-60:fts_shutter_60:closed pct-50:fts_shutter_50:closed pct-40:fts_shutter_40:open pct-30:fts_shutter_30:open pct-20:fts_shutter_20:open pct-10:fts_shutter_10:open pct-0:fts_shutter_10:closed
attr AFkl rl_autoStop 1
attr AFkl rl_commandDown set Rollo_Arbeitszimmer_kl down
attr AFkl rl_commandStop set Rollo_Arbeitszimmer_kl stop
attr AFkl rl_commandStopDown set Rollo_Arbeitszimmer_kl stop
attr AFkl rl_commandStopUp set Rollo_Arbeitszimmer_kl stop
attr AFkl rl_commandUp set Rollo_Arbeitszimmer_kl up
attr AFkl rl_excessBottom 0
attr AFkl rl_excessTop 0
attr AFkl rl_forceDrive 1
attr AFkl rl_secondsDown 18
attr AFkl rl_secondsUp 24
attr AFkl rl_switchTime 1
attr AFkl rl_type normal
attr AFkl room Rollo,Rolloautomatik
attr AFkl webCmd open:stop:closed:half:pct]

[code][/
define Rollo_Arbeitszimmer_kl jarolift 9 192.168.178.45 4210 4219
setuuid Rollo_Arbeitszimmer_kl 5c77d144-f33f-362a-6d86-29921d0b19f227e8
attr Rollo_Arbeitszimmer_kl alias Arbeitszimmer Fenster kl.
attr Rollo_Arbeitszimmer_kl cmdIcon up:Auf stop:Stop down:Zu shade:Halb learn:learn
attr Rollo_Arbeitszimmer_kl devStateIcon down:fts_shutter_100@red up:fts_shutter_10@orange shade:fts_shutter stop:time_manual_mode
attr Rollo_Arbeitszimmer_kl disc 0000001000000000
attr Rollo_Arbeitszimmer_kl group_serial 0105ea0,0105ea0,07c3000,07c3000
attr Rollo_Arbeitszimmer_kl icon fts_shutter_updown
attr Rollo_Arbeitszimmer_kl remote_serial 0105ea02,0105ea04,07c30000,07c30004
attr Rollo_Arbeitszimmer_kl room Rolloautomatik,Rolläden
attr Rollo_Arbeitszimmer_kl webCmd up:stop:down:shade:learn]

Hier meine notify
[code][/
define Rollo_Arbeitszimmer_kl_notify_1 notify Rollo_Arbeitszimmer_kl:up set AFkl extern open
define Rollo_Arbeitszimmer_kl_notify_2 notify Rollo_Arbeitszimmer_kl:down set AFkl extern closed
define Rollo_Arbeitszimmer_kl_notify_3 notify Rollo_Arbeitszimmer_kl:stop set AFkl extern stop
]

Auszug aus Event monitor
[/
2020-07-04 13:23:25 ROLLO AFkl drive-type: extern                           ## extern auf zu
2020-07-04 13:23:25 ROLLO AFkl command: closed
2020-07-04 13:23:25 ROLLO AFkl desired_pct: 100
2020-07-04 13:23:25 ROLLO AFkl last_drive: drive-down
2020-07-04 13:23:25 ROLLO AFkl drive-down
2020-07-04 13:23:25 ROLLO AFkl drive-type: na
2020-07-04 13:23:25 jarolift Rollo_Arbeitszimmer_kl down
2020-07-04 13:23:26 jarolift Rollo_Arbeitszimmer_kl serial_rx: 00bc6109
2020-07-04 13:23:26 jarolift Rollo_Arbeitszimmer_kl rx_function: 02
2020-07-04 13:23:26 jarolift Rollo_Arbeitszimmer_kl rssi: 82
2020-07-04 13:23:26 jarolift Rollo_Arbeitszimmer_kl Disc_l_h: 0000001000000000
2020-07-04 13:23:29 ROLLO AFkl drive-type: extern                            ## extern stop
2020-07-04 13:23:29 ROLLO AFkl pct: 27.7777777777778
2020-07-04 13:23:29 ROLLO AFkl pct: 27.7777777777778
2020-07-04 13:23:29 ROLLO AFkl desired_pct: 27.7777777777778
2020-07-04 13:23:29 ROLLO AFkl command: stop
2020-07-04 13:23:29 ROLLO AFkl drive-type: na
2020-07-04 13:23:29 ROLLO AFkl pct-30
2020-07-04 13:23:29 jarolift Rollo_Arbeitszimmer_kl stop
2020-07-04 13:23:30 jarolift Rollo_Arbeitszimmer_kl serial_rx: 00bc6109
2020-07-04 13:23:30 jarolift Rollo_Arbeitszimmer_kl rx_function: 04
2020-07-04 13:23:30 jarolift Rollo_Arbeitszimmer_kl rssi: 82
2020-07-04 13:23:30 jarolift Rollo_Arbeitszimmer_kl Disc_l_h: 0000001000000000
2020-07-04 13:23:46 ROLLO AFkl command: pct-50
2020-07-04 13:23:46 ROLLO AFkl desired_pct: 50                               ## über ROLLO auf pct 50
2020-07-04 13:23:46 ROLLO AFkl last_drive: drive-down
2020-07-04 13:23:46 ROLLO AFkl drive-down
2020-07-04 13:23:46 ROLLO AFkl drive-type: modul
2020-07-04 13:23:46 ROLLO AFkl drive-type: extern                            ## wo kommt das her ?
2020-07-04 13:23:46 ROLLO AFkl pct: 99                                       ## fährt auf pct 99 statt pct 50
2020-07-04 13:23:46 ROLLO AFkl pct: 99
2020-07-04 13:23:46 ROLLO AFkl command: closed
2020-07-04 13:23:46 ROLLO AFkl desired_pct: 100
2020-07-04 13:23:46 ROLLO AFkl last_drive: drive-down
2020-07-04 13:23:46 ROLLO AFkl drive-down
2020-07-04 13:23:46 ROLLO AFkl drive-type: na
2020-07-04 13:23:46 jarolift Rollo_Arbeitszimmer_kl down
2020-07-04 13:23:46 ROLLO AFkl pct: 100
2020-07-04 13:23:46 ROLLO AFkl closed
2020-07-04 13:23:46 jarolift Rollo_Arbeitszimmer_kl serial_rx: 00bc6109
2020-07-04 13:23:46 jarolift Rollo_Arbeitszimmer_kl rx_function: 02
2020-07-04 13:23:46 jarolift Rollo_Arbeitszimmer_kl rssi: 82
2020-07-04 13:23:46 jarolift Rollo_Arbeitszimmer_kl Disc_l_h: 0000001000000000]



Was mache ich falsch oder wer kann mir helfen ?
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: KernSani am 06 Juli 2020, 22:36:32
Hi,

kannst du mal ein "list AFkl" machen, nachdem externen stop? Ich vermute da gibt es irgendwo einen Bug beim externen fahren...

Danke,

Oli
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: 1234chs am 07 Juli 2020, 09:58:30
Hi Oli,
vieln Dank für deine Hilfe.

Hier ein List nach extern closed und dann extern stop danach ein List mit ROLLO modul auf pct 60.


defmod AFkl ROLLO
attr AFkl alias Arbeitszimmer Fenster kl
attr AFkl cmdIcon open:fts_shutter_up closed:fts_shutter_down stop:fts_shutter_manual half:fts_shutter_50
attr AFkl devStateIcon open:fts_shutter_10@orange:closed closed:fts_shutter_100@red:open half:fts_shutter_50:closed drive-up:fts_shutter_up@red:stop drive-down:fts_shutter_down@red:stop pct-100:fts_shutter_100:open pct-90:fts_shutter_80:closed pct-80:fts_shutter_80:closed pct-70:fts_shutter_70:closed pct-60:fts_shutter_60:closed pct-50:fts_shutter_50:closed pct-40:fts_shutter_40:open pct-30:fts_shutter_30:open pct-20:fts_shutter_20:open pct-10:fts_shutter_10:open pct-0:fts_shutter_10:closed
attr AFkl rl_autoStop 1
attr AFkl rl_commandDown set Rollo_Arbeitszimmer_kl down
attr AFkl rl_commandStop set Rollo_Arbeitszimmer_kl stop
attr AFkl rl_commandStopDown set Rollo_Arbeitszimmer_kl stop
attr AFkl rl_commandStopUp set Rollo_Arbeitszimmer_kl stop
attr AFkl rl_commandUp set Rollo_Arbeitszimmer_kl up
attr AFkl rl_excessBottom 0
attr AFkl rl_excessTop 0
attr AFkl rl_forceDrive 1
attr AFkl rl_secondsDown 18
attr AFkl rl_secondsUp 24
attr AFkl rl_switchTime 1
attr AFkl rl_type normal
attr AFkl room Rollo,Rolloautomatik
attr AFkl webCmd open:stop:closed:half:pct

setstate AFkl pct-30
setstate AFkl 2020-07-07 09:00:12 command stop
setstate AFkl 2020-07-07 09:00:12 desired_pct 27.7777777777778
setstate AFkl 2020-07-07 09:00:12 drive-type na
setstate AFkl 2020-07-07 09:00:08 last_drive drive-down
setstate AFkl 2020-07-07 09:00:12 pct 27.7777777777778
setstate AFkl 2020-07-07 09:00:12 state pct-30
]
[code]


Das Feld pct ist leer, das icon steht bei pct 30

und hier nach stop mit ROLLO modul auf pct 60 .

Mir ist aufgefallen dass beim Anfahren noch pct 60 steht und unmittelbar danach auf pct 100 springt.




defmod AFkl ROLLO
attr AFkl alias Arbeitszimmer Fenster kl
attr AFkl cmdIcon open:fts_shutter_up closed:fts_shutter_down stop:fts_shutter_manual half:fts_shutter_50
attr AFkl devStateIcon open:fts_shutter_10@orange:closed closed:fts_shutter_100@red:open half:fts_shutter_50:closed drive-up:fts_shutter_up@red:stop drive-down:fts_shutter_down@red:stop pct-100:fts_shutter_100:open pct-90:fts_shutter_80:closed pct-80:fts_shutter_80:closed pct-70:fts_shutter_70:closed pct-60:fts_shutter_60:closed pct-50:fts_shutter_50:closed pct-40:fts_shutter_40:open pct-30:fts_shutter_30:open pct-20:fts_shutter_20:open pct-10:fts_shutter_10:open pct-0:fts_shutter_10:closed
attr AFkl rl_autoStop 1
attr AFkl rl_commandDown set Rollo_Arbeitszimmer_kl down
attr AFkl rl_commandStop set Rollo_Arbeitszimmer_kl stop
attr AFkl rl_commandStopDown set Rollo_Arbeitszimmer_kl stop
attr AFkl rl_commandStopUp set Rollo_Arbeitszimmer_kl stop
attr AFkl rl_commandUp set Rollo_Arbeitszimmer_kl up
attr AFkl rl_excessBottom 0
attr AFkl rl_excessTop 0
attr AFkl rl_forceDrive 1
attr AFkl rl_secondsDown 18
attr AFkl rl_secondsUp 24
attr AFkl rl_switchTime 1
attr AFkl rl_type normal
attr AFkl room Rollo,Rolloautomatik
attr AFkl webCmd open:stop:closed:half:pct

setstate AFkl closed
setstate AFkl 2020-07-07 09:43:52 command closed                                      ## befehl pct 60 wurde eingegeben !!!!
setstate AFkl 2020-07-07 09:43:52 desired_pct 100
setstate AFkl 2020-07-07 09:43:52 drive-type na
setstate AFkl 2020-07-07 09:43:52 last_drive drive-down
setstate AFkl 2020-07-07 09:43:52 pct 100
setstate AFkl 2020-07-07 09:43:52 state closed]
[code]


Ich hoffe dass es das List ist das Du wolltest.

Nachtrag 10.7 der gleiche Fehler tritt auch mit Signalduino und dem Modul Keeloq auf.
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: RpiEinOzean am 11 Juli 2020, 19:04:26
Hallo zusammen,
ich habe leider irgendwie nicht ganz begriffen wie ich ROLLO in der Praxis umsetzen kann.
Ich würde gerne mein Rollo einfach nur erst einmal komplett runterfahren lassen.
Mein Rollo wird momentan über MQTT WemosD1mini über den Befehl:  set Wohnz_Jalousie_04_121 3 runtergefahren.
Die 3 steht für AB , 1 ist AUF , 2 ist STOPP , 4 ist STOPP.
Das funktioniert auch sehr gut.
Mir fehlt nur der Moment wo ich ROLLO mit meiner Wohnz_Jalousie_04_121 zusammenführen kann.

Vielleicht kann mir jemand dort etwas auf die Sprünge helfen.

Gruß an die Gemeinde  :)
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: flummy1978 am 12 Juli 2020, 16:12:27
Hey,

hast Du denn schon ein Device angelegt dass dann dieses Modul nutzt ? Wenn ja, zeig mal bitte ein List davon, wenn nein dann bitte erstmal https://wiki.fhem.de/wiki/ROLLO  (https://wiki.fhem.de/wiki/ROLLO) und dort lesen was alles gebraucht wird bzw wie Du es anlegen kannst. Wenn es dann wieder scheitert, dann gern nochmal melden :)

Viele Grüße
Andreas
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: D3ltorohd am 14 Juli 2020, 14:27:19
Folgendes Problem. Ab und an, fährt mal ein Rollo nicht. So im Rollo Modul ist der Rollo nun z.b. geschlossen, in Wahrheit ist er geöffnet, erneutes drücken auf runter, löst das Problem nicht, da das Rollo Modul ja schon meint, ist ja schon unten, brauch ich nichts senden. Kann man das irgendwie dennoch ändern ? Unabhängig was das Rollo Modul weiß. Gut wäre es, wenn ich auf runter drücke und dennoch der Fahrbefehl runter gesendet wird. Wenn das Rollo schon unten ist, gibts kein Problem, wenn es noch oben ist fährt es runter. Und alles passt wieder.

Ist sowas irgendwie möglich ?
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: Stütti am 14 Juli 2020, 14:48:43
Zitat von: D3ltorohd am 14 Juli 2020, 14:27:19
Folgendes Problem. Ab und an, fährt mal ein Rollo nicht. So im Rollo Modul ist der Rollo nun z.b. geschlossen, in Wahrheit ist er geöffnet, erneutes drücken auf runter, löst das Problem nicht, da das Rollo Modul ja schon meint, ist ja schon unten, brauch ich nichts senden. Kann man das irgendwie dennoch ändern ? Unabhängig was das Rollo Modul weiß. Gut wäre es, wenn ich auf runter drücke und dennoch der Fahrbefehl runter gesendet wird. Wenn das Rollo schon unten ist, gibts kein Problem, wenn es noch oben ist fährt es runter. Und alles passt wieder.

Ist sowas irgendwie möglich ?

Das geht mit dem Befehl
set <Rollo-Device> reset <value>

Wobei <value> open oder closed annehmen kann. Damit kannst du dem Rollo sagen, dass es eingentlich schon oben bzw. unten ist und danach kannst du wieder in die entsprechend andere Richtung fahren.
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: D3ltorohd am 14 Juli 2020, 14:59:27
Zitat von: Stütti am 14 Juli 2020, 14:48:43
Das geht mit dem Befehl
set <Rollo-Device> reset <value>

Wobei <value> open oder closed annehmen kann. Damit kannst du dem Rollo sagen, dass es eingentlich schon oben bzw. unten ist und danach kannst du wieder in die entsprechend andere Richtung fahren.

Hm wie kann ich das in meine Automation mit einbauen ? Wenn ich z.b. am Tablet runterfahren möchte, dann müsste ich zwei Befehle absetzten ? Einmal für das zurücksetzten und einmal für den Fahrbefehl ?
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: Frank_Huber am 14 Juli 2020, 15:08:17
Ich würde eher das eigentliche Problem lösen und nicht Workarounds zum Standart machen.

Warum hat der Rollo den falschen Status? das sollte die eigentliche Frage sein.
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: D3ltorohd am 14 Juli 2020, 15:13:18
Zitat von: Frank_Huber am 14 Juli 2020, 15:08:17
Ich würde eher das eigentliche Problem lösen und nicht Workarounds zum Standart machen.

Warum hat der Rollo den falschen Status? das sollte die eigentliche Frage sein.

Weil er nicht gefahren ist. Ab und an kommt das Signal wohl nicht an. Er hätte fahren sollen, tat es aber nicht. Da der Rollo selber keinen Status sendet, sondern nur Befehle erhalten kann, wüsste ich nicht, wie ich das lösen soll. Ich nutze ja diesen Signalduino und steuere damit meine Jarolift Motoren.
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: Frank_Huber am 14 Juli 2020, 15:14:18
Dann würde ich die Antennen optimieren oder den Sender umsetzen.
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: RpiEinOzean am 14 Juli 2020, 17:05:50
@flummy1978

Meintest Du dieses list?

Internals:
   FUUID      5eedea98-f33f-1ac6-c6b6-f97dea53d06c9a79
   NAME       Whz_Jalousie_04
   NR         1508
   STATE      open
   TYPE       ROLLO
   READINGS:
     2020-07-08 17:56:06   command         open
     2020-07-08 17:56:06   desired_pct     0
     2020-07-08 17:56:06   drive-type      modul
     2020-07-08 17:56:06   last_drive      drive-up
     2020-07-08 17:56:14   pct             0
     2020-07-08 17:56:14   state           open
Attributes:
   cmdIcon    open:fts_shutter_up closed:fts_shutter_down stop:fts_shutter_manual half:fts_shutter_50
   devStateIcon open:fts_shutter_10:closed closed:fts_shutter_100:open half:fts_shutter_50:closed drive-up:fts_shutter_up@red:stop drive-down:fts_shutter_down@red:stop pct-100:fts_shutter_100:open pct-90:fts_shutter_80:closed pct-80:fts_shutter_80:closed pct-70:fts_shutter_70:closed pct-60:fts_shutter_60:closed pct-50:fts_shutter_50:closed pct-40:fts_shutter_40:open pct-30:fts_shutter_30:open pct-20:fts_shutter_20:open pct-10:fts_shutter_10:open pct-0:fts_shutter_10:closed
   group      Jalousie_04
   rl_autoStop 0
   rl_excessBottom 2
   rl_excessTop 4
   rl_secondsDown 23
   rl_secondsUp 24
   rl_switchTime 2
   rl_type    normal
   room       Whz
   webCmd     open:closed:half:stop:pct


Mir fehlt wohl das Verständnis wie ich das nun mit meiner tatsächlichen Ansteuerung zusammen bringe.
Momentan funktioniert es einigermassen über:
di_Jalousie_4_automatisch DOIF ([FAH60_Terasse:brightness]>9000 and [08:05:00-21:00:00] and ([Terasse_Aussen_Temp_Feucht:temperature] > 26)) (set Wohnz_Jalousie_04_121 3; sleep 16; set Wohnz_Jalousie_04_121 4) DOELSEIF ([FAH60_Terasse:brightness]>50 and [07:01:00-08:02:00]) (set Wohnz_Jalousie_04_121 1) DOELSEIF ([FAH60_Terasse:brightness]<600 and [18:00:00-22:30:00]) (set Wohnz_Jalousie_04_121 3)
Wobei set Wohnz_Jalousie_04_121 mit 4 Befehlen gesteuert wird.
1 = AUF   2 = AUF-STOPP  3 = AB  4 = AB-STOPP   , es sind 2 Relais verbaut, das eine für AUF, das andere für AB

Aber erst einmal vielen Dank fürs melden.
Vielleicht kannst Du ja hiermit schon etwas anfangen und mir den richtigen Schubs geben.

Schönen Gruß
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: Frank_Huber am 14 Juli 2020, 17:46:56
Zitat von: RpiEinOzean am 14 Juli 2020, 17:05:50
es sind 2 Relais verbaut, das eine für AUF, das andere für AB
OT, aber dennoch wicbtig:

Ich hoffe Du hast die gegenseitig verriegelt?
Oder kannst du auf und ab gleichzeitig bestromen?
Das könnte dann den Motor töten.
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: RpiEinOzean am 14 Juli 2020, 17:51:20
@Frank_Huber
Danke für das Drüberschauen.
Ja, ich habe die Relais selbstverständlich gegeneinander verriegelt.
Öffner vom ersten Relais auf Eingang des zweiten Relais.
Bringt bei mir der Beruf schon mit sich.

Schönen Gruß
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: RpiEinOzean am 14 Juli 2020, 18:01:06
@Frank_Huber
Hier ein Bildchen von dem Schema.
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: flummy1978 am 14 Juli 2020, 21:47:39
Holla,

Zitat von: RpiEinOzean am 14 Juli 2020, 17:05:50
@flummy1978

Meintest Du dieses list?

Genau das :) (noch besser wäre es das Device womit der Rolladen gesteuert wird - MQTT auch ? so ist es ein wenig schätzen und raten - zumal ich mit DOIF irgendwie wohl nie warm werde *g* ):

Dir fehlen die Befehle rl_commandDown, rl_commandStop,  rl_commandUp. (bzw in Deinem Fall commandstopUp und commandstopDown )  D.h Dein ROLLO Modul weiß zwar was es hat und was es macht aber nicht womit. Das bedeutet:

das muss noch alles in Deine Attribute

rl_commandDown set Wohnz_Jalousie_04_121 3
rl_commandStopDown set Wohnz_Jalousie_04_121 4
rl_commandUp set Wohnz_Jalousie_04_121 1
rl_commandStopUp set Wohnz_Jalousie_04_121 2
rl_secondsDown 16*
rl_secondsUp 16*

* Wenn ich richtig erkannt habe, dass die Fahrzeit deines Rolladens  16 Sek ist.

Ansonsten einfach mal anschauen, was die Befehle angeht. KernSani hat das Modul super verfasst, so dass in den meisten Fällen eine kurze Erklärung zum Befehl kommt. Wenn nicht, Wiki und Commandref, erklären auch sehr sehr viel :)

Ansonsten bei Fragen... fragen  8)

Viele Grüße
Andreas
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: D3ltorohd am 15 Juli 2020, 09:06:30
Zitat von: Frank_Huber am 14 Juli 2020, 15:14:18
Dann würde ich die Antennen optimieren oder den Sender umsetzen.

Sorry OFF TOPIC :

Da werkelt ja nen CUL Stick, gibt es denn da alternativen, wo stärker senden ? Wüsste nicht das Signalduino auch woanders läuft.
Das komische ist, es lief dort min. 1,5 Jahre ohne eine Fehlfahrt.
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: Frank_Huber am 15 Juli 2020, 09:08:56
evtl nen Wlan CUL und anderst platzieren.
evtl bringt nen Antennen-Tausch auch schon was.

Im Notfall gibts imho auch im CUL nen Attribut das die Befehlsaussendung mehrfach macht.
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: RpiEinOzean am 15 Juli 2020, 17:26:55
@flummy1978
Vielen Dank für die Antwort.
Habe die attr angelegt.
Nun funktioniert es mit klicken auf die Icons auch sehr gut.


Der Vollständigkeithalber auch das list vom MQTT Device:
Internals:
   FUUID      5ec7d94a-f33f-1ac6-b037-fdc341c1861a2248
   IODev      Mosquitto
   NAME       Wohnz_Jalousie_04_121
   NR         1478
   STATE      outgoing publish sent
   TYPE       MQTT_DEVICE
   READINGS:
     2020-07-15 17:10:18   state           4
     2020-07-15 17:10:18   transmission-state outgoing publish sent
   message_ids:
   publishSets:
     :
       topic      Wohnz_Jalousie_04_121
       values:
         1
         2
         3
         4
   sets:
     1         
     2         
     3         
     4         
   subscribe:
   subscribeExpr:
   subscribeQos:
Attributes:
   IODev      Mosquitto
   group      Jalousie_04
   publishSet 1 2 3 4 Wohnz_Jalousie_04_121
   room       Whz
   stateFormat transmission-state
   webCmd     1:2:3:4


Wie setze ich es aber z.B. in meinem DOIF (oder etwas anderem mit dem man Bedingungen zum Rauf-Runterfahren realisieren kann, um?
di_Jalousie_4_automatisch DOIF ([FAH60_Terasse:brightness]>9000 and [08:05:00-21:00:00] and ([Terasse_Aussen_Temp_Feucht:temperature] > 26)) (set Wohnz_Jalousie_04_121 3; sleep 16; set Wohnz_Jalousie_04_121 4) DOELSEIF ([FAH60_Terasse:brightness]>50 and [07:01:00-08:02:00]) (set Wohnz_Jalousie_04_121 1) DOELSEIF ([FAH60_Terasse:brightness]<600 and [18:00:00-22:30:00]) (set Wohnz_Jalousie_04_121 3)

Es geht sicher NICHT??, einfach in der vorhandenen DOIF die Befehle rl_commandDown; rlcommandStopDown   usw. einzugeben . . .
Ich stehe mal wieder wie der Ochs vor dem Berg.  >:(

Aber vielen Dank für die Unterstützung.
Vielleicht sehe ich es einfach nicht . . .

Schöne Grüße
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: flummy1978 am 15 Juli 2020, 22:03:27
Zitat von: RpiEinOzean am 15 Juli 2020, 17:26:55

Es geht sicher NICHT??, einfach in der vorhandenen DOIF die Befehle rl_commandDown; rlcommandStopDown   usw. einzugeben . . .
Ich stehe mal wieder wie der Ochs vor dem Berg.  >:(

Aber vielen Dank für die Unterstützung.
Vielleicht sehe ich es einfach nicht . . .

Ich unterstütze und helfe sehr gern, die komplette Arbeit übernehmen, mache ich sehr ungern bis gar nicht ;)

Also: Welche Erfahrungen hast du mit FHEM oder den Modulen generell? (das wäre vorne vor nicht unwichtig um zu wissen, welchen Ansatz Du selbst verfolgst), darüber hinaus vollkommen wichtig: Was hast Du denn bisher aus der Modul Doku gelesen und (nicht) verstanden ?

Es gibt bestimmte Set Befehle vom ROLLO Modul, die entsprechendes setzen. Diese solltest Du ab jetzt immer nutzen - Egal ob die Fahrt manuell, DOIF anderes Modul (ASC zb) oder sonst was erfolgt. Damit es für Dich vom Verständnis her einfacher ist:
Wenn Dein Rolladen über das ROLLO Modul fährt. Solltest Du den Befehl der in rlCommandUp / down usw steht, NIE wieder wo anders benutzen. Händisch nicht, in nem Notify, DOIF nicht oder sonst wo auch nicht, weil dann das ROLLO Modul eben nicht mitbekommt, dass der Rolladen gefahren ist und die Position  / Ansteuerung nicht stimmt.

Das bedeutet, Du musst die SET befehle setzen die Dein "neues" Rollo Device hat https://wiki.fhem.de/wiki/ROLLO#Set (https://wiki.fhem.de/wiki/ROLLO#Set)

VG
Andreas
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: RpiEinOzean am 16 Juli 2020, 17:37:46
@ flummy1978

Ich habe es nun hinbekommen. Danke für den Schubs.

define di_Jalousie_4_automatisch DOIF ([FAH60_Terasse:brightness]>9000 and [08:05:00-21:00:00] and ([Terasse_Aussen_Temp_Feucht:temperature] > 26)) (set Whz_Jalousie_04 pct 55) DOELSEIF ([FAH60_Terasse:brightness]>50 and [07:01:00-08:02:00]) (set Whz_Jalousie_04 open) DOELSEIF ([FAH60_Terasse:brightness]<600 and [18:00:00-22:30:00]) (set Whz_Jalousie_04 closed)

Man sieht so manches mal den Wald vor lauter Bäumen nicht. Da ist was wahres dran.  :D
In der Wiki steht alles was man benötigt. Man muss es nur sehen können.  ::)

Danke
und noch einen schönen Gruß
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: flummy1978 am 16 Juli 2020, 20:28:11
Zitat von: RpiEinOzean am 16 Juli 2020, 17:37:46
@ flummy1978
Ich habe es nun hinbekommen. Danke für den Schubs.

Es klingt immer erstmal "böse" wenn einem einer nicht alles vorsagt .. aber im Nachhinein ist es für jeden besser. Du lernst mehr und die die helfen (wollen) werden nicht 1000fach mit den gleichen Fragen bombardiert, die bereits mehrmals durchgekaut wurden und auch noch im Wiki und Commandref zu finden sind :)

Freut mich, dass Du es hinbekommen hast, dass es zufriedenstellend läuft :)

Viele Grüße
Andreas
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: e-t-h am 30 Juli 2020, 15:06:23
Hallo an die Macher,
vielen Dank für das Modul, ich probiere es gerade aus. Was mir auffällt ist dass die Positionen des Rollos (bei mir) nicht erwartungsgemäß angefahren werden.
Habe für rl_secondsDown/Up der Einfachheit halber mal jeweils 32 sec. drin , und nur noch die rl_switchTime und rl_reactionTime auf 1 sec gestellt.
50% von oben nach unten sind eher 75..80%, anders herum eher 65..70. Mir geht es jetzt nicht um die ca. 10% Differenz, mir geht es darum dass es in beiden Fällen weit über 50% sind. Ich habe mal die Zeiten gemessen, die sind in beide Richtungen ca. zwischen 16 und 17 sec, also ca. 50%.
Der Zusammenhang zwischen der Zeit und dem Weg ist aber nicht linear, weil sich ja der Umfang des Paketes ändert. Ich gehe mal davon aus, dass dies nicht berücksichtigt wird? Wäre ja auch unterschiedlich von Installation zu Installation.
Liege ich hiermit richtig?
Wenn ja, wie gehen andere damit um? Wäre es nicht ein Ansatz einfach die Zeiten für die 10% Schritte zu hinterlegen (oder sowas in dieser Art) und ggf. für die Differenzen zwischen Up/Down zu interpolieren?
Wenn nicht, kann mir jemand auf die Sprünge helfen?
Dank schon mal.
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: flummy1978 am 03 August 2020, 02:03:15
Hey.

Zitat von: e-t-h am 30 Juli 2020, 15:06:23
Habe für rl_secondsDown/Up der Einfachheit halber mal jeweils 32 sec. drin , und nur noch die rl_switchTime und rl_reactionTime auf 1 sec gestellt.
50% von oben nach unten sind eher 75..80%, anders herum eher 65..70. Mir geht es jetzt nicht um die ca. 10% Differenz, mir geht es darum dass es in beiden Fällen weit über 50% sind. Ich habe mal die Zeiten gemessen, die sind in beide Richtungen ca. zwischen 16 und 17 sec, also ca. 50%.

bin zwar nicht der Macher oder Autor aber ich versuche mal mein Glück:

Wie lange braucht das Rollo tatsächlich bis es von Oben nach Unten einmal komplett durch gefahren ist ?
Zählt für Dich bereits das geschlossene Rollo als geschlossen oder erst wenn alle Lücken restlos zu sind ?
Wie ist excessTop / Bottom eingestellt ?
und und und ... Sprich ein List wäre hilfreich :)

Nur zum Verständniss: Ich kann mir nicht vorstellen, dass die Paketgröße beachtet wird (wie Du schon selbst festgestellt hast, ist es von Installation zu Installation unterschiedlich. Aber was sehrwohl beachtet wird, ist vor allem rl_excessTop, rl_excessBottom, rl_reactionTime. Angenommen Du machst bsw rl_excessTop 2, rl_excessBottom3, rl_reactionTime 2 und Dein Rollo reagiert aber in 0,2 statt 2 Sekunden dann fährt Dein Rollo von Unten nach Oben 4,8 Sek und von oben nach Unten 3,8 Sek, ohne dass es in der Gesamtfahrzeit (rl_secondsDown (Up) ) auftauchen darf, wenn es EINIGERMAßEN passen soll mit der Position. Um es verständlicher auszudrücken:

Rollo ist oben, Tastendruck nach unten + rl_reactionTime +
---------- rl_excessTop +
----------| rl_secondsDown + ( Hier ist Zeitpunkt wo Rolladen komplett geschlossen aber noch Lichtlücken aufweist )
---------- rl_excessBottom => Rollo komplett geschlossen inkl Lücken etc
Das sind die Zeiten die komplett eingestellt sein müssen. Erst dann passt es EINIGERMAßEN. Wir haben leider keine Weggeber in den Rolläden, sonst wäre eine Positionierung wesentlich einfacher. So stellt man quasi mit einem Riesen Schraubendreher eine Uhrenschraube ein  ::)

rl_switchTime ist lediglich wenn man nach unten fährt und dann nach oben drückt, wie lange es pausiert. Btw: Die Hilfe die hier vom Modulautor eingebaut wurde, finde ich persönlich sehr gut und sehr hilfreich  :)

Ich hoffe das hilft (und verwirrt nicht mehr als gewollt) ;)

Viele Grüße
Andreas
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: Frank_Huber am 03 August 2020, 08:05:09
Zitat von: flummy1978 am 03 August 2020, 02:03:15
----------| rl_secondsDown + ( Hier ist Zeitpunkt wo Rolladen komplett geschlossen aber noch Lichtlücken aufweist )
---------- rl_excessBottom => Rollo komplett geschlossen inkl Lücken etc
Moin Moin,

Das verstehe ich anderst:
rl_secondsDown --> Zeit bis alle Lücken geschlossen sind.
rl_excessBottom --> Aufschlag bis der Rollo seine Endposition erreicht hat.

siehe auch hier: https://wiki.fhem.de/wiki/ROLLO#Attribute
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: flummy1978 am 03 August 2020, 10:15:50
Moinsen :)

Zitat von: Frank_Huber am 03 August 2020, 08:05:09
Moin Moin,

Das verstehe ich anderst:
rl_secondsDown --> Zeit bis alle Lücken geschlossen sind.
rl_excessBottom --> Aufschlag bis der Rollo seine Endposition erreicht hat.

siehe auch hier: https://wiki.fhem.de/wiki/ROLLO#Attribute

Da werden sich jetzt sicher die Geister scheiden. Ich bin der Meinung:
rl_secondsDown attr <Rollo-Device> rl_secondsDown <number> Sekunden zum hochfahren (hier ist übrigens noch n Fehler, es müsste doch runter heissen ? - Ist im Wiki auch so)


Die Lücken werden niemals zu sein bevor das Rollo nicht aufgesetzt hat - Aber für eine wie ich oben geschrieben habe "halbwegs" Berechnung der Position muss  man afaik mit den offenen Lücken rechnen, weil für das Schließen der Lücken noch mal ca 3 Sek Fahrzeit benötigt werden. Der Rolladen hat aber bei der 40,50.60 usw Position die Lücken immer offen hat. Würde man jetzt also die Laufzeit bis Lücken geschlossen nehmen (z.b. 20 Sek) wären 50 % für das Modul => 10 sek. Ohne die Excess bottom Zeit würde es aber auf 50 von null bis vollständig geschlossen fahren -> das ist weit mehr als 50 % von der Fensterhöhe....**

**In meinem Beispiel ist 0 oben 100 komplett geschlossen

Ist jetzt sehr kompliziert geschrieben, aber anders fällt es mir nicht ein, wie ich erklären könnte, was ich meine  :-\

VG
Andreas
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: Frank_Huber am 03 August 2020, 10:23:37
Ist ja auch irgendwie eine Frage wie man es regeln will.

Wie fährst Du bei Dir z.B. von zu auf Schlitz? hat ja dann beides die gleiche pct.
andererseits ist deine Position genauer.

Ich fahre meist nur "auf" "zu" oder "Schlitz" (Schlitz sind bei mir je nach Rollo 70 oder 80%)
von daher ist mir eine eventuell falsche 50% Position egal.
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: flummy1978 am 03 August 2020, 10:38:16
Hey :)

Genau das ist es:
Zitat von: Frank_Huber am 03 August 2020, 10:23:37
Ist ja auch irgendwie eine Frage wie man es regeln will.

Wie fährst Du bei Dir z.B. von zu auf Schlitz? hat ja dann beides die gleiche pct.
andererseits ist deine Position genauer.
Nie  ::)

Mir sind die Positionen rum um 50 % etc wichtig. ABER würde ich auf Schlitz fahren wollen, wäre es defintiv nicht die Position zu: Es wäre dann z.B. 99 % oder 95 % (heisst ich fahre aus dem rl_excessBottom bereich +1 - 5 % heraus, da müsste man dann etwas rumspielen)

VG
Andreas
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: e-t-h am 06 August 2020, 00:14:11
Zitat von: flummy1978 am 03 August 2020, 02:03:15
Hey.

bin zwar nicht der Macher oder Autor aber ich versuche mal mein Glück:

Wie lange braucht das Rollo tatsächlich bis es von Oben nach Unten einmal komplett durch gefahren ist ?
Zählt für Dich bereits das geschlossene Rollo als geschlossen oder erst wenn alle Lücken restlos zu sind ?
Wie ist excessTop / Bottom eingestellt ?
und und und ... Sprich ein List wäre hilfreich :)

......

rl_switchTime ist lediglich wenn man nach unten fährt und dann nach oben drückt, wie lange es pausiert. Btw: Die Hilfe die hier vom Modulautor eingebaut wurde, finde ich persönlich sehr gut und sehr hilfreich  :)

Ich hoffe das hilft (und verwirrt nicht mehr als gewollt) ;)

Viele Grüße
Andreas

Hi Andreas,

Danke erstmal für die ausführliche Antwort, hast mich nicht verwirrt und die Hilfe habe ich natürlich gelesen. Hab in der Zwischenzeit mit dem AutoShuttersControl-Modul "rumgespielt", das ist ja auch ziemlich komplex.., sorry das ich so lange gebraucht habe..

Ich hatte mir das so schon gedacht, mir ging's wirklich um die Frage ob das Thema mit der Dicke und der resultierenden "Spirale" berücksichtigt wird. Wird wohl nicht so sein, also muss man es eben so hin "tricksen". Letztendlich sollte man auch keine Wissenschaft draus machen, obwohl eine "Stützstelle" (Laufzeit bei 50%) und etwas Interpolation vielleicht schon helfen würde.

Der Vollständigkeit halber das Listing des Devices um was es mir ging:

Internals:
   CFGFN      ./FHEM/blinds.cfg
   FUUID      5f22d7d0-f33f-f3c0-338e-2f928df3cbaa3c8d
   NAME       R_Ekki
   NR         703
   STATE      closed
   TYPE       ROLLO
   stoptime   1596664140
   READINGS:
     2020-07-30 23:34:11   ASC_Enable      on
     2020-08-05 22:20:44   ASC_ShadingMessage <html> WARN:  global shading active but ASC_Shading_Mode attribut is not set or off </html>
     2020-08-05 23:49:00   ASC_ShuttersLastDrive manual
     2020-08-05 23:17:30   ASC_Time_DriveDown AutoShuttersControl off
     2020-08-05 23:17:30   ASC_Time_DriveUp  6.08.2020 - 05:00
     2020-08-05 22:20:31   associatedWith  Rollladenautomatik
     2020-08-05 23:48:27   command         closed
     2020-08-05 23:48:27   desired_pct     100
     2020-08-05 23:48:27   drive-type      modul
     2020-08-05 23:48:27   last_drive      drive-down
     2020-08-05 23:49:00   pct             100
     2020-08-05 23:49:00   state           closed
Attributes:
   ASC        1
   ASC_AutoAstroModeEvening ASTRONOMIC
   ASC_AutoAstroModeMorning ASTRONOMIC
   ASC_BlockingTime_afterManual 5
   ASC_BrightnessSensor GT_Lux:BH1750_Illuminance
   ASC_Closed_Pos 100
   ASC_Open_Pos 0
   ASC_Partymode off
   ASC_Pos_Reading pct
   ASC_Shading_InOutAzimuth 262:264
   ASC_Shading_MinMax_Elevation 0:100
   ASC_Shading_Mode off
   ASC_Shading_Pos 10
   ASC_Shading_StateChange_SunnyCloudy 260:190:1
   ASC_Shading_WaitingPeriod 5
   DbLogExclude .*
   cmdIcon    half:fts_shutter_50@grey open:fts_shutter_up@grey closed:fts_shutter_down@grey   stop:fts_shutter_manual@grey
   devStateIcon open:fts_shutter_10:closed closed:fts_shutter_100:open half:fts_shutter_50:closed drive-up:fts_shutter_up@red:stop drive-down:fts_shutter_down@red:stop pct-100:fts_shutter_100:open pct-90:fts_shutter_80:closed pct-80:fts_shutter_80:closed pct-70:fts_shutter_70:closed pct-60:fts_shutter_60:closed pct-50:fts_shutter_50:closed pct-40:fts_shutter_40:open pct-30:fts_shutter_30:open pct-20:fts_shutter_20:open pct-10:fts_shutter_10:open pct-0:fts_shutter_10:closed
   group      Rollo
   rl_autoStop 1
   rl_blockMode none
   rl_commandDown set Jaro down 1
   rl_commandStop set Jaro stop 1
   rl_commandUp set Jaro up 1
   rl_excessBottom 0
   rl_excessTop 0
   rl_reactionTime 1
   rl_secondsDown 32
   rl_secondsUp 32
   rl_switchTime 1
   rl_type    normal
   room      SD_Keeloq
   userattr   ASC_Adv:on,off ASC_Antifreeze:off,soft,hard,am,pm ASC_Antifreeze_Pos:5,10,15,20,25,30,35,40,45,50,55,60,65,70,75,80,85,90,95,100 ASC_AutoAstroModeEvening:REAL,CIVIL,NAUTIC,ASTRONOMIC,HORIZON ASC_AutoAstroModeEveningHorizon:-9,-8,-7,-6,-5,-4,-3,-2,-1,0,1,2,3,4,5,6,7,8,9 ASC_AutoAstroModeMorning:REAL,CIVIL,NAUTIC,ASTRONOMIC,HORIZON ASC_AutoAstroModeMorningHorizon:-9,-8,-7,-6,-5,-4,-3,-2,-1,0,1,2,3,4,5,6,7,8,9 ASC_BlockingTime_afterManual ASC_BlockingTime_beforDayOpen ASC_BlockingTime_beforNightClose ASC_BrightnessSensor ASC_Closed_Pos:0,10,20,30,40,50,60,70,80,90,100 ASC_ComfortOpen_Pos:0,10,20,30,40,50,60,70,80,90,100 ASC_Down:time,astro,brightness,roommate ASC_DriveUpMaxDuration ASC_Drive_Delay ASC_Drive_DelayStart ASC_ExternalTrigger ASC_GuestRoom:on,off ASC_LockOut:soft,hard,off ASC_LockOut_Cmd:inhibit,blocked,protection ASC_Mode_Down:absent,always,off,home ASC_Mode_Up:absent,always,off,home ASC_Open_Pos:0,10,20,30,40,50,60,70,80,90,100 ASC_Partymode:on,off ASC_Pos_Reading ASC_PrivacyDownValue_beforeNightClose ASC_PrivacyDown_Pos ASC_PrivacyUpValue_beforeDayOpen ASC_PrivacyUp_Pos ASC_RainProtection:on,off ASC_Roommate_Device ASC_Roommate_Reading ASC_Self_Defense_AbsentDelay ASC_Self_Defense_Mode:absent,gone,off ASC_Shading_BetweenTheTime ASC_Shading_InOutAzimuth ASC_Shading_MinMax_Elevation ASC_Shading_Min_OutsideTemperature ASC_Shading_Mode:absent,always,off,home ASC_Shading_Pos:10,20,30,40,50,60,70,80,90,100 ASC_Shading_StateChange_SunnyCloudy ASC_Shading_WaitingPeriod ASC_Shutter_IdleDetection ASC_ShuttersPlace:window,terrace,awning ASC_SlatPosCmd_SlatDevice ASC_Sleep_Pos:0,10,20,30,40,50,60,70,80,90,100 ASC_TempSensor ASC_Time_Down_Early ASC_Time_Down_Late ASC_Time_Up_Early ASC_Time_Up_Late ASC_Time_Up_WE_Holiday ASC_Up:time,astro,brightness,roommate ASC_Ventilate_Pos:10,20,30,40,50,60,70,80,90,100 ASC_Ventilate_Window_Open:on,off ASC_WiggleValue ASC_WindParameters ASC_WindProtection:on,off ASC_WindowRec ASC_WindowRec_PosAfterDayClosed:open,lastManual ASC_WindowRec_subType:twostate,threestate
   webCmd     half:open:closed:stop:pct


(Ist jetzt mit den ASC-Werten etwas überladen..) Hatte es bewusst versucht ohne viele Parameter zu betreiben um zu sehen ob die Dicke berücksichtigt wird. 100% wäre in meiner diesbezüglichen Denke komplett zu. Ich werde jetzt mal mit Deinen Hinweisen versuchen die 50% zu treffen.
Ist halt blöd, wenn man bei 5..6 verschiedenen Varianten von Rollos (Länge, Motorlaufgeschwindigkeit) so viel messen muss. Für mich sind die Positionen zwischen 60..80% relativ "wichtig", wegen der Beschattung und Blumenkästen usw.

Also nochmal Danke, wenn ich was vernünftiges rausbekommen habe poste ich das hier noch mal.
Viele Grüße!
Ekkehard.
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: cmonty14 am 17 August 2020, 22:43:02
Hallo,

ich möchte meinen HM-Rollladen-Aktor HM-LC-BL1PBU-FM mit diesem Modul visualisieren und über die WebUI steuern.

Bisher habe ich die Visualisierung selbst erstellt und kann damit den Rollladen steuern.

Meine Frage ist:
Was muss ich nach der Definition des neuen Geräts ROLLO ausführen, damit ich damit meinen Rollladen steuern kann?

THX
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: cmonty14 am 12 September 2020, 11:38:25
Ist dieser Thread tot?
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: KölnSolar am 12 September 2020, 18:29:23
Ich denke nicht.
Aber Frage ist sehr unkonkret. Oder andersherum: Wiki gelesen ? Attribute definiert ?
Grüße Markus
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: cmonty14 am 13 September 2020, 12:01:48
Zitat von: KölnSolar am 12 September 2020, 18:29:23
Ich denke nicht.
Aber Frage ist sehr unkonkret. Oder andersherum: Wiki gelesen ? Attribute definiert ?
Grüße Markus

Aktuell habe ich nur 1 HM-Rollladen-Aktor HM-LC-BL1PBU-FM, den ich korrekt in FHEM angeschlossen habe und somit auch steuern kann.

Nur lege ich ein neues Device KU.rollladen_rollo mit dem Modul ROLLO an:
define KU.rollladen_rollo ROLLO
setuuid KU.rollladen_rollo 5f5de3e5-f33f-a13d-22ba-c239e7e44cd34360
attr KU.rollladen_rollo automatic-enabled off
attr KU.rollladen_rollo cmdIcon open:fts_shutter_up closed:fts_shutter_down stop:fts_shutter_manual half:fts_shutter_50
attr KU.rollladen_rollo devStateIcon open:fts_shutter_10:closed closed:fts_shutter_100:open half:fts_shutter_50:closed drive-up:fts_shutter_up@red:stop drive-down:fts_sh$
attr KU.rollladen_rollo rl_autoStop 1
attr KU.rollladen_rollo rl_secondsDown 17.5
attr KU.rollladen_rollo rl_secondsUp 17.5
attr KU.rollladen_rollo rl_switchTime 1 
attr KU.rollladen_rollo rl_type HomeKit
attr KU.rollladen_rollo room 60-Rollladen
attr KU.rollladen_rollo webCmd open:closed:half:stop:pct


Frage:
Wie teile ich diesem Device mit, dass damit mein Rollladen HM-LC-BL1PBU-FM gesteuert werden soll?
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: Frank_Huber am 13 September 2020, 12:03:41
Welchen Teil der Commandref und des Wiki verstehst du nicht?

Dir fehlen Attribute.
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: KölnSolar am 13 September 2020, 12:41:52
Überleg mal. Zeiten hast Du definiert. Aber wo ist die Verknüpfung zu Deinem Aktor ?  ::)

rl_command....
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: cmonty14 am 13 September 2020, 12:57:39
Zitat von: Frank_Huber am 13 September 2020, 12:03:41
Welchen Teil der Commandref und des Wiki verstehst du nicht?

Dir fehlen Attribute.

Offensichtlich verstehe ich nicht, wie das Modul den Aktor steuert.
Deshalb habe ich jetzt
attr KU.rollladen_rollo rl_commandDown KU.rollladen down
attr KU.rollladen_rollo rl_commandUp KU.rollladen up

definiert.

Das Device KU.rollladen existiert mit dieser Konfiguration:
define KU.rollladen CUL_HM 678E87
setuuid KU.rollladen 5cce0141-f33f-a13d-d77c-6b6add5a7b1bc364
attr KU.rollladen .mId 006A
attr KU.rollladen IODev HMUART
attr KU.rollladen autoReadReg 4_reqStatus
attr KU.rollladen devStateIcon 100%:fts_shutter_10@green 0%:fts_shutter_100@red 1\d.*:fts_shutter_90 2\d.*:fts_shutter_80 3\d.*:fts_shutter_70 4\d.*:fts_shutter_60 5\d.*$
attr KU.rollladen eventMap on:100% off:0%
attr KU.rollladen expert defReg,rawReg
attr KU.rollladen firmware 2.11
attr KU.rollladen group Rollladen
attr KU.rollladen icon fts_shutter_1w
attr KU.rollladen model HM-LC-BL1PBU-FM
attr KU.rollladen peerIDs 00000000,
attr KU.rollladen room 80-HomeMatic,10-Kueche,98-Devices
attr KU.rollladen serialNr OEQ2336909
attr KU.rollladen subType blindActuator
attr KU.rollladen webCmd up:down:stop:0:10:20:30:40:50:60:70:80:90:100


Dies funktioniert aber immer noch nicht.
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: KölnSolar am 13 September 2020, 13:01:48
wie auch.
wiki (https://wiki.fhem.de/wiki/ROLLO#Set)lesen und verstehen.


Edit: OK, das passt nicht wirklich. :-[ Aber was verstehst Du unter "command" ? Muss ja so etwas sein
set KU.rollladen up also z.B.
attr KU.rollladen_rollo rl_commandUp set KU.rollladen up
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: cmonty14 am 13 September 2020, 13:58:31
Nach der Modifikation der Attribute
attr KU.rollladen_rollo rl_commandDown set KU.rollladen down
attr KU.rollladen_rollo rl_commandUp set KU.rollladen up

fährt der Rollladen jetzt ab und auf, allerdings immer nur einen 10% Schritt.

Das heißt, ich kann den Rollladen nicht mit einen Klick schließen (oder öffnen).
Desweiteren kann ich den Rollladen auch nicht in eine Position, z.B. 50% anfahren.

Werden hier noch weitere Attribute benötigt?

Aus meiner Sicht hängt dieses Problem damit zusammen, dass das Reading der aktuellen Rollladen-Position nicht korrekt im Modul erfasst ist.
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: KölnSolar am 13 September 2020, 14:08:27
Jetzt passt mein Link  ;D
Zitatwiki (https://wiki.fhem.de/wiki/ROLLO#Set) lesen und verstehen.
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: cmonty14 am 13 September 2020, 14:17:40
Von den Set-Befehlen funktioniert nur up und down.
Dies aber nur dann, wenn im Modul das Readings - state konsistent ist mit dem realen Reading.

Sobald ich den Set-Befehl open oder closed ausführe, bewegt sich der Rollladen nicht, aber der Readings - state wird geändert und ist dann inkonsistent zum realen Reading.

Frage:
Wie kann ich sicherstellen, dass dieses Modul (ausschließlich) das Reading pct des Aktors verwendet?
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: GunterB am 07 Oktober 2020, 10:27:32
Hallo Zusammen,

ich habe das Problem, dass meine ROLLO Module nicht immer die im rl_command hinterlegten Befehle ausführen.
Das Auftreten ist Zufällig, und ich meine es trat erst auf, nachdem ich das "set extern closed" etc... verwende.

Gestern ist es mir per Handbedienung eines ROLLO aufgefallen.
Beim Klick auf ROLLO closed, wurde das Stateicon Rot und das ROLLO meinte abwärts zu fahren.
Mein MQTT_DEVICE hatte davon aber nichts mitbekommen, und der STATE bleib bei OPEN.
Ein erneuters Klicken auf ROLLO closed, wurde dann der Befehl augenscheinlich an das MQTT_DEVICE gesendet und der Rolladen bewegte sich dann auch.

Das ganze passiert ab und zu, ist aber nicht wirklich reproduzierbar.
Allerdings habe ich bis jetzt auch noch nicht viel ausprobiert, um die Konstellation zu finden.

Off-my-topic
Ich würde auch gerne, aufgrund von Timingproblemen und nicht Empfangenen RF Befehlen, das SHADE Kommando der TDEF Motoren verwenden. Leider ist es nicht möglich, das ROLLO Modul extern auf einen bestimmten PCT Wert zu setzen.
Das wäre echt schön, wenn sowas auch nocht extern gemacht werden könnte.

Code (JL3_Bad) Auswählen
defmod JL3_Bad ROLLO
attr JL3_Bad userattr room_map rx_channels rx_devices structexclude
attr JL3_Bad cmdIcon open:fts_shutter_up closed:fts_shutter_down stop:fts_shutter_manual half:fts_shutter_50
attr JL3_Bad devStateIcon open:fts_shutter_10:closed closed:fts_shutter_100:open half:fts_shutter_50:closed drive-up:fts_shutter_up@red:stop drive-down:fts_shutter_down@red:stop pct-100:fts_shutter_100:open pct-90:fts_shutter_80:closed pct-80:fts_shutter_80:closed pct-70:fts_shutter_70:closed pct-60:fts_shutter_60:closed pct-50:fts_shutter_50:closed pct-40:fts_shutter_40:open pct-30:fts_shutter_30:open pct-20:fts_shutter_20:open pct-10:fts_shutter_10:open pct-0:fts_shutter_10:closed
attr JL3_Bad group Rolladen
attr JL3_Bad rl_autoStop 1
attr JL3_Bad rl_commandDown set JL_3_Bad DOWN
attr JL3_Bad rl_commandStop set JL_3_Bad STOP
attr JL3_Bad rl_commandUp set JL_3_Bad UP
attr JL3_Bad rl_excessBottom 3
attr JL3_Bad rl_excessTop 0
attr JL3_Bad rl_resetTime 0
attr JL3_Bad rl_secondsDown 22
attr JL3_Bad rl_secondsUp 22
attr JL3_Bad rl_switchTime 1
attr JL3_Bad rl_type normal
attr JL3_Bad room Bad
attr JL3_Bad rx_channels 3
attr JL3_Bad rx_devices 0x00bb94
attr JL3_Bad webCmd open:closed:half:stop:pct


Code (JL_3_Bad) Auswählen
defmod JL_3_Bad MQTT_DEVICE
attr JL_3_Bad userattr JL_1_Buero JL_1_Buero_map structexclude
attr JL_3_Bad IODev myBroker
attr JL_3_Bad devStateIcon UP:shutter_open DOWN:shutter_closed SHADE:shutter_halfopen STOP:shutter_halfopen
attr JL_3_Bad publishSet UP DOWN STOP SHADE cmd/jarolift/shutter/2
attr JL_3_Bad room Bad
attr JL_3_Bad stateFormat state
attr JL_3_Bad webCmd UP:DOWN:STOP:SHADE


Code (DOIF Jarolift received command doif) Auswählen
([JL_received:"^rx_disc_low:..*$"]) (
{
    my $LogLvl = 6;
my $Empf_Device = "JL_received";
my $serial = ReadingsVal("$Empf_Device", "serial", ".");
my $function = ReadingsVal("$Empf_Device", "rx_function", ".");
my $disclow = ReadingsVal("$Empf_Device", "rx_disc_low", ".");
my $dischigh = ReadingsVal("$Empf_Device", "rx_disc_high", ".");
my $message = "";

##Kanäle:
my $disclowbin = sprintf ("%08b", $disclow);
Log $LogLvl, "disclow: $disclow";
Log $LogLvl, "disclowbin: $disclowbin";
my $dischighbin = sprintf ("%08b", $dischigh);
Log $LogLvl, "dischigh: $dischigh";
Log $LogLvl, "dischighbin: $dischighbin";
##Devices die angesteuert werden sollen:
my @Rollos = devspec2array("JL.*");
foreach(@Rollos) {
my $rx_devices = AttrVal($_, "rx_devices", undef);
my $RolloDev = $_;
next if (!defined($rx_devices));
next if ($rx_devices eq "");
my @rx_devicesList = split ' ', $rx_devices;
Log $LogLvl, "Device: $_ rx_devices: @rx_devicesList";

my $rx_channels = AttrVal($_, "rx_channels", undef);
next if (!defined($rx_channels));
next if ($rx_channels eq "");
my @rx_channelsList = split ' ', $rx_channels;
Log $LogLvl, "rx_channels: @rx_channelsList";

my $rx_serial = substr $serial, 0, -2 ;
Log $LogLvl, "rx_serial: $rx_serial";
my $i = 0;
foreach(@rx_devicesList){
if ($rx_serial eq $_ ){
my $DeviceChannel = $rx_channelsList[($i)];
Log $LogLvl, "found: $_ with Channel $DeviceChannel";

##Prüfen, ob der Channel gesetzt ist
my $sollfahren = 0;
if ($DeviceChannel < 9){
my $value = substr $disclowbin, ($DeviceChannel * (-1)), 1;
if ($value eq "1"){
Log $LogLvl, "SOLL FAHREN!!!";
$sollfahren = 1;
}
} else {
my $value = substr $dischighbin, (($DeviceChannel-8) * (-1)), 1;
if ($value eq "1"){
Log $LogLvl, "SOLL FAHREN!!!";
$sollfahren = 1;
}
}
if ($sollfahren == 1){
##rx-function:
##4 -> STOP
##8 -> HOCH
##2 -> RUNTER
##a -> Hoch/Runter
if ($function eq "0x4"){
fhem("set $RolloDev extern stop");
$message .= "$RolloDev: extern stop\n";
Log 1, "JL_received from $rx_serial: $RolloDev Funktion: STOP";
} elsif ($function eq "0x8"){
fhem("set $RolloDev extern open");
$message .= "$RolloDev: extern hoch\n";
Log 1, "JL_received from $rx_serial: $RolloDev Funktion: HOCH";
} elsif ($function eq "0x2"){
fhem("set $RolloDev extern closed");
$message .= "$RolloDev: extern runter\n";
Log 1, "JL_received from $rx_serial: $RolloDev Funktion: RUNTER";
} else {
$message .= "$RolloDev: extern stop\n";
Log 1, "JL_received from $rx_serial to ROLLO: Keine Funktion: $function";
}
}
}
$i++;
}
}
if (length($message) > 0) {
fhem("set myTelegramBot _msg $message");
}
}
)
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: eki am 01 Dezember 2020, 21:14:28
Ich würde gern mein Garagentor über ROLLO steuern. Allerdings passt das Verhalten des Antriebs nicht so recht zum ROLLO Modul. Das Verhalten ist folgendermaßen.
Es gibt nur einen Taster. Jedes Tasten verursacht je nach aktuellem Zustand des Tores entsprechende Aktionen.

Das Problem ist eine Umkehr auf halbem Weg. Dazu müsste das Tor ja erst mal ganz hoch gefahren werden und erst dann kann man wieder in die andere Richtung fahren. Man könnte das sicher mit ein paar Zusatzreadings und notify hinbekommen, aber vielleicht hat ja jemand eine weniger komplizierte Idee.
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: pc1246 am 02 Dezember 2020, 07:12:16
Moin
Da hast du dir ja was tolles eingefangen! Gibt es denn Endlagen?
Was moechtest Du damit erreichen? Ich wollte mir mal eine "ist zu!" Abfrage bauen, aber die Teile die mir passend erschienen sind alle nicht passend! (Lagesensor EQ3, ich habe alle 3 unterschiedlichen)
Aber automatisch fahren!? Ich mache auch meine Tuer nicht automatisch auf, obwohl ich es Dank Nuki koennte!
Mir sind da die Szenarios zu suspekt! Irgendjemand aus meinem Haushalt kann ja gewollt das Tor geoeffnet haben, es steht etwas im Weg, usw. usw.
Bei der Tuer das Gleiche, nur weil ich in die Naehe komme will ich ja nicht unbedingt rein! Oder weil ich mich mehr als x Meter entferne heisst das ja nicht, das die Bude verrriegelt werden muss!?
Gruss Christoph
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: eki am 02 Dezember 2020, 07:26:13
Ich will eigentlich nur das Tor aus der Ferne steuern (nicht automatisch sondern nur per Knopfdruck), und sicher sein, dass es entweder auf oder zu ist wenn ich das will ohne dass ich hinrennen muss um das zu prüfen.
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: Frank_Huber am 02 Dezember 2020, 07:58:39
Moin eki,

Hat denn die Torsteuerung selbst noch andere Lagesensoren und/oder andere Steuereingänge?
Irgendwie scheint mir die Lage hilflos mit dieser "Ein-Knopf" Technik.
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: pc1246 am 02 Dezember 2020, 08:44:36
Moin
Na die meisten Tore haben ja nur einen Knopf! Allerdings ist die Reihenfolge etwas anders.
So ohne Endlage, bzw. Neigungsmeldung ist es halt sinnfrei! Aber wir kapern hier gerade den Thread.
Gruss Christoph
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: grappa24 am 02 Dezember 2020, 14:06:53
Zitat von: eki am 02 Dezember 2020, 07:26:13
Ich will eigentlich nur das Tor aus der Ferne steuern (nicht automatisch sondern nur per Knopfdruck), und sicher sein, dass es entweder auf oder zu ist wenn ich das will ohne dass ich hinrennen muss um das zu prüfen.
Ich steuere mein Garagentor auch mit einer solchen "Einknopfbedienung" im toggle Modus; um den Status zu überwachen hab ich noch einen "Fensterkontakt" montiert, der zeigt mir dann, ob es auf oder zu ist.

Im Grunde ist eine solche Garagentor-Fernbedienung aus der Ferne eh keine gute Idee, man weiß nie, wer oder was gerade davor steht - zumindest bei meinem Schwingtor

Für die Steuerung hab ich einen Shelly-1 eingesetzt und den so programmiert, dass er bei Aktivierung für 2 s den Antrieb ansteuert.

Das ROLLO-Modul hab ich auch im Einsatz, aber für das Garagentor eignet es sich m.E. nicht
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: kabanett am 02 Dezember 2020, 17:12:52
@eki
Schau dir mal das an: https://forum.fhem.de/index.php/topic,48847.0.html (https://forum.fhem.de/index.php/topic,48847.0.html)
Der letzte Schliff fehlt leider, aber es funktioniert auch so ganz gut.

Gruß
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: eki am 03 Dezember 2020, 16:24:50
Zitat von: kabanett am 02 Dezember 2020, 17:12:52
@eki
Schau dir mal das an: https://forum.fhem.de/index.php/topic,48847.0.html (https://forum.fhem.de/index.php/topic,48847.0.html)
Der letzte Schliff fehlt leider, aber es funktioniert auch so ganz gut.

Gruß

Danke, allerdings ist das Verhalten bei Dir anders. Bei mir läuft das Tor nach einem Tastendruck nach einem Stop in der Mitte nicht in die entgegengesetzte Richtung, sondern erst mal weiter in die vorherige Richtung. Eine Umkehr findet nur ganz oben oder ganz unten statt.

Zitat von: grappa24 am 02 Dezember 2020, 14:06:53
Ich steuere mein Garagentor auch mit einer solchen "Einknopfbedienung" im toggle Modus; um den Status zu überwachen hab ich noch einen "Fensterkontakt" montiert, der zeigt mir dann, ob es auf oder zu ist.

Im Grunde ist eine solche Garagentor-Fernbedienung aus der Ferne eh keine gute Idee, man weiß nie, wer oder was gerade davor steht - zumindest bei meinem Schwingtor

Für die Steuerung hab ich einen Shelly-1 eingesetzt und den so programmiert, dass er bei Aktivierung für 2 s den Antrieb ansteuert.

Das ROLLO-Modul hab ich auch im Einsatz, aber für das Garagentor eignet es sich m.E. nicht

Noch mal Danke. Mein Hauptanwendungsfall ist nicht das Steuern aus der Ferne, sondern per Handy wenn ich vor dem Tor stehe oder wenn ich die Garage verlasse (mein Tor hat, wie wahrscheinlich die meisten, einen Schutz, der verhindert, dass jemand eingeklemmt wird. Insofern sollte es nicht so kritisch sein, auch wenn ich es aus der Ferne steuere).
Das mit den Enpuntschaltern habe ich auch noch auf der Liste und als Aktor verwende ich auch einen Schelly-1 mit auto-off.

Ich habe das jetzt mal über ROLLO und ein notify mit entsprechendem Perl Code und ein paar zusätzlichen Readings, die den State der beteiligten Devices festhalten realisiert. Ich bin aber noch am Testen.
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: Kamik am 24 September 2021, 10:10:24
Hallo zusammen,

ich nutze das Modul jetzt schon viele Jahre. Mir ist jetzt durch die Einbindung von MQTT Rollos aufgefallen, dass hier bei gleichzeitiger Ansteuerung von bspw. 2 Rollos auf 20% die Fahrzeiten durcheinander kommen. Mich würde die Abarbeitung durch die Timer Funktion interessieren.

Bsp.:
Rollo 1 fährt in 21 Sekunden runter
Rollo 2 fährt in 15 Sekunden runter
steuere ich jetzt Rollo 1 runter und Rollo 2 auf 20% fahren beide komplett runter. Der Timer für das Rollo 2 scheint nicht zu greifen. Kann das an der Abarbeitung in Fhem liegen? Ich würde hierfür gerne einen Workarround für mich finden. Bspw. mit sleep 30 die Rollos nacheinander ansteuern.

Gruß
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: stefan-dd am 24 September 2021, 16:07:16
Das könnte ein Problem von MQTT sein. Hatte auch paar Rollos damit laufen. Hab es wegen deinem Problem wieder abgewählt. Anscheinend werden die Befehle der Reihe nach abgearbeitet.
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: D3ltorohd am 04 Dezember 2021, 21:01:07
Hallo,

gäbe es die Möglichkeit, das man hier noch folgende 2 attr mit integrieren kann, es gibt ja

rl_commandDown,2,3 rl_commandUp,2,3 aber rl_commandStop nur für einen Befehl. Könnte man hier nicht auch noch 2 weitere Stopp attr. mit integrieren, das wäre für meine Lösung sehr von Vorteil. Weiß ja nicht ob der Entwickler hier noch aktiv ist und an dem Modul weiter gearbeitet wird. Warum das Stopp attr. auch nur für einen Befehl da ist, weiß ich nicht, da up und down ja auch insgesamt 3x vorhanden sind. So könnte ich mit ASC mehrere Rollos pro Raum gleichzeitig steuern.
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: Kamik am 01 Januar 2022, 21:34:43
Hallo zusammen,

mir ist neulich folgender Zusammenhang aufgefallen. Ich sperre meine Rollos, wenn jemand zu Haus ist im block-mode only-down. (Kleine Kinder möchten ungern geweckt werden :)) Dabei habe ich aber auch das attribut ForceDrive auf 1 gesetzt.
Nun ist es so, dass ich die Rollos Abends immer runterfahre. Wenn die Rollos nun aber gesperrt sind fahren sie trotz des ForceDrive attributes nicht herunter. Erst wenn ich wieder auf auto setze, fahren sie den zuvor abgesetzten Befehl an.

Kann man das schnell fixen, ist das bekannt und ich habe hier einen anderen Denkfehler oder muss ich mir für das ganze ein Workarround programmieren?

Danke und beste Grüße
Patrick
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: Volker80 am 19 März 2022, 17:22:57
Hallo, gibt es die Möglichkeit mit halben Sekunden zu arbeiten? Mein Rollo fährt in den Begrenzer und bei einer Sekunde weniger steht es 20 cm raus. Über Tasmota geht es meiner Meinung nach auch nciht. Hat jemand dafür eine Möglichkeit.

Vieln Dank
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: Reinhard.M am 21 März 2022, 06:15:25
Schon mal schlicht mit X.5 oder X,5 versucht? Meistens wird nicht auf Integer sondern auf Zahl geprüft.

Gruß Reinhard
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: Volker80 am 24 März 2022, 21:53:03
Ja das war meine erste Idee, allerdings läuft es dann trotzdem nur "X".
Vielen Dank, hast du eventuell eine andere Idee?
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: Reinhard.M am 31 März 2022, 08:20:30
Leider keine weitere Idee. Wundert mich, bei mir hat es so funktioniert...

Gruß Reinhard
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: Wasserwerk33 am 20 Mai 2022, 11:29:15
Hallo Leute,

ICh bin über dieses Modul gestolpert, als ich meine Rollosteuerung für den Sommer überarbeiten wollte. Ich habe eine Siemens Logo im Keller sitzen für die Jalousien.

Könnte mir jemand vielleicht einen Tip geben wie ich die Jalousien über dieses Modul ansteuern kann?? Die Logo kennt ja eigentlich nur an oder aus. Oder wie ich das DOIF passend schreiben muss damit die Jalousie dann auch passend läuft hoch und runter?? Es geht mir eigentlich nur darum wie bekomme ich das Modul mit meiner Logo Steuerung verknüpft.

Danke für eure Hilfe.

Runter Der Logo Garten, das selbe gibt es auch für hoch.
Internals:
   ADDRESS    2.1
   AREA       db
   DB         0
   DEF        db 0 2.1
   FUUID      60788de1-f33f-87a8-ea19-1fc53c2fb5ff3ae5
   IODev      Logo
   LASTInputDev Logo
   LENGTH     1
   Logo_MSGCNT 48167
   Logo_TIME  2022-05-20 11:28:20
   MSGCNT     48167
   NAME       Garten_ganz_runter
   NR         24
   POSITION   17
   STATE      off
   TYPE       S7_DWrite
   READINGS:
     2022-05-19 21:42:57   IODev           Logo
     2022-05-20 11:19:06   state           off
Attributes:
   IODev      Logo
   event-min-interval .*:600
   event-on-change-reading state
   group      Abends
   room       Logo
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: eisman am 15 August 2022, 18:28:42
Hi,

danke für das Module,
wäre es möglich

my %pcts = (
    "open"   => 0,
    "closed" => 100,
    "half"   => 50
);

"half"   => 50 nicht auf 50 festzulegen sondern per Reading?

weil, bei den Rollos hier wäre half => 70.....

danke
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: KölnSolar am 15 August 2022, 20:22:10
Versteh ich nicht. Du gibst doch die Zeiten vor. Ggfs. über ..reset.., ..switch.., ...excess... ...reaction... Attribute feinjustierbar
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: eisman am 19 August 2022, 12:33:00
Hi,

"half"   => 50
half bei dem Rollo siehe Bild: hier steht das Rollo auf der Hälfte.

also benutze ich den befehl set halb steht das rollo falsch,
sonst ist alles okay mit dem Module

mfg

PS:

open:fts_shutter_10@blue:closed
closed:fts_shutter_100@green:open
half:fts_shutter_50@yellow:closed
drive-up:fts_shutter_
up:stop
drive-down:fts_shutter_down:stop

gebe ich hier 70 an >>open:fts_shutter_10@blue:70 <<(half)
und beim klick aufs ICON kommt eine Fehlermeldung..

spielt das Rollo nicht mit
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: sigme am 09 September 2022, 18:13:30
Hallo zusammen,

ich hoffe ich bin hier richtig, bin also kompletter Forum Anfänger.
Ich habe das fantastische Modul Rollo in FHEM auf einem Raspberry PI 4 zusammen mit der Homebridge am laufen. Ich Steuer damit Rollos mit dem Intertechno Rolloschalter. Ich kann aus HomeKit jede Position des Rollos ansteuern.
Es gibt nur noch ein Problem:
Wenn ich in HomeKit z.B. auf meinem iPhone den Rolladen schließen möchte, sendet HomeKit nicht pct 0 sondern den Befehl off, beim Öffnen entsprechend on.

Kann ich der Homebridge irgendwie mitteilen, damit dieser Fehler nicht mehr auftaucht?

2022.09.09 17:27:36 2: ERROR: Unknown command on, choose one of  blocked:noArg extern:open,closed,stop unblocked:noArg half:noArg up:noArg pct:0,10,20,30,40,50,60,70,80,90,100 open:noArg reset:open,closed closed:noArg down:noArg stop:noArg drive:textField

Habe schon mehrere homebridgemappings getestet, aber keines hat geholfen.

Danke schon mal vorab für die Hilfe.
Titel: Antw:44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: derfehler am 20 Dezember 2022, 13:40:22
Hallo,

ich arbeite mit dem Rollladen Modul schon länger, finde es auch klasse. Ich habe Rollladen Motoren mit funk diesen habe ich mit einem SIGNALESP ausgelesen. ( Firma Geiger) Tedsen Teletaster (Protokoll 46).  Ich habe ein Problem mit dem zusammen Spiel mit den Funksendern. Die Fernbedienungen senden den Code direkt zum Rollladen. Funktion Fernbedienung Taste down Motor fährt los mit der up Taste kann man den Motor anhalten.  Der Motor Stoppt alleine in den Endlagen. Jetzt soll das Rollo 44 Modul mitbekommen das der Motor gefahren oder per Hand gestoppt wurde.

ich habe die Verschiedensten DOIF ausprobiert leider ohne Erfolg.

([Tedsen_SKX6xx_1000000] eq "Button_1"and [?Rolladen_Buero:state] ne "drive-down")(set Rolladen_Buero  closed)
DOELSEIF ([Tedsen_SKX6xx_1000000] eq "Button_1"and [?Rolladen_Buero:state] eq "drive-down") (set Rolladen_Buero  stop)

([Tedsen_SKX6xx_1000000] eq "Button_3"and [?Rolladen_Buero_tuer:state] ne "drive-down")(set Rolladen_Buero_tuer closed)
DOELSEIF ([Tedsen_SKX6xx_1000000] eq "Button_3"and [?Rolladen_Buero_tuer:state] eq "drive-down") (set Rolladen_Buero_tuer stop


([Tedsen_SKX6xx_111F010] eq "Button_4"and [?Rolladen_Buero:pct] gt "0")(set Rolladen_Buero extern open)
DOELSEIF ([Tedsen_SKX6xx_111F010] eq "Button_3"and [?Rolladen_Buero:state] eq "drive-up") (set Rolladen_Buero extern  stop)


Könnt ihr mir bei diesem Problem Helfen?

vielen Dank
Titel: Aw: 44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: Kamik am 20 Juni 2023, 21:01:06
Hallo zusammen,

ich bin gerade über ein Problem gestolpert, welches ich für mich in der 44_ROLLO.pm direkt beheben konnte.

Ich wunderte mich, dass meine Rollos manchmal komische Dinge taten, obwohl ich diese nicht so vorgegeben habe. Beispielsweise fuhren Sie hoch obwohl es nicht gesetzt wurde. (Die Sonne hat heute mein Dachgeschoss aufgeheizt...)

Ich arbeite bei An- und Abwesenheit mit den blocked befehlen. Wenn jemand da ist sperre ich die Rollos (only-down).
Grund waren damals die Kinder, die beim Mittagsschlaf nicht geweckt werden sollten.

Heute ist mir dann mal nach eifrigen Testen aufgefallen, dass bei einem Blockbefehl ein Stop der Rollos ausgeführt wird.
Nun habe ich an meinen Rollos die beiden command Befehle up und stopup genau gleich, weil es dieselben Knöpfe sind.
Bei down und stopdown auch einen Knopf.

Es ist dabei dazu gekommen, dass bei Anwesenheit das Rollo gesperrt wurde und dabei aufgefahren wurde, weil der Stopbefehl ausgeführt wird.

Folgende Zeilen habe ich in der 44_ROLLO.pm auskommentiert, weil sie bei mir gestört haben: Kommentarzeile #delete Kamik

    ##### Block commands
    if ( $cmd eq "blocked" ) {
        #ROLLO_Stop($hash);     #delete Kamik
        readingsSingleUpdate( $hash, "blocked", "1", 1 );
        return if ( AttrVal( $name, "rl_blockMode", "none" ) eq "blocked" );
    }
    elsif ( $cmd eq "unblocked" ) {

        # Wenn blocked=1 wird in Rollo_Stop der state auf "blocked" gesetzt
        # daher erst blocked auf 0 (Stop ist m.E. an dieser Stelle eigentlich n$
        #ROLLO_Stop($hash);                                                    $
        readingsSingleUpdate( $hash, "blocked", "0", 1 );
        #ROLLO_Stop($hash);    #add KernSani #delete Kamik
        ROLLO_Start($hash);

Grüße Kamik
Titel: Aw: 44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: ChristianK. am 08 April 2024, 18:37:57
Hallo zusammen,

entweder bin ich echt zu doof - oder denke viel zu kompliziert... (die direkte Anwort hierauf könnt ihr euch sparen)  ;D
Kann mir jemand einmal genau erklären, welche Fahrzeiten wie gemessen, und wo eingetragen werden, damit ich z.B. auch
nur annähernd genau die gleiche Rolladenöffnung treffe, wenn ich jeweils von oben oder unten auf 50% fahre?
Im optimalen Falle natürlich mittig  ;D

Grüße

Christian
Titel: Aw: 44_ROLLO: Modul zur präzisen Steuerung von Rollläden
Beitrag von: eisman am 08 April 2024, 19:49:22
Hi,

defmod RO_0402 ROLLO
attr RO_0402 alexaName Rollo Küche
attr RO_0402 alexaRoom Küche
attr RO_0402 alias Küche
attr RO_0402 cmdIcon open:fts_shutter_up closed:fts_shutter_down stop:fts_shutter_manual half:fts_shutter_50
attr RO_0402 devStateIcon open:fts_shutter_10@#0000FF:closed \
closed:fts_shutter_100@#00FF00:open \
half:fts_shutter_50@#FFFF00:closed \
drive-up:fts_shutter_up:stop\
drive-down:fts_shutter_down:stop \
pct-100:fts_shutter_100@#00FF00:open \
pct-90:fts_shutter_80@#00FF00:closed \
pct-80:fts_shutter_80@#00FF00:closed \
pct-70:fts_shutter_70@#00FF00:closed \
pct-60:fts_shutter_60@#00FF00:closed \
pct-50:fts_shutter_50@#00FF00:closed \
pct-40:fts_shutter_40@#00FF00:open \
pct-30:fts_shutter_30@#0000FF:open \
pct-20:fts_shutter_20@#0000FF:open \
pct-10:fts_shutter_10@#0000FF:open \
pct-0:fts_shutter_10@#0000FF:closed
attr RO_0402 genericDeviceType blind
attr RO_0402 group Rollo
attr RO_0402 icon fts_shutter_50@FAB6B6
attr RO_0402 rl_autoStop 0
attr RO_0402 rl_commandDown set ESP34 pcfpulse 1 0 500
attr RO_0402 rl_commandStopDown set ESP34 pcfpulse 1 0 500
attr RO_0402 rl_commandStopUp set ESP34 pcfpulse 2 0 500
attr RO_0402 rl_commandUp set ESP34 pcfpulse 2 0 500
attr RO_0402 rl_excessBottom 0
attr RO_0402 rl_excessTop 0
       attr RO_0402 rl_secondsDown 17
       attr RO_0402 rl_secondsUp 19
attr RO_0402 rl_switchTime 1
attr RO_0402 rl_type HomeKit
attr RO_0402 room Küche,rollladen
attr RO_0402 sortby RO_0402
attr RO_0402 stateFormat state
attr RO_0402 verbose 0
attr RO_0402 webCmd open:closed:half:stop:pct
gemessen wird die volle Fahrzeit
   von ganz auf bis ganz zu  == rl_secondsDown ....
   von ganz zu bis ganz auf  == rl_secondsUp ....
   so wie die zeit zum umschalten fahrt runter zu fahrt hoch == rl_switchTime

ps: mittig ist ca. 70% ,,,,

gruss