mirror of
https://github.com/fhem/fhem-mirror.git
synced 2025-03-13 11:16:36 +00:00
added 34_panStamp, 34_SWAP.pm and FHEM/lib/SWAP
git-svn-id: https://svn.fhem.de/fhem/trunk@3439 2b470e98-0d58-463d-a4d8-8e2adae1ed80
This commit is contained in:
parent
293117eef2
commit
275eea286a
@ -1,5 +1,9 @@
|
|||||||
# Add changes at the top of the list. Keep it in ASCII
|
# Add changes at the top of the list. Keep it in ASCII
|
||||||
- SVN
|
- SVN
|
||||||
|
- feature: new module 34_SWAP for generic SWAP protocoll support using
|
||||||
|
a panStick and 34_panStamp as IODevice(by justme1968)
|
||||||
|
- feature: new module 34_panStamp to use a panStick as a RF modem
|
||||||
|
for panStamps using the SWAP protocoll (by justme1968)
|
||||||
- feature: EGPM2LAN module added for Gembird (R) Energenie LAN Support
|
- feature: EGPM2LAN module added for Gembird (R) Energenie LAN Support
|
||||||
- feature: FHEMWEB use widget module to update colorpicker in longpoll
|
- feature: FHEMWEB use widget module to update colorpicker in longpoll
|
||||||
- feature: FHEMWEB widget (slider/etc) javascript handler modularized
|
- feature: FHEMWEB widget (slider/etc) javascript handler modularized
|
||||||
|
1050
fhem/FHEM/34_SWAP.pm
Executable file
1050
fhem/FHEM/34_SWAP.pm
Executable file
File diff suppressed because it is too large
Load Diff
604
fhem/FHEM/34_panStamp.pm
Executable file
604
fhem/FHEM/34_panStamp.pm
Executable file
@ -0,0 +1,604 @@
|
|||||||
|
|
||||||
|
# $Id$
|
||||||
|
|
||||||
|
package main;
|
||||||
|
|
||||||
|
use strict;
|
||||||
|
use warnings;
|
||||||
|
use Time::HiRes qw(gettimeofday);
|
||||||
|
|
||||||
|
sub panStamp_Attr(@);
|
||||||
|
sub panStamp_Clear($);
|
||||||
|
sub panStamp_HandleWriteQueue($);
|
||||||
|
sub panStamp_Parse($$$$);
|
||||||
|
sub panStamp_Read($);
|
||||||
|
sub panStamp_ReadAnswer($$$$);
|
||||||
|
sub panStamp_Ready($);
|
||||||
|
sub panStamp_Write($$$);
|
||||||
|
|
||||||
|
sub panStamp_SimpleWrite(@);
|
||||||
|
|
||||||
|
my $clientsPanStamp = ":SWAP:";
|
||||||
|
|
||||||
|
my %matchListSWAP = (
|
||||||
|
"1:SWAP" => "^.*",
|
||||||
|
);
|
||||||
|
|
||||||
|
sub
|
||||||
|
panStamp_Initialize($)
|
||||||
|
{
|
||||||
|
my ($hash) = @_;
|
||||||
|
|
||||||
|
require "$attr{global}{modpath}/FHEM/DevIo.pm";
|
||||||
|
|
||||||
|
# Provider
|
||||||
|
$hash->{ReadFn} = "panStamp_Read";
|
||||||
|
$hash->{WriteFn} = "panStamp_Write";
|
||||||
|
$hash->{ReadyFn} = "panStamp_Ready";
|
||||||
|
|
||||||
|
# Normal devices
|
||||||
|
$hash->{DefFn} = "panStamp_Define";
|
||||||
|
$hash->{FingerprintFn} = "panStamp_Fingerprint";
|
||||||
|
$hash->{UndefFn} = "panStamp_Undef";
|
||||||
|
#$hash->{GetFn} = "panStamp_Get";
|
||||||
|
$hash->{SetFn} = "panStamp_Set";
|
||||||
|
#$hash->{AttrFn} = "panStamp_Attr";
|
||||||
|
$hash->{AttrList}= "model:panStamp loglevel:0,1,2,3,4,5,6";
|
||||||
|
|
||||||
|
$hash->{ShutdownFn} = "panStamp_Shutdown";
|
||||||
|
}
|
||||||
|
sub
|
||||||
|
panStamp_Fingerprint($$)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
sub
|
||||||
|
panStamp_Define($$)
|
||||||
|
{
|
||||||
|
my ($hash, $def) = @_;
|
||||||
|
my @a = split("[ \t][ \t]*", $def);
|
||||||
|
|
||||||
|
if(@a < 3 || @a > 6) {
|
||||||
|
my $msg = "wrong syntax: define <name> panStamp {devicename[\@baudrate] ".
|
||||||
|
"| devicename\@directio} [<address> [<channel> [<syncword>";
|
||||||
|
Log 2, $msg;
|
||||||
|
return $msg;
|
||||||
|
}
|
||||||
|
|
||||||
|
my $address = $a[3];
|
||||||
|
$address = "01" if( !defined($address) );
|
||||||
|
my $channel = $a[4];
|
||||||
|
$channel = "00" if( !defined($channel) );
|
||||||
|
my $syncword = $a[5];
|
||||||
|
$syncword = 'B547' if( !defined($syncword) );
|
||||||
|
|
||||||
|
return "$address is not a 1 byte hex value" if( $address !~ /^[\da-f]{2}$/i );
|
||||||
|
return "$address is not an allowed address" if( $address eq "00" );
|
||||||
|
return "$channel is not a 1 byte hex value" if( $channel !~ /^[\da-f]{2}$/i );
|
||||||
|
return "$syncword is not a 2 byte hex value" if( $syncword !~ /^[\da-f]{4}$/i );
|
||||||
|
|
||||||
|
DevIo_CloseDev($hash);
|
||||||
|
|
||||||
|
my $name = $a[0];
|
||||||
|
my $dev = $a[2];
|
||||||
|
|
||||||
|
$hash->{address} = uc($address);
|
||||||
|
$hash->{channel} = uc($channel);
|
||||||
|
$hash->{syncword} = uc($syncword);
|
||||||
|
|
||||||
|
$hash->{Clients} = $clientsPanStamp;
|
||||||
|
$hash->{MatchList} = \%matchListSWAP;
|
||||||
|
|
||||||
|
$hash->{DeviceName} = $dev;
|
||||||
|
|
||||||
|
$hash->{nonce} = 0;
|
||||||
|
|
||||||
|
my $ret = DevIo_OpenDev($hash, 0, "panStamp_DoInit");
|
||||||
|
return $ret;
|
||||||
|
}
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
sub
|
||||||
|
panStamp_Undef($$)
|
||||||
|
{
|
||||||
|
my ($hash, $arg) = @_;
|
||||||
|
my $name = $hash->{NAME};
|
||||||
|
|
||||||
|
foreach my $d (sort keys %defs) {
|
||||||
|
if(defined($defs{$d}) &&
|
||||||
|
defined($defs{$d}{IODev}) &&
|
||||||
|
$defs{$d}{IODev} == $hash)
|
||||||
|
{
|
||||||
|
my $lev = ($reread_active ? 4 : 2);
|
||||||
|
Log GetLogLevel($name,$lev), "deleting port for $d";
|
||||||
|
delete $defs{$d}{IODev};
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
panStamp_Shutdown($hash);
|
||||||
|
DevIo_CloseDev($hash);
|
||||||
|
return undef;
|
||||||
|
}
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
sub
|
||||||
|
panStamp_Shutdown($)
|
||||||
|
{
|
||||||
|
my ($hash) = @_;
|
||||||
|
###panStamp_SimpleWrite($hash, "X00");
|
||||||
|
return undef;
|
||||||
|
}
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
sub
|
||||||
|
panStamp_Set($@)
|
||||||
|
{
|
||||||
|
my ($hash, @a) = @_;
|
||||||
|
|
||||||
|
return "\"set panStamp\" needs at least one parameter" if(@a < 2);
|
||||||
|
|
||||||
|
my $name = shift @a;
|
||||||
|
my $cmd = shift @a;
|
||||||
|
my $arg = join("", @a);
|
||||||
|
my $ll = GetLogLevel($name,3);
|
||||||
|
|
||||||
|
my $list = "raw";
|
||||||
|
return $list if( $cmd eq '?' );
|
||||||
|
|
||||||
|
if($cmd eq "raw") {
|
||||||
|
return "Expecting a 0-padded hex number"
|
||||||
|
if((length($arg)&1) == 1 && $cmd ne "raw");
|
||||||
|
Log $ll, "set $name $cmd $arg";
|
||||||
|
panStamp_SimpleWrite($hash, $arg);
|
||||||
|
|
||||||
|
} else {
|
||||||
|
return "Unknown argument $cmd, choose one of ".$list;
|
||||||
|
}
|
||||||
|
|
||||||
|
return undef;
|
||||||
|
}
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
sub
|
||||||
|
panStamp_Get($@)
|
||||||
|
{
|
||||||
|
my ($hash, @a) = @_;
|
||||||
|
|
||||||
|
#$hash->{READINGS}{$a[1]}{VAL} = $msg;
|
||||||
|
$hash->{READINGS}{$a[1]}{TIME} = TimeNow();
|
||||||
|
|
||||||
|
#return "$a[0] $a[1] => $msg";
|
||||||
|
}
|
||||||
|
|
||||||
|
sub
|
||||||
|
panStamp_Clear($)
|
||||||
|
{
|
||||||
|
my $hash = shift;
|
||||||
|
|
||||||
|
# Clear the pipe
|
||||||
|
$hash->{RA_Timeout} = 0.1;
|
||||||
|
for(;;) {
|
||||||
|
my ($err, undef) = panStamp_ReadAnswer($hash, "Clear", 0, undef);
|
||||||
|
last if($err && $err =~ m/^Timeout/);
|
||||||
|
}
|
||||||
|
delete($hash->{RA_Timeout});
|
||||||
|
}
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
sub
|
||||||
|
panStamp_DoInit($)
|
||||||
|
{
|
||||||
|
my $hash = shift;
|
||||||
|
my $name = $hash->{NAME};
|
||||||
|
my $err;
|
||||||
|
my $msg = undef;
|
||||||
|
|
||||||
|
my $val;
|
||||||
|
|
||||||
|
panStamp_Clear($hash);
|
||||||
|
panStamp_ReadAnswer($hash, "ready?", 0, undef);
|
||||||
|
panStamp_SimpleWrite($hash, "+++", 1 );
|
||||||
|
sleep 2;
|
||||||
|
panStamp_ReadAnswer($hash, "cmd mode?", 0, undef);
|
||||||
|
panStamp_SimpleWrite($hash, "ATHV?" );
|
||||||
|
($err, $val) = panStamp_ReadAnswer($hash, "HW Version", 0, undef);
|
||||||
|
return "$name: $err" if($err && ($err !~ m/Timeout/));
|
||||||
|
$hash->{HWVersion} = $val;
|
||||||
|
|
||||||
|
panStamp_SimpleWrite($hash, "ATFV?" );
|
||||||
|
($err, $val) = panStamp_ReadAnswer($hash, "FW Version", 0, undef);
|
||||||
|
return "$name: $err" if($err && ($err !~ m/Timeout/));
|
||||||
|
$hash->{FWVersion} = $val;
|
||||||
|
|
||||||
|
panStamp_SimpleWrite($hash, "ATSW=$hash->{syncword}" );
|
||||||
|
($err, $val) = panStamp_ReadAnswer($hash, "sync word", 0, undef);
|
||||||
|
return "$name: $err" if($err && ($err !~ m/Timeout/));
|
||||||
|
|
||||||
|
panStamp_SimpleWrite($hash, "ATSW?" );
|
||||||
|
($err, $val) = panStamp_ReadAnswer($hash, "sync word", 0, undef);
|
||||||
|
return "$name: $err" if($err && ($err !~ m/Timeout/));
|
||||||
|
$hash->{syncword} = sprintf( "%04s", $val );
|
||||||
|
|
||||||
|
panStamp_SimpleWrite($hash, "ATCH=$hash->{channel}" );
|
||||||
|
($err, $val) = panStamp_ReadAnswer($hash, "address", 0, undef);
|
||||||
|
return "$name: $err" if($err && ($err !~ m/Timeout/));
|
||||||
|
|
||||||
|
panStamp_SimpleWrite($hash, "ATCH?" );
|
||||||
|
($err, $val) = panStamp_ReadAnswer($hash, "channel", 0, undef);
|
||||||
|
return "$name: $err" if($err && ($err !~ m/Timeout/));
|
||||||
|
$hash->{channel} = sprintf( "%02s", $val);
|
||||||
|
|
||||||
|
panStamp_SimpleWrite($hash, "ATDA=$hash->{address}" );
|
||||||
|
($err, $val) = panStamp_ReadAnswer($hash, "address", 0, undef);
|
||||||
|
return "$name: $err" if($err && ($err !~ m/Timeout/));
|
||||||
|
|
||||||
|
panStamp_SimpleWrite($hash, "ATDA?" );
|
||||||
|
($err, $val) = panStamp_ReadAnswer($hash, "address", 0, undef);
|
||||||
|
return "$name: $err" if($err && ($err !~ m/Timeout/));
|
||||||
|
$hash->{address} = sprintf( "%02s", $val);
|
||||||
|
|
||||||
|
panStamp_SimpleWrite($hash, "ATO" );
|
||||||
|
panStamp_ReadAnswer($hash, "data mode?", 0, undef);
|
||||||
|
|
||||||
|
panStamp_SimpleWrite($hash, "00010000010000" );
|
||||||
|
|
||||||
|
$hash->{STATE} = "Initialized";
|
||||||
|
|
||||||
|
# Reset the counter
|
||||||
|
delete($hash->{XMIT_TIME});
|
||||||
|
delete($hash->{NR_CMD_LAST_H});
|
||||||
|
return undef;
|
||||||
|
}
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# This is a direct read for commands like get
|
||||||
|
# Anydata is used by read file to get the filesize
|
||||||
|
sub
|
||||||
|
panStamp_ReadAnswer($$$$)
|
||||||
|
{
|
||||||
|
my ($hash, $arg, $anydata, $regexp) = @_;
|
||||||
|
my $type = $hash->{TYPE};
|
||||||
|
|
||||||
|
return ("No FD", undef)
|
||||||
|
if(!$hash || ($^O !~ /Win/ && !defined($hash->{FD})));
|
||||||
|
|
||||||
|
my ($mpandata, $rin) = ("", '');
|
||||||
|
my $buf;
|
||||||
|
my $to = 3; # 3 seconds timeout
|
||||||
|
$to = $hash->{RA_Timeout} if($hash->{RA_Timeout}); # ...or less
|
||||||
|
for(;;) {
|
||||||
|
|
||||||
|
if($^O =~ m/Win/ && $hash->{USBDev}) {
|
||||||
|
$hash->{USBDev}->read_const_time($to*1000); # set timeout (ms)
|
||||||
|
# Read anstatt input sonst funzt read_const_time nicht.
|
||||||
|
$buf = $hash->{USBDev}->read(999);
|
||||||
|
return ("Timeout reading answer for get $arg", undef)
|
||||||
|
if(length($buf) == 0);
|
||||||
|
|
||||||
|
} else {
|
||||||
|
return ("Device lost when reading answer for get $arg", undef)
|
||||||
|
if(!$hash->{FD});
|
||||||
|
|
||||||
|
vec($rin, $hash->{FD}, 1) = 1;
|
||||||
|
my $nfound = select($rin, undef, undef, $to);
|
||||||
|
if($nfound < 0) {
|
||||||
|
next if ($! == EAGAIN() || $! == EINTR() || $! == 0);
|
||||||
|
my $err = $!;
|
||||||
|
DevIo_Disconnected($hash);
|
||||||
|
return("panStamp_ReadAnswer $arg: $err", undef);
|
||||||
|
}
|
||||||
|
return ("Timeout reading answer for get $arg", undef)
|
||||||
|
if($nfound == 0);
|
||||||
|
$buf = DevIo_SimpleRead($hash);
|
||||||
|
return ("No data", undef) if(!defined($buf));
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
if($buf) {
|
||||||
|
Log 5, "panStamp/RAW (ReadAnswer): $buf";
|
||||||
|
$mpandata .= $buf;
|
||||||
|
}
|
||||||
|
|
||||||
|
chop($mpandata);
|
||||||
|
chop($mpandata);
|
||||||
|
|
||||||
|
return (undef, $mpandata)
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# Check if the 1% limit is reached and trigger notifies
|
||||||
|
sub
|
||||||
|
panStamp_XmitLimitCheck($$)
|
||||||
|
{
|
||||||
|
my ($hash,$fn) = @_;
|
||||||
|
my $now = time();
|
||||||
|
|
||||||
|
if(!$hash->{XMIT_TIME}) {
|
||||||
|
$hash->{XMIT_TIME}[0] = $now;
|
||||||
|
$hash->{NR_CMD_LAST_H} = 1;
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
my $nowM1h = $now-3600;
|
||||||
|
my @b = grep { $_ > $nowM1h } @{$hash->{XMIT_TIME}};
|
||||||
|
|
||||||
|
if(@b > 163) { # 163 comes from fs20. todo: verify if correct for panstamp modulation
|
||||||
|
|
||||||
|
my $name = $hash->{NAME};
|
||||||
|
Log GetLogLevel($name,2), "panStamp TRANSMIT LIMIT EXCEEDED";
|
||||||
|
DoTrigger($name, "TRANSMIT LIMIT EXCEEDED");
|
||||||
|
|
||||||
|
} else {
|
||||||
|
|
||||||
|
push(@b, $now);
|
||||||
|
|
||||||
|
}
|
||||||
|
$hash->{XMIT_TIME} = \@b;
|
||||||
|
$hash->{NR_CMD_LAST_H} = int(@b);
|
||||||
|
}
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
sub
|
||||||
|
panStamp_Write($$$)
|
||||||
|
{
|
||||||
|
my ($hash,$addr,$msg) = @_;
|
||||||
|
|
||||||
|
Log 5, "$hash->{NAME} sending $addr $msg";
|
||||||
|
my $bstring = $addr.$hash->{"address"}.$msg;
|
||||||
|
|
||||||
|
panStamp_AddQueue($hash, $bstring);
|
||||||
|
#panStamp_SimpleWrite($hash, $bstring);
|
||||||
|
}
|
||||||
|
|
||||||
|
sub
|
||||||
|
panStamp_SendFromQueue($$)
|
||||||
|
{
|
||||||
|
my ($hash, $bstring) = @_;
|
||||||
|
my $name = $hash->{NAME};
|
||||||
|
my $to = 0.05;
|
||||||
|
|
||||||
|
if($bstring ne "") {
|
||||||
|
my $sp = AttrVal($name, "sendpool", undef);
|
||||||
|
if($sp) { # Is one of the panStamp-fellows sending data?
|
||||||
|
my @fellows = split(",", $sp);
|
||||||
|
foreach my $f (@fellows) {
|
||||||
|
if($f ne $name &&
|
||||||
|
$defs{$f} &&
|
||||||
|
$defs{$f}{QUEUE} &&
|
||||||
|
$defs{$f}{QUEUE}->[0] ne "")
|
||||||
|
{
|
||||||
|
unshift(@{$hash->{QUEUE}}, "");
|
||||||
|
InternalTimer(gettimeofday()+$to, "panStamp_HandleWriteQueue", $hash, 1);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
panStamp_XmitLimitCheck($hash,$bstring);
|
||||||
|
panStamp_SimpleWrite($hash, $bstring);
|
||||||
|
}
|
||||||
|
|
||||||
|
InternalTimer(gettimeofday()+$to, "panStamp_HandleWriteQueue", $hash, 1);
|
||||||
|
}
|
||||||
|
|
||||||
|
sub
|
||||||
|
panStamp_AddQueue($$)
|
||||||
|
{
|
||||||
|
my ($hash, $bstring) = @_;
|
||||||
|
if(!$hash->{QUEUE}) {
|
||||||
|
$hash->{QUEUE} = [ $bstring ];
|
||||||
|
panStamp_SendFromQueue($hash, $bstring);
|
||||||
|
|
||||||
|
} else {
|
||||||
|
push(@{$hash->{QUEUE}}, $bstring);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
sub
|
||||||
|
panStamp_HandleWriteQueue($)
|
||||||
|
{
|
||||||
|
my $hash = shift;
|
||||||
|
my $arr = $hash->{QUEUE};
|
||||||
|
if(defined($arr) && @{$arr} > 0) {
|
||||||
|
shift(@{$arr});
|
||||||
|
if(@{$arr} == 0) {
|
||||||
|
delete($hash->{QUEUE});
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
my $bstring = $arr->[0];
|
||||||
|
if($bstring eq "") {
|
||||||
|
panStamp_HandleWriteQueue($hash);
|
||||||
|
} else {
|
||||||
|
panStamp_SendFromQueue($hash, $bstring);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# called from the global loop, when the select for hash->{FD} reports data
|
||||||
|
sub
|
||||||
|
panStamp_Read($)
|
||||||
|
{
|
||||||
|
my ($hash) = @_;
|
||||||
|
|
||||||
|
my $buf = DevIo_SimpleRead($hash);
|
||||||
|
return "" if(!defined($buf));
|
||||||
|
|
||||||
|
my $name = $hash->{NAME};
|
||||||
|
|
||||||
|
my $pandata = $hash->{PARTIAL};
|
||||||
|
Log 5, "panStamp/RAW: $pandata/$buf";
|
||||||
|
$pandata .= $buf;
|
||||||
|
|
||||||
|
while($pandata =~ m/\n/) {
|
||||||
|
my $rmsg;
|
||||||
|
($rmsg,$pandata) = split("\n", $pandata, 2);
|
||||||
|
$rmsg =~ s/\r//;
|
||||||
|
panStamp_Parse($hash, $hash, $name, $rmsg) if($rmsg);
|
||||||
|
}
|
||||||
|
$hash->{PARTIAL} = $pandata;
|
||||||
|
}
|
||||||
|
|
||||||
|
sub
|
||||||
|
panStamp_Parse($$$$)
|
||||||
|
{
|
||||||
|
my ($hash, $iohash, $name, $rmsg) = @_;
|
||||||
|
|
||||||
|
my $dmsg = $rmsg;
|
||||||
|
my $l = length($dmsg);
|
||||||
|
my $rssi = hex(substr($dmsg, 1, 2));
|
||||||
|
$rssi = ($rssi>=128 ? (($rssi-256)/2-74) : ($rssi/2-74));
|
||||||
|
my $lqi = hex(substr($dmsg, 3, 2));
|
||||||
|
$dmsg = substr($dmsg, 6, $l-6);
|
||||||
|
Log GetLogLevel($name,5), "$name: $dmsg $rssi $lqi";
|
||||||
|
|
||||||
|
next if(!$dmsg || length($dmsg) < 1); # Bogus messages
|
||||||
|
|
||||||
|
$hash->{"${name}_MSGCNT"}++;
|
||||||
|
$hash->{"${name}_TIME"} = TimeNow();
|
||||||
|
$hash->{RAWMSG} = $rmsg;
|
||||||
|
my %addvals = (RAWMSG => $rmsg);
|
||||||
|
if(defined($rssi)) {
|
||||||
|
$hash->{RSSI} = $rssi;
|
||||||
|
$addvals{RSSI} = $rssi;
|
||||||
|
}
|
||||||
|
if(defined($lqi)) {
|
||||||
|
$hash->{LQI} = $lqi;
|
||||||
|
$addvals{LQI} = $lqi;
|
||||||
|
}
|
||||||
|
Dispatch($hash, $dmsg, \%addvals);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
sub
|
||||||
|
panStamp_Ready($)
|
||||||
|
{
|
||||||
|
my ($hash) = @_;
|
||||||
|
|
||||||
|
return DevIo_OpenDev($hash, 1, "panStamp_DoInit")
|
||||||
|
if($hash->{STATE} eq "disconnected");
|
||||||
|
|
||||||
|
# This is relevant for windows/USB only
|
||||||
|
my $po = $hash->{USBDev};
|
||||||
|
my ($BlockingFlags, $InBytes, $OutBytes, $ErrorFlags);
|
||||||
|
if($po) {
|
||||||
|
($BlockingFlags, $InBytes, $OutBytes, $ErrorFlags) = $po->status;
|
||||||
|
}
|
||||||
|
return ($InBytes && $InBytes>0);
|
||||||
|
}
|
||||||
|
|
||||||
|
########################
|
||||||
|
sub
|
||||||
|
panStamp_SimpleWrite(@)
|
||||||
|
{
|
||||||
|
my ($hash, $msg, $nocr) = @_;
|
||||||
|
return if(!$hash);
|
||||||
|
|
||||||
|
my $name = $hash->{NAME};
|
||||||
|
my $ll5 = GetLogLevel($name,5);
|
||||||
|
Log $ll5, "SW: $msg";
|
||||||
|
|
||||||
|
$msg .= "\r" unless($nocr);
|
||||||
|
|
||||||
|
$hash->{USBDev}->write($msg) if($hash->{USBDev});
|
||||||
|
syswrite($hash->{DIODev}, $msg) if($hash->{DIODev});
|
||||||
|
|
||||||
|
# Some linux installations are broken with 0.001, T01 returns no answer
|
||||||
|
select(undef, undef, undef, 0.01);
|
||||||
|
}
|
||||||
|
|
||||||
|
sub
|
||||||
|
panStamp_Attr(@)
|
||||||
|
{
|
||||||
|
my @a = @_;
|
||||||
|
|
||||||
|
return undef;
|
||||||
|
}
|
||||||
|
|
||||||
|
1;
|
||||||
|
|
||||||
|
=pod
|
||||||
|
=begin html
|
||||||
|
|
||||||
|
<a name="panStamp"></a>
|
||||||
|
<h3>panStamp</h3>
|
||||||
|
<ul>
|
||||||
|
The panStamp is a family of RF devices sold by <a href="http://www.panstamp.com">panstamp.com</a>.
|
||||||
|
|
||||||
|
It is possible to attach more than one device in order to get better
|
||||||
|
reception, fhem will filter out duplicate messages.<br><br>
|
||||||
|
|
||||||
|
This module provides the IODevice for the <a href="#SWAP">SWAP</a> modules that implement the SWAP protocoll
|
||||||
|
to communicate with the individual moths in a panStamp network.<br><br>
|
||||||
|
|
||||||
|
Note: currently only panSticks are know to work. The panStamp shield for a Rasperry Pi is untested.
|
||||||
|
<br><br>
|
||||||
|
|
||||||
|
Note: this module may require the Device::SerialPort or Win32::SerialPort
|
||||||
|
module if you attach the device via USB and the OS sets strange default
|
||||||
|
parameters for serial devices.
|
||||||
|
|
||||||
|
<br><br>
|
||||||
|
|
||||||
|
<a name="panStamp_Define"></a>
|
||||||
|
<b>Define</b>
|
||||||
|
<ul>
|
||||||
|
<code>define <name> panStamp <device> [<address> [<channel> [<syncword>]]]</code> <br>
|
||||||
|
<br>
|
||||||
|
USB-connected devices:<br><ul>
|
||||||
|
<device> specifies the serial port to communicate with the panStamp.
|
||||||
|
The name of the serial-device depends on your distribution, under
|
||||||
|
linux the cdc_acm kernel module is responsible, and usually a
|
||||||
|
/dev/ttyACM0 device will be created. If your distribution does not have a
|
||||||
|
cdc_acm module, you can force usbserial to handle the panStamp by the
|
||||||
|
following command:<ul>modprobe usbserial vendor=0x0403
|
||||||
|
product=0x6001</ul>In this case the device is most probably
|
||||||
|
/dev/ttyUSB0.<br><br>
|
||||||
|
|
||||||
|
You can also specify a baudrate if the device name contains the @
|
||||||
|
character, e.g.: /dev/ttyACM0@38400<br><br>
|
||||||
|
|
||||||
|
If the baudrate is "directio" (e.g.: /dev/ttyACM0@directio), then the
|
||||||
|
perl module Device::SerialPort is not needed, and fhem opens the device
|
||||||
|
with simple file io. This might work if the operating system uses sane
|
||||||
|
defaults for the serial parameters, e.g. some Linux distributions and
|
||||||
|
OSX. <br><br>
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
<br>
|
||||||
|
The address is a 2 digit hex number to identify the moth in the panStamp network. The default is 01.<br>
|
||||||
|
The channel is a 2 digit hex number to define the channel. the default is 00.<br>
|
||||||
|
The syncword is a 4 digit hex number to identify the panStamp network. The default is B547.<br><br>
|
||||||
|
|
||||||
|
Uppon initialization a broadcast message is send to the panStamp network to try to
|
||||||
|
autodetect and autocreate all listening SWAP devices (i.e. all devices not in power down mode).
|
||||||
|
</ul>
|
||||||
|
<br>
|
||||||
|
|
||||||
|
<a name="panStamp_Set"></a>
|
||||||
|
<b>Set</b>
|
||||||
|
<ul>
|
||||||
|
<li>raw data<br>
|
||||||
|
send raw data to the panStamp to be transmitted over the RF link.
|
||||||
|
</li><br>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<a name="panStamp_Get"></a>
|
||||||
|
<b>Get</b>
|
||||||
|
<ul>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<a name="panStamp_Attr"></a>
|
||||||
|
<b>Attributes</b>
|
||||||
|
<ul>
|
||||||
|
</ul>
|
||||||
|
<br>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
=end html
|
||||||
|
=cut
|
63
fhem/FHEM/lib/SWAP/IulianV/onewire.xml
Normal file
63
fhem/FHEM/lib/SWAP/IulianV/onewire.xml
Normal file
@ -0,0 +1,63 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<device>
|
||||||
|
<developer>IulianV</developer>
|
||||||
|
<product>OneWire Temperature DS18B20x3</product>
|
||||||
|
<pwrdownmode>true</pwrdownmode>
|
||||||
|
<regular>
|
||||||
|
<reg name="Voltage supply" id="11">
|
||||||
|
<endpoint name="Voltage" type="num" dir="inp">
|
||||||
|
<size>2</size>
|
||||||
|
<units>
|
||||||
|
<unit name="V" factor="0.001" offset="0" />
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
</reg>
|
||||||
|
<reg name="Humidity and Temperature" id="12">
|
||||||
|
<endpoint name="Temperature" type="num" dir="inp">
|
||||||
|
<position>0</position>
|
||||||
|
<size>2</size>
|
||||||
|
<units>
|
||||||
|
<unit name="C" factor="0.1" offset="-50" />
|
||||||
|
<unit name="F" factor="0.18" offset="-18" />
|
||||||
|
<unit name="K" factor="0.1" offset="223.15" />
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="Humidity" type="num" dir="inp">
|
||||||
|
<position>2</position>
|
||||||
|
<size>2</size>
|
||||||
|
<units>
|
||||||
|
<unit name="%" factor="0.1" offset="0" />
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
</reg>
|
||||||
|
<reg name="DS18B20 Temperature" id="13">
|
||||||
|
<endpoint name="TemperatureOne" type="num" dir="inp">
|
||||||
|
<position>0</position>
|
||||||
|
<size>2</size>
|
||||||
|
<units>
|
||||||
|
<unit name="C" factor="0.1" offset="0" />
|
||||||
|
<unit name="F" factor="0.18" offset="-18" />
|
||||||
|
<unit name="K" factor="0.1" offset="223.15" />
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="TemperatureTwo" type="num" dir="inp">
|
||||||
|
<position>2</position>
|
||||||
|
<size>2</size>
|
||||||
|
<units>
|
||||||
|
<unit name="C" factor="0.1" offset="0" />
|
||||||
|
<unit name="F" factor="0.18" offset="-18" />
|
||||||
|
<unit name="K" factor="0.1" offset="223.15" />
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="TemperatureThree" type="num" dir="inp">
|
||||||
|
<position>4</position>
|
||||||
|
<size>2</size>
|
||||||
|
<units>
|
||||||
|
<unit name="C" factor="0.1" offset="0" />
|
||||||
|
<unit name="F" factor="0.18" offset="-18" />
|
||||||
|
<unit name="K" factor="0.1" offset="223.15" />
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
</reg>
|
||||||
|
</regular>
|
||||||
|
</device>
|
197
fhem/FHEM/lib/SWAP/Luka Mustafa - Musti/sfpddm.xml
Normal file
197
fhem/FHEM/lib/SWAP/Luka Mustafa - Musti/sfpddm.xml
Normal file
@ -0,0 +1,197 @@
|
|||||||
|
<?xml version="1.0"?>
|
||||||
|
<device>
|
||||||
|
<developer>Luka Mustafa - Musti</developer>
|
||||||
|
<product>sfpddm</product>
|
||||||
|
<pwrdownmode>false</pwrdownmode>
|
||||||
|
<regular>
|
||||||
|
<reg name="info" id="11">
|
||||||
|
<endpoint name="systemerror" type="bin" dir="inp">
|
||||||
|
<position>0.0</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
<units>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="ddm" type="bin" dir="inp">
|
||||||
|
<position>0.1</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
<units>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="internalcalib" type="bin" dir="inp">
|
||||||
|
<position>0.2</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
<units>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="externalcalib" type="bin" dir="inp">
|
||||||
|
<position>0.3</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
<units>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="averagepower" type="bin" dir="inp">
|
||||||
|
<position>0.4</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
<units>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
</reg>
|
||||||
|
<reg name="control" id="12">
|
||||||
|
<endpoint name="txdisablestate" type="bin" dir="inp">
|
||||||
|
<position>0.0</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
<units>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="txdisable" type="bin" dir="out">
|
||||||
|
<position>0.1</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
<units>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="rateselectstate" type="bin" dir="inp">
|
||||||
|
<position>0.2</position>
|
||||||
|
<size>0.2</size>
|
||||||
|
<units>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="rateselect" type="bin" dir="out">
|
||||||
|
<position>0.4</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
<units>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="txfault" type="num" dir="inp">
|
||||||
|
<position>0.5</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
<units>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="rxlos" type="num" dir="inp">
|
||||||
|
<position>0.6</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
<units>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="dataready" type="bin" dir="inp">
|
||||||
|
<position>0.7</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
<units>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="led" type="bin" dir="out">
|
||||||
|
<position>1.0</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
<units>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="gpio" type="bin" dir="out">
|
||||||
|
<position>1.1</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
<units>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
</reg>
|
||||||
|
<reg name="measurement" id="13">
|
||||||
|
<endpoint name="temp" type="num" dir="inp">
|
||||||
|
<position>1.0</position>
|
||||||
|
<size>2.0</size>
|
||||||
|
<units>
|
||||||
|
<unit name="C" factor="0.00390625" offset="-128"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="voltage" type="num" dir="inp">
|
||||||
|
<position>4.0</position>
|
||||||
|
<size>2.0</size>
|
||||||
|
<units>
|
||||||
|
<unit name="V" factor="0.00001" offset="0"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="txcurrent" type="num" dir="inp">
|
||||||
|
<position>7.0</position>
|
||||||
|
<size>2.0</size>
|
||||||
|
<units>
|
||||||
|
<unit name="mA" factor="0.0005" offset="0"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="txpower" type="num" dir="inp">
|
||||||
|
<position>10.0</position>
|
||||||
|
<size>2.0</size>
|
||||||
|
<units>
|
||||||
|
<unit name="mW" factor="0.0001" offset="0"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="rxpower" type="num" dir="inp">
|
||||||
|
<position>13.0</position>
|
||||||
|
<size>2.0</size>
|
||||||
|
<units>
|
||||||
|
<unit name="mW" factor="0.0001" offset="0"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
</reg>
|
||||||
|
<reg name="alarm" id="14">
|
||||||
|
<endpoint name="temp" type="bin" dir="inp">
|
||||||
|
<position>0.0</position>
|
||||||
|
<size>0.2</size>
|
||||||
|
<units>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="vcc" type="bin" dir="inp">
|
||||||
|
<position>0.2</position>
|
||||||
|
<size>0.2</size>
|
||||||
|
<units>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="txcurrent" type="bin" dir="inp">
|
||||||
|
<position>0.4</position>
|
||||||
|
<size>0.2</size>
|
||||||
|
<units>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="txpower" type="bin" dir="inp">
|
||||||
|
<position>0.6</position>
|
||||||
|
<size>0.2</size>
|
||||||
|
<units>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="rxpower" type="bin" dir="inp">
|
||||||
|
<position>1.0</position>
|
||||||
|
<size>0.2</size>
|
||||||
|
<units>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
</reg>
|
||||||
|
<reg name="warning" id="15">
|
||||||
|
<endpoint name="temp" type="bin" dir="inp">
|
||||||
|
<position>0.0</position>
|
||||||
|
<size>0.2</size>
|
||||||
|
<units>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="vcc" type="bin" dir="inp">
|
||||||
|
<position>0.2</position>
|
||||||
|
<size>0.2</size>
|
||||||
|
<units>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="txcurrent" type="bin" dir="inp">
|
||||||
|
<position>0.4</position>
|
||||||
|
<size>0.2</size>
|
||||||
|
<units>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="txpower" type="bin" dir="inp">
|
||||||
|
<position>0.6</position>
|
||||||
|
<size>0.2</size>
|
||||||
|
<units>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="rxpower" type="bin" dir="inp">
|
||||||
|
<position>1.0</position>
|
||||||
|
<size>0.2</size>
|
||||||
|
<units>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
</reg>
|
||||||
|
</regular>
|
||||||
|
</device>
|
41
fhem/FHEM/lib/SWAP/Miom/temphumlight.xml
Normal file
41
fhem/FHEM/lib/SWAP/Miom/temphumlight.xml
Normal file
@ -0,0 +1,41 @@
|
|||||||
|
<?xml version="1.0"?>
|
||||||
|
<device>
|
||||||
|
<developer>Miom</developer>
|
||||||
|
<product>Temperature/Humidity and Light sensor</product>
|
||||||
|
<pwrdownmode>true</pwrdownmode>
|
||||||
|
<regular>
|
||||||
|
<reg name="Voltage supply" id="11">
|
||||||
|
<endpoint name="Voltage" type="num" dir="inp">
|
||||||
|
<size>2</size>
|
||||||
|
<units>
|
||||||
|
<unit name="V" factor="0.001" offset="0"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
</reg>
|
||||||
|
<reg name="Humidity, Temperature and Light" id="12">
|
||||||
|
<endpoint name="Temperature" type="num" dir="inp">
|
||||||
|
<position>0</position>
|
||||||
|
<size>2</size>
|
||||||
|
<units>
|
||||||
|
<unit name="C" factor="0.1" offset="-50"/>
|
||||||
|
<unit name="F" factor="0.18" offset="-58"/>
|
||||||
|
<unit name="K" factor="0.1" offset="223.15"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="Humidity" type="num" dir="inp">
|
||||||
|
<position>2</position>
|
||||||
|
<size>2</size>
|
||||||
|
<units>
|
||||||
|
<unit name="%" factor="0.1" offset="0"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="Light" type="num" dir="inp">
|
||||||
|
<position>4</position>
|
||||||
|
<size>1</size>
|
||||||
|
<units>
|
||||||
|
<unit name="" factor="1" offset="0"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
</reg>
|
||||||
|
</regular>
|
||||||
|
</device>
|
440
fhem/FHEM/lib/SWAP/Robomotic/EmmaTI.xml
Normal file
440
fhem/FHEM/lib/SWAP/Robomotic/EmmaTI.xml
Normal file
@ -0,0 +1,440 @@
|
|||||||
|
<?xml version="1.0"?>
|
||||||
|
<device>
|
||||||
|
<developer>Robomotic</developer>
|
||||||
|
<product>Emma Chronos</product>
|
||||||
|
<pwrdownmode>true</pwrdownmode>
|
||||||
|
<config>
|
||||||
|
<reg name="Calibration" id="11">
|
||||||
|
<param name="Use metrics (1=Yes 0=No)" type="bin">
|
||||||
|
<position>0</position>
|
||||||
|
<size>1</size>
|
||||||
|
<default>1</default>
|
||||||
|
</param>
|
||||||
|
<param name="Current temperature in Celsious (NN.D format)" type="num">
|
||||||
|
<position>1</position>
|
||||||
|
<size>2</size>
|
||||||
|
<default>0</default>
|
||||||
|
<verif>[-+]?[0-9]*\.[0-9]{1}</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Current altitude in mts" type="num">
|
||||||
|
<position>3</position>
|
||||||
|
<size>2</size>
|
||||||
|
<verif>^(\d*)$</verif>
|
||||||
|
</param>
|
||||||
|
</reg>
|
||||||
|
<reg name="Date/Time" id="12">
|
||||||
|
<param name="Hour (24h format)" type="num">
|
||||||
|
<position>0</position>
|
||||||
|
<size>1</size>
|
||||||
|
<verif>HOUR</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Minutes" type="num">
|
||||||
|
<position>1</position>
|
||||||
|
<size>1</size>
|
||||||
|
<verif>MINUTE</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Seconds" type="num">
|
||||||
|
<position>2</position>
|
||||||
|
<size>1</size>
|
||||||
|
<verif>SECOND</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Year (YYYY format)" type="num">
|
||||||
|
<position>3</position>
|
||||||
|
<size>2</size>
|
||||||
|
<default>2012</default>
|
||||||
|
<verif>YEAR</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Month" type="num">
|
||||||
|
<position>5</position>
|
||||||
|
<size>1</size>
|
||||||
|
<default>1</default>
|
||||||
|
<verif>MONTH</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Day" type="num">
|
||||||
|
<position>6</position>
|
||||||
|
<size>1</size>
|
||||||
|
<default>1</default>
|
||||||
|
<verif>MDAY</verif>
|
||||||
|
</param>
|
||||||
|
</reg>
|
||||||
|
<reg name="Time alarm" id="13">
|
||||||
|
<param name="Hour" type="num">
|
||||||
|
<position>0</position>
|
||||||
|
<size>1</size>
|
||||||
|
<verif>HOUR</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Minutes" type="num">
|
||||||
|
<position>1</position>
|
||||||
|
<size>1</size>
|
||||||
|
<verif>MINUTE</verif>
|
||||||
|
</param>
|
||||||
|
</reg>
|
||||||
|
<reg name="Browser page 0" id="18">
|
||||||
|
<param name="Label (5 chars)" type="str">
|
||||||
|
<position>0</position>
|
||||||
|
<size>5</size>
|
||||||
|
<default>PAGE0</default>
|
||||||
|
<verif>^([A-Z0-9_-]){5}$</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Device address (1-255)" type="num">
|
||||||
|
<position>5</position>
|
||||||
|
<size>1</size>
|
||||||
|
<default>255</default>
|
||||||
|
<verif>RANGE(1,255)</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Register address (1-255)" type="num">
|
||||||
|
<position>6</position>
|
||||||
|
<size>1</size>
|
||||||
|
<default>255</default>
|
||||||
|
<verif>RANGE(1,255)</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Register ID (10-255)" type="num">
|
||||||
|
<position>7</position>
|
||||||
|
<size>1</size>
|
||||||
|
<default>10</default>
|
||||||
|
<verif>RANGE(10,255)</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Type of endpoint (1=num 0=bin)" type="bin">
|
||||||
|
<position>8.7</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
</param>
|
||||||
|
<param name="Direction of endpoint (1=Output 0=Input)" type="bin">
|
||||||
|
<position>8.6</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
</param>
|
||||||
|
<param name="Enable decimals (1=Enable 0=Disable)" type="bin">
|
||||||
|
<position>8.5</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
</param>
|
||||||
|
<param name="Value's signess (1=Signed 0=Unsigned)" type="bin">
|
||||||
|
<position>8.4</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
</param>
|
||||||
|
<param name="Value in register (1=Combined 0=Alone)" type="bin">
|
||||||
|
<position>8.3</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
</param>
|
||||||
|
<param name="Step up/down delta" type="num">
|
||||||
|
<position>9</position>
|
||||||
|
<size>1</size>
|
||||||
|
<verif>^(\d*)$</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Size in bytes (0-3)" type="num">
|
||||||
|
<position>10.0</position>
|
||||||
|
<size>0.2</size>
|
||||||
|
<default>1</default>
|
||||||
|
<verif>^([0-3])$</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Position in register" type="num">
|
||||||
|
<position>10.2</position>
|
||||||
|
<size>0.6</size>
|
||||||
|
<verif>^(\d*)$</verif>
|
||||||
|
</param>
|
||||||
|
</reg>
|
||||||
|
<reg name="Browser page 1" id="19">
|
||||||
|
<param name="Label (5 chars)" type="str">
|
||||||
|
<position>0</position>
|
||||||
|
<size>5</size>
|
||||||
|
<default>PAGE1</default>
|
||||||
|
<verif>^([A-Z0-9_-]){5}$</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Device address (1-255)" type="num">
|
||||||
|
<position>5</position>
|
||||||
|
<size>1</size>
|
||||||
|
<default>255</default>
|
||||||
|
<verif>RANGE(1,255)</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Register address (1-255)" type="num">
|
||||||
|
<position>6</position>
|
||||||
|
<size>1</size>
|
||||||
|
<default>255</default>
|
||||||
|
<verif>RANGE(1,255)</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Register ID (10-255)" type="num">
|
||||||
|
<position>7</position>
|
||||||
|
<size>1</size>
|
||||||
|
<default>10</default>
|
||||||
|
<verif>RANGE(10,255)</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Type of endpoint (1=num 0=bin)" type="bin">
|
||||||
|
<position>8.7</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
</param>
|
||||||
|
<param name="Direction of endpoint (1=Output 0=Input)" type="bin">
|
||||||
|
<position>8.6</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
</param>
|
||||||
|
<param name="Enable decimals (1=Enable 0=Disable)" type="bin">
|
||||||
|
<position>8.5</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
</param>
|
||||||
|
<param name="Value's signess (1=Signed 0=Unsigned)" type="bin">
|
||||||
|
<position>8.4</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
</param>
|
||||||
|
<param name="Value in register (1=Combined 0=Alone)" type="bin">
|
||||||
|
<position>8.3</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
</param>
|
||||||
|
<param name="Step up/down delta" type="num">
|
||||||
|
<position>9</position>
|
||||||
|
<size>1</size>
|
||||||
|
<verif>^(\d*)$</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Size in bytes (0-3)" type="num">
|
||||||
|
<position>10.0</position>
|
||||||
|
<size>0.2</size>
|
||||||
|
<default>1</default>
|
||||||
|
<verif>^([0-3])$</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Position in register" type="num">
|
||||||
|
<position>10.2</position>
|
||||||
|
<size>0.6</size>
|
||||||
|
<verif>^(\d*)$</verif>
|
||||||
|
</param>
|
||||||
|
</reg>
|
||||||
|
<reg name="Browser page 2" id="20">
|
||||||
|
<param name="Label (5 chars)" type="str">
|
||||||
|
<position>0</position>
|
||||||
|
<size>5</size>
|
||||||
|
<default>PAGE2</default>
|
||||||
|
<verif>^([A-Z0-9_-]){5}$</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Device address (1-255)" type="num">
|
||||||
|
<position>5</position>
|
||||||
|
<size>1</size>
|
||||||
|
<default>255</default>
|
||||||
|
<verif>RANGE(1,255)</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Register address (1-255)" type="num">
|
||||||
|
<position>6</position>
|
||||||
|
<size>1</size>
|
||||||
|
<default>255</default>
|
||||||
|
<verif>RANGE(1,255)</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Register ID (10-255)" type="num">
|
||||||
|
<position>7</position>
|
||||||
|
<size>1</size>
|
||||||
|
<default>10</default>
|
||||||
|
<verif>RANGE(10,255)</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Type of endpoint (1=num 0=bin)" type="bin">
|
||||||
|
<position>8.7</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
</param>
|
||||||
|
<param name="Direction of endpoint (1=Output 0=Input)" type="bin">
|
||||||
|
<position>8.6</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
</param>
|
||||||
|
<param name="Enable decimals (1=Enable 0=Disable)" type="bin">
|
||||||
|
<position>8.5</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
</param>
|
||||||
|
<param name="Value's signess (1=Signed 0=Unsigned)" type="bin">
|
||||||
|
<position>8.4</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
</param>
|
||||||
|
<param name="Value in register (1=Combined 0=Alone)" type="bin">
|
||||||
|
<position>8.3</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
</param>
|
||||||
|
<param name="Step up/down delta" type="num">
|
||||||
|
<position>9</position>
|
||||||
|
<size>1</size>
|
||||||
|
<verif>^(\d*)$</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Size in bytes (0-3)" type="num">
|
||||||
|
<position>10.0</position>
|
||||||
|
<size>0.2</size>
|
||||||
|
<default>1</default>
|
||||||
|
<verif>^([0-3])$</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Position in register" type="num">
|
||||||
|
<position>10.2</position>
|
||||||
|
<size>0.6</size>
|
||||||
|
<verif>^(\d*)$</verif>
|
||||||
|
</param>
|
||||||
|
</reg>
|
||||||
|
<reg name="Browser page 3" id="21">
|
||||||
|
<param name="Label (5 chars)" type="str">
|
||||||
|
<position>0</position>
|
||||||
|
<size>5</size>
|
||||||
|
<default>PAGE3</default>
|
||||||
|
<verif>^([A-Z0-9_-]){5}$</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Device address (1-255)" type="num">
|
||||||
|
<position>5</position>
|
||||||
|
<size>1</size>
|
||||||
|
<default>255</default>
|
||||||
|
<verif>RANGE(1,255)</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Register address (1-255)" type="num">
|
||||||
|
<position>6</position>
|
||||||
|
<size>1</size>
|
||||||
|
<default>255</default>
|
||||||
|
<verif>RANGE(1,255)</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Register ID (10-255)" type="num">
|
||||||
|
<position>7</position>
|
||||||
|
<size>1</size>
|
||||||
|
<default>10</default>
|
||||||
|
<verif>RANGE(10,255)</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Type of endpoint (1=num 0=bin)" type="bin">
|
||||||
|
<position>8.7</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
</param>
|
||||||
|
<param name="Direction of endpoint (1=Output 0=Input)" type="bin">
|
||||||
|
<position>8.6</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
</param>
|
||||||
|
<param name="Enable decimals (1=Enable 0=Disable)" type="bin">
|
||||||
|
<position>8.5</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
</param>
|
||||||
|
<param name="Value's signess (1=Signed 0=Unsigned)" type="bin">
|
||||||
|
<position>8.4</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
</param>
|
||||||
|
<param name="Value in register (1=Combined 0=Alone)" type="bin">
|
||||||
|
<position>8.3</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
</param>
|
||||||
|
<param name="Step up/down delta" type="num">
|
||||||
|
<position>9</position>
|
||||||
|
<size>1</size>
|
||||||
|
<verif>^(\d*)$</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Size in bytes (0-3)" type="num">
|
||||||
|
<position>10.0</position>
|
||||||
|
<size>0.2</size>
|
||||||
|
<default>1</default>
|
||||||
|
<verif>^([0-3])$</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Position in register" type="num">
|
||||||
|
<position>10.2</position>
|
||||||
|
<size>0.6</size>
|
||||||
|
<verif>^(\d*)$</verif>
|
||||||
|
</param>
|
||||||
|
</reg>
|
||||||
|
<reg name="Browser page 4" id="22">
|
||||||
|
<param name="Label (5 chars)" type="str">
|
||||||
|
<position>0</position>
|
||||||
|
<size>5</size>
|
||||||
|
<default>PAGE4</default>
|
||||||
|
<verif>^([A-Z0-9_-]){5}$</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Device address (1-255)" type="num">
|
||||||
|
<position>5</position>
|
||||||
|
<size>1</size>
|
||||||
|
<default>255</default>
|
||||||
|
<verif>RANGE(1,255)</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Register address (1-255)" type="num">
|
||||||
|
<position>6</position>
|
||||||
|
<size>1</size>
|
||||||
|
<default>255</default>
|
||||||
|
<verif>RANGE(1,255)</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Register ID (10-255)" type="num">
|
||||||
|
<position>7</position>
|
||||||
|
<size>1</size>
|
||||||
|
<default>10</default>
|
||||||
|
<verif>RANGE(10,255)</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Type of endpoint (1=num 0=bin)" type="bin">
|
||||||
|
<position>8.7</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
</param>
|
||||||
|
<param name="Direction of endpoint (1=Output 0=Input)" type="bin">
|
||||||
|
<position>8.6</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
</param>
|
||||||
|
<param name="Enable decimals (1=Enable 0=Disable)" type="bin">
|
||||||
|
<position>8.5</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
</param>
|
||||||
|
<param name="Value's signess (1=Signed 0=Unsigned)" type="bin">
|
||||||
|
<position>8.4</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
</param>
|
||||||
|
<param name="Value in register (1=Combined 0=Alone)" type="bin">
|
||||||
|
<position>8.3</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
</param>
|
||||||
|
<param name="Step up/down delta" type="num">
|
||||||
|
<position>9</position>
|
||||||
|
<size>1</size>
|
||||||
|
<verif>^(\d*)$</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Size in bytes (0-3)" type="num">
|
||||||
|
<position>10.0</position>
|
||||||
|
<size>0.2</size>
|
||||||
|
<default>1</default>
|
||||||
|
<verif>^([0-3])$</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Position in register" type="num">
|
||||||
|
<position>10.2</position>
|
||||||
|
<size>0.6</size>
|
||||||
|
<verif>^(\d*)$</verif>
|
||||||
|
</param>
|
||||||
|
</reg>
|
||||||
|
</config>
|
||||||
|
<regular>
|
||||||
|
<reg name="Environmental sensors" id="14">
|
||||||
|
<endpoint name="Temperature" type="num" dir="inp">
|
||||||
|
<position>0</position>
|
||||||
|
<size>2</size>
|
||||||
|
<units>
|
||||||
|
<unit name="C" factor="0.1" offset="0"/>
|
||||||
|
<unit name="F" factor="0.18" offset="32"/>
|
||||||
|
<unit name="K" factor="0.1" offset="273.15"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="Pressure" type="num" dir="inp">
|
||||||
|
<position>2</position>
|
||||||
|
<size>4</size>
|
||||||
|
<units>
|
||||||
|
<unit name="mbar" factor="0.01" offset="0"/>
|
||||||
|
<unit name="Pa" factor="1" offset="0"/>
|
||||||
|
<unit name="kPa" factor="0.001" offset="0"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="Altitude" type="num" dir="inp">
|
||||||
|
<position>6</position>
|
||||||
|
<size>2</size>
|
||||||
|
<units>
|
||||||
|
<unit name="m" factor="1" offset="0"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
</reg>
|
||||||
|
<reg name="Status sensors" id="15">
|
||||||
|
<endpoint name="Battery" type="num" dir="inp">
|
||||||
|
<position>0</position>
|
||||||
|
<size>2</size>
|
||||||
|
<units>
|
||||||
|
<unit name="V" factor="0.01" offset="0"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="Offset" type="num" dir="inp">
|
||||||
|
<position>2</position>
|
||||||
|
<size>2</size>
|
||||||
|
<units>
|
||||||
|
<unit name="V" factor="0.01" offset="0"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
</reg>
|
||||||
|
<reg name="Emma events" id="16">
|
||||||
|
<endpoint name="Alarm" type="num" dir="inp">
|
||||||
|
<position>0</position>
|
||||||
|
<size>1</size>
|
||||||
|
</endpoint>
|
||||||
|
</reg>
|
||||||
|
<reg name="Wrist motion" id="17">
|
||||||
|
<endpoint name="Feature" type="num" dir="inp">
|
||||||
|
<position>0</position>
|
||||||
|
<size>3</size>
|
||||||
|
</endpoint>
|
||||||
|
</reg>
|
||||||
|
</regular>
|
||||||
|
</device>
|
43
fhem/FHEM/lib/SWAP/Robomotic/EnvPIR.xml
Normal file
43
fhem/FHEM/lib/SWAP/Robomotic/EnvPIR.xml
Normal file
@ -0,0 +1,43 @@
|
|||||||
|
<?xml version="1.0"?>
|
||||||
|
<device>
|
||||||
|
<developer>Robomotic</developer>
|
||||||
|
<product>Temp-Humidity-PIR sensor</product>
|
||||||
|
<pwrdownmode>true</pwrdownmode>
|
||||||
|
<regular>
|
||||||
|
<reg name="Voltage supply" id="11">
|
||||||
|
<endpoint name="Voltage" type="num" dir="inp">
|
||||||
|
<size>2</size>
|
||||||
|
<units>
|
||||||
|
<unit name="V" factor="0.001" offset="0"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
</reg>
|
||||||
|
<reg name="Humidity and Temperature" id="12">
|
||||||
|
<endpoint name="Temperature" type="num" dir="inp">
|
||||||
|
<position>0</position>
|
||||||
|
<size>2</size>
|
||||||
|
<units>
|
||||||
|
<unit name="C" factor="0.1" offset="-50"/>
|
||||||
|
<unit name="F" factor="0.18" offset="-18"/>
|
||||||
|
<unit name="K" factor="0.1" offset="223.15"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="Humidity" type="num" dir="inp">
|
||||||
|
<position>2</position>
|
||||||
|
<size>2</size>
|
||||||
|
<units>
|
||||||
|
<unit name="%" factor="0.1" offset="0"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
</reg>
|
||||||
|
<reg name="PIR status" id="13">
|
||||||
|
<endpoint name="PIR" type="num" dir="inp">
|
||||||
|
<size>1</size>
|
||||||
|
</endpoint>
|
||||||
|
</reg>
|
||||||
|
</regular>
|
||||||
|
</device>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
55
fhem/FHEM/lib/SWAP/Robomotic/LuminoPod.xml
Normal file
55
fhem/FHEM/lib/SWAP/Robomotic/LuminoPod.xml
Normal file
@ -0,0 +1,55 @@
|
|||||||
|
<?xml version="1.0"?>
|
||||||
|
<device>
|
||||||
|
<developer>Robomotic</developer>
|
||||||
|
<product>LuminoPod</product>
|
||||||
|
<pwrdownmode>true</pwrdownmode>
|
||||||
|
<config>
|
||||||
|
<reg name="PWR" id="11">
|
||||||
|
<param name="PwrOn" type="bin">
|
||||||
|
<size>1.0</size>
|
||||||
|
<default>1</default>
|
||||||
|
</param>
|
||||||
|
</reg>
|
||||||
|
<reg name="CONFIG" id="12">
|
||||||
|
<param name="IntegrationTime" type="num">
|
||||||
|
<position>0.0</position>
|
||||||
|
<size>0.2</size>
|
||||||
|
</param>
|
||||||
|
<param name="Gain" type="num">
|
||||||
|
<position>0.2</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
</param>
|
||||||
|
</reg>
|
||||||
|
</config>
|
||||||
|
<regular>
|
||||||
|
<reg name="VOLTAGE" id="13">
|
||||||
|
<endpoint name="V" type="num" dir="inp">
|
||||||
|
<size>2.0</size>
|
||||||
|
<units>
|
||||||
|
<unit name="V" factor="0.001" offset="0"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
</reg>
|
||||||
|
<reg name="SENSORIR" id="14">
|
||||||
|
<endpoint name="IRVALUE" type="num" dir="inp">
|
||||||
|
<size>2.0</size>
|
||||||
|
<units>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
</reg>
|
||||||
|
<reg name="LUX" id="15">
|
||||||
|
<endpoint name="Lumens" type="num" dir="inp">
|
||||||
|
<size>4.0</size>
|
||||||
|
<units>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
</reg>
|
||||||
|
<reg name="SENSORVISIBLE" id="16">
|
||||||
|
<endpoint name="value" type="num" dir="inp">
|
||||||
|
<size>2.0</size>
|
||||||
|
<units>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
</reg>
|
||||||
|
</regular>
|
||||||
|
</device>
|
54
fhem/FHEM/lib/SWAP/Robomotic/Repeater.xml
Normal file
54
fhem/FHEM/lib/SWAP/Robomotic/Repeater.xml
Normal file
@ -0,0 +1,54 @@
|
|||||||
|
<?xml version="1.0"?>
|
||||||
|
<device>
|
||||||
|
<developer>Robomotic</developer>
|
||||||
|
<product>Repeater node</product>
|
||||||
|
<pwrdownmode>false</pwrdownmode>
|
||||||
|
<config>
|
||||||
|
<reg name="Repeater mode" id="11">
|
||||||
|
<param name="Maximum hop" type="num">
|
||||||
|
<position>0</position>
|
||||||
|
<size>1</size>
|
||||||
|
<default>0</default>
|
||||||
|
</param>
|
||||||
|
</reg>
|
||||||
|
</config>
|
||||||
|
<regular>
|
||||||
|
<reg name="Binary output 0" id="12">
|
||||||
|
<endpoint name="Binary 0" type="bin" dir="out"/>
|
||||||
|
</reg>
|
||||||
|
<reg name="Binary output 1" id="13">
|
||||||
|
<endpoint name="Binary 1" type="bin" dir="out"/>
|
||||||
|
</reg>
|
||||||
|
<reg name="Binary output 2" id="14">
|
||||||
|
<endpoint name="Binary 2" type="bin" dir="out"/>
|
||||||
|
</reg>
|
||||||
|
<reg name="Binary output 3" id="15">
|
||||||
|
<endpoint name="Binary 3" type="bin" dir="out"/>
|
||||||
|
</reg>
|
||||||
|
<reg name="Binary output 4" id="16">
|
||||||
|
<endpoint name="Binary 4" type="bin" dir="out"/>
|
||||||
|
</reg>
|
||||||
|
<reg name="Binary output 5" id="17">
|
||||||
|
<endpoint name="Binary 5" type="bin" dir="out"/>
|
||||||
|
</reg>
|
||||||
|
<reg name="Binary output 6" id="18">
|
||||||
|
<endpoint name="Binary 6" type="bin" dir="out"/>
|
||||||
|
</reg>
|
||||||
|
<reg name="Binary output 7" id="19">
|
||||||
|
<endpoint name="Binary 7" type="bin" dir="out"/>
|
||||||
|
</reg>
|
||||||
|
<reg name="PWM output 0" id="20">
|
||||||
|
<endpoint name="PWM output 0" type="num" dir="out"/>
|
||||||
|
</reg>
|
||||||
|
<reg name="PWM output 1" id="21">
|
||||||
|
<endpoint name="PWM output 1" type="num" dir="out"/>
|
||||||
|
</reg>
|
||||||
|
<reg name="PWM output 2" id="22">
|
||||||
|
<endpoint name="PWM output 2" type="num" dir="out"/>
|
||||||
|
</reg>
|
||||||
|
<reg name="PWM output 3" id="23">
|
||||||
|
<endpoint name="PWM output 3" type="num" dir="out"/>
|
||||||
|
</reg>
|
||||||
|
</regular>
|
||||||
|
</device>
|
||||||
|
|
130
fhem/FHEM/lib/SWAP/Robomotic/SeismoFloor.xml
Normal file
130
fhem/FHEM/lib/SWAP/Robomotic/SeismoFloor.xml
Normal file
@ -0,0 +1,130 @@
|
|||||||
|
<?xml version="1.0"?>
|
||||||
|
<device>
|
||||||
|
<developer>Robomotic</developer>
|
||||||
|
<product>SeismoFloor simple</product>
|
||||||
|
<pwrdownmode>false</pwrdownmode>
|
||||||
|
<regular>
|
||||||
|
<reg name="Voltage supply" id="11">
|
||||||
|
<endpoint name="Voltage" type="num" dir="inp">
|
||||||
|
<size>2</size>
|
||||||
|
<units>
|
||||||
|
<unit name="V" factor="0.001" offset="0"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
</reg>
|
||||||
|
<reg name="Accelerations" id="12">
|
||||||
|
<endpoint name="Ax" type="num" dir="inp">
|
||||||
|
<position>0</position>
|
||||||
|
<size>2</size>
|
||||||
|
<units>
|
||||||
|
<unit name="G" factor="0.00376390" offset="0"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="Ay" type="num" dir="inp">
|
||||||
|
<position>2</position>
|
||||||
|
<size>2</size>
|
||||||
|
<units>
|
||||||
|
<unit name="G" factor="0.00376009" offset="0"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="Az" type="num" dir="inp">
|
||||||
|
<position>4</position>
|
||||||
|
<size>2</size>
|
||||||
|
<units>
|
||||||
|
<unit name="G" factor="0.00349265" offset="0"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
</reg>
|
||||||
|
<reg name="Interrupt code" id="13">
|
||||||
|
<endpoint name="OVERRUNY" type="num" dir="inp">
|
||||||
|
<position>0.7</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="WATERMARK" type="num" dir="inp">
|
||||||
|
<position>0.6</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="FREE_FALL" type="num" dir="inp">
|
||||||
|
<position>0.5</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="INACTIVITY" type="num" dir="inp">
|
||||||
|
<position>0.4</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="ACTIVITY" type="num" dir="inp">
|
||||||
|
<position>0.3</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="DOUBLE_TAP" type="num" dir="inp">
|
||||||
|
<position>0.2</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="SINGLE_TAP" type="num" dir="inp">
|
||||||
|
<position>0.1</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="DATA_READY" type="num" dir="inp">
|
||||||
|
<position>0.0</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
</endpoint>
|
||||||
|
</reg>
|
||||||
|
</regular>
|
||||||
|
<config>
|
||||||
|
<reg name="Settings" id="14">
|
||||||
|
<param name="Tap" type="num">
|
||||||
|
<position>0.0</position>
|
||||||
|
<size>0.2</size>
|
||||||
|
<verif>^(\d*)$</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Stream" type="num">
|
||||||
|
<position>0.2</position>
|
||||||
|
<size>0.2</size>
|
||||||
|
<verif>^(\d*)$</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Frequency" type="num">
|
||||||
|
<position>0.4</position>
|
||||||
|
<size>0.4</size>
|
||||||
|
<verif>^(\d*)$</verif>
|
||||||
|
<default>4</default>
|
||||||
|
</param>
|
||||||
|
</reg>
|
||||||
|
<reg name="Range" id="15">
|
||||||
|
<param name="G" type="num">
|
||||||
|
<position>0</position>
|
||||||
|
<size>1</size>
|
||||||
|
<default>2</default>
|
||||||
|
<verif>^(\d*)$</verif>
|
||||||
|
</param>
|
||||||
|
</reg>
|
||||||
|
<reg name="Tap detection" id="16">
|
||||||
|
<param name="Axis selection" type="num">
|
||||||
|
<position>0</position>
|
||||||
|
<size>1</size>
|
||||||
|
<verif>^(\d*)$</verif>
|
||||||
|
</param>
|
||||||
|
</reg>
|
||||||
|
<reg name="Tap settings" id="17">
|
||||||
|
<param name="Threshold" type="num">
|
||||||
|
<position>0</position>
|
||||||
|
<size>1</size>
|
||||||
|
<verif>^(\d*)$</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Duration" type="num">
|
||||||
|
<position>1</position>
|
||||||
|
<size>1</size>
|
||||||
|
<verif>^(\d*)$</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Latency" type="num">
|
||||||
|
<position>2</position>
|
||||||
|
<size>1</size>
|
||||||
|
<verif>^(\d*)$</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Window" type="num">
|
||||||
|
<position>3</position>
|
||||||
|
<size>1</size>
|
||||||
|
<verif>^(\d*)$</verif>
|
||||||
|
</param>
|
||||||
|
</reg>
|
||||||
|
</config>
|
||||||
|
</device>
|
34
fhem/FHEM/lib/SWAP/Robomotic/temphum.xml
Normal file
34
fhem/FHEM/lib/SWAP/Robomotic/temphum.xml
Normal file
@ -0,0 +1,34 @@
|
|||||||
|
<?xml version="1.0"?>
|
||||||
|
<device>
|
||||||
|
<developer>panStamp</developer>
|
||||||
|
<product>Dual Temperature-Humidity sensor</product>
|
||||||
|
<pwrdownmode>true</pwrdownmode>
|
||||||
|
<regular>
|
||||||
|
<reg name="Voltage supply" id="11">
|
||||||
|
<endpoint name="Voltage" type="num" dir="inp">
|
||||||
|
<size>2</size>
|
||||||
|
<units>
|
||||||
|
<unit name="V" factor="0.001" offset="0"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
</reg>
|
||||||
|
<reg name="Humidity and Temperature" id="12">
|
||||||
|
<endpoint name="Temperature" type="num" dir="inp">
|
||||||
|
<position>0</position>
|
||||||
|
<size>2</size>
|
||||||
|
<units>
|
||||||
|
<unit name="C" factor="0.1" offset="-50"/>
|
||||||
|
<unit name="F" factor="0.18" offset="-18"/>
|
||||||
|
<unit name="K" factor="0.1" offset="223.15"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="Humidity" type="num" dir="inp">
|
||||||
|
<position>2</position>
|
||||||
|
<size>2</size>
|
||||||
|
<units>
|
||||||
|
<unit name="%" factor="0.1" offset="0"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
</reg>
|
||||||
|
</regular>
|
||||||
|
</device>
|
41
fhem/FHEM/lib/SWAP/Robomotic/temppress.xml
Normal file
41
fhem/FHEM/lib/SWAP/Robomotic/temppress.xml
Normal file
@ -0,0 +1,41 @@
|
|||||||
|
<?xml version="1.0"?>
|
||||||
|
<device>
|
||||||
|
<developer>Robomotic</developer>
|
||||||
|
<product>Dual Temperature-Barometric pressure and motion sensor</product>
|
||||||
|
<pwrdownmode>true</pwrdownmode>
|
||||||
|
<regular>
|
||||||
|
<reg name="Voltage supply" id="11">
|
||||||
|
<endpoint name="Voltage" type="num" dir="inp">
|
||||||
|
<size>2</size>
|
||||||
|
<units>
|
||||||
|
<unit name="V" factor="0.001" offset="0"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
</reg>
|
||||||
|
<reg name="Temperature and Pressure" id="12">
|
||||||
|
<endpoint name="Temperature" type="num" dir="inp">
|
||||||
|
<position>0</position>
|
||||||
|
<size>2</size>
|
||||||
|
<units>
|
||||||
|
<unit name="C" factor="0.1" offset="-50"/>
|
||||||
|
<unit name="F" factor="0.18" offset="-18"/>
|
||||||
|
<unit name="K" factor="0.1" offset="223.15"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="Pressure" type="num" dir="inp">
|
||||||
|
<position>2</position>
|
||||||
|
<size>4</size>
|
||||||
|
<units>
|
||||||
|
<unit name="Pa" factor="1" offset="0"/>
|
||||||
|
<unit name="mbar" factor="0.01" offset="0"/>
|
||||||
|
<unit name="bar" factor="0.00001" offset="0"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
</reg>
|
||||||
|
<reg name="PIR status" id="13">
|
||||||
|
<endpoint name="PIR" type="num" dir="inp">
|
||||||
|
<size>1</size>
|
||||||
|
</endpoint>
|
||||||
|
</reg>
|
||||||
|
</regular>
|
||||||
|
</device>
|
43
fhem/FHEM/lib/SWAP/devices.xml
Normal file
43
fhem/FHEM/lib/SWAP/devices.xml
Normal file
@ -0,0 +1,43 @@
|
|||||||
|
<?xml version="1.0"?>
|
||||||
|
<devices>
|
||||||
|
<developer id="1" name="panStamp">
|
||||||
|
<dev id="1" name="temphum" label="Dual Temperature/Humidity sensor"/>
|
||||||
|
<dev id="2" name="chronos" label="SWAP-enabled Chronos watch"/>
|
||||||
|
<dev id="3" name="rgbdriver" label="RGB driver board"/>
|
||||||
|
<dev id="4" name="temp" label="Temperature sensor"/>
|
||||||
|
<dev id="5" name="temppress" label="Dual Temperature-Barometric pressure sensor"/>
|
||||||
|
<dev id="6" name="bininps" label="Binary/Counter input module"/>
|
||||||
|
<dev id="7" name="binouts" label="Binary/PWM output module"/>
|
||||||
|
<dev id="8" name="lcddriver" label="Alphanumeric 2x16 LCD driver"/>
|
||||||
|
<dev id="9" name="pulsegen" label="Programmable pulse generator"/>
|
||||||
|
<dev id="10" name="pulsecounter" label="Pulse counter"/>
|
||||||
|
<dev id="11" name="meter" label="Energy meter"/>
|
||||||
|
<dev id="12" name="binouts2" label="Advanced Binary/PWM output module + repeater"/>
|
||||||
|
<dev id="13" name="respira" label="Respira sensor for CO and NO2"/>
|
||||||
|
<dev id="14" name="soilmoisture" label="Soil moisture sensor"/>
|
||||||
|
</developer>
|
||||||
|
<developer id="17" name="Robomotic">
|
||||||
|
<dev id="1" name="EmmaTI" label="Emma watch"/>
|
||||||
|
<dev id="2" name="SeismoFloor" label="Floor sensor"/>
|
||||||
|
<dev id="3" name="EnvPIR" label="Environment and motion sensor"/>
|
||||||
|
<dev id="4" name="Repeater" label="Robomotic repeater"/>
|
||||||
|
<dev id="5" name="LuminoPod" label="Luminosity sensor"/>
|
||||||
|
</developer>
|
||||||
|
<developer id="22" name="Luka Mustafa - Musti">
|
||||||
|
<dev id="1" name="sfpddm" label="SFP DDM monitoring system"/>
|
||||||
|
</developer>
|
||||||
|
<developer id="25" name="IulianV">
|
||||||
|
<dev id="1" name="onewire" label="OneWire Temperature DS18B20x3"/>
|
||||||
|
</developer>
|
||||||
|
<developer id="27" name="Miom">
|
||||||
|
<dev id="1" name="temphumlight" label="Temperature/Humidity and Light sensor"/>
|
||||||
|
</developer>
|
||||||
|
<developer id="29" name="panMillenium">
|
||||||
|
<dev id="1" name="panmillenium1" label="Crouzet Millenium 3 wireless interface by panSTamp"/>
|
||||||
|
</developer>
|
||||||
|
<developer id="34" name="justme">
|
||||||
|
<dev id="3" name="rgbdriver" label="RGB driver board with IR"/>
|
||||||
|
<dev id="4294967295" name="streamtest" label="PanStream Test"/>
|
||||||
|
<dev id="15" name="panfirmata" label="PanStream Firmata"/>
|
||||||
|
</developer>
|
||||||
|
</devices>
|
13
fhem/FHEM/lib/SWAP/justme/panfirmata.xml
Normal file
13
fhem/FHEM/lib/SWAP/justme/panfirmata.xml
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
<?xml version="1.0"?>
|
||||||
|
<device>
|
||||||
|
<developer>justme</developer>
|
||||||
|
<product>PanStreamFirmata</product>
|
||||||
|
<pwrdownmode>false</pwrdownmode>
|
||||||
|
<regular>
|
||||||
|
<reg name="PanStream" id="11">
|
||||||
|
<endpoint name="Stream" type="stream" dir="inp">
|
||||||
|
<size>32</size>
|
||||||
|
</endpoint>
|
||||||
|
</reg>
|
||||||
|
</regular>
|
||||||
|
</device>
|
86
fhem/FHEM/lib/SWAP/justme/rgbdriver.xml
Normal file
86
fhem/FHEM/lib/SWAP/justme/rgbdriver.xml
Normal file
@ -0,0 +1,86 @@
|
|||||||
|
<?xml version="1.0"?>
|
||||||
|
<device>
|
||||||
|
<developer>justme</developer>
|
||||||
|
<product>RGB LED controller</product>
|
||||||
|
<pwrdownmode>false</pwrdownmode>
|
||||||
|
<config>
|
||||||
|
<reg name="PowerOn" id="14">
|
||||||
|
<param name="PowerOnState" type="num" dir="out">
|
||||||
|
<size>5</size>
|
||||||
|
</param>
|
||||||
|
<param name="State" type="num" dir="out">
|
||||||
|
<position>0</position>
|
||||||
|
<size>1</size>
|
||||||
|
<default>0</default>
|
||||||
|
<verif>(0|1|2|3)</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Brightness" type="num" dir="out">
|
||||||
|
<position>1</position>
|
||||||
|
<size>1</size>
|
||||||
|
</param>
|
||||||
|
<param name="Color" type="num" dir="out">
|
||||||
|
<position>2</position>
|
||||||
|
<size>3</size>
|
||||||
|
</param>
|
||||||
|
</reg>
|
||||||
|
<reg name="Repeater mode" id="16">
|
||||||
|
<param name="Maximum hop" type="num">
|
||||||
|
<size>1</size>
|
||||||
|
<default>0</default>
|
||||||
|
<verif>([1-9]|1[0-5])</verif>
|
||||||
|
</param>
|
||||||
|
</reg>
|
||||||
|
</config>
|
||||||
|
<regular>
|
||||||
|
<reg name="RGB" id="11">
|
||||||
|
<endpoint name="RGBlevel" type="num" dir="out">
|
||||||
|
<size>3</size>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="Red" type="num" dir="out">
|
||||||
|
<size>1</size>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="Green" type="num" dir="out">
|
||||||
|
<position>1</position>
|
||||||
|
<size>1</size>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="Blue" type="num" dir="out">
|
||||||
|
<position>2</position>
|
||||||
|
<size>1</size>
|
||||||
|
</endpoint>
|
||||||
|
</reg>
|
||||||
|
<reg name="IR" id="12">
|
||||||
|
<endpoint name="IRCommand" type="num" dir="inp">
|
||||||
|
<size>5</size>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="Type" type="num" dir="inp">
|
||||||
|
<position>0</position>
|
||||||
|
<size>1</size>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="Value" type="num" dir="inp">
|
||||||
|
<position>1</position>
|
||||||
|
<size>4</size>
|
||||||
|
</endpoint>
|
||||||
|
</reg>
|
||||||
|
<reg name="Temp" id="13">
|
||||||
|
<endpoint name="InternalTemperature" type="num" dir="inp">
|
||||||
|
<size>4</size>
|
||||||
|
<units>
|
||||||
|
<unit name="C" factor="1" offset="0"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
</reg>
|
||||||
|
<reg name="Cmd" id="15">
|
||||||
|
<endpoint name="Command" type="num" dir="out">
|
||||||
|
<size>6</size>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="Cmd" type="num" dir="out">
|
||||||
|
<position>0</position>
|
||||||
|
<size>1</size>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="Args" type="num" dir="out">
|
||||||
|
<position>1</position>
|
||||||
|
<size>5</size>
|
||||||
|
</endpoint>
|
||||||
|
</reg>
|
||||||
|
</regular>
|
||||||
|
</device>
|
13
fhem/FHEM/lib/SWAP/justme/streamtest.xml
Normal file
13
fhem/FHEM/lib/SWAP/justme/streamtest.xml
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
<?xml version="1.0"?>
|
||||||
|
<device>
|
||||||
|
<developer>justme</developer>
|
||||||
|
<product>PanStream Test</product>
|
||||||
|
<pwrdownmode>false</pwrdownmode>
|
||||||
|
<regular>
|
||||||
|
<reg name="PanStream" id="11">
|
||||||
|
<endpoint name="Stream" type="stream" dir="inp">
|
||||||
|
<size>32</size>
|
||||||
|
</endpoint>
|
||||||
|
</reg>
|
||||||
|
</regular>
|
||||||
|
</device>
|
1107
fhem/FHEM/lib/SWAP/panMillenium/panmillenium1.xml
Normal file
1107
fhem/FHEM/lib/SWAP/panMillenium/panmillenium1.xml
Normal file
File diff suppressed because it is too large
Load Diff
85
fhem/FHEM/lib/SWAP/panStamp/bininps.xml
Normal file
85
fhem/FHEM/lib/SWAP/panStamp/bininps.xml
Normal file
@ -0,0 +1,85 @@
|
|||||||
|
<?xml version="1.0"?>
|
||||||
|
<device>
|
||||||
|
<developer>panStamp</developer>
|
||||||
|
<product>Binary/Counter input module</product>
|
||||||
|
<pwrdownmode>true</pwrdownmode>
|
||||||
|
<regular>
|
||||||
|
<reg name="Voltage supply" id="11">
|
||||||
|
<endpoint name="Voltage" type="num" dir="inp">
|
||||||
|
<size>2</size>
|
||||||
|
<units>
|
||||||
|
<unit name="V" factor="0.001" offset="0"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
</reg>
|
||||||
|
<reg name="Binary states" id="12">
|
||||||
|
<endpoint name="Binary 0" type="bin" dir="inp">
|
||||||
|
<position>1.7</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="Binary 1" type="bin" dir="inp">
|
||||||
|
<position>1.6</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="Binary 2" type="bin" dir="inp">
|
||||||
|
<position>1.5</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="Binary 3" type="bin" dir="inp">
|
||||||
|
<position>1.4</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="Binary 4" type="bin" dir="inp">
|
||||||
|
<position>1.3</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="Binary 5" type="bin" dir="inp">
|
||||||
|
<position>1.2</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="Binary 6" type="bin" dir="inp">
|
||||||
|
<position>1.1</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="Binary 7" type="bin" dir="inp">
|
||||||
|
<position>1.0</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="Binary 8" type="bin" dir="inp">
|
||||||
|
<position>0.7</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="Binary 9" type="bin" dir="inp">
|
||||||
|
<position>0.6</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="Binary 10" type="bin" dir="inp">
|
||||||
|
<position>0.5</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="Binary 11" type="bin" dir="inp">
|
||||||
|
<position>0.4</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
</endpoint>
|
||||||
|
</reg>
|
||||||
|
<reg name="Counters" id="13">
|
||||||
|
<endpoint name="Counter 0" type="num" dir="inp">
|
||||||
|
<position>3</position>
|
||||||
|
<size>1</size>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="Counter 1" type="num" dir="inp">
|
||||||
|
<position>2</position>
|
||||||
|
<size>1</size>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="Counter 2" type="num" dir="inp">
|
||||||
|
<position>1</position>
|
||||||
|
<size>1</size>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="Counter 3" type="num" dir="inp">
|
||||||
|
<position>0</position>
|
||||||
|
<size>1</size>
|
||||||
|
</endpoint>
|
||||||
|
</reg>
|
||||||
|
</regular>
|
||||||
|
</device>
|
||||||
|
|
61
fhem/FHEM/lib/SWAP/panStamp/binouts.xml
Normal file
61
fhem/FHEM/lib/SWAP/panStamp/binouts.xml
Normal file
@ -0,0 +1,61 @@
|
|||||||
|
<?xml version="1.0"?>
|
||||||
|
<device>
|
||||||
|
<developer>panStamp</developer>
|
||||||
|
<product>Binary/PWM output module</product>
|
||||||
|
<pwrdownmode>false</pwrdownmode>
|
||||||
|
<regular>
|
||||||
|
<reg name="Binary outputs" id="11">
|
||||||
|
<endpoint name="Binary 0" type="bin" dir="out">
|
||||||
|
<position>0.7</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="Binary 1" type="bin" dir="out">
|
||||||
|
<position>0.6</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="Binary 2" type="bin" dir="out">
|
||||||
|
<position>0.5</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="Binary 3" type="bin" dir="out">
|
||||||
|
<position>0.4</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="Binary 4" type="bin" dir="out">
|
||||||
|
<position>0.3</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="Binary 5" type="bin" dir="out">
|
||||||
|
<position>0.2</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="Binary 6" type="bin" dir="out">
|
||||||
|
<position>0.1</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="Binary 7" type="bin" dir="out">
|
||||||
|
<position>0.0</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
</endpoint>
|
||||||
|
</reg>
|
||||||
|
<reg name="PWM outputs" id="12">
|
||||||
|
<endpoint name="PWM output 0" type="num" dir="out">
|
||||||
|
<position>3</position>
|
||||||
|
<size>1</size>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="PWM output 1" type="num" dir="out">
|
||||||
|
<position>2</position>
|
||||||
|
<size>1</size>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="PWM output 2" type="num" dir="out">
|
||||||
|
<position>1</position>
|
||||||
|
<size>1</size>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="PWM output 3" type="num" dir="out">
|
||||||
|
<position>0</position>
|
||||||
|
<size>1</size>
|
||||||
|
</endpoint>
|
||||||
|
</reg>
|
||||||
|
</regular>
|
||||||
|
</device>
|
||||||
|
|
55
fhem/FHEM/lib/SWAP/panStamp/binouts2.xml
Normal file
55
fhem/FHEM/lib/SWAP/panStamp/binouts2.xml
Normal file
@ -0,0 +1,55 @@
|
|||||||
|
<?xml version="1.0"?>
|
||||||
|
<device>
|
||||||
|
<developer>panStamp</developer>
|
||||||
|
<product>Advanced Binary/PWM output module + repeater</product>
|
||||||
|
<pwrdownmode>false</pwrdownmode>
|
||||||
|
<config>
|
||||||
|
<reg name="Repeater mode" id="11">
|
||||||
|
<param name="Maximum hop" type="num">
|
||||||
|
<position>0</position>
|
||||||
|
<size>1</size>
|
||||||
|
<default>0</default>
|
||||||
|
<verif>([1-9]|1[0-5])</verif>
|
||||||
|
</param>
|
||||||
|
</reg>
|
||||||
|
</config>
|
||||||
|
<regular>
|
||||||
|
<reg name="Binary output 0" id="12">
|
||||||
|
<endpoint name="Binary 0" type="bin" dir="out"/>
|
||||||
|
</reg>
|
||||||
|
<reg name="Binary output 1" id="13">
|
||||||
|
<endpoint name="Binary 1" type="bin" dir="out"/>
|
||||||
|
</reg>
|
||||||
|
<reg name="Binary output 2" id="14">
|
||||||
|
<endpoint name="Binary 2" type="bin" dir="out"/>
|
||||||
|
</reg>
|
||||||
|
<reg name="Binary output 3" id="15">
|
||||||
|
<endpoint name="Binary 3" type="bin" dir="out"/>
|
||||||
|
</reg>
|
||||||
|
<reg name="Binary output 4" id="16">
|
||||||
|
<endpoint name="Binary 4" type="bin" dir="out"/>
|
||||||
|
</reg>
|
||||||
|
<reg name="Binary output 5" id="17">
|
||||||
|
<endpoint name="Binary 5" type="bin" dir="out"/>
|
||||||
|
</reg>
|
||||||
|
<reg name="Binary output 6" id="18">
|
||||||
|
<endpoint name="Binary 6" type="bin" dir="out"/>
|
||||||
|
</reg>
|
||||||
|
<reg name="Binary output 7" id="19">
|
||||||
|
<endpoint name="Binary 7" type="bin" dir="out"/>
|
||||||
|
</reg>
|
||||||
|
<reg name="PWM output 0" id="20">
|
||||||
|
<endpoint name="PWM output 0" type="num" dir="out"/>
|
||||||
|
</reg>
|
||||||
|
<reg name="PWM output 1" id="21">
|
||||||
|
<endpoint name="PWM output 1" type="num" dir="out"/>
|
||||||
|
</reg>
|
||||||
|
<reg name="PWM output 2" id="22">
|
||||||
|
<endpoint name="PWM output 2" type="num" dir="out"/>
|
||||||
|
</reg>
|
||||||
|
<reg name="PWM output 3" id="23">
|
||||||
|
<endpoint name="PWM output 3" type="num" dir="out"/>
|
||||||
|
</reg>
|
||||||
|
</regular>
|
||||||
|
</device>
|
||||||
|
|
407
fhem/FHEM/lib/SWAP/panStamp/chronos.xml
Normal file
407
fhem/FHEM/lib/SWAP/panStamp/chronos.xml
Normal file
@ -0,0 +1,407 @@
|
|||||||
|
<?xml version="1.0"?>
|
||||||
|
<device>
|
||||||
|
<developer>panStamp</developer>
|
||||||
|
<product>SWAP-Chronos</product>
|
||||||
|
<pwrdownmode>true</pwrdownmode>
|
||||||
|
<config>
|
||||||
|
<reg name="Calibration" id="11">
|
||||||
|
<param name="Use metrics (1=Yes 0=No)" type="bin">
|
||||||
|
<position>0</position>
|
||||||
|
<size>1</size>
|
||||||
|
<default>1</default>
|
||||||
|
</param>
|
||||||
|
<param name="Current temperature in Celsious (NN.D format)" type="num">
|
||||||
|
<position>1</position>
|
||||||
|
<size>2</size>
|
||||||
|
<default>0</default>
|
||||||
|
<verif>[-+]?[0-9]*\.[0-9]{1}</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Current altitude in mts" type="num">
|
||||||
|
<position>3</position>
|
||||||
|
<size>2</size>
|
||||||
|
<verif>^(\d*)$</verif>
|
||||||
|
</param>
|
||||||
|
</reg>
|
||||||
|
<reg name="Date/Time" id="12">
|
||||||
|
<param name="Hour (24h format)" type="num">
|
||||||
|
<position>0</position>
|
||||||
|
<size>1</size>
|
||||||
|
<verif>HOUR</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Minutes" type="num">
|
||||||
|
<position>1</position>
|
||||||
|
<size>1</size>
|
||||||
|
<verif>MINUTE</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Year (YYYY format)" type="num">
|
||||||
|
<position>3</position>
|
||||||
|
<size>2</size>
|
||||||
|
<default>2011</default>
|
||||||
|
<verif>YEAR</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Month" type="num">
|
||||||
|
<position>5</position>
|
||||||
|
<size>1</size>
|
||||||
|
<default>1</default>
|
||||||
|
<verif>MONTH</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Day" type="num">
|
||||||
|
<position>6</position>
|
||||||
|
<size>1</size>
|
||||||
|
<default>1</default>
|
||||||
|
<verif>MDAY</verif>
|
||||||
|
</param>
|
||||||
|
</reg>
|
||||||
|
<reg name="Time alarm" id="13">
|
||||||
|
<param name="Hour" type="num">
|
||||||
|
<position>0</position>
|
||||||
|
<size>1</size>
|
||||||
|
<verif>HOUR</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Minutes" type="num">
|
||||||
|
<position>1</position>
|
||||||
|
<size>1</size>
|
||||||
|
<verif>MINUTE</verif>
|
||||||
|
</param>
|
||||||
|
</reg>
|
||||||
|
<reg name="Browser page 0" id="16">
|
||||||
|
<param name="Label (5 chars)" type="str">
|
||||||
|
<position>0</position>
|
||||||
|
<size>5</size>
|
||||||
|
<default>PAGE0</default>
|
||||||
|
<verif>^([A-Z0-9_-]){5}$</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Device address (1-255)" type="num">
|
||||||
|
<position>5</position>
|
||||||
|
<size>1</size>
|
||||||
|
<default>255</default>
|
||||||
|
<verif>RANGE(1,255)</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Register address (1-255)" type="num">
|
||||||
|
<position>6</position>
|
||||||
|
<size>1</size>
|
||||||
|
<default>255</default>
|
||||||
|
<verif>RANGE(1,255)</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Register ID (10-255)" type="num">
|
||||||
|
<position>7</position>
|
||||||
|
<size>1</size>
|
||||||
|
<default>10</default>
|
||||||
|
<verif>RANGE(10,255)</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Type of endpoint (1=num 0=bin)" type="bin">
|
||||||
|
<position>8.7</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
</param>
|
||||||
|
<param name="Direction of endpoint (1=Output 0=Input)" type="bin">
|
||||||
|
<position>8.6</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
</param>
|
||||||
|
<param name="Enable decimals (1=Enable 0=Disable)" type="bin">
|
||||||
|
<position>8.5</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
</param>
|
||||||
|
<param name="Value's signess (1=Signed 0=Unsigned)" type="bin">
|
||||||
|
<position>8.4</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
</param>
|
||||||
|
<param name="Value in register (1=Combined 0=Alone)" type="bin">
|
||||||
|
<position>8.3</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
</param>
|
||||||
|
<param name="Step up/down delta" type="num">
|
||||||
|
<position>9</position>
|
||||||
|
<size>1</size>
|
||||||
|
<verif>^(\d*)$</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Size in bytes (0-3)" type="num">
|
||||||
|
<position>10.0</position>
|
||||||
|
<size>0.2</size>
|
||||||
|
<default>1</default>
|
||||||
|
<verif>^([0-3])$</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Position in register" type="num">
|
||||||
|
<position>10.2</position>
|
||||||
|
<size>0.6</size>
|
||||||
|
<verif>^(\d*)$</verif>
|
||||||
|
</param>
|
||||||
|
</reg>
|
||||||
|
<reg name="Browser page 1" id="17">
|
||||||
|
<param name="Label (5 chars)" type="str">
|
||||||
|
<position>0</position>
|
||||||
|
<size>5</size>
|
||||||
|
<default>PAGE1</default>
|
||||||
|
<verif>^([A-Z0-9_-]){5}$</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Device address (1-255)" type="num">
|
||||||
|
<position>5</position>
|
||||||
|
<size>1</size>
|
||||||
|
<default>255</default>
|
||||||
|
<verif>RANGE(1,255)</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Register address (1-255)" type="num">
|
||||||
|
<position>6</position>
|
||||||
|
<size>1</size>
|
||||||
|
<default>255</default>
|
||||||
|
<verif>RANGE(1,255)</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Register ID (10-255)" type="num">
|
||||||
|
<position>7</position>
|
||||||
|
<size>1</size>
|
||||||
|
<default>10</default>
|
||||||
|
<verif>RANGE(10,255)</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Type of endpoint (1=num 0=bin)" type="bin">
|
||||||
|
<position>8.7</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
</param>
|
||||||
|
<param name="Direction of endpoint (1=Output 0=Input)" type="bin">
|
||||||
|
<position>8.6</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
</param>
|
||||||
|
<param name="Enable decimals (1=Enable 0=Disable)" type="bin">
|
||||||
|
<position>8.5</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
</param>
|
||||||
|
<param name="Value's signess (1=Signed 0=Unsigned)" type="bin">
|
||||||
|
<position>8.4</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
</param>
|
||||||
|
<param name="Value in register (1=Combined 0=Alone)" type="bin">
|
||||||
|
<position>8.3</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
</param>
|
||||||
|
<param name="Step up/down delta" type="num">
|
||||||
|
<position>9</position>
|
||||||
|
<size>1</size>
|
||||||
|
<verif>^(\d*)$</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Size in bytes (0-3)" type="num">
|
||||||
|
<position>10.0</position>
|
||||||
|
<size>0.2</size>
|
||||||
|
<default>1</default>
|
||||||
|
<verif>^([0-3])$</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Position in register" type="num">
|
||||||
|
<position>10.2</position>
|
||||||
|
<size>0.6</size>
|
||||||
|
<verif>^(\d*)$</verif>
|
||||||
|
</param>
|
||||||
|
</reg>
|
||||||
|
<reg name="Browser page 2" id="18">
|
||||||
|
<param name="Label (5 chars)" type="str">
|
||||||
|
<position>0</position>
|
||||||
|
<size>5</size>
|
||||||
|
<default>PAGE2</default>
|
||||||
|
<verif>^([A-Z0-9_-]){5}$</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Device address (1-255)" type="num">
|
||||||
|
<position>5</position>
|
||||||
|
<size>1</size>
|
||||||
|
<default>255</default>
|
||||||
|
<verif>RANGE(1,255)</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Register address (1-255)" type="num">
|
||||||
|
<position>6</position>
|
||||||
|
<size>1</size>
|
||||||
|
<default>255</default>
|
||||||
|
<verif>RANGE(1,255)</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Register ID (10-255)" type="num">
|
||||||
|
<position>7</position>
|
||||||
|
<size>1</size>
|
||||||
|
<default>10</default>
|
||||||
|
<verif>RANGE(10,255)</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Type of endpoint (1=num 0=bin)" type="bin">
|
||||||
|
<position>8.7</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
</param>
|
||||||
|
<param name="Direction of endpoint (1=Output 0=Input)" type="bin">
|
||||||
|
<position>8.6</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
</param>
|
||||||
|
<param name="Enable decimals (1=Enable 0=Disable)" type="bin">
|
||||||
|
<position>8.5</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
</param>
|
||||||
|
<param name="Value's signess (1=Signed 0=Unsigned)" type="bin">
|
||||||
|
<position>8.4</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
</param>
|
||||||
|
<param name="Value in register (1=Combined 0=Alone)" type="bin">
|
||||||
|
<position>8.3</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
</param>
|
||||||
|
<param name="Step up/down delta" type="num">
|
||||||
|
<position>9</position>
|
||||||
|
<size>1</size>
|
||||||
|
<verif>^(\d*)$</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Size in bytes (0-3)" type="num">
|
||||||
|
<position>10.0</position>
|
||||||
|
<size>0.2</size>
|
||||||
|
<default>1</default>
|
||||||
|
<verif>^([0-3])$</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Position in register" type="num">
|
||||||
|
<position>10.2</position>
|
||||||
|
<size>0.6</size>
|
||||||
|
<verif>^(\d*)$</verif>
|
||||||
|
</param>
|
||||||
|
</reg>
|
||||||
|
<reg name="Browser page 3" id="19">
|
||||||
|
<param name="Label (5 chars)" type="str">
|
||||||
|
<position>0</position>
|
||||||
|
<size>5</size>
|
||||||
|
<default>PAGE3</default>
|
||||||
|
<verif>^([A-Z0-9_-]){5}$</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Device address (1-255)" type="num">
|
||||||
|
<position>5</position>
|
||||||
|
<size>1</size>
|
||||||
|
<default>255</default>
|
||||||
|
<verif>RANGE(1,255)</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Register address (1-255)" type="num">
|
||||||
|
<position>6</position>
|
||||||
|
<size>1</size>
|
||||||
|
<default>255</default>
|
||||||
|
<verif>RANGE(1,255)</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Register ID (10-255)" type="num">
|
||||||
|
<position>7</position>
|
||||||
|
<size>1</size>
|
||||||
|
<default>10</default>
|
||||||
|
<verif>RANGE(10,255)</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Type of endpoint (1=num 0=bin)" type="bin">
|
||||||
|
<position>8.7</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
</param>
|
||||||
|
<param name="Direction of endpoint (1=Output 0=Input)" type="bin">
|
||||||
|
<position>8.6</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
</param>
|
||||||
|
<param name="Enable decimals (1=Enable 0=Disable)" type="bin">
|
||||||
|
<position>8.5</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
</param>
|
||||||
|
<param name="Value's signess (1=Signed 0=Unsigned)" type="bin">
|
||||||
|
<position>8.4</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
</param>
|
||||||
|
<param name="Value in register (1=Combined 0=Alone)" type="bin">
|
||||||
|
<position>8.3</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
</param>
|
||||||
|
<param name="Step up/down delta" type="num">
|
||||||
|
<position>9</position>
|
||||||
|
<size>1</size>
|
||||||
|
<verif>^(\d*)$</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Size in bytes (0-3)" type="num">
|
||||||
|
<position>10.0</position>
|
||||||
|
<size>0.2</size>
|
||||||
|
<default>1</default>
|
||||||
|
<verif>^([0-3])$</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Position in register" type="num">
|
||||||
|
<position>10.2</position>
|
||||||
|
<size>0.6</size>
|
||||||
|
<verif>^(\d*)$</verif>
|
||||||
|
</param>
|
||||||
|
</reg>
|
||||||
|
<reg name="Browser page 4" id="20">
|
||||||
|
<param name="Label (5 chars)" type="str">
|
||||||
|
<position>0</position>
|
||||||
|
<size>5</size>
|
||||||
|
<default>PAGE4</default>
|
||||||
|
<verif>^([A-Z0-9_-]){5}$</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Device address (1-255)" type="num">
|
||||||
|
<position>5</position>
|
||||||
|
<size>1</size>
|
||||||
|
<default>255</default>
|
||||||
|
<verif>RANGE(1,255)</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Register address (1-255)" type="num">
|
||||||
|
<position>6</position>
|
||||||
|
<size>1</size>
|
||||||
|
<default>255</default>
|
||||||
|
<verif>RANGE(1,255)</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Register ID (10-255)" type="num">
|
||||||
|
<position>7</position>
|
||||||
|
<size>1</size>
|
||||||
|
<default>10</default>
|
||||||
|
<verif>RANGE(10,255)</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Type of endpoint (1=num 0=bin)" type="bin">
|
||||||
|
<position>8.7</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
</param>
|
||||||
|
<param name="Direction of endpoint (1=Output 0=Input)" type="bin">
|
||||||
|
<position>8.6</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
</param>
|
||||||
|
<param name="Enable decimals (1=Enable 0=Disable)" type="bin">
|
||||||
|
<position>8.5</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
</param>
|
||||||
|
<param name="Value's signess (1=Signed 0=Unsigned)" type="bin">
|
||||||
|
<position>8.4</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
</param>
|
||||||
|
<param name="Value in register (1=Combined 0=Alone)" type="bin">
|
||||||
|
<position>8.3</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
</param>
|
||||||
|
<param name="Step up/down delta" type="num">
|
||||||
|
<position>9</position>
|
||||||
|
<size>1</size>
|
||||||
|
<verif>^(\d*)$</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Size in bytes (0-3)" type="num">
|
||||||
|
<position>10.0</position>
|
||||||
|
<size>0.2</size>
|
||||||
|
<default>1</default>
|
||||||
|
<verif>^([0-3])$</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Position in register" type="num">
|
||||||
|
<position>10.2</position>
|
||||||
|
<size>0.6</size>
|
||||||
|
<verif>^(\d*)$</verif>
|
||||||
|
</param>
|
||||||
|
</reg>
|
||||||
|
</config>
|
||||||
|
<regular>
|
||||||
|
<reg name="Environmental sensors" id="14">
|
||||||
|
<endpoint name="Temperature" type="num" dir="inp">
|
||||||
|
<position>0</position>
|
||||||
|
<size>2</size>
|
||||||
|
<units>
|
||||||
|
<unit name="C" factor="0.1" offset="0"/>
|
||||||
|
<unit name="F" factor="0.18" offset="32"/>
|
||||||
|
<unit name="K" factor="0.1" offset="273.15"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="Pressure" type="num" dir="inp">
|
||||||
|
<position>2</position>
|
||||||
|
<size>4</size>
|
||||||
|
<units>
|
||||||
|
<unit name="mbar" factor="0.01" offset="0"/>
|
||||||
|
<unit name="Pa" factor="1" offset="0"/>
|
||||||
|
<unit name="kPa" factor="0.001" offset="0"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="Altitude" type="num" dir="inp">
|
||||||
|
<position>6</position>
|
||||||
|
<size>2</size>
|
||||||
|
<units>
|
||||||
|
<unit name="m" factor="1" offset="0"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
</reg>
|
||||||
|
</regular>
|
||||||
|
</device>
|
42
fhem/FHEM/lib/SWAP/panStamp/lcddriver.xml
Normal file
42
fhem/FHEM/lib/SWAP/panStamp/lcddriver.xml
Normal file
@ -0,0 +1,42 @@
|
|||||||
|
<?xml version="1.0"?>
|
||||||
|
<device>
|
||||||
|
<developer>panStamp</developer>
|
||||||
|
<product>Alphanumeric 2x16 LCD driver</product>
|
||||||
|
<pwrdownmode>false</pwrdownmode>
|
||||||
|
<regular>
|
||||||
|
<reg name="LCD line 0" id="11">
|
||||||
|
<endpoint name="LCD Line 0" type="str" dir="out">
|
||||||
|
<size>16</size>
|
||||||
|
</endpoint>
|
||||||
|
</reg>
|
||||||
|
<reg name="LCD line 1" id="12">
|
||||||
|
<endpoint name="LCD Line 1" type="str" dir="out">
|
||||||
|
<size>16</size>
|
||||||
|
</endpoint>
|
||||||
|
</reg>
|
||||||
|
<reg name="Backlight" id="13">
|
||||||
|
<endpoint name="Backlight level" type="bin" dir="out">
|
||||||
|
<size>0.1</size>
|
||||||
|
</endpoint>
|
||||||
|
</reg>
|
||||||
|
<reg name="Binary states" id="14">
|
||||||
|
<endpoint name="Binary 0" type="bin" dir="inp">
|
||||||
|
<position>0.7</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="Binary 1" type="bin" dir="inp">
|
||||||
|
<position>0.6</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="Binary 2" type="bin" dir="inp">
|
||||||
|
<position>0.5</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="Binary 3" type="bin" dir="inp">
|
||||||
|
<position>0.4</position>
|
||||||
|
<size>0.1</size>
|
||||||
|
</endpoint>
|
||||||
|
</reg>
|
||||||
|
</regular>
|
||||||
|
</device>
|
||||||
|
|
617
fhem/FHEM/lib/SWAP/panStamp/meter.xml
Normal file
617
fhem/FHEM/lib/SWAP/panStamp/meter.xml
Normal file
@ -0,0 +1,617 @@
|
|||||||
|
<?xml version="1.0"?>
|
||||||
|
<device>
|
||||||
|
<developer>panStamp</developer>
|
||||||
|
<product>Energy meter</product>
|
||||||
|
<pwrdownmode>false</pwrdownmode>
|
||||||
|
<config>
|
||||||
|
<reg name="Channel 0 calibration" id="18">
|
||||||
|
<param name="Chanel 0 - Voltage transformer scale (x100)" type="num">
|
||||||
|
<position>0</position>
|
||||||
|
<size>2</size>
|
||||||
|
<default>1700</default>
|
||||||
|
<verif>^(\d*)$</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Chanel 0 - Current transformer scale (x100)" type="num">
|
||||||
|
<position>2</position>
|
||||||
|
<size>2</size>
|
||||||
|
<default>500</default>
|
||||||
|
<verif>^(\d*)$</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Chanel 0 - Power factor offset (x100)" type="num">
|
||||||
|
<position>4</position>
|
||||||
|
<size>1</size>
|
||||||
|
<default>0</default>
|
||||||
|
<verif>^(\d*)$</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Chanel 0 - Enable" type="bin">
|
||||||
|
<position>5</position>
|
||||||
|
<size>1</size>
|
||||||
|
<default>1</default>
|
||||||
|
</param>
|
||||||
|
</reg>
|
||||||
|
<reg name="Channel 1 calibration" id="19">
|
||||||
|
<param name="Chanel 1 - Voltage transformer scale (x100)" type="num">
|
||||||
|
<position>0</position>
|
||||||
|
<size>2</size>
|
||||||
|
<default>1700</default>
|
||||||
|
<verif>^(\d*)$</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Chanel 1 - Current transformer scale (x100)" type="num">
|
||||||
|
<position>2</position>
|
||||||
|
<size>2</size>
|
||||||
|
<default>500</default>
|
||||||
|
<verif>^(\d*)$</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Chanel 1 - Power factor offset (x100)" type="num">
|
||||||
|
<position>4</position>
|
||||||
|
<size>1</size>
|
||||||
|
<default>0</default>
|
||||||
|
<verif>^(\d*)$</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Chanel 1 - Enable" type="bin">
|
||||||
|
<position>5</position>
|
||||||
|
<size>1</size>
|
||||||
|
<default>1</default>
|
||||||
|
</param>
|
||||||
|
</reg>
|
||||||
|
<reg name="Channel 2 calibration" id="20">
|
||||||
|
<param name="Chanel 2 - Voltage transformer scale (x100)" type="num">
|
||||||
|
<position>0</position>
|
||||||
|
<size>2</size>
|
||||||
|
<default>1700</default>
|
||||||
|
<verif>^(\d*)$</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Chanel 2 - Current transformer scale (x100)" type="num">
|
||||||
|
<position>2</position>
|
||||||
|
<size>2</size>
|
||||||
|
<default>500</default>
|
||||||
|
<verif>^(\d*)$</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Chanel 2 - Power factor offset (x100)" type="num">
|
||||||
|
<position>4</position>
|
||||||
|
<size>1</size>
|
||||||
|
<default>0</default>
|
||||||
|
<verif>^(\d*)$</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Chanel 2 - Enable" type="bin">
|
||||||
|
<position>5</position>
|
||||||
|
<size>1</size>
|
||||||
|
<default>1</default>
|
||||||
|
</param>
|
||||||
|
</reg>
|
||||||
|
<reg name="Channel 3 calibration" id="21">
|
||||||
|
<param name="Chanel 3 - Voltage transformer scale (x100)" type="num">
|
||||||
|
<position>0</position>
|
||||||
|
<size>2</size>
|
||||||
|
<default>1700</default>
|
||||||
|
<verif>^(\d*)$</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Chanel 3 - Current transformer scale (x100)" type="num">
|
||||||
|
<position>2</position>
|
||||||
|
<size>2</size>
|
||||||
|
<default>500</default>
|
||||||
|
<verif>^(\d*)$</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Chanel 3 - Power factor offset (x100)" type="num">
|
||||||
|
<position>4</position>
|
||||||
|
<size>1</size>
|
||||||
|
<default>0</default>
|
||||||
|
<verif>^(\d*)$</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Chanel 3 - Enable" type="bin">
|
||||||
|
<position>5</position>
|
||||||
|
<size>1</size>
|
||||||
|
<default>1</default>
|
||||||
|
</param>
|
||||||
|
</reg>
|
||||||
|
<reg name="Channel 4 calibration" id="22">
|
||||||
|
<param name="Chanel 4 - Voltage transformer scale (x100)" type="num">
|
||||||
|
<position>0</position>
|
||||||
|
<size>2</size>
|
||||||
|
<default>1700</default>
|
||||||
|
<verif>^(\d*)$</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Chanel 4 - Current transformer scale (x100)" type="num">
|
||||||
|
<position>2</position>
|
||||||
|
<size>2</size>
|
||||||
|
<default>500</default>
|
||||||
|
<verif>^(\d*)$</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Chanel 4 - Power factor offset (x100)" type="num">
|
||||||
|
<position>4</position>
|
||||||
|
<size>1</size>
|
||||||
|
<default>0</default>
|
||||||
|
<verif>^(\d*)$</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Chanel 4 - Enable" type="bin">
|
||||||
|
<position>5</position>
|
||||||
|
<size>1</size>
|
||||||
|
<default>1</default>
|
||||||
|
</param>
|
||||||
|
</reg>
|
||||||
|
<reg name="Channel 5 calibration" id="23">
|
||||||
|
<param name="Chanel 5 - Voltage transformer scale (x100)" type="num">
|
||||||
|
<position>0</position>
|
||||||
|
<size>2</size>
|
||||||
|
<default>1700</default>
|
||||||
|
<verif>^(\d*)$</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Chanel 5 - Current transformer scale (x100)" type="num">
|
||||||
|
<position>2</position>
|
||||||
|
<size>2</size>
|
||||||
|
<default>500</default>
|
||||||
|
<verif>^(\d*)$</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Chanel 5 - Power factor offset (x100)" type="num">
|
||||||
|
<position>4</position>
|
||||||
|
<size>1</size>
|
||||||
|
<default>0</default>
|
||||||
|
<verif>^(\d*)$</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Chanel 5 - Enable" type="bin">
|
||||||
|
<position>5</position>
|
||||||
|
<size>1</size>
|
||||||
|
<default>1</default>
|
||||||
|
</param>
|
||||||
|
</reg>
|
||||||
|
<reg name="Channel 6 calibration" id="24">
|
||||||
|
<param name="Chanel 6 - Voltage transformer scale (x100)" type="num">
|
||||||
|
<position>0</position>
|
||||||
|
<size>2</size>
|
||||||
|
<default>1700</default>
|
||||||
|
<verif>^(\d*)$</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Chanel 6 - Current transformer scale (x100)" type="num">
|
||||||
|
<position>2</position>
|
||||||
|
<size>2</size>
|
||||||
|
<default>500</default>
|
||||||
|
<verif>^(\d*)$</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Chanel 6 - Power factor offset (x100)" type="num">
|
||||||
|
<position>4</position>
|
||||||
|
<size>1</size>
|
||||||
|
<default>0</default>
|
||||||
|
<verif>^(\d*)$</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Chanel 6 - Enable" type="bin">
|
||||||
|
<position>5</position>
|
||||||
|
<size>1</size>
|
||||||
|
<default>1</default>
|
||||||
|
</param>
|
||||||
|
</reg>
|
||||||
|
<reg name="Pulse counter 0 calibration" id="28">
|
||||||
|
<param name="Counter 0 - Initial value (x100)" type="num">
|
||||||
|
<position>0</position>
|
||||||
|
<size>4</size>
|
||||||
|
<default>0</default>
|
||||||
|
<verif>^(\d*)$</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Counter 0 - Counts per unit step" type="num">
|
||||||
|
<position>4</position>
|
||||||
|
<size>2</size>
|
||||||
|
<default>1</default>
|
||||||
|
<verif>^(\d*)$</verif>
|
||||||
|
</param>
|
||||||
|
</reg>
|
||||||
|
<reg name="Pulse counter 1 calibration" id="29">
|
||||||
|
<param name="Counter 1 - Initial value (x100)" type="num">
|
||||||
|
<position>0</position>
|
||||||
|
<size>4</size>
|
||||||
|
<default>0</default>
|
||||||
|
<verif>^(\d*)$</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Counter 1 - Counts per unit step" type="num">
|
||||||
|
<position>4</position>
|
||||||
|
<size>2</size>
|
||||||
|
<default>1</default>
|
||||||
|
<verif>^(\d*)$</verif>
|
||||||
|
</param>
|
||||||
|
</reg>
|
||||||
|
<reg name="Pulse counter 2 calibration" id="30">
|
||||||
|
<param name="Counter 2 - Initial value (x100)" type="num">
|
||||||
|
<position>0</position>
|
||||||
|
<size>4</size>
|
||||||
|
<default>0</default>
|
||||||
|
<verif>^(\d*)$</verif>
|
||||||
|
</param>
|
||||||
|
<param name="Counter 2 - Counts per unit step" type="num">
|
||||||
|
<position>4</position>
|
||||||
|
<size>2</size>
|
||||||
|
<default>1</default>
|
||||||
|
<verif>^(\d*)$</verif>
|
||||||
|
</param>
|
||||||
|
</reg>
|
||||||
|
</config>
|
||||||
|
<regular>
|
||||||
|
<reg name="Energy channel 0" id="11">
|
||||||
|
<endpoint name="AC frequency 0" type="num" dir="inp">
|
||||||
|
<position>0</position>
|
||||||
|
<size>1</size>
|
||||||
|
<units>
|
||||||
|
<unit name="Hz" factor="1" offset="0"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="RMS Voltage 0" type="num" dir="inp">
|
||||||
|
<position>1</position>
|
||||||
|
<size>2</size>
|
||||||
|
<units>
|
||||||
|
<unit name="V" factor="1" offset="0"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="RMS Current 0" type="num" dir="inp">
|
||||||
|
<position>3</position>
|
||||||
|
<size>2</size>
|
||||||
|
<units>
|
||||||
|
<unit name="A" factor="0.01" offset="0"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="Apparent power 0" type="num" dir="inp">
|
||||||
|
<position>5</position>
|
||||||
|
<size>2</size>
|
||||||
|
<units>
|
||||||
|
<unit name="VA" factor="1" offset="0"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="Active power 0" type="num" dir="inp">
|
||||||
|
<position>7</position>
|
||||||
|
<size>2</size>
|
||||||
|
<units>
|
||||||
|
<unit name="W" factor="1" offset="0"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="Power factor 0" type="num" dir="inp">
|
||||||
|
<position>9</position>
|
||||||
|
<size>1</size>
|
||||||
|
<units>
|
||||||
|
<unit name="" factor="0.01" offset="0"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="Energy consumption 0" type="num" dir="inp">
|
||||||
|
<position>10</position>
|
||||||
|
<size>4</size>
|
||||||
|
<units>
|
||||||
|
<unit name="KWh" factor="0.01" offset="0"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
</reg>
|
||||||
|
<reg name="Energy channel 1" id="12">
|
||||||
|
<endpoint name="AC frequency 1" type="num" dir="inp">
|
||||||
|
<position>0</position>
|
||||||
|
<size>1</size>
|
||||||
|
<units>
|
||||||
|
<unit name="Hz" factor="1" offset="0"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="RMS Voltage 1" type="num" dir="inp">
|
||||||
|
<position>1</position>
|
||||||
|
<size>2</size>
|
||||||
|
<units>
|
||||||
|
<unit name="V" factor="1" offset="0"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="RMS Current 1" type="num" dir="inp">
|
||||||
|
<position>3</position>
|
||||||
|
<size>2</size>
|
||||||
|
<units>
|
||||||
|
<unit name="A" factor="0.01" offset="0"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="Apparent power 1" type="num" dir="inp">
|
||||||
|
<position>5</position>
|
||||||
|
<size>2</size>
|
||||||
|
<units>
|
||||||
|
<unit name="VA" factor="1" offset="0"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="Active power 1" type="num" dir="inp">
|
||||||
|
<position>7</position>
|
||||||
|
<size>2</size>
|
||||||
|
<units>
|
||||||
|
<unit name="W" factor="1" offset="0"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="Power factor 1" type="num" dir="inp">
|
||||||
|
<position>9</position>
|
||||||
|
<size>1</size>
|
||||||
|
<units>
|
||||||
|
<unit name="" factor="0.01" offset="0"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="Energy consumption 1" type="num" dir="inp">
|
||||||
|
<position>10</position>
|
||||||
|
<size>4</size>
|
||||||
|
<units>
|
||||||
|
<unit name="KWh" factor="0.01" offset="0"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
</reg>
|
||||||
|
<reg name="Energy channel 2" id="13">
|
||||||
|
<endpoint name="AC frequency 2" type="num" dir="inp">
|
||||||
|
<position>0</position>
|
||||||
|
<size>1</size>
|
||||||
|
<units>
|
||||||
|
<unit name="Hz" factor="1" offset="0"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="RMS Voltage 2" type="num" dir="inp">
|
||||||
|
<position>1</position>
|
||||||
|
<size>2</size>
|
||||||
|
<units>
|
||||||
|
<unit name="V" factor="1" offset="0"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="RMS Current 2" type="num" dir="inp">
|
||||||
|
<position>3</position>
|
||||||
|
<size>2</size>
|
||||||
|
<units>
|
||||||
|
<unit name="A" factor="0.01" offset="0"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="Apparent power 2" type="num" dir="inp">
|
||||||
|
<position>5</position>
|
||||||
|
<size>2</size>
|
||||||
|
<units>
|
||||||
|
<unit name="VA" factor="1" offset="0"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="Active power 2" type="num" dir="inp">
|
||||||
|
<position>7</position>
|
||||||
|
<size>2</size>
|
||||||
|
<units>
|
||||||
|
<unit name="W" factor="1" offset="0"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="Power factor 2" type="num" dir="inp">
|
||||||
|
<position>9</position>
|
||||||
|
<size>1</size>
|
||||||
|
<units>
|
||||||
|
<unit name="" factor="0.01" offset="0"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="Energy consumption 2" type="num" dir="inp">
|
||||||
|
<position>10</position>
|
||||||
|
<size>4</size>
|
||||||
|
<units>
|
||||||
|
<unit name="KWh" factor="0.01" offset="0"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
</reg>
|
||||||
|
<reg name="Energy channel 3" id="14">
|
||||||
|
<endpoint name="AC frequency 3" type="num" dir="inp">
|
||||||
|
<position>0</position>
|
||||||
|
<size>1</size>
|
||||||
|
<units>
|
||||||
|
<unit name="Hz" factor="1" offset="0"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="RMS Voltage 3" type="num" dir="inp">
|
||||||
|
<position>1</position>
|
||||||
|
<size>2</size>
|
||||||
|
<units>
|
||||||
|
<unit name="V" factor="1" offset="0"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="RMS Current 3" type="num" dir="inp">
|
||||||
|
<position>3</position>
|
||||||
|
<size>2</size>
|
||||||
|
<units>
|
||||||
|
<unit name="A" factor="0.01" offset="0"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="Apparent power 3" type="num" dir="inp">
|
||||||
|
<position>5</position>
|
||||||
|
<size>2</size>
|
||||||
|
<units>
|
||||||
|
<unit name="VA" factor="1" offset="0"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="Active power 3" type="num" dir="inp">
|
||||||
|
<position>7</position>
|
||||||
|
<size>2</size>
|
||||||
|
<units>
|
||||||
|
<unit name="W" factor="1" offset="0"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="Power factor 3" type="num" dir="inp">
|
||||||
|
<position>9</position>
|
||||||
|
<size>1</size>
|
||||||
|
<units>
|
||||||
|
<unit name="" factor="0.01" offset="0"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="Energy consumption 3" type="num" dir="inp">
|
||||||
|
<position>10</position>
|
||||||
|
<size>4</size>
|
||||||
|
<units>
|
||||||
|
<unit name="KWh" factor="0.01" offset="0"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
</reg>
|
||||||
|
<reg name="Energy channel 4" id="15">
|
||||||
|
<endpoint name="AC frequency 4" type="num" dir="inp">
|
||||||
|
<position>0</position>
|
||||||
|
<size>1</size>
|
||||||
|
<units>
|
||||||
|
<unit name="Hz" factor="1" offset="0"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="RMS Voltage 4" type="num" dir="inp">
|
||||||
|
<position>1</position>
|
||||||
|
<size>2</size>
|
||||||
|
<units>
|
||||||
|
<unit name="V" factor="1" offset="0"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="RMS Current 4" type="num" dir="inp">
|
||||||
|
<position>3</position>
|
||||||
|
<size>2</size>
|
||||||
|
<units>
|
||||||
|
<unit name="A" factor="0.01" offset="0"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="Apparent power 4" type="num" dir="inp">
|
||||||
|
<position>5</position>
|
||||||
|
<size>2</size>
|
||||||
|
<units>
|
||||||
|
<unit name="VA" factor="1" offset="0"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="Active power 4" type="num" dir="inp">
|
||||||
|
<position>7</position>
|
||||||
|
<size>2</size>
|
||||||
|
<units>
|
||||||
|
<unit name="W" factor="1" offset="0"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="Power factor 4" type="num" dir="inp">
|
||||||
|
<position>9</position>
|
||||||
|
<size>1</size>
|
||||||
|
<units>
|
||||||
|
<unit name="" factor="0.01" offset="0"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="Energy consumption 4" type="num" dir="inp">
|
||||||
|
<position>10</position>
|
||||||
|
<size>4</size>
|
||||||
|
<units>
|
||||||
|
<unit name="KWh" factor="0.01" offset="0"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
</reg>
|
||||||
|
<reg name="Energy channel 5" id="16">
|
||||||
|
<endpoint name="AC frequency 5" type="num" dir="inp">
|
||||||
|
<position>0</position>
|
||||||
|
<size>1</size>
|
||||||
|
<units>
|
||||||
|
<unit name="Hz" factor="1" offset="0"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="RMS Voltage 5" type="num" dir="inp">
|
||||||
|
<position>1</position>
|
||||||
|
<size>2</size>
|
||||||
|
<units>
|
||||||
|
<unit name="V" factor="1" offset="0"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="RMS Current 5" type="num" dir="inp">
|
||||||
|
<position>3</position>
|
||||||
|
<size>2</size>
|
||||||
|
<units>
|
||||||
|
<unit name="A" factor="0.01" offset="0"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="Apparent power 5" type="num" dir="inp">
|
||||||
|
<position>5</position>
|
||||||
|
<size>2</size>
|
||||||
|
<units>
|
||||||
|
<unit name="VA" factor="1" offset="0"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="Active power 5" type="num" dir="inp">
|
||||||
|
<position>7</position>
|
||||||
|
<size>2</size>
|
||||||
|
<units>
|
||||||
|
<unit name="W" factor="1" offset="0"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="Power factor 5" type="num" dir="inp">
|
||||||
|
<position>9</position>
|
||||||
|
<size>1</size>
|
||||||
|
<units>
|
||||||
|
<unit name="" factor="0.01" offset="0"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="Energy consumption 5" type="num" dir="inp">
|
||||||
|
<position>10</position>
|
||||||
|
<size>4</size>
|
||||||
|
<units>
|
||||||
|
<unit name="KWh" factor="0.01" offset="0"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
</reg>
|
||||||
|
<reg name="Energy channel 6" id="17">
|
||||||
|
<endpoint name="AC frequency 6" type="num" dir="inp">
|
||||||
|
<position>0</position>
|
||||||
|
<size>1</size>
|
||||||
|
<units>
|
||||||
|
<unit name="Hz" factor="1" offset="0"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="RMS Voltage 6" type="num" dir="inp">
|
||||||
|
<position>1</position>
|
||||||
|
<size>2</size>
|
||||||
|
<units>
|
||||||
|
<unit name="V" factor="1" offset="0"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="RMS Current 6" type="num" dir="inp">
|
||||||
|
<position>3</position>
|
||||||
|
<size>2</size>
|
||||||
|
<units>
|
||||||
|
<unit name="A" factor="0.01" offset="0"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="Apparent power 6" type="num" dir="inp">
|
||||||
|
<position>5</position>
|
||||||
|
<size>2</size>
|
||||||
|
<units>
|
||||||
|
<unit name="VA" factor="1" offset="0"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="Active power 6" type="num" dir="inp">
|
||||||
|
<position>7</position>
|
||||||
|
<size>2</size>
|
||||||
|
<units>
|
||||||
|
<unit name="W" factor="1" offset="0"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="Power factor 6" type="num" dir="inp">
|
||||||
|
<position>9</position>
|
||||||
|
<size>1</size>
|
||||||
|
<units>
|
||||||
|
<unit name="" factor="0.01" offset="0"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="Energy consumption 6" type="num" dir="inp">
|
||||||
|
<position>10</position>
|
||||||
|
<size>4</size>
|
||||||
|
<units>
|
||||||
|
<unit name="KWh" factor="0.01" offset="0"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
</reg>
|
||||||
|
<reg name="Pulse counter 0" id="25">
|
||||||
|
<endpoint name="Counter 0" type="num" dir="inp">
|
||||||
|
<position>0</position>
|
||||||
|
<size>4</size>
|
||||||
|
<units>
|
||||||
|
<unit name="KWh" factor="0.01" offset="0"/>
|
||||||
|
<unit name="lpm" factor="0.01" offset="0"/>
|
||||||
|
<unit name="gpm" factor="0.01" offset="0"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
</reg>
|
||||||
|
<reg name="Pulse counter 1" id="26">
|
||||||
|
<endpoint name="Counter 1" type="num" dir="inp">
|
||||||
|
<position>0</position>
|
||||||
|
<size>4</size>
|
||||||
|
<units>
|
||||||
|
<unit name="KWh" factor="0.01" offset="0"/>
|
||||||
|
<unit name="lpm" factor="0.01" offset="0"/>
|
||||||
|
<unit name="gpm" factor="0.01" offset="0"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
</reg>
|
||||||
|
<reg name="Pulse counter 2" id="27">
|
||||||
|
<endpoint name="Counter 2" type="num" dir="inp">
|
||||||
|
<position>0</position>
|
||||||
|
<size>4</size>
|
||||||
|
<units>
|
||||||
|
<unit name="KWh" factor="0.01" offset="0"/>
|
||||||
|
<unit name="lpm" factor="0.01" offset="0"/>
|
||||||
|
<unit name="gpm" factor="0.01" offset="0"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
</reg>
|
||||||
|
</regular>
|
||||||
|
</device>
|
23
fhem/FHEM/lib/SWAP/panStamp/pulsecounter.xml
Normal file
23
fhem/FHEM/lib/SWAP/panStamp/pulsecounter.xml
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
<?xml version="1.0"?>
|
||||||
|
<device>
|
||||||
|
<developer>panStamp</developer>
|
||||||
|
<product>Pulse counter</product>
|
||||||
|
<pwrdownmode>true</pwrdownmode>
|
||||||
|
<regular>
|
||||||
|
<reg name="Voltage supply" id="11">
|
||||||
|
<endpoint name="Voltage" type="num" dir="inp">
|
||||||
|
<size>2</size>
|
||||||
|
<units>
|
||||||
|
<unit name="V" factor="0.001" offset="0"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
</reg>
|
||||||
|
<reg name="Counter register" id="12">
|
||||||
|
<endpoint name="Pulse counter" type="num" dir="inp">
|
||||||
|
<position>0</position>
|
||||||
|
<size>4</size>
|
||||||
|
</endpoint>
|
||||||
|
</reg>
|
||||||
|
</regular>
|
||||||
|
</device>
|
||||||
|
|
33
fhem/FHEM/lib/SWAP/panStamp/pulsegen.xml
Normal file
33
fhem/FHEM/lib/SWAP/panStamp/pulsegen.xml
Normal file
@ -0,0 +1,33 @@
|
|||||||
|
<?xml version="1.0"?>
|
||||||
|
<device>
|
||||||
|
<developer>panStamp</developer>
|
||||||
|
<product>Programmable pulse generator</product>
|
||||||
|
<pwrdownmode>false</pwrdownmode>
|
||||||
|
<regular>
|
||||||
|
<reg name="Output frequency 0" id="11">
|
||||||
|
<endpoint name="Frequency 0" type="num" dir="out">
|
||||||
|
<position>0</position>
|
||||||
|
<size>1</size>
|
||||||
|
</endpoint>
|
||||||
|
</reg>
|
||||||
|
<reg name="Output frequency 1" id="12">
|
||||||
|
<endpoint name="Frequency 1" type="num" dir="out">
|
||||||
|
<position>0</position>
|
||||||
|
<size>1</size>
|
||||||
|
</endpoint>
|
||||||
|
</reg>
|
||||||
|
<reg name="Output frequency 2" id="13">
|
||||||
|
<endpoint name="Frequency 2" type="num" dir="out">
|
||||||
|
<position>0</position>
|
||||||
|
<size>1</size>
|
||||||
|
</endpoint>
|
||||||
|
</reg>
|
||||||
|
<reg name="Output frequency 3" id="14">
|
||||||
|
<endpoint name="Frequency 3" type="num" dir="out">
|
||||||
|
<position>0</position>
|
||||||
|
<size>1</size>
|
||||||
|
</endpoint>
|
||||||
|
</reg>
|
||||||
|
</regular>
|
||||||
|
</device>
|
||||||
|
|
50
fhem/FHEM/lib/SWAP/panStamp/respira.xml
Normal file
50
fhem/FHEM/lib/SWAP/panStamp/respira.xml
Normal file
@ -0,0 +1,50 @@
|
|||||||
|
<?xml version="1.0"?>
|
||||||
|
<device>
|
||||||
|
<developer>panStamp</developer>
|
||||||
|
<product>RESPIRA air quality monitor</product>
|
||||||
|
<pwrdownmode>false</pwrdownmode>
|
||||||
|
<regular>
|
||||||
|
<reg name="Voltage supply" id="11">
|
||||||
|
<endpoint name="Voltage" type="num" dir="inp">
|
||||||
|
<size>2</size>
|
||||||
|
<units>
|
||||||
|
<unit name="V" factor="0.001" offset="0"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
</reg>
|
||||||
|
<reg name="Humidity and Temperature" id="12">
|
||||||
|
<endpoint name="Temperature" type="num" dir="inp">
|
||||||
|
<position>0</position>
|
||||||
|
<size>2</size>
|
||||||
|
<units>
|
||||||
|
<unit name="C" factor="0.1" offset="-50"/>
|
||||||
|
<unit name="F" factor="0.18" offset="-18"/>
|
||||||
|
<unit name="K" factor="0.1" offset="223.15"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="Humidity" type="num" dir="inp">
|
||||||
|
<position>2</position>
|
||||||
|
<size>2</size>
|
||||||
|
<units>
|
||||||
|
<unit name="%" factor="0.1" offset="0"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
</reg>
|
||||||
|
<reg name="Air quality" id="13">
|
||||||
|
<endpoint name="CO concentration" type="num" dir="inp">
|
||||||
|
<position>0</position>
|
||||||
|
<size>2</size>
|
||||||
|
<units>
|
||||||
|
<unit name="ppm" factor="1" offset="0"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="NO2 concentration" type="num" dir="inp">
|
||||||
|
<position>2</position>
|
||||||
|
<size>2</size>
|
||||||
|
<units>
|
||||||
|
<unit name="ppb" factor="1" offset="0"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
</reg>
|
||||||
|
</regular>
|
||||||
|
</device>
|
25
fhem/FHEM/lib/SWAP/panStamp/rgbdriver.xml
Normal file
25
fhem/FHEM/lib/SWAP/panStamp/rgbdriver.xml
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
<?xml version="1.0"?>
|
||||||
|
<device>
|
||||||
|
<developer>panStamp</developer>
|
||||||
|
<product>RGB LED controller</product>
|
||||||
|
<pwrdownmode>false</pwrdownmode>
|
||||||
|
<regular>
|
||||||
|
<reg name="RGB" id="11">
|
||||||
|
<endpoint name="RGBlevel" type="num" dir="out">
|
||||||
|
<size>3</size>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="Red" type="num" dir="out">
|
||||||
|
<position>0</position>
|
||||||
|
<size>1</size>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="Green" type="num" dir="out">
|
||||||
|
<position>1</position>
|
||||||
|
<size>1</size>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="Blue" type="num" dir="out">
|
||||||
|
<position>2</position>
|
||||||
|
<size>1</size>
|
||||||
|
</endpoint>
|
||||||
|
</reg>
|
||||||
|
</regular>
|
||||||
|
</device>
|
26
fhem/FHEM/lib/SWAP/panStamp/soilmoisture.xml
Normal file
26
fhem/FHEM/lib/SWAP/panStamp/soilmoisture.xml
Normal file
@ -0,0 +1,26 @@
|
|||||||
|
<?xml version="1.0"?>
|
||||||
|
<device>
|
||||||
|
<developer>panStamp</developer>
|
||||||
|
<product>Soil moisture sensor</product>
|
||||||
|
<pwrdownmode>true</pwrdownmode>
|
||||||
|
<regular>
|
||||||
|
<reg name="Voltage supply" id="11">
|
||||||
|
<endpoint name="Voltage" type="num" dir="inp">
|
||||||
|
<size>2</size>
|
||||||
|
<units>
|
||||||
|
<unit name="V" factor="0.001" offset="0"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
</reg>
|
||||||
|
<reg name="Moisture" id="12">
|
||||||
|
<endpoint name="Moisture level 0" type="num" dir="inp">
|
||||||
|
<position>0</position>
|
||||||
|
<size>2</size>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="Moisture level 1" type="num" dir="inp">
|
||||||
|
<position>2</position>
|
||||||
|
<size>2</size>
|
||||||
|
</endpoint>
|
||||||
|
</reg>
|
||||||
|
</regular>
|
||||||
|
</device>
|
27
fhem/FHEM/lib/SWAP/panStamp/temp.xml
Normal file
27
fhem/FHEM/lib/SWAP/panStamp/temp.xml
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
<?xml version="1.0"?>
|
||||||
|
<device>
|
||||||
|
<developer>panStamp</developer>
|
||||||
|
<product>Temperature sensor</product>
|
||||||
|
<pwrdownmode>true</pwrdownmode>
|
||||||
|
<regular>
|
||||||
|
<reg name="Voltage supply" id="11">
|
||||||
|
<endpoint name="Voltage" type="num" dir="inp">
|
||||||
|
<size>2</size>
|
||||||
|
<units>
|
||||||
|
<unit name="V" factor="0.001" offset="0"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
</reg>
|
||||||
|
<reg name="Temperature" id="12">
|
||||||
|
<endpoint name="Temperature" type="num" dir="inp">
|
||||||
|
<position>0</position>
|
||||||
|
<size>2</size>
|
||||||
|
<units>
|
||||||
|
<unit name="C" factor="0.1" offset="-50"/>
|
||||||
|
<unit name="F" factor="0.18" offset="-58"/>
|
||||||
|
<unit name="K" factor="0.1" offset="223.15"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
</reg>
|
||||||
|
</regular>
|
||||||
|
</device>
|
34
fhem/FHEM/lib/SWAP/panStamp/temphum.xml
Normal file
34
fhem/FHEM/lib/SWAP/panStamp/temphum.xml
Normal file
@ -0,0 +1,34 @@
|
|||||||
|
<?xml version="1.0"?>
|
||||||
|
<device>
|
||||||
|
<developer>panStamp</developer>
|
||||||
|
<product>Dual Temperature-Humidity sensor</product>
|
||||||
|
<pwrdownmode>true</pwrdownmode>
|
||||||
|
<regular>
|
||||||
|
<reg name="Voltage supply" id="11">
|
||||||
|
<endpoint name="Voltage" type="num" dir="inp">
|
||||||
|
<size>2</size>
|
||||||
|
<units>
|
||||||
|
<unit name="V" factor="0.001" offset="0"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
</reg>
|
||||||
|
<reg name="Humidity and Temperature" id="12">
|
||||||
|
<endpoint name="Temperature" type="num" dir="inp">
|
||||||
|
<position>0</position>
|
||||||
|
<size>2</size>
|
||||||
|
<units>
|
||||||
|
<unit name="C" factor="0.1" offset="-50"/>
|
||||||
|
<unit name="F" factor="0.18" offset="-58"/>
|
||||||
|
<unit name="K" factor="0.1" offset="223.15"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="Humidity" type="num" dir="inp">
|
||||||
|
<position>2</position>
|
||||||
|
<size>2</size>
|
||||||
|
<units>
|
||||||
|
<unit name="%" factor="0.1" offset="0"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
</reg>
|
||||||
|
</regular>
|
||||||
|
</device>
|
36
fhem/FHEM/lib/SWAP/panStamp/temppress.xml
Normal file
36
fhem/FHEM/lib/SWAP/panStamp/temppress.xml
Normal file
@ -0,0 +1,36 @@
|
|||||||
|
<?xml version="1.0"?>
|
||||||
|
<device>
|
||||||
|
<developer>panStamp</developer>
|
||||||
|
<product>Dual Temperature-Barometric pressure sensor</product>
|
||||||
|
<pwrdownmode>true</pwrdownmode>
|
||||||
|
<regular>
|
||||||
|
<reg name="Voltage supply" id="11">
|
||||||
|
<endpoint name="Voltage" type="num" dir="inp">
|
||||||
|
<size>2</size>
|
||||||
|
<units>
|
||||||
|
<unit name="V" factor="0.001" offset="0"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
</reg>
|
||||||
|
<reg name="Temperature and Pressure" id="12">
|
||||||
|
<endpoint name="Temperature" type="num" dir="inp">
|
||||||
|
<position>0</position>
|
||||||
|
<size>2</size>
|
||||||
|
<units>
|
||||||
|
<unit name="C" factor="0.1" offset="-50"/>
|
||||||
|
<unit name="F" factor="0.18" offset="-58"/>
|
||||||
|
<unit name="K" factor="0.1" offset="223.15"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
<endpoint name="Pressure" type="num" dir="inp">
|
||||||
|
<position>2</position>
|
||||||
|
<size>4</size>
|
||||||
|
<units>
|
||||||
|
<unit name="mbar" factor="0.01" offset="0"/>
|
||||||
|
<unit name="Pa" factor="1" offset="0"/>
|
||||||
|
<unit name="bar" factor="0.00001" offset="0"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
</reg>
|
||||||
|
</regular>
|
||||||
|
</device>
|
44
fhem/FHEM/lib/SWAP/template.xml
Normal file
44
fhem/FHEM/lib/SWAP/template.xml
Normal file
@ -0,0 +1,44 @@
|
|||||||
|
<?xml version="1.0"?>
|
||||||
|
<device>
|
||||||
|
<developer>Developer_name</developer>
|
||||||
|
<product>Product name or short description</product>
|
||||||
|
<!-- pwrdownmode: power-down flag. If true, this device sleeps between transmissions.
|
||||||
|
Otherwise, it continuously listens to the SWAP network -->
|
||||||
|
<pwrdownmode>true/false</pwrdownmode>
|
||||||
|
<!-- Configuration section -->
|
||||||
|
<config>
|
||||||
|
<!-- Configuration register. Register ID's start from 11 -->
|
||||||
|
<reg name="Register name" id="reg_id">
|
||||||
|
<!-- Configuration parameter -->
|
||||||
|
<!-- Type of parameter: "bin": Binary, "num": Number, "str": String -->
|
||||||
|
<param name="Parameter name" type="bin|num|str">
|
||||||
|
<!-- position: byte.bit (format: B.b or B) position of the parameter within the register -->
|
||||||
|
<position>B.b</position>
|
||||||
|
<!-- size: size in bytes.bits (format: B.b or B) of the parameter within the register -->
|
||||||
|
<size>B.b</size>
|
||||||
|
<!-- default: default value -->
|
||||||
|
<default>default value</default>
|
||||||
|
</param>
|
||||||
|
</reg>
|
||||||
|
</config>
|
||||||
|
<!-- Regular endpoint section. Here comes sensor readings, actuator states, etc. -->
|
||||||
|
<regular>
|
||||||
|
<!-- Regular register. Register ID's start from 11 -->
|
||||||
|
<reg name="Register name" id="reg_id">
|
||||||
|
<!-- Endpoint -->
|
||||||
|
<!-- Type of endpoint: "bin": Binary, "num": Number, "str": String -->
|
||||||
|
<!-- Direction: "inp": input, "out": output -->
|
||||||
|
<endpoint name="Endpoint name" type="bin|num|str" dir="inp|out">
|
||||||
|
<!-- position: byte.bit (format: B.b or B) position of the endpoint within the register -->
|
||||||
|
<position>B.b</position>
|
||||||
|
<!-- size: size in bytes.bits (format: B.b or B) of the endpoint within the register -->
|
||||||
|
<size>B.b</size>
|
||||||
|
<!-- units: list of units for this endpoint -->
|
||||||
|
<units>
|
||||||
|
<!-- unit. Value to be displayed = factor * (endpoint value) + offset name -->
|
||||||
|
<unit name="name" factor="+-F.f" offset="+-O.o"/>
|
||||||
|
</units>
|
||||||
|
</endpoint>
|
||||||
|
</reg>
|
||||||
|
</regular>
|
||||||
|
</device>
|
@ -85,6 +85,8 @@ FHEM/31_HUEDevice.pm justme1968 http://forum.fhem.de Sonstige
|
|||||||
FHEM/31_LightScene.pm justme1968 http://forum.fhem.de Automatisierung
|
FHEM/31_LightScene.pm justme1968 http://forum.fhem.de Automatisierung
|
||||||
FHEM/32_SYSSTAT.pm justme1968 http://forum.fhem.de Unterstützende Dienste
|
FHEM/32_SYSSTAT.pm justme1968 http://forum.fhem.de Unterstützende Dienste
|
||||||
FHEM/32_speedtest.pm justme1968 http://forum.fhem.de Sonstiges
|
FHEM/32_speedtest.pm justme1968 http://forum.fhem.de Sonstiges
|
||||||
|
FHEM/34_panStamp.pm justme1968 http://forum.fhem.de Sonstiges Systeme
|
||||||
|
FHEM/34_SWAP.pm justme1968 http://forum.fhem.de Sonstiges Systeme
|
||||||
FHEM/40_RFXCOM.pm wherzig http://forum.fhem.de RFXTRX
|
FHEM/40_RFXCOM.pm wherzig http://forum.fhem.de RFXTRX
|
||||||
FHEM/41_OREGON.pm wherzig http://forum.fhem.de Sonstiges
|
FHEM/41_OREGON.pm wherzig http://forum.fhem.de Sonstiges
|
||||||
FHEM/42_RFXMETER.pm wherzig http://forum.fhem.de RFXTRX
|
FHEM/42_RFXMETER.pm wherzig http://forum.fhem.de RFXTRX
|
||||||
|
Loading…
x
Reference in New Issue
Block a user