diff --git a/fhem/FHEM/10_CUL_HM.pm b/fhem/FHEM/10_CUL_HM.pm index f08e32992..2656145a4 100755 --- a/fhem/FHEM/10_CUL_HM.pm +++ b/fhem/FHEM/10_CUL_HM.pm @@ -2348,7 +2348,9 @@ CUL_HM_infoUpdtDevData($$$){ $mId = CUL_HM_getMId($hash);# set helper valiable and use result # autocreate undefined channels + Log 1,"General start timer"; my @chanTypesList = split(',',$culHmModel{$mId}{chn}); + my $startime = gettimeofday()+1; foreach my $chantype (@chanTypesList){ my ($chnTpName,$chnStart,$chnEnd) = split(':',$chantype); my $chnNoTyp = 1; @@ -2357,7 +2359,10 @@ CUL_HM_infoUpdtDevData($$$){ if (!$modules{CUL_HM}{defptr}{$chnId}){ my $chnName = $name."_".$chnTpName.(($chnStart == $chnEnd)? '':'_'.sprintf("%02d",$chnNoTyp)); - DoTrigger("global", 'UNDEFINED '.$chnName.' CUL_HM '.$chnId); + InternalTimer($startime++,"CUL_HM_infoUpdtChanData", + "$chnName,$chnId,$model",0); + Log 1,"General timer:$chnName,$chnId,$model"; + #DoTrigger("global", 'UNDEFINED '.$chnName.' CUL_HM '.$chnId); } $attr{CUL_HM_id2Name($chnId)}{model} = $model; $chnNoTyp++; @@ -2368,6 +2373,15 @@ CUL_HM_infoUpdtDevData($$$){ } } +sub +CUL_HM_infoUpdtChanData(@) +{# delay this to ensure the device is already available + my($in ) = @_; + my($chnName,$chnId,$model ) = split(',',$in); + Log 1,"General updateChannel:".$chnName; + DoTrigger("global", 'UNDEFINED '.$chnName.' CUL_HM '.$chnId); + $attr{CUL_HM_id2Name($chnId)}{model} = $model; +} ################################### sub CUL_HM_Pair(@)