Hallo zusammen,
ich habe einige Fragen zum Thema EnOcean, EEP, subType und wie ich eigene Profile/Devices definieren kann. Es geht um folgendes:
Ich würde gerne für meine Gartenbewässeung und -beleuchtung ein eigenes Steuergerät bauen (mit einem Atmel AVR als CPU). Ich möchte dieses Gerät über EnOcean steuern können. Daher habe ich mir ein TCM320 Modul besorgt und schließe das mit seiner seriellen Schnittstelle an den Atmel AVR an (im Moment noch zum Testen einfach an einen PC mit Terminalprogramm). An das TCM320 kann ich nun verschieden andere EnOcean-Geräte anlernen, z.B. hat das mit einem einfachen Schalter wunderbar funktioniert. Ich bekomme bei jeder Betätigung des Schalters (und Loslassen natürlich auch) auf der seriellen Schnittstelle ein Datenpaket, welches ich dann auswerten kann (ESP2). Zusätzlich habe ich es geschafft, meine FHEM-Installation (Raspberry, FHEM, TCM300-USB-Stick) an der TCM320 anzulernen. Ich habe dazu als Test ein Device in FHEM manuell angelegt (EEP A5-3F-7F). subType habe ich auf "manufProfile" gesetzt, dann hatte ich oben die Möglichkeit ein "teach" zu senden. TCM320 in Lernmodus, Teach vom FHEM-Device gesendet, hat funktioniert. Dann habe ich den subType des Devices auf "raw" umgestellt und konnte nun 4BS-Nachichten an das TCM320 senden. Dort bekam ich dann die Daten auf der Schnittstelle geliefert. Was ich heute Abend noch probieren wollte, ist vom TCM320 eine Nachricht an FHEM zu senden.
Mein eigentliches Problem ist nun, dass ich ja quasi ein Nicht-Standard-Gerät habe, welches auch nie für die Allgemeinheit interessant werden wird. Daher meine Frage: Wie kann ich mir in meiner FHEM-Installation ein EEP/subType (?!?) anlegen, welches ich dann benutzen kann, um über dann vorgegebene set- und get-Befehle meinen Garten zu steuern. Die Befehle, die ich gerne umsetzen würde wären sowas in der Art:
- Licht an/aus/dimmen 0-100%
- Ventile (0-15) an/aus
Wie könnte ich das am besten lösen, so dass bei einem Update von FHEM nicht meine Änderungen/Erweiterungen wieder überschrieben werden?
Viele Grüße
Christian
Es gibt dutzende von EEPs, die in Fhem unterstützt werden, Schalten und dimmen ist da die leichteste Disziplin. So sollte es doch wohl möglich sein, etwas passendes zu finden und dann "normgerechte" Telegramme auch in der Eigenentwicklung zu verwenden.Falls nun wider aller Erwartung kein EEP passen sollte, ginge immer noch ein Generic Profile.
Hallo Klaus,
danke für die Antwort. Ich habe mir auf deinen Rat mal das PDF mit den EEPs angeschaut (https://www.enocean-alliance.org/wp-content/uploads/2018/02/EEP268_R3_Feb022018_public.pdf (https://www.enocean-alliance.org/wp-content/uploads/2018/02/EEP268_R3_Feb022018_public.pdf)) und bin tatsächlich fündig geworden:
EEP 2D-30-06: Damit könnte ich bis zu 12 Ventile steuern. Das wäre perfekt. Ich habe nun in FHEM mal ein Testdevice angelegt und ihm die EEP D2-30-06 zugeordnet. Ich glaube aber, dass ich einen entsprechenden subType benötige, damit das dann auch mit Leben gefüllt wird, oder? Kann ich da selber was programmieren? Würde da gerne helfen, das umzusetzen, weiß aber leider nicht, wie!
lg
Christian
D2-30-xx wird in Fhem nicht unterstützt. Das Profil sehr speziell auf Kopplung zu Wärmezählern und Gateways ausgelegt. Ich plane nicht, dies zu integrieren.
Vielleicht mal mit D2-01-xx versuchen, subType = actuator.01. Dort lassen sich 30 Kanäle direkt ansprechen. Dimmen geht auch.
Ein typisches Device sieht so aus:
DEF xxxxxxxx
FUUID ?
IODev TCM_0
NAME Steckdose_1
NR 587
NTFY_ORDER 50-Steckdose_1
STATE off
TYPE EnOcean
READINGS:
2019-01-26 08:33:35 channel1 off
2016-06-11 08:28:46 dayNight day
2016-06-11 08:28:46 defaultState off
2019-01-26 08:33:35 dim 0
2019-01-26 08:33:35 dim1 0
2019-01-26 08:33:35 error1 not_supported
2016-06-21 20:36:59 getParam 2
2016-06-11 08:28:46 localControl enabled
2019-01-26 08:33:35 localControl1 enabled
2019-01-26 08:33:35 overCurrentOff1 ready
2016-06-11 08:28:46 overCurrentShutdown off
2016-06-11 08:28:46 overCurrentShutdownReset not_active
2019-01-26 08:33:35 powerFailure1 disabled
2019-01-26 08:33:35 powerFailureDetection1 not_detected
2016-06-11 08:28:46 rampTime1 0
2016-06-11 08:28:46 rampTime2 0
2016-06-11 08:28:46 rampTime3 0
2019-01-26 08:33:35 state off
2016-06-10 06:32:15 teach UTE teach-in accepted EEP D2-01-0A Manufacturer: ID-RF
2016-06-11 08:28:46 teachInDev disabled
Attributes:
IODev TCM_0
comMode biDir
defaultChannel 1
devChannel 1
eep D2-01-0A
icon message_socket
manufID 046
remoteManagement manager
room wald1
subDef yyyyyyyy
subType actuator.01
teachMethod UTE
Das Device wird per UTE automatisch in Fhem angelernt, sobald der Aktor ein entsprechendes UTE teach-in sendet. Wie das bei deiner Lösung umgesetzt werden soll, kann ich nicht beurteilen. Falls UTE teach-in nicht ohne weiteres umsetzbar ist, würde ich es mit einem 4BS-Profil versuchen. Die lassen sich unidirektional teilweise auch manuell anlegen.
Ok, das sieht interessant aus. Ich werde mal probieren, von meinem TCM320 so ein UTE-TeachIn-Request zu senden und schau mal, ob dann in FHEM was passiert, wenn ich mein IODev vorher in den learnMode versetze. Bin gespannt. Vielen Dank aber schon mal für den Hinweis mit dem EEP D02-01-xx.
lg