2
0
mirror of https://github.com/fhem/fhem-mirror.git synced 2025-02-07 16:59:18 +00:00

00_TCM: read-only wired connection to Eltako actuators via Eltako FGW14

git-svn-id: https://svn.fhem.de/fhem/trunk@5270 2b470e98-0d58-463d-a4d8-8e2adae1ed80
This commit is contained in:
klaus-schauer 2014-03-21 05:54:05 +00:00
parent eedc55a4e8
commit 4f3868b680

View File

@ -269,8 +269,28 @@ TCM_Read($)
} else {
# Receive Message Telegram (RMT)
TCM_Parse120($hash, $net, 0);
my $msg=TCM_Parse120($hash, $net, 1);
if (($msg eq 'OK') && ($net =~ m/^8B(..)(........)(........)(..)/)){
my ($org, $d1,$id,$status) = ($1, $2, $3, $4);
my $packetType = 1;
# Re-translate the ORG to RadioORG / TCM310 equivalent
my %orgmap = ("05"=>"F6", "06"=>"D5", "07"=>"A5", );
if($orgmap{$org}) {
$org = $orgmap{$org};
} else {
#Log 1, "TCM120: unknown ORG mapping for $org";
Log3 undef, 1, "TCM unknown ORG mapping for $org";
}
if ($org ne "A5") {
# extract db_0
$d1 = substr($d1, 0, 2);
}
if ($blockSenderID eq "own" && (hex $id) >= $baseID && (hex $id) <= $lastID) {
Log3 $name, 5, "TCM $name Telegram from $id blocked.";
} else {
Dispatch($hash, "EnOcean:$packetType:$org:$d1:$id:$status", undef);
}
}
}
$data = $rest;
}
@ -395,6 +415,9 @@ TCM_Read($)
# Parse Table TCM 120
my %parsetbl120 = (
"8B05" => { msg=>"OK" },
"8B06" => { msg=>"OK" },
"8B07" => { msg=>"OK" },
"8B08" => { msg=>"ERR_SYNTAX_H_SEQ" },
"8B09" => { msg=>"ERR_SYNTAX_LENGTH" },
"8B0A" => { msg=>"ERR_SYNTAX_CHKSUM" },
@ -825,7 +848,20 @@ TCM_Undef($$)
of commands depends on the hardware and the firmware version. A firmware update
is usually not provided.
<br><br>
The TCM module enables also a read-only wired connection to Eltako actuators over the
Eltako RS485 bus in the switchboard or distribution box via Eltako FGW14 RS232-RS485
gateway modules. These actuators are linked to an associated wireless antenna module
(FAM14) on the bus. The FAM14 device frequently polls the actuator status of all
associated devices if the FAM14 operating mode rotary switch is on position 4.
Therefore, actuator states can be retrieved more reliable, even after any fhem downtime,
when switch events or actuator confirmations could not have been tracked during the
downtime. As all actuators are polled approx. every 1-2 seconds, it should be avoided to
use event-on-update-reading. Use instead either event-on-change-reading or
event-min-interval.
The Eltako bus uses the EnOcean Serial Protocol version 2 (ESP2) protocol, which is
the same serial protocol used by TCM120 modules. For this reason, a FGW14 can be
configured as a TCM120.<br><br>
<a name="TCMdefine"></a>
<b>Define</b>
<ul>
@ -836,10 +872,13 @@ TCM_Undef($$)
<code>device</code> can take the same parameters (@baudrate, @directio,
TCP/IP, none) like the <a href="#CULdefine">CUL</a>, but you probably have
to specify the baudrate: the TCM120 should be opened with 9600 Baud, the
TCM310 with 57600 baud.<br>
TCM310 with 57600 baud. For Eltako FGW14 devices, type has to be set to 120 and
the baudrate has to be set to 57600 baud if the FGW14 operating mode
rotary switch is on position 6.<br>
Example:
<ul><code>
define BscBor TCM 120 /dev/ttyACM0@9600<br>
define FGW14 TCM 120 /dev/ttyS3@57600
define TCM310 TCM 310 /dev/ttyACM0@57600<br>
define TCM310 TCM 310 COM1@57600 (Windows)<br>
</code></ul>