X-Git-Url: https://git.realraum.at/?a=blobdiff_plain;f=rf433rcv%2Fpc%2Frealraum_codes.pl;h=650816732438ad44addde682f54f8a5e3f1f7a86;hb=a48d9f89ecde2838963f59b7f6d30e59606ec547;hp=774d6df5eeb29aa6913517b05bd14b7cabcdb783;hpb=b95eb9f048feef2b6f066ce676096645d7e898f3;p=svn42.git diff --git a/rf433rcv/pc/realraum_codes.pl b/rf433rcv/pc/realraum_codes.pl index 774d6df..6508167 100755 --- a/rf433rcv/pc/realraum_codes.pl +++ b/rf433rcv/pc/realraum_codes.pl @@ -4,8 +4,9 @@ use strict; my %remotes = ( schwarz => [\&schwarz, "01110101a1b1c1000000dddd"] , - weiss => \&weiss, - pollin => \&pollin, + weiss => [\&weiss,"0c0d01010b0001010001010a"], + pollin => [\&pollin,"0q0w0e0r0tbbbbbbbbbbaaaa"], + rsl336t => [\&rsl336t,"switchbutton010101oo"], ); &main(); @@ -38,10 +39,59 @@ sub schwarz sub weiss { - + my ($switch,$taste,$on) = @_ or die "parameters {a|b|c|d} {1|2} {0|1}"; + my $data = { + a=> ($on?'1':'0'), + b=> ($taste==1?'0':'1'), + c=>0, + d=>0, + }; + if($switch eq 'b') + { + $data->{c}=1; + } elsif ($switch eq 'c') { + $data->{d}=1; + } elsif ($switch eq 'd') { + $data->{c}=1; + $data->{d}=1; + } + return $data; } sub pollin { + my ($switch,$taste,$on) = @_ or die "parameters 00000 {a|b|c|d} {0|1}"; + my %tasten = ( + a => '0001010101', + b => '0100010101', + c => '0101000101', + d => '0101010001', + e => '0101010100', + ); + my $data = { + aaaa=> ($on?'0001':'0100'), + bbbbbbbbbb=> $tasten{$taste}, + }; + my @switches = split //,$switch; + @switches = map { $_?'0':'1'} @switches; + @{$data}{qw/q w e r t/}=@switches; +# print join ',',%$data; + return $data; +} +sub rsl336t +{ + my ($switch,$button,$on) = @_ or die "parameters {a|b|c|d} {a|b|c|d} {0|1}"; + my %tasten = ( + a => '00010101', + b => '01000101', + c => '01010001', + d => '01010100', + ); + my $data = { + oo=> ($on?'01':'00'), + switch=> $tasten{$switch}, + button=> $tasten{$button}, + }; + return $data; }