mirror of
https://github.com/fhem/fhem-mirror.git
synced 2025-02-08 05:15:10 +00:00
git-svn-id: https://svn.fhem.de/fhem/trunk@2883 2b470e98-0d58-463d-a4d8-8e2adae1ed80
This commit is contained in:
parent
86cd58de5b
commit
62a820ef1f
@ -130,23 +130,33 @@ sub OWID_Define ($$) {
|
|||||||
$model = "unknown";
|
$model = "unknown";
|
||||||
CommandAttr (undef,"$name model unknown");
|
CommandAttr (undef,"$name model unknown");
|
||||||
}
|
}
|
||||||
#-- model, 12 characters
|
#-- model or family id, 12 characters
|
||||||
} elsif( $a3 =~ m/^[0-9|a-f|A-F]{12}$/ ) {
|
} elsif( $a3 =~ m/^[0-9|a-f|A-F]{12}$/ ) {
|
||||||
$model = $a[2];
|
|
||||||
$id = $a[3];
|
$id = $a[3];
|
||||||
if(int(@a)>=5) { $interval = $a[4]; }
|
if(int(@a)>=5) { $interval = $a[4]; }
|
||||||
|
#-- family id, 2 characters
|
||||||
|
if( $a2 =~ m/^[0-9|a-f|A-F]{2}$/ ) {
|
||||||
|
$fam = $a[2];
|
||||||
|
if( $fam eq "01" ){
|
||||||
|
$model = "DS2401";
|
||||||
|
CommandAttr (undef,"$name model DS2401");
|
||||||
|
}else{
|
||||||
|
$model = "unknown";
|
||||||
|
CommandAttr (undef,"$name model unknown");
|
||||||
|
}
|
||||||
|
}else{
|
||||||
|
$model = $a[2];
|
||||||
if( $model eq "DS2401" ){
|
if( $model eq "DS2401" ){
|
||||||
$fam = "01";
|
$fam = "01";
|
||||||
CommandAttr (undef,"$name model DS2401");
|
CommandAttr (undef,"$name model DS2401");
|
||||||
}else{
|
}else{
|
||||||
return "OWID: Unknown 1-Wire device model $model";
|
return "OWID: Unknown 1-Wire device model $model";
|
||||||
}
|
}
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
return "OWID: $a[0] ID $a[2] invalid, specify a 12 or 2.12 digit value";
|
return "OWID: $a[0] ID $a[2] invalid, specify a 12 or 2.12 digit value";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#-- determine CRC Code
|
#-- determine CRC Code
|
||||||
$crc = defined($hash->{IODev}->{INTERFACE}) ? sprintf("%02x",OWX_CRC($fam.".".$id."00")) : "00";
|
$crc = defined($hash->{IODev}->{INTERFACE}) ? sprintf("%02x",OWX_CRC($fam.".".$id."00")) : "00";
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user