mirror of
https://github.com/fhem/fhem-mirror.git
synced 2025-05-04 22:19:38 +00:00
THZ: sDisplay improvement from toggle
git-svn-id: https://svn.fhem.de/fhem/trunk@15843 2b470e98-0d58-463d-a4d8-8e2adae1ed80
This commit is contained in:
parent
e91bde7b8e
commit
5822e585e4
@ -1,8 +1,8 @@
|
|||||||
##############################################
|
##############################################
|
||||||
# 00_THZ
|
# 00_THZ
|
||||||
# $Id$
|
# $Id$
|
||||||
# by immi 12/2017
|
# by immi 1/2018
|
||||||
my $thzversion = "0.174";
|
my $thzversion = "0.175";
|
||||||
# this code is based on the hard work of Robert; I just tried to port it
|
# this code is based on the hard work of Robert; I just tried to port it
|
||||||
# http://robert.penz.name/heat-pump-lwz/
|
# http://robert.penz.name/heat-pump-lwz/
|
||||||
########################################################################################
|
########################################################################################
|
||||||
@ -272,7 +272,8 @@ my %parsinghash = (
|
|||||||
[" boosterHC: ", 10, 1, "bit1", 1], [" filterBoth: ", 9, 1, "bit0", 1],
|
[" boosterHC: ", 10, 1, "bit1", 1], [" filterBoth: ", 9, 1, "bit0", 1],
|
||||||
[" ventStage: ", 9, 1, "bit1", 1], [" pumpHC: ", 9, 1, "bit2", 1],
|
[" ventStage: ", 9, 1, "bit1", 1], [" pumpHC: ", 9, 1, "bit2", 1],
|
||||||
[" defrost: ", 9, 1, "bit3", 1], [" filterUp: ", 8, 1, "bit0", 1],
|
[" defrost: ", 9, 1, "bit3", 1], [" filterUp: ", 8, 1, "bit0", 1],
|
||||||
[" filterDown: ", 8, 1, "bit1", 1], [" cooling: ", 11, 1, "bit3", 1]
|
[" filterDown: ", 8, 1, "bit1", 1], [" cooling: ", 11, 1, "bit3", 1],
|
||||||
|
[" service: ", 10, 1, "bit2", 1]
|
||||||
],
|
],
|
||||||
"0clean" => [["", 8, 2, "hex", 1]
|
"0clean" => [["", 8, 2, "hex", 1]
|
||||||
],
|
],
|
||||||
@ -861,12 +862,12 @@ sub THZ_Refresh_all_gets($) {
|
|||||||
RemoveInternalTimer(0, "THZ_GetRefresh");
|
RemoveInternalTimer(0, "THZ_GetRefresh");
|
||||||
#THZ_RemoveInternalTimer("THZ_GetRefresh"); not needed since https://svn.fhem.de/trac/changeset/15667/ because now there is a second parameter for the function
|
#THZ_RemoveInternalTimer("THZ_GetRefresh"); not needed since https://svn.fhem.de/trac/changeset/15667/ because now there is a second parameter for the function
|
||||||
Log3 $hash->{NAME}, 5, "thzversion = $thzversion ";
|
Log3 $hash->{NAME}, 5, "thzversion = $thzversion ";
|
||||||
my $timedelay= 5; #start after 5 seconds
|
my $timedelay= 30; #start after 5 seconds
|
||||||
foreach my $cmdhash (keys %gets) {
|
foreach my $cmdhash (keys %gets) {
|
||||||
my %par = ( hash => $hash, command => $cmdhash );
|
my %par = ( hash => $hash, command => $cmdhash );
|
||||||
#RemoveInternalTimer(\%par); #commented out in v.0161 because appearently redundant; THZ_RemoveInternalTimer is more efficient and both are not needed
|
#RemoveInternalTimer(\%par); #commented out in v.0161 because appearently redundant; THZ_RemoveInternalTimer is more efficient and both are not needed
|
||||||
InternalTimer(gettimeofday() + ($timedelay) , "THZ_GetRefresh", \%par, 0); #increment 0.6 $timedelay++
|
InternalTimer(gettimeofday() + ($timedelay) , "THZ_GetRefresh", \%par, 0); #increment 0.6 $timedelay++
|
||||||
$timedelay += 0.6;
|
$timedelay += 1.6; #0.6 seconds are ok
|
||||||
} #refresh all registers; the register with interval_command ne 0 will keep on refreshing
|
} #refresh all registers; the register with interval_command ne 0 will keep on refreshing
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -999,6 +1000,20 @@ sub THZ_Testloopapproach($) {
|
|||||||
$hash->{helper}{PARTIAL}="";
|
$hash->{helper}{PARTIAL}="";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
sub THZ_testtimer($) {
|
||||||
|
my ($hash) = @_;
|
||||||
|
my $counter=1;
|
||||||
|
my $stringa = ("starttest \n");
|
||||||
|
foreach my $a (keys %intAt)
|
||||||
|
{
|
||||||
|
if ($intAt{$a}{FN} eq "THZ_GetRefresh")
|
||||||
|
{
|
||||||
|
$stringa = $stringa . ("timer ". $counter ." ARG". $intAt{$a}{ARG} ."fn " . $intAt{$a}{FN} ."\n") ;
|
||||||
|
$counter+=1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
Log3 $hash->{NAME}, 5, $stringa;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
#####################################
|
#####################################
|
||||||
@ -1012,6 +1027,7 @@ sub THZ_Ready($) {
|
|||||||
my ($hash) = @_;
|
my ($hash) = @_;
|
||||||
if($hash->{STATE} eq "disconnected")
|
if($hash->{STATE} eq "disconnected")
|
||||||
{ RemoveInternalTimer(0, "THZ_GetRefresh");
|
{ RemoveInternalTimer(0, "THZ_GetRefresh");
|
||||||
|
#THZ_testtimer($hash);
|
||||||
#THZ_RemoveInternalTimer("THZ_GetRefresh");
|
#THZ_RemoveInternalTimer("THZ_GetRefresh");
|
||||||
select(undef, undef, undef, 0.25); #equivalent to sleep 250ms
|
select(undef, undef, undef, 0.25); #equivalent to sleep 250ms
|
||||||
return DevIo_OpenDev($hash, 1, "THZ_Refresh_all_gets")
|
return DevIo_OpenDev($hash, 1, "THZ_Refresh_all_gets")
|
||||||
@ -1999,7 +2015,7 @@ sub function_heatSetTemp($$) {
|
|||||||
}
|
}
|
||||||
my ($heatSetTemp, $roomSetTemp, $insideTemp) = (split ' ',ReadingsVal($devname,"sHC1",0))[11,21,27];
|
my ($heatSetTemp, $roomSetTemp, $insideTemp) = (split ' ',ReadingsVal($devname,"sHC1",0))[11,21,27];
|
||||||
my $outside_tempFiltered =(split ' ',ReadingsVal($devname,"sGlobal",0))[65];
|
my $outside_tempFiltered =(split ' ',ReadingsVal($devname,"sGlobal",0))[65];
|
||||||
if (!defined($roomSetTemp)) {
|
if (!$roomSetTemp) {
|
||||||
$insideTemp=23.8 ; $roomSetTemp = 19.5; $p13GradientHC1 = 0.31; $heatSetTemp = 15; $p15RoomInfluenceHC1 = 80;
|
$insideTemp=23.8 ; $roomSetTemp = 19.5; $p13GradientHC1 = 0.31; $heatSetTemp = 15; $p15RoomInfluenceHC1 = 80;
|
||||||
$pOpMode ="DEMO: no data";
|
$pOpMode ="DEMO: no data";
|
||||||
$outside_tempFiltered = 0; $p14LowEndHC1 =0.5;
|
$outside_tempFiltered = 0; $p14LowEndHC1 =0.5;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user