Moin.
Ich habe gerade ein Problem mit der Performance von Rules. Vorab: Openhab läuft bei mir auf einem Raspberyy Pi 2 und diese Tweaks habe ich bereits durchgeführt: https://github.com/openhab/openhab/wiki/Hardware-FAQ
Ich möchte LEDs mittels DMX relativ schnell Dimmen, sodass ich unter anderem einen schönen On/Off-Fade hinbekomme. Dazu habe ich mir eine Rule erstellt, mit der ich das testen möchte. Leider finde ich die Zeit, die Openhab für bestimmte Dinge benötigt, sehr hoch.
Beispiel:
Zwischen den einzelnen Durchgängen liegen 5-6 Millisekunden.
Zwischen den einzelnen Durchgängen liegen 7-8 Millisekunden.
Zwischen den einzelnen Durchgängen liegen 11-12 Millisekunden.
Jede Aktion verlängert den Durchlauf relativ stark. Mit Timern sieht es übrigens sehr änlich aus. Eigentlich würde ich gerne eine relativ komplexe Logik in meine Rule schreiben. Ich vermute aber, dass ich dann am Ende bei 50-100 ms pro Durchgang liege. Wenn ich einen schönen Dimmer haben möchte, darf die Zeit aber bei maximal 5-10 ms liegen. Hat jemand vielleicht eine Idee, was ich hier machen könnte? Ich bin momentan ziemlich ratlos.
Gruß,
Pasqual
Ich habe gerade ein Problem mit der Performance von Rules. Vorab: Openhab läuft bei mir auf einem Raspberyy Pi 2 und diese Tweaks habe ich bereits durchgeführt: https://github.com/openhab/openhab/wiki/Hardware-FAQ
Ich möchte LEDs mittels DMX relativ schnell Dimmen, sodass ich unter anderem einen schönen On/Off-Fade hinbekomme. Dazu habe ich mir eine Rule erstellt, mit der ich das testen möchte. Leider finde ich die Zeit, die Openhab für bestimmte Dinge benötigt, sehr hoch.
Beispiel:
Code:
while(actualState < 100) { actualState = actualState + 1 logInfo("bla", now.toString()) }
Code:
while(actualState < 100) { actualState = actualState + 1 Thread::sleep(1) logInfo("bla", now.toString()) }
Code:
while(actualState < 100) { actualState = actualState + 1 sendCommand(Licht_W, actualState) Thread::sleep(1) logInfo("bla", now.toString()) }
Jede Aktion verlängert den Durchlauf relativ stark. Mit Timern sieht es übrigens sehr änlich aus. Eigentlich würde ich gerne eine relativ komplexe Logik in meine Rule schreiben. Ich vermute aber, dass ich dann am Ende bei 50-100 ms pro Durchgang liege. Wenn ich einen schönen Dimmer haben möchte, darf die Zeit aber bei maximal 5-10 ms liegen. Hat jemand vielleicht eine Idee, was ich hier machen könnte? Ich bin momentan ziemlich ratlos.
Gruß,
Pasqual
Kommentar