Fehler, mehrere FSB61NP getrennt schalten.

Begonnen von cinda, 10 Juli 2016, 17:43:15

Vorheriges Thema - Nächstes Thema

cinda

Hallo,

ich habe ein Problem mit dem FSB61NP in fhem. Zwei Rollläden mit zwei FSB61NP sind vorhanden und nach Beschreibung angelernt. Bestätigungstelegramm ist ein. http://www.fhemwiki.de/wiki/EnOcean-FSB61-Aktor-Beschattungselemente-Rollladen

define Rollladen_1 EnOcean 01A1ADC5
define FileLog_Rollladen_1 FileLog ./log/Rollladen_1-%Y.log Rollladen_1
attr Rollladen_1 IODev TCM310_0
attr Rollladen_1 eep A5-3F-7F
attr Rollladen_1 comMode confirm
attr Rollladen_1 manufID 00D
attr Rollladen_1 model FSB61
attr Rollladen_1 room Wohnzimmer
attr Rollladen_1 shutTime 35
attr Rollladen_1 shutTimeCloses 40
attr Rollladen_1 subDef FEFB940C
attr Rollladen_1 subType manufProfile
attr Rollladen_1 webCmd opens:stop:closes


define Rollladen_2 EnOcean 01A1FBEA
define FileLog_Rollladen_2 FileLog ./log/Rollladen_2-%Y.log Rollladen_2
attr Rollladen_2 IODev TCM310_0
attr Rollladen_2 comMode confirm
attr Rollladen_2 eep A5-3F-7F
attr Rollladen_2 manufID 00D
attr Rollladen_2 model FSB61
attr Rollladen_2 room Wohnzimmer
attr Rollladen_2 shutTime 35
attr Rollladen_2 shutTimeCloses 40
attr Rollladen_2 subDef FEFB940C
attr Rollladen_2 subType manufProfile
attr Rollladen_2 webCmd opens:stop:closes

Mit einer herkömmlichen Fernbedienung klappt alles. Unter fhem werden immer beide Aktoren gleichzeitig geschaltet. Produktionsdatum 14/16.

Danke.

klaus.schauer

Es müssen unterschiedliche Fhem SenderID (Attribut subDef) verwendet werden.

cinda

Ok, kann es daran liegen, dass mein TCM310 immer dieselbe ID bringt? Habe meine fhem.cfg durchsucht und nur diese ID gefunden.

{EnOcean_CheckSenderID("getFreeID", "<IODev>", "0000000")}
bringt
:00000000 FEFB940C getNextID

{EnOcean_CheckSenderID("getNextID", "<IODev>", "0000000")}
bringt 0000000

{EnOcean_CheckSenderID("getUsedID", "<IODev>", "0000000")}
bringt FEFB940C getNextID

klaus.schauer

Was liefert denn ein "list" des TCM310?
Zitat von: cinda am 10 Juli 2016, 20:04:27
Ok, kann es daran liegen, dass mein TCM310 immer dieselbe ID bringt? Habe meine fhem.cfg durchsucht und nur diese ID gefunden.

{EnOcean_CheckSenderID("getUsedID", "<IODev>", "0000000")}
bringt FEFB940C getNextID
In irgendeinem subDef*-Attribut steht "getNextID". Diesen Eintrag bitte entfernen bzw. durch eine gültige SenderID ersetzen! Bitte auch ein update auf die aktuelle Fhem-Version machen. Es gab mal ein Problem mit der Vergabe von SenderID in subDef-Attributen, das sollte aber in der aktuellen Version behoben sein.

cinda

FHEM ist aktuell  fhem.pl             11756 2016-07-07
{EnOcean_CheckSenderID("getFreeID", "<IODev>", "0000000")}
bringt jetzt 00000000 FEFB940C

list TCM310
Internals:
   BaseID     FF901480
   ChipID     019D2029
   DEF        310 /dev/ttyAMA0@57600
   DeviceName /dev/ttyAMA0@57600
   FD         11
   LastID     FF9014FF
   MODEL      ESP3
   NAME       TCM310_0
   NOTIFYDEV  global
   NR         22
   NTFY_ORDER 50-TCM310_0
   PARTIAL
   STATE      initialized
   TYPE       TCM
   Readings:
     2016-07-10 21:57:02   baseID          BaseID: FF901480 RemainingWriteCycles: 0A
     2016-07-10 21:57:02   maturity        01
     2016-07-10 21:57:02   repeater        RepEnable: 00 RepLevel: 00
     2016-07-10 21:57:02   state           initialized
     2016-07-10 21:57:02   version         APIVersion: 02060300 APPVersion: 020B0100 ChipID: 019D2029 ChipVersion: 454F0103 Desc: GATEWAYCTRL
Attributes:
   sendInterval 0
   smartAckMailboxMax 0
   verbose    5

klaus.schauer

Zitat von: cinda am 10 Juli 2016, 22:19:33
FHEM ist aktuell  fhem.pl             11756 2016-07-07
{EnOcean_CheckSenderID("getFreeID", "<IODev>", "0000000")}
bringt jetzt 00000000 FEFB940C

list TCM310
Internals:
   BaseID     FF901480
   ChipID     019D2029
   LastID     FF9014FF
Alle Fhem SenderIDs in den subDefs und in DEF (bei Aktoren ohne Quittungstelegramme) müssen im Bereich zwischen BaseID und LastID sein und dürfen jeweils nur einmal verwendet werden.

krikan

Am Rande:

Beim Aufruf der Funktion
{EnOcean_CheckSenderID("getFreeID", "<IODev>", "0000000")}
ist <IODev> durch den Namen des TCM-Devices (hier: TCM310_0) zu ersetzen, damit sinnvolle Ergebnisse kommen.

Also hier:
{EnOcean_CheckSenderID("getFreeID", "TCM310_0", "0000000")}

Die automatische Vergabe der SenderIDs durch FHEM ist seit Einführung von "getNextID" mMn die einfachere Variante als der manuelle Weg mit der genannten Funktion.

cinda

Vielen Dank für die Hilfe. Die Nümmerchen sind irgendwie komplett durcheinandergekommen. Lief trotzdem seither fehlerfrei? Jetzt klappt es auch mit den Rollläden. Wieder etwas gelernt.