id Geraete-in-Aufzaehlung varName varObjectIDMaster varObjectIDCurrentPosition varObjectIDTargetPosition varValueCurrentPosition varObjectIDConsumptionCurrent timeout_manuell varUrsprung Steuerung über HomeKit oder manuell am Schalter ... ... anhand des Stromverbrauchs any default (functions='rolllaeden') varObjectIDMaster FIRST FROM_END id 17 varObjectIDTargetPosition varObjectIDMaster .PositionTarget AND EQ state.from system.adapter.zwave2.0 NEQ val varObjectIDTargetPosition state.val ACHTUNG: Zeitgleiche Steuerung mehrerer Rollläden möglich ^ stop timeout daher nicht verwenden timeout_manuell Warte auf Werteübermittlung (Position schneller als Verbrauch) timeout_manuell 5000 ms ^ Variablen daher erst / nochmal in der Schleife, bei zeitgleicher Steuerung werden diese überschrieben varName FROM_START LAST common.name 17 varUrsprung state.from varObjectIDMaster FIRST FROM_END id 17 varObjectIDCurrentPosition id varObjectIDTargetPosition varObjectIDMaster .PositionTarget varObjectIDConsumptionCurrent varObjectIDMaster .ConsumptionCurrent Wenn Verbrauch 0 und sich die übermittelte... ... Position nicht nochmal geändert hat! AND EQ val varObjectIDConsumptionCurrent 0 EQ val varObjectIDCurrentPosition state.val In 5 Sekunden kann viel passieren, daher nochmal. Beim Starten von Z-Wave 2 kann es dennoch zu Doppelmeldung kommen. NEQ val varObjectIDTargetPosition state.val false FALSE Object ID varObjectIDTargetPosition TRUE state.val 0 0 .1 log FALSE default text 🏗 Die aktuelle Position vom ' varName ' wurden auf ' state.val %' geändert. Die Ziel Position wurden deshalb für HomeKit angepasst! DEBUG .1 log FALSE default text varObjectIDMaster > NEQ val varObjectIDTargetPosition state.val ( val varObjectIDTargetPosition ) DEBUG .1 log FALSE default text varObjectIDMaster > EQ val varObjectIDConsumptionCurrent 0 ( val varObjectIDConsumptionCurrent ), EQ val varObjectIDCurrentPosition state.val ( val varObjectIDCurrentPosition ) DEBUG .1 log FALSE default text varObjectIDMaster > EQ state.from system.adapter.zwave2.0 ( state.from ), NEQ val varObjectIDTargetPosition state.val ( val varObjectIDTargetPosition ) getName aWYoZXhpc3RzT2JqZWN0KGlkKSkgcmV0dXJuIGdldE9iamVjdChpZCkuY29tbW9uLm5hbWU7 Beschreibe diese Funktion … DEBUG - Variablen zusammenschneiden Geraete-in-Aufzaehlung (functions='rolllaeden') varName FROM_START LAST Geraete-in-Aufzaehlung 17 varObjectIDCurrentPosition Geraete-in-Aufzaehlung varObjectIDMaster FIRST FROM_END varObjectIDCurrentPosition 17 varObjectIDTargetPosition varObjectIDMaster .PositionTarget varValueCurrentPosition val Geraete-in-Aufzaehlung varObjectIDConsumptionCurrent varObjectIDMaster .ConsumptionCurrent log test varName log test varObjectIDMaster log test varObjectIDCurrentPosition log test varObjectIDTargetPosition log test varObjectIDConsumptionCurrent