From f8f87d05a87a0c823ed2875ad5d858e66fd5a14f Mon Sep 17 00:00:00 2001
From: "klaus.schauer" <>
Date: Thu, 7 Feb 2019 05:36:20 +0000
Subject: [PATCH] 00_TCM: teach in options modified
git-svn-id: https://svn.fhem.de/fhem/trunk@18513 2b470e98-0d58-463d-a4d8-8e2adae1ed80
---
fhem/FHEM/00_TCM.pm | 38 ++++++++++++++++++++++++--------------
1 file changed, 24 insertions(+), 14 deletions(-)
diff --git a/fhem/FHEM/00_TCM.pm b/fhem/FHEM/00_TCM.pm
index 0e17b2300..1ebbbee52 100755
--- a/fhem/FHEM/00_TCM.pm
+++ b/fhem/FHEM/00_TCM.pm
@@ -58,7 +58,7 @@ TCM_Initialize($)
$hash->{NotifyFn} = "TCM_Notify";
$hash->{AttrFn} = "TCM_Attr";
$hash->{AttrList} = "baseID blockSenderID:own,no comModeUTE:auto,biDir,uniDir comType:TCM,RS485 do_not_notify:1,0 " .
- "dummy:1,0 fingerprint:off,on learningMode:always,demand,nearfield " .
+ "dummy:1,0 fingerprint:off,on learningDev:all,teachMsg learningMode:always,demand,nearfield " .
"sendInterval:0,25,40,50,100,150,200,250 smartAckMailboxMax:slider,0,1,20 " .
"smartAckLearnMode:simple,advance,advanceSelectRep";
}
@@ -1291,6 +1291,14 @@ sub TCM_Attr(@) {
CommandDeleteAttr(undef, "$name $attrName");
}
+ } elsif ($attrName eq "learningDev") {
+ if (!defined $attrVal){
+
+ } elsif ($attrVal !~ m/^all|teachMsg$/) {
+ Log3 $name, 2, "EnOcean $name attribute-value [$attrName] = $attrVal wrong";
+ CommandDeleteAttr(undef, "$name $attrName");
+ }
+
} elsif ($attrName eq "learningMode") {
if (!defined $attrVal){
@@ -1436,17 +1444,17 @@ TCM_Undef($$)
Deactivates TCM modem functionality
modem_on [0000 ... FFFF]
Activates TCM modem functionality and sets the modem ID
- teach <t/s>
- Set Fhem in learning mode, see learningMode.
- The command is always required for UTE and to teach-in bidirectional actuators
- e. g. EEP 4BS (RORG A5-20-XX),
- see Teach-In / Teach-Out.
reset
Reset the device
sensitivity [00|01]
Set the TCM radio sensitivity: low = 00, high = 01
sleep
Enter the energy saving mode
+ teach <t/s>
+ Set Fhem in learning mode, see learningMode and learningDev.
+ The command is always required for UTE and to teach-in bidirectional actuators
+ e. g. EEP 4BS (RORG A5-20-XX),
+ see Teach-In / Teach-Out.
wake
Wakes up from sleep mode
@@ -1520,19 +1528,15 @@ TCM_Undef($$)
smartAckMailboxMax 0..20
Enable the post master fuctionality and set amount of mailboxes available, 0 = disable post master functionality.
Maximum 28 mailboxes can be created. This upper limit is for each firmware restricted and may be smaller.
- teach <t/s>
- Set Fhem in learning mode for RBS, 1BS, 4BS, GP, STE and UTE teach-in / teach-out, see learningMode.
- The command is always required for STE, GB, UTE and to teach-in bidirectional actuators
- e. g. EEP 4BS (RORG A5-20-XX)
startupDelay [00-FF]
Sets the startup delay [10ms]: the time before the system initializes.
subtel [00|01]
Transmitting additional subtelegram info: Enable = 01, Disable = 00
teach <t/s>
- Set Fhem in learning mode, see learningMode.
- The command is always required for UTE and to teach-in bidirectional actuators
- e. g. EEP 4BS (RORG A5-20-XX),
- see Teach-In / Teach-Out.
+ Set Fhem in learning mode for RBS, 1BS, 4BS, GP, STE and UTE teach-in / teach-out, see learningMode
+ and learningDev.
+ The command is always required for STE, GB, UTE and to teach-in bidirectional actuators
+ e. g. EEP 4BS (RORG A5-20-XX), see Teach-In / Teach-Out.
For details see the EnOcean Serial Protocol 3 (ESP3) available from
www.enocean.com.
@@ -1619,6 +1623,12 @@ TCM_Undef($$)
Type of communication device
do_not_notify
+ learningDev <all|teachMsg>,
+ [learningDev] = teachMsg is default.
+ Learning method for automatic setup of EnOcean devices:
+ [learningDev] = all: All incoming telegrams generate device definitions
+ [learningDev] = teachMsg: Only incoming learning telegrams generate device definitions. RPS telegrams always create new devices due to principle.
+
learningMode <always|demand|nearfield>,
[learningMode] = demand is default.
Learning method for automatic setup of EnOcean devices: