BS and USF1000 modules updated to readingsFN mechanism
git-svn-id: https://fhem.svn.sourceforge.net/svnroot/fhem/trunk/fhem@2540 2b470e98-0d58-463d-a4d8-8e2adae1ed80
This commit is contained in:
@@ -22,7 +22,7 @@ BS_Initialize($)
|
|||||||
$hash->{UndefFn} = "BS_Undef";
|
$hash->{UndefFn} = "BS_Undef";
|
||||||
$hash->{ParseFn} = "BS_Parse";
|
$hash->{ParseFn} = "BS_Parse";
|
||||||
$hash->{AttrList} = "do_not_notify:1,0 showtime:0,1 ".
|
$hash->{AttrList} = "do_not_notify:1,0 showtime:0,1 ".
|
||||||
"ignore:1,0 model:BS loglevel:0,1,2,3,4,5,6";
|
"ignore:1,0 model:BS loglevel:0,1,2,3,4,5,6 " . $readingFnAttributes;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -110,18 +110,13 @@ BS_Parse($$)
|
|||||||
my $state= sprintf("brightness: %.2f lux: %.0f flags: %d",
|
my $state= sprintf("brightness: %.2f lux: %.0f flags: %d",
|
||||||
$brightness, $lux, $flags);
|
$brightness, $lux, $flags);
|
||||||
|
|
||||||
$def->{CHANGED}[0] = $state;
|
readingsBeginUpdate($def);
|
||||||
$def->{STATE} = $state;
|
readingsBulkUpdate($def, "state", $state);
|
||||||
$def->{READINGS}{state}{TIME} = $t;
|
#Log GetLogLevel($name, 4), "BS $name: $state";
|
||||||
$def->{READINGS}{state}{VAL} = $state;
|
readingsBulkUpdate($def, "brightness", $brightness);
|
||||||
Log GetLogLevel($name, 4), "BS $name: $state";
|
readingsBulkUpdate($def, "lux", $lux);
|
||||||
|
readingsBulkUpdate($def, "flags", $flags);
|
||||||
$def->{READINGS}{brightness}{TIME} = $t;
|
readingsEndUpdate($def, 0);
|
||||||
$def->{READINGS}{brightness}{VAL} = $brightness;
|
|
||||||
$def->{READINGS}{lux}{TIME} = $t;
|
|
||||||
$def->{READINGS}{lux}{VAL} = $lux;
|
|
||||||
$def->{READINGS}{flags}{TIME} = $t;
|
|
||||||
$def->{READINGS}{flags}{VAL} = $flags;
|
|
||||||
|
|
||||||
return $name;
|
return $name;
|
||||||
|
|
||||||
@@ -194,6 +189,7 @@ BS_Parse($$)
|
|||||||
<li><a href="#loglevel">loglevel</a></li>
|
<li><a href="#loglevel">loglevel</a></li>
|
||||||
<li><a href="#model">model</a> (bs)</li>
|
<li><a href="#model">model</a> (bs)</li>
|
||||||
<li><a href="#ignore">ignore</a></li>
|
<li><a href="#ignore">ignore</a></li>
|
||||||
|
<li><a href="#readingFnAttributes">readingFnAttributes</a></li>
|
||||||
</ul>
|
</ul>
|
||||||
<br>
|
<br>
|
||||||
|
|
||||||
|
|||||||
@@ -26,7 +26,7 @@ USF1000_Initialize($)
|
|||||||
$hash->{UndefFn} = "USF1000_Undef";
|
$hash->{UndefFn} = "USF1000_Undef";
|
||||||
$hash->{ParseFn} = "USF1000_Parse";
|
$hash->{ParseFn} = "USF1000_Parse";
|
||||||
$hash->{AttrList} = "IODev do_not_notify:1,0 ignore:0,1 showtime:0,1 " .
|
$hash->{AttrList} = "IODev do_not_notify:1,0 ignore:0,1 showtime:0,1 " .
|
||||||
"model:usf1000s loglevel:0,1,2,3,4,5,6";
|
"model:usf1000s loglevel:0,1,2,3,4,5,6 " . $readingFnAttributes;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -116,6 +116,7 @@ USF1000_Parse($$)
|
|||||||
my $distance= hex($xx)/100.0; # in meters
|
my $distance= hex($xx)/100.0; # in meters
|
||||||
my $valid= (($distance>0.00) && ($distance<2.55));
|
my $valid= (($distance>0.00) && ($distance<2.55));
|
||||||
|
|
||||||
|
readingsBeginUpdate($def);
|
||||||
|
|
||||||
if($valid) {
|
if($valid) {
|
||||||
my $wlevel = $def->{HEIGHT}-($distance-$def->{OFFSET}); # water level
|
my $wlevel = $def->{HEIGHT}-($distance-$def->{OFFSET}); # water level
|
||||||
@@ -144,18 +145,14 @@ USF1000_Parse($$)
|
|||||||
|
|
||||||
my $state= sprintf("v: %d V: %d", $flevel, $volume);
|
my $state= sprintf("v: %d V: %d", $flevel, $volume);
|
||||||
|
|
||||||
$def->{CHANGED}[0] = $state;
|
readingsBulkUpdate($def, "state", $state);
|
||||||
$def->{STATE} = $state;
|
readingsBulkUpdate($def, "distance", $distance);
|
||||||
$def->{READINGS}{state}{TIME} = $t;
|
readingsBulkUpdate($def, "level", $flevel);
|
||||||
$def->{READINGS}{state}{VAL} = $state;
|
readingsBulkUpdate($def, "volume", $volume);
|
||||||
Log GetLogLevel($name, 4), "USF1000 $name: $state";
|
|
||||||
|
#Log GetLogLevel($name, 4), "USF1000 $name: $state";
|
||||||
|
#Debug "USF1000 $name: $state";
|
||||||
|
|
||||||
$def->{READINGS}{distance}{TIME} = $t;
|
|
||||||
$def->{READINGS}{distance}{VAL} = $distance;
|
|
||||||
$def->{READINGS}{level}{TIME} = $t;
|
|
||||||
$def->{READINGS}{level}{VAL} = $flevel;
|
|
||||||
$def->{READINGS}{volume}{TIME} = $t;
|
|
||||||
$def->{READINGS}{volume}{VAL} = $volume;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -166,8 +163,9 @@ USF1000_Parse($$)
|
|||||||
}
|
}
|
||||||
$warnings= $warnings ? $warnings : "none";
|
$warnings= $warnings ? $warnings : "none";
|
||||||
|
|
||||||
$def->{READINGS}{"warnings"}{TIME} = $t;
|
readingsBulkUpdate($def, "warnings", $warnings);
|
||||||
$def->{READINGS}{"warnings"}{VAL} = $warnings;
|
|
||||||
|
readingsEndUpdate($def, 0);
|
||||||
|
|
||||||
return $name;
|
return $name;
|
||||||
|
|
||||||
@@ -246,6 +244,7 @@ USF1000_Parse($$)
|
|||||||
<li><a href="#loglevel">loglevel</a></li>
|
<li><a href="#loglevel">loglevel</a></li>
|
||||||
<li><a href="#model">model</a> (usf1000s)</li>
|
<li><a href="#model">model</a> (usf1000s)</li>
|
||||||
<li><a href="#ignore">ignore</a></li>
|
<li><a href="#ignore">ignore</a></li>
|
||||||
|
<li><a href="#readingFnAttributes">readingFnAttributes</a></li>
|
||||||
</ul>
|
</ul>
|
||||||
<br>
|
<br>
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user