[Gelöst] Probleme bei Nutzung von Attribut subDef=getNextID

Begonnen von krikan, 29 März 2015, 17:59:14

Vorheriges Thema - Nächstes Thema

krikan

Hallo Zusammen,
Hallo Klaus,

bei der Wiki-Überarbietung und den Tests hierzu habe ich mit dem neu eingeführten "getNextID" Probleme. Folgendes ist definiert:
Internals:
   DEF        00000001
   IODev      TCM_ESP3_2
   NAME       Raffstore
   NR         161
   NTFY_ORDER 50-Raffstore
   STATE      15
   TYPE       EnOcean
Attributes:
   IODev      TCM_ESP3_2
   devStateIcon down:fts_shutter_100 up:fts_window_2w 1\d.*:fts_shutter_90 2\d.*:fts_shutter_80 3\d.*:fts_shutter_70 4\d.*:fts_shutter_60 5\d.*:fts_shutter_50 6\d.*:fts_shutter_40 7\d.*:fts_shutter_30 8\d.*:fts_shutter_20 9\d.*:fts_shutter_10 \d.*:fts_shutter_90
   gwCmd      blindCmd
   manufID    00D
   room       EnOcean
   shutTime   20
   subDef     getNextID
   subType    gateway

Jetzt hat die set-Auswahlbox die 5 Wahlelemente: <8-digit-hex-code>, GETNEXTID, SenderID, Choose, wrong,, .
Wenn ich das ignoriere und in die Befehlszeile "set Raffstore teach" eintrage, erhalte ich die Hinweismeldung "SenderID GETNEXTID wrong, choose <8-digit-hex-code>. "

Wenn ich das komplette Attribut subType lösche, funktioniert das Anlernen hingegen problemlos.

Das Verhalten ist reproduierbar auch beim FUD61NPN.

Was mache ich falsch bzw. ist das so beabsichtigt, da ich aus der Commandref erlese, dass meine 1. Variante auch richtig sein müsste?

Gruß, Christian

klaus.schauer

Mist, jetzt ist es doch jemandem aufgefallen. Leider funktioniert

attr <name> subDef getNextID

nicht wie es soll. Ich habe dafür augenblicklich aber keine Lösung.

Fürs "teach-in" gibt's aber bessere Alternative... einfach

set <name> teach

ausführen. Dabei wird jetzt ebenfalls eine freie SenderID ermittelt und im Attribut subDef eingetragen, falls "DEF" keine SenderID aus dem Kontingent des Transceivers ist und das Attribut subDef bisher nicht existiert. Damit sollte also der Standardfall eines automatisch angelernten Aktors mit Quittungstelegrammen abgedeckt sein.

Vielleicht kannst Du das mit der aktuellen Entwicklerversion testen. Die beschriebene Funktion gab es zwar schon in der letzten veröffentlichten Version, ich musste aber wegen der neuen Kryptofunktionen auch das teach-in an vielen Stellen nochmals überarbeiten. Könntest Du auch das teach-in des MD15-Profils testen? Auch hier musste ich ran.

Danke vorab.

krikan

Zitat von: klaus.schauer am 29 März 2015, 18:48:07
Mist, jetzt ist es doch jemandem aufgefallen.
Schon vergessen.... ;)

Zitat von: klaus.schauer am 29 März 2015, 18:48:07
Fürs "teach-in" gibt's aber bessere Alternative... einfach

set <name> teach

ausführen. Dabei wird jetzt ebenfalls eine freie SenderID ermittelt und im Attribut subDef eingetragen, falls "DEF" keine SenderID aus dem Kontingent des Transceivers ist und das Attribut subDef bisher nicht existiert. Damit sollte also der Standardfall eines automatisch angelernten Aktors mit Quittungstelegrammen abgedeckt sein.
Das meinte ich mit meiner schwammigen Aussage:
ZitatWenn ich das komplette Attribut subType lösche, funktioniert das Anlernen hingegen problemlos.
Jedoch habe ich jetzt festgestellt, dass der FUD61NPN dann mit der subDef 00000000 angelernt wurde. Schalten kann man ihn aber. Ich meine mich erinnern zu können, das wir ein ähnliches Problem schon mal hatten. Leider erinnere ich mich nicht, ob das bei mir ein Spezialfall war.

