From db1e01bad31e10dbda0dd0e69aaa12508c6411ed Mon Sep 17 00:00:00 2001 From: rudolfkoenig Date: Mon, 30 Jul 2012 09:53:38 +0000 Subject: [PATCH] ZWave moved to mainline git-svn-id: https://svn.fhem.de/fhem/trunk@1775 2b470e98-0d58-463d-a4d8-8e2adae1ed80 --- fhem/CHANGED | 1 + fhem/{contrib => FHEM}/00_ZWDongle.pm | 0 fhem/{contrib => FHEM}/10_ZWave.pm | 0 fhem/FHEM/DevIo.pm | 17 +++++++++++++---- 4 files changed, 14 insertions(+), 4 deletions(-) rename fhem/{contrib => FHEM}/00_ZWDongle.pm (100%) rename fhem/{contrib => FHEM}/10_ZWave.pm (100%) diff --git a/fhem/CHANGED b/fhem/CHANGED index df9b3f34b..381541270 100644 --- a/fhem/CHANGED +++ b/fhem/CHANGED @@ -56,6 +56,7 @@ - feature: telnet module added, attr global port moved. allowfrom changed. - feature: FhemUtils/release.pm for the new update process added. (M. Fischer) - bugfix: correct one-time relative at commands after reboot + - feature: ZWave added - 2011-12-31 (5.2) - bugfix: applying smallscreen attributes to firefox/opera diff --git a/fhem/contrib/00_ZWDongle.pm b/fhem/FHEM/00_ZWDongle.pm similarity index 100% rename from fhem/contrib/00_ZWDongle.pm rename to fhem/FHEM/00_ZWDongle.pm diff --git a/fhem/contrib/10_ZWave.pm b/fhem/FHEM/10_ZWave.pm similarity index 100% rename from fhem/contrib/10_ZWave.pm rename to fhem/FHEM/10_ZWave.pm diff --git a/fhem/FHEM/DevIo.pm b/fhem/FHEM/DevIo.pm index d3596db36..95f756b51 100644 --- a/fhem/FHEM/DevIo.pm +++ b/fhem/FHEM/DevIo.pm @@ -8,6 +8,7 @@ sub DevIo_SimpleWrite($$$); sub DevIo_OpenDev($$$); sub DevIo_CloseDev($); sub DevIo_Disconnected($); +sub DevIo_SetHwHandshake($); ######################## sub @@ -134,7 +135,7 @@ DevIo_OpenDev($$$) delete($readyfnlist{"$name.$dev"}); $selectlist{"$name.$dev"} = $hash; - } elsif($baudrate && lc($baudrate) eq "directio") { # Without Device::SerialPort + } elsif($baudrate && lc($baudrate) eq "directio") { # w/o Device::SerialPort if(!open($po, "+<$dev")) { return undef if($reopen); @@ -157,7 +158,6 @@ DevIo_OpenDev($$$) } else { # USB/Serial device - if ($^O=~/Win/) { eval { require Win32::SerialPort; @@ -200,8 +200,9 @@ DevIo_OpenDev($$$) $po->handshake('none'); # This part is for some Linux kernel versions whih has strange default - # settings. Device::SerialPort is nice: if the flag is not defined for your - # OS then it will be ignored. + # settings. Device::SerialPort is nice: if the flag is not defined for + # your OS then it will be ignored. + $po->stty_icanon(0); #$po->stty_parmrk(0); # The debian standard install does not have it $po->stty_icrnl(0); @@ -243,6 +244,14 @@ DevIo_OpenDev($$$) return $ret; } +sub +DevIo_SetHwHandshake($) +{ + my ($hash) = @_; + $hash->{USBDev}->can_dtrdsr(); + $hash->{USBDev}->can_rtscts(); +} + ######################## sub DevIo_CloseDev($)