diff --git a/fhem/FHEM/98_archetype.pm b/fhem/FHEM/98_archetype.pm index 810b746c4..40019fc31 100755 --- a/fhem/FHEM/98_archetype.pm +++ b/fhem/FHEM/98_archetype.pm @@ -515,6 +515,10 @@ sub archetype_attrCheck($$$$;$) { return if(AttrVal($name, "attributesExclude", "") =~ /$attribute/); + if(AttrVal($SELF, "actual_$attribute", undef)){ + $desired = eval($desired) if($desired =~ m/^\{.*\}$/); + $desired = archetype_evalSpecials($name, $desired) if($desired =~ m/%/); + } if($desired =~ m/^least(\((.*)\))?:(.+)/){ my $seperator = $2 ? $2 : " "; @@ -527,11 +531,6 @@ sub archetype_attrCheck($$$$;$) { $desired = (split(":", $desired, 2))[1]; } - if($hash->{DEF} eq "derive attributes"){ - $desired = eval($desired) if($desired =~ m/^\{.*\}$/); - $desired = archetype_evalSpecials($name, $desired) if($desired =~ m/%/); - } - return unless($desired); if($actual ne $desired){