Teste mal mit Deiner Entwicklerversion, auch den MD15, weiter. Ob es heute noch klappt, weis ich noch nicht.

klaus.schauer

Eine SenderID 00000000 sollte nur generiert werden, falls keine SenderIDs des Transceivers mehr verfügbar sind. Eine SenderID 00000000 wird auch vergeben, falls die BaseID beim Fhem-Start nicht ermittelt werden konnte.

krikan

Danke Klaus, das war der entscheidende Hinweis:
TCM TCM_ESP3_2 wrong data checksum: got 0A, computed A9
Das (seltene?) Problem tritt natürlich ausgerechnet bei den Anlerntests auf.

krikan

Zitat von: klaus.schauer am 29 März 2015, 18:48:07
Vielleicht kannst Du das mit der aktuellen Entwicklerversion testen. Die beschriebene Funktion gab es zwar schon in der letzten veröffentlichten Version, ich musste aber wegen der neuen Kryptofunktionen auch das teach-in an vielen Stellen nochmals überarbeiten. Könntest Du auch das teach-in des MD15-Profils testen? Auch hier musste ich ran.
Teach-Ins ohne Attribut subDef und Teach-In MD15 funktionieren mit Deiner Entwicklerversion problemlos.

klaus.schauer

Danke für die Tests und die Rückmeldung. Werde sobald als möglich die neue Version einstellen. Ein paar kleine Änderungen stehen vorher aber noch an.

krikan

#7
Hallo Klaus,
seit dem Tag der Nutzung der obigen Entwicklerversion habe ich beim PEHA-452-EBIM das Problem, dass unten mit "list" gezeigter Kanal0  sich nur noch per TCM und nicht mehr per Taster steuern lässt. Unterschied zum anderen Kanal1 bei dem dies weiterhin funktioniert ist das Reading LocalControlX:
bei funktionierenden Kanal: localControl1 enabled
bei nicht funktionierenden Kanal: localControl0 disabled

Mein -erfolgloser- Versuch den KanalO auch auf enabled zu setzen, ist im angehängten Log dokumentiert. Ob es tatsächlich an Deiner Entwicklerversion liegt, meiner Dummheit oder doch am Aktor kann ich nicht definitiv feststellen. Die Rückkehr zur offiziellen 10_EnOcean.pm aus dem svn mit der aktuellen fhem.cfg führt dazu, dass ich den Aktor gar nicht mehr per TCM ansprechen kann.

Vielleicht hast Du eine Idee dazu. Ansonsten setze ich den Aktor zurück und probier es mit komplettem Neu-Anlernen.

Gruß, Christian

list:
Internals:
   DEF        FFEF9401
   IODev      TCM_ESP3_2
   LASTInputDev TCM_ESP3_2
   MSGCNT     174
   NAME       EnO_UTE_FFEF9401
   NR         106
   NTFY_ORDER 50-EnO_UTE_FFEF9401
   STATE      off
   TCM_ESP3_2_DestinationID FFFFFFFF
   TCM_ESP3_2_MSGCNT 174
   TCM_ESP3_2_PacketType 1
   TCM_ESP3_2_RSSI -86
   TCM_ESP3_2_ReceivingQuality good
   TCM_ESP3_2_RepeatingCounter 0
   TCM_ESP3_2_SubTelNum 3
   TCM_ESP3_2_TIME 2015-04-10 18:29:40
   TYPE       EnOcean
   Readings:
     2015-04-10 18:28:45   channel0        off
     2015-04-10 18:18:53   dayNight        day
     2015-04-10 18:18:53   defaultState    off
     2015-04-10 18:28:45   dim             0
     2015-04-10 18:28:45   dim0            0
     2015-04-10 18:29:40   energy0         8
     2015-04-04 19:18:59   energy8         8
     2015-04-10 18:29:40   energyUnit0     KWh
     2015-04-04 19:18:59   energyUnit8     KWh
     2015-04-10 18:28:45   error0          ok
     2015-04-10 18:18:53   localControl    enabled
     2015-04-10 18:28:45   localControl0   disabled
     2015-04-10 18:28:45   overCurrentOff0 ready
     2015-04-10 18:18:53   overCurrentShutdown off
     2015-04-10 18:18:54   overCurrentShutdownReset not_active
     2015-04-10 18:29:39   power0          0
     2015-04-10 18:28:45   powerFailure0   disabled
     2015-04-10 18:28:45   powerFailureDetection0 not_detected
     2015-04-10 18:29:39   powerUnit0      W
     2015-04-10 18:18:54   rampTime1       0
     2015-04-10 18:18:54   rampTime2       0
     2015-04-10 18:18:54   rampTime3       0
     2015-04-10 18:28:45   state           off
     2015-04-10 18:18:54   teachInDev      disabled
Attributes:
   IODev      TCM_ESP3_2
   comMode    biDir
   defaultChannel 0
   devChannel FF
   manufID    001
   room       EnOcean
   subDef     FFAEEE87
   subType    actuator.01
   verbose    5


Log:
2015.04.10 18:18:37 5: EnOcean EnO_UTE_FFEF9401 received PacketType: 1 RORG: D2 DATA: 076000000000 SenderID: FFEF9401 STATUS: 00
2015.04.10 18:18:38 5: EnOcean EnO_UTE_FFEF9401 received PacketType: 1 RORG: D2 DATA: 074000000008 SenderID: FFEF9401 STATUS: 00
2015.04.10 18:18:53 5: EnOcean EnO_UTE_FFEF9401 EnOcean_Set command: EnO_UTE_FFEF9401 local localControl enabled
2015.04.10 18:18:55 3: EnOcean set EnO_UTE_FFEF9401 local
2015.04.10 18:18:55 5: EnOcean EnO_UTE_FFEF9401 sent PacketType: 1 RORG: D2 DATA: 023E0000 SenderID: FFAEEE87 STATUS: 00 ODATA: 03FFEF9401FF00
2015.04.10 18:24:08 5: EnOcean EnO_UTE_FFEF9401 received PacketType: 1 RORG: D2 DATA: 076000000000 SenderID: FFEF9401 STATUS: 00
2015.04.10 18:24:09 5: EnOcean EnO_UTE_FFEF9401 received PacketType: 1 RORG: D2 DATA: 074000000008 SenderID: FFEF9401 STATUS: 00
2015.04.10 18:28:45 5: EnOcean EnO_UTE_FFEF9401 received PacketType: 1 RORG: D2 DATA: 046000 SenderID: FFEF9401 STATUS: 00
2015.04.10 18:29:39 5: EnOcean EnO_UTE_FFEF9401 received PacketType: 1 RORG: D2 DATA: 076000000000 SenderID: FFEF9401 STATUS: 00
2015.04.10 18:29:40 5: EnOcean EnO_UTE_FFEF9401 received PacketType: 1 RORG: D2 DATA: 074000000008 SenderID: FFEF9401 STATUS: 00

klaus.schauer

Seit der Version 8216 hat sich die Auswertung der Attribute defaultChannel, devChannel geändert. Zitat aus der letzten Versionsmitteilgung:

Insbesondere im Profil actuator.01 sind die Attribute devChannel und defaultChannel für die richtige Ansteuerung der Schaltkanäle von Bedeutung. Bei den beiden Attributen werden jetzt die Werte in Dezimalform angegeben. Die unterschiedliche Darstellung konnte bisher zu Fehlern führen. Bei bestehenden Devices sind die Hex-Werte im Attribut devChannel manuell auf dezimale Werte umzustellen!

Bitte mal mit

defaultChannel 0
devChannel 255

versuchen. Ich werde mir die Programmieurng des Attributs localcontrol zusätzlich mal ansehen.

krikan

Zitat von: klaus.schauer am 10 April 2015, 20:40:55
Seit der Version 8216 hat sich die Auswertung der Attribute defaultChannel, devChannel geändert. Zitat aus der letzten Versionsmitteilgung:
Ich werde mir die Programmieurng des Attributs localcontrol zusätzlich mal ansehen.
Passiert, wenn man (ich) aus Datensicherung wieder einspielt. Das hat aber leider keine Auswirkungen. Telegramme im Log sind auch gleich.

Zitat von: klaus.schauer am 10 April 2015, 20:40:55
Ich werde mir die Programmieurng des Attributs localcontrol zusätzlich mal ansehen.
Bin mir -wie geschrieben- überhaupt nicht sicher, ob es mit meinem Problem zusammenhängt. Auffällig ist nur, dass Umstellung von enabled auf disabled im Log und "Fehlfunktion" der Taster mit der Installation der Entwicklerversion zeitlich zusammenfällt.

klaus.schauer

Auf Anhieb kann ich beim Senden der "local"-Parameter und im log nichts Verdächtiges erkennen. Die aktuellen Änderungen in 10_EnOcean betreffen das Profil actuator.01 nicht. Wo es da u. U. Wechselwirkungen geben könnte, sehe ich derzeit nicht.

Vielleicht liegt es aber an einer anderen Vorgabe, die immer schon bestand. Mit set <name> local ... werden die Parameter für alle Kanäle gleichzeitig (Kanal 30) gesetzt. U. U. akzeptiert der Aktor das nicht.

krikan

Habe gerade ausprobiert den Parameter für den einzelnen Kanal 0 zu ändern. Leider ohne Erfolg. Das erzeugte Telegramm ist nach meiner Ansicht korrekt:
2015.04.11 08:17:22 5: EnOcean EnO_UTE_FFEF9401 sent PacketType: 1 RORG: D2 DATA: 02200000 SenderID: FFAEEE87 STATUS: 00 ODATA: 03FFEF9401FF00
Sehr merkwürdig. Es sieht so aus, als könnte ich den Parameter localControl überhaupt nicht (mehr?) ändern. In der Anleitung steht dazu keine Info. Keine Ahnung, warum der Parameter des betroffene Kanal 0 sich am 29.3. geändert hat. Werde mal alles zurücksetzen. Evtl. doch Hardwaredefekt oder zuviele Experimente meinerseits....
Danke!

krikan

Habe alle eingelernten Sender gelöscht und neu angelernt (Taster und Fhem). Jetzt lässt sich der Aktor wieder problemlos über Fhem und Taster steuern. Das Reading localControl ist aber weiterhin bei Kanal 1 enabled und bei Kanal 0 disabled; scheint also nicht die Ursache gewesen zu sein.

krikan

Irgendwie ist bei mir derzeit der Wurm drin :-[. Anderer Aktor, anderes Problem: bei meinem Peha Jalousieaktor D-452-FU-EBIM-JR wird bei dem set-Befehl "positionLogic" immer unten wiedergegebene Fehlermeldung in Fhemweb angezeigt. Ausgeführt werden die Befehle aber scheinbar korrekt. Habe jetzt 2 Stunden gesucht, aber finde die Ursache nicht. Funktioniert hat das mal problemlos; habe den Befehl aber schon sehr lange nicht mehr probiert.

Befehl:
set EnO_sensor_FFB4C900 positionLogic normal
Fhemweb-Anzeige:
ZitatUnknown Gateway Blind Central Function normal, choose one of angleMinMax angleSet closes down opens position positionLogic positionMinMax runtimeSet status stop teach up

Befehl:
set EnO_sensor_FFB4C900 positionLogic inverse
Fhemweb-Anzeige:
ZitatUnknown Gateway Blind Central Function inverse, choose one of angleMinMax angleSet closes down opens position positionLogic positionMinMax runtimeSet status stop teach up

Log:
2015.04.11 22:14:33 5: EnOcean EnO_sensor_FFB4C900 EnOcean_Set command: EnO_sensor_FFB4C900 positionLogic normal
2015.04.11 22:14:33 3: EnOcean set EnO_sensor_FFB4C900 positionLogic
2015.04.11 22:14:33 5: EnOcean EnO_sensor_FFB4C900 sent PacketType: 1 RORG: A5 DATA: 070000B8 SenderID: FFAEEE86 STATUS: 00 ODATA:
2015.04.11 22:14:33 5: EnOcean EnO_sensor_FFB4C900 received PacketType: 1 RORG: A5 DATA: 64008D08 SenderID: FFB4C900 STATUS: 00
2015.04.11 22:15:15 5: EnOcean EnO_sensor_FFB4C900 EnOcean_Set command: EnO_sensor_FFB4C900 ?
2015.04.11 22:16:07 5: EnOcean EnO_sensor_FFB4C900 EnOcean_Set command: EnO_sensor_FFB4C900 positionLogic inverse
2015.04.11 22:16:07 3: EnOcean set EnO_sensor_FFB4C900 positionLogic
2015.04.11 22:16:07 5: EnOcean EnO_sensor_FFB4C900 sent PacketType: 1 RORG: A5 DATA: 070100B8 SenderID: FFAEEE86 STATUS: 00 ODATA:
2015.04.11 22:16:08 5: EnOcean EnO_sensor_FFB4C900 received PacketType: 1 RORG: A5 DATA: 00008D48 SenderID: FFB4C900 STATUS: 00


list Aktor:
Internals:
   DEF        FFB4C900
   IODev      TCM_ESP3_2
   LASTInputDev TCM_ESP3_2
   MSGCNT     254
   NAME       EnO_sensor_FFB4C900
   NR         219
   NTFY_ORDER 50-EnO_sensor_FFB4C900
   STATE      0
   TCM_ESP3_2_DestinationID FFFFFFFF
   TCM_ESP3_2_MSGCNT 254
   TCM_ESP3_2_PacketType 1
   TCM_ESP3_2_RSSI -89
   TCM_ESP3_2_ReceivingQuality bad
   TCM_ESP3_2_RepeatingCounter 0
   TCM_ESP3_2_SubTelNum 1
   TCM_ESP3_2_TIME 2015-04-11 22:16:08
   TYPE       EnOcean
   Readings:
     2015-04-11 22:16:08   alarm           off
     2015-02-28 15:58:01   angleMax        80
     2015-02-28 15:58:00   angleMin        10
     2015-02-22 17:02:55   angleTime       5.0
     2015-04-11 22:16:08   endPosition     closed
     2015-04-11 22:16:08   position        0
     2015-04-11 22:16:08   positionMode    inverse
     2015-04-11 22:16:08   serviceOn       no
     2015-04-11 22:16:08   shutterState    stopped
     2015-04-11 22:16:08   state           closed
     2014-10-18 17:04:12   teach-in        EEP A5-11-03 Manufacturer: Peha
Attributes:
   IODev      TCM_ESP3_2
   devStateIcon 0:fts_shutter_100 100:fts_window_2w 1\d.*:fts_shutter_90 2\d.*:fts_shutter_80 3\d.*:fts_shutter_70 4\d.*:fts_shutter_60 5\d.*:fts_shutter_50 6\d.*:fts_shutter_40 7\d.*:fts_shutter_30 8\d.*:fts_shutter_20 9\d.*:fts_shutter_10 \d.*:fts_shutter_90
   eep        A5-11-03
   gwCmd      blindCmd
   manufID    001
   room       EnOcean
   stateFormat position
   subDef     FFAEEE86
   subType    shutterCtrlState.01
   subTypeSet gateway
   verbose    5

klaus.schauer