Hallo zusammen,
Ich bin von dem ASC Modul und seiner Vielzahl an Funktionalitäten sehr begeistert. Es ist alles dabei, was man für eine gute Rolladensteuerung benötigt.
Habe das Modul in meiner FHEM Steuerung entsprechend im Zusammenhang mit einem Rolltron 1400 konfiguriert und im Einsatz.
Allerdings habe ich noch keine Möglichkeit gefunden (außer ggf. über den Umweg unter Nutzung des 44_Rollo Moduls) die Rolläden mit einer niedrigen Geschwindigkeit fahren zu lassen (niedrige Geschwindigkeit muss im Gurtwickler selbst eingestellt sein --> wird jedoch nur im "Automatikmodus" genutzt).
Laut FHEM-Forum https://forum.fhem.de/index.php/topic,67800.msg660549.html#msg660549 (https://forum.fhem.de/index.php/topic,67800.msg660549.html#msg660549) kann eine Fahrt im Automatikmodus nur unter Verwendung des Befehls mit dem Endwort "timer" erzielt werden.
Beispiel: "set <aktor> position 50 timer"
Gibt es eine Möglichkeit den Rolladen-Positions-Ansteuerbefehl entsprechend direkt im ASC-Modul zu verändern / zu erweitern? Wenn ja, wo bzw. wie kann ich das ggf. machen?
(entweder per Parameter oder direkt im Source Code)
Vielen Dank.
AutomatisierEtwas
Hardware: DuofernStick + Rollotron 1400 (1423 45 11 UW)
Software: Raspi + FHEM
Evtl. mit einer eventMap am Aktor arbeiten und damit das"timer" ergänzen?
Im Sourcecode wäre es natürlich prinzipiell möglich, würde aber jedesmal überschrieben werden. Du kannst es aber gerne zum testen einmal ergänzen.
Die Nebenwirkungen von Beta-Users Vorschlag kann ich aktuell nicht abschätzen.
Grüße
Vielleicht noch ein paar Anmerkungen:
- das mit der eventMap sollte (so es denn funktioniert) auf den "usr"-Zweig beschränkt werden;
- an sich wäre die Frage, ob man nicht den Modulautor bittet, ein Attribut für diesen Typ Aktor bereitzustellen, das das dann automatisch und generell ergänzt?
- Falls eine der beiden Lösungen funktioniert: Es gibt auch einen Thread mit "spezieller Hardware" iVm. ASC. Da wäre die Lösung ggf. auch gut aufgeboben bzw. ein Link hierher...
Hallo Beta-User und CoolTux,
danke für eure Antworten.
Inzwischen hatte ich etwas Zeit den Source Code zu begutachen. Meine Lösung ist zwar nicht "updatefähig", kann aber bis zur einer offiziellen Lösung ggf. dem einen oder anderen weiterhelfen.
In der Datei /opt/fhem/FHEM/73_AutoShuttersControl.pm folgende Ergänzung .' timer' hinzufügen.
Für Version: 0.8.5 (und andere) des ASC-Moduls. Ergänzung in Subroutine sub _SetCmdFn
CommandSet( undef,
$shuttersDev
. ':FILTER='
. $shutters->getPosCmd . '!='
. $posValue . ' '
. $shutters->getPosSetCmd . ' '
. $posValue . ' timer');
Aufgrund einer kleinen Source Code Änderung in Version 0.9.10 hier auch die notwendige Anpassung für diese Version in Subroutine sub _SetCmdFn
CommandSet( undef,
$shuttersDev
. ':FILTER='
. $shutters->getPosCmd . '!='
. $posValue . ' '
. $driveCommand . ' timer');
FEATURE-Vorschlag für die ASC-Weiterentwicklung: attr ASC_Pos_AppendCmd = 'timer'
Wo genau kann ich den Thread mit "spezieller Hardware" im Forum finden?
Der "Hardware"-Thread ist dieser hier: https://forum.fhem.de/index.php/topic,101182.0.html
@CoolTux: Das wäre wieder ein Beispiel, in dem ggf. ein "ASC_CustomCommand" helfen würden.
(Würde das allg. Aufbohren des Fahrbefehls besser finden als ein weiteres Attribut).
Zitat von: Beta-User am 20 April 2020, 12:00:26
Der "Hardware"-Thread ist dieser hier: https://forum.fhem.de/index.php/topic,101182.0.html
@CoolTux: Das wäre wieder ein Beispiel, in dem ggf. ein "ASC_CustomCommand" helfen würden.
(Würde das allg. Aufbohren des Fahrbefehls besser finden als ein weiteres Attribut).
Ja da stimme ich Dir zu. Allerdings wird es dann schwierig denke ich mit :FILTER zu arbeiten. Müsste man mal schauen.
Habe da noch so einen Kandidaten welcher kein "command position" haben will sondern nur einen command weil das Rollo bei Command Position nicht sauber in die Stellung fährt. Aber muß sich wirklich ASC um die Unzulänglichkeiten der jeweiligen Hardwaremodule kümmern :-[
Ich finde auch man sollte die ganzen Rollo Hardwaremodule standardisieren.
Na ja, wünschen kann man sich das mit der Standardisierung - so es denn die Hardware erlaubt... Und genau daran wird es letztlich immer bei irgendwas neuem häufig scheitern...
Das mit "FILTER" müßte man dann auch komplett in Userhand übergeben, aber m.E. ist das das kleinere Übel. Letztlich ist das eben eine Art "Notausgang" für die Fälle, die wir anders nicht in den Griff kliegen; nicht schön, aber auch kein so großes Drama (mal abgesehen davon, dass du die ganze Logik dann umbauen mußt; auch keine Kleinigkeit, schon klar).
@AutomatisierEtwas
Hier in dem konkreten Fall hätte mich noch interessiert, ob es mit eventMap nicht doch auch gehen würde? Dann wäre das Problem in der Tat (jedenfalls halbwegs) da gelöst wo es entsteht: bei der Hardware... Einen Seiteneffekt würde ich nur annehmen, wenn der "Zwangs-"Zusatz nicht immer gebraucht würde, aber genau das scheint ja hier der Fall zu sein? Oder gibt es Situationen, wo aus FHEM heraus ein set OHNE das " timer" erfolgen können soll? Doch gerade nicht, oder?
Zitat von: Beta-User am 15 April 2020, 09:52:52
- das mit der eventMap sollte (so es denn funktioniert) auf den "usr"-Zweig beschränkt werden;
Vielen Dank Beta-User für deinen wertvollen Hinweis mit dem eventMap Attribut. Es hat funktioniert:
set <RolladenDeviceName> timeAutomatic on
attr <RolladenDeviceName> eventMap {usr=>{'^position(.*)'=>'position $1 timer'}}
Hierbei muss der Platzhalter
<RolladenDevice> durch den Namen des jeweiligen Rolladendevice Namen ersetzen werden.
Das eventMap Attribut ist besser als die Änderung im Source Code, da
- bleibt bei einem Update des Source Codes erhalten
- funktioniert auch, wenn die Rolladenfahrt manuel ausgelöst wird über
set <RolladenDeviceName> position XXX- funktioniert auch, wenn die Rolladenfahrt durch einen ASC_ExternalTrigger ausgelöst wird.
Danke erst mal für die positive Rückmeldung!
(Immer wieder gut, wenn eine Bestätigung kommt, dass das "Bauchgefühl" zu manchen Sachen einigermaßen valide ist ;) .)
Setzt du den Thread dann bitte noch auf [gelöst] und stellst die Lösung insgesamt auch noch in den
Zitat von: Beta-User am 20 April 2020, 12:00:26
"Hardware"-Thread [...] https://forum.fhem.de/index.php/topic,101182.0.html (https://forum.fhem.de/index.php/topic,101182.0.html)
Könnte ja sein, dass das auch was ist, was für ganz andere Device-TYPEs eine Option bietet, und in dem "Sammelthread" findet man das dann eher...