Für alle die keine FHEM - Profis sind oder mal eben einen neuen Aktor einbinden wollen, wünsche ich mir einen kleinen Assistenten für die Devices, die man zuerst im FHEM anlegen und dann im Gerät (Aktor) einlernen muss.
Da die Hersteller nicht genau angeben welchen enocean-eep-Typ man gekauft hat oder welche manufID der Hersteller hat.
In der CommandRef, im Wiki nachsehen oder im Forum suchen - ja da kommt man auch zum Ziel.
Aber wäre es nicht schöner "klick auf neues Device":
Eine kleine einfache Seite, wo man zuerst den Hersteller auswählen kann, dann den DeviceTyp etc., dann SubTyp ... - zum Schluss an welchem CUL wird es gebunden und fertig.
Eine direkte Suche z.B. Gerätetyp wäre auch sehr gut.
Gruß Schmitzkatze
Hallo Schmitzkatze!
Eigentlich wäre das etwas für das EnOcean-Unterforum.
klaus.schauer hat schon eine Unmenge an Einbindungserleichterungen in 10_EnOcean.pm und 00_TCM.pm eingebaut, die man nur nutzen (und kennen) muss. Er hat sich in der jüngeren Vergangenheit insbesondere mit diversen Vereinfachungen für die User beschäftigt. Trotzdem bleibt eben ein größerer Einarbeitungsaufwand in das System. Letztlich folgt EnOcean aber einer strikten Logik, die in vielen anderen Systemen mMn nicht enthalten ist.
Eine Device-Datenbank gibt es in kleiner Form seit kurzem über die gerätespezifischen EEP, die in der Commandref stehen, bereits. In Vollendung kann es die nicht geben, da es verschiedenste Geräte mit verschiedensten Einbindungswegen gibt: Bei UTE-Geräten braucht man nichts in FHEM anlegen. Das geht automatisch. Genauso bei Sensoren.
Das Grundproblem bleibt aber immer, wie auch bei der gewünschten deutschen Übersetzung der Commandref: Wer kümmert sich dauerhaft um Doku, Pflege und Zusammenstellung?
Mit Klaus hatte ich besprochen, dass ich das Wiki bezüglich gerätespezifische EEP und den diversen Erleichterungen, die er in letzter Zeit eingebaut hat, überarbeite. Da das eine größere Umstellung ist, schiebe ich das noch vor mir her; nur die TODOs im Starter Guide weisen darauf hin. Für mich gibt es zudem noch andere Bereiche mit denen ich mich bei FHEM beschäftige. Bei der Wiki-Umstellung hatte ich mEn im EnOcean-Forum um Hilfe gebeten; der Andrang war aber nicht groß.
Dein "Klick auf ein Device" halte ich nicht für umsetzbar. Letztlich kann Dir aber nur Klaus oder ein anderer Developer etwas dazu schreiben. Aber die Wiki-Umstellungen sollten in Richtung "Datenbank" mit direkter Suche gehen. Wann? Keine Ahnung. Liegt daran, wann ich Zeit/Lust finde und wieviele Helfer mitmachen.
Gruß, Christian :)
PS: manufID stehen in der 10_EnOCean.pm und das könnte man auch mal im Wiki aufnehmen (guter Hinweis)
PPS: Letztlich kann ich nur Danke für Klaus' Arbeit an den Modulen sagen. Es gibt mWn kein Programm, das eine derartige umfangreiche Unterstützung von EnOcean-Produkten bietet.
Hi Christian,
danke für Deine schnelle Info.
Da ich in Visual Basic .NET etc. programmiere, habe ich mir schon überlegt, eine EXE zu schreiben, die z.B. die 10_enocean.pm ausließt und eine Auswahl zur Verfügung stellt.
Somit könnte ich einen eigenen Assistenten bauen, der mir die richtigen Befehle zusammenstellt.
Bisher habe ich aber gezögert, da es nicht wirklich Sinn macht ein neues Tool zu programmieren um einen "Anlegebefehl" zu erzeugen. (Nicht jeder hat einen PC)
Dann ist es so, dass das Anlegen eines Devices nicht reicht und man noch Attribute hinzufügen muss. Die könnte man als separate Befehle automatisch erstellen lassen, muss sie dann aber trotzdem einzeln in die Kommandozeile einfügen. (oder direkt in die FHEM.CFG = Risiko...)
Hier wäre es schön, wenn man für mehrere Befehle eine TextBox hätte. Dann kann man gleich die ATTR ... drunter schreiben und muss nicht alles per Zwischenablage einzeln reinkopieren.
Aber - ich bin hoffnungsvoll und bin gespannt ob von Euch jemand die Zeit + ... hat und baut solch einen kleinen Assistenten.
Gerne würde ich dies für Euch machen, habe aber so mit PERL keine Erfahrung / Ahnung.
Sollte mir aber noch etwas einfallen, poste ich es.
Gruß Schmitzkatze
PS: Aber man könnte in den ATTR für die Devices bei der manufID eine weitere Spalte einblenden (hinter der ID), wo der Hersteller lesbar ist. Dann sieht man gleich was richtig ist.
Hallo Schmitzkatze!
erst mal vielen Dank für Deine Vorschläge/Engagement. :)
ZitatDann ist es so, dass das Anlegen eines Devices nicht reicht und man noch Attribute hinzufügen muss. Die könnte man als separate Befehle automatisch erstellen lassen, muss sie dann aber trotzdem einzeln in die Kommandozeile einfügen. (oder direkt in die FHEM.CFG = Risiko...)
Hier wäre es schön, wenn man für mehrere Befehle eine TextBox hätte. Dann kann man gleich die ATTR ... drunter schreiben und muss nicht alles per Zwischenablage einzeln reinkopieren.
Ist das mit den inoffiziellen EEP nicht genau Deine gewünschte Richtung und macht ein separates Tool komplett überflüssig?
Hier am Beispiel FUD61: http://www.fhemwiki.de/wiki/EnOcean-FUD61NPN-Funk-Universal-Dimmaktor#Nutzung_der_inoffziellen_EEP
Mit nur einem Befehl wird ein FHEM-Device mit allen notwendigen Attributen angelegt, das nur noch an den Aktor angelernt werden muss. Zudem wird auch noch gleichzeitig automatisch ein Plot angelegt.
Wenn man schon ein FHEM-Device per Bestätigungstelegramm hat, dann reicht es per modify das inoffizielle EEP "G5-38-08" im DEF einzugeben und schon hat man die passenden Attribute und braucht nur anzulernen. (und bekommt ein Plot)
Diese inoffiziellen EEP gibt es derzeit für eine beschränkte Anzahl von EnOcean-Geräten (siehe http://fhem.de/commandref.html#EnOceandefine). Die Liste ist derzeit noch schmal und enthält nur Geräte die besonders auffällig sind/waren. Klaus akzeptiert bestimmt gerne Vorschläge. Und die Liste "EEP -> Gerät" soll auch im Endstadium im Wiki landen.
ZitatAber - ich bin hoffnungsvoll und bin gespannt ob von Euch jemand die Zeit + ... hat und baut solch einen kleinen Assistenten.
Also bei der Perl-Entwicklung kann ich nicht helfen. Dazu müsstest Du klaus.schauer ansprechen. Ich bin mir sicher, dass er gute Vorschläge gerne einbaut.
Eigentlich wäre er auch der bessere Ansprechpartner. Ich befürchte nur, dass er hier nicht mitliest und mache ihn mal auf den Thread aufmerksam.
Gruß, Christian
Einen Assistenten zu bauen, scheint auf den ersten Blick reizvoll zu sein und die Benutzerfreundlichkeit zu steigern. Schließlich gibt es inzwischen scheinbar in allen Programmen solche Hilfen. Ich hatte solch einen Agenten auch schon einmal in Betracht gezogen, aber wieder zu den Akten gelegt.
Christian hat die Grundproblematik der unterschiedlichen EnOcean Anlernprozeduren schon sehr passend beschrieben: Es gibt kein Standardverfahren und die Variationsbreite zwischen den Herstellern und sogar bei den Versionsständen der Geräte ist sehr groß! Das ist ein Grundproblem aller offenen Standards. Auch sind die Geräte selbst meist nicht ohne das Studium der Anleitung in Betrieb zu nehmen.
Beispiele:
1. Die Rolloaktoren von Eltako haben je nach Herstellungswoche einen unterschiedlichen Befehlssatz. Das führt dazu, dass schon die eigentliche Programmlogik nur ein Kompromiss ist. Ein Assistent müsste dann quasi auch eine Ersatzbedienungsanleitung sein. Das ist nicht zu leisten! Da hilft nur Geräteanleitung lesen und sich im Wiki über die Fhem- und EnOcean-Grundlagen informieren.
2. Viele Hersteller verwenden inzwischen das neue Anlernprotokoll UTE. Bei diesen Geräten wird kein Assistent in Fhem benötigt. Hier stelle ich aber immer wieder fest, dass die Anwender die Aktoren selbst nicht richtig bedienen. Das ist natürlich auch nicht immer so einfach. Bei den AWAG-Geräten z. B. werden auf über vier Seiten die verschiedenen Möglichkeiten tabellarisch aufgelistet u. a. zwei unterschiedliche UTE-Varianten. Von diesen beiden ist eine zur Kommunikation mit Gateways wie Fhem einsetzbar, nur welche. Da würde eine genauere Beschreibung in der Geräteanleitung helfen.
3. In manchen Fällen funktionieren die Aktoren nur richtig, wenn sie an die örtlichen Gegebenheiten angepasst werden, z. B. Fahrzeiten eines Rolloaktors. Natürlich könnte man das auch in einen Assistenten einbauen. Mir fallen aber auf Anhieb schon bei einem Gerätetyp mehrere unterschiedliche Konstellationen ein, die abgebildet werden sollten.
EnOcean ist auch mit den neuen Anlernfunktionen nicht plug and play! Nach meinem Eindruck setzen die Hersteller ein Grundverständnis und Experimentierfreude beim Anwender voraus.
Den Nutzern des EnOcean Moduls kann man m. E. deshalb am besten helfen, wenn die Informationen im Wiki immer weiter ausgebaut werden, z .B. auch mit einer Zuordnungstabelle zwischen Hersteller/Gerät und EEP/subType bzw. Anlernverfahren. Die Pflege und Aktualisierung solch einer Tabelle kann aber nur gelingen, wenn es auf mehreren Schultern lastet.
Wie Christian schon beschrieben hat, ist es schon heute nur noch in Ausnahmefällen notwendig, für die Grundfunktionen Attribute manuell zu setzen.
Ich verspreche mir im Augenblick deshalb am meisten davon, bei Bedarf zusätzliche "inoffizielle" EEP für "exotische" Geräte bereitzustellen und die Anleitungen im Wiki schrittweise auf die neuen Möglichkeiten umzuschreiben.
Hallo Ihr,
ich denke man könnte kleine GrundAnlegeAssistenten machen. Die Feinheiten für spezielle Einstellungen sind natürlich immer für jede Hardware manuell einzustellen.
Als Beispiel ELTAKO FSB61NP muss laut Wiki folgendermaßen angelegt:
define EnO_switch_FSB61 EnOcean 01036620 <--- SenderID des FSB61 (Aktors)
attr EnO_switch_FSB61 model FSB61
attr EnO_switch_FSB61 shutTime 35
attr EnO_switch_FSB61 shutTimeCloses 40
attr EnO_switch_FSB61 subDef AABBCC05 <--- AABBCC05 ist eine der 127 SenderID's des TCM mit der Fhem sendet
attr EnO_switch_FSB61 subType manufProfile
attr EnO_switch_FSB61 manufID 00D
Das klappt soweit immer (bei mir jedenfalls).
Die Attr´s mit shutTime... sind speziell für jeden einzustellen.
Es bleibt also eine einfache Grundeinstellung übrig:
define EnO_switch_FSB61 EnOcean 01036620 <--- SenderID des FSB61 (Aktors)
attr EnO_switch_FSB61 model FSB61
attr EnO_switch_FSB61 subDef AABBCC05 <--- AABBCC05 ist eine der 127 SenderID's des TCM mit der Fhem sendet
attr EnO_switch_FSB61 subType manufProfile
attr EnO_switch_FSB61 manufID 00D
Danach wird eingelernt und spezielle Einstellungen durchgeführt.
Die habe ich schon mehrfach durchführen müssen, da ich fast "leider" nur Eltako enocean-Geräte habe.
Hier stelle ich mir den kleinen Assistenten vor. Der würde schon sehr hilfreich sein.
Und dies nur als Beispiel.
___
Weitere Assistenten wären für folgendes hilfreich:
Formeln, Timer, Notify etc.
Wenn die Formeln sehr umfangreich sind, werden sie sehr unübersichtlich. Da ich öfters mit Programmierung zu tun habe, weis ich wie man etwas schreibt und die Übersicht behält. Aber wenn es mit verschachtelten if + elseif losgeht und dann noch mit {Perlcodes} weiter geht, verliere ich auch manchmal die Übersicht.
JA - ich weis, dass eine Umsetzung solcher Assistenten nicht einfach ist! Aber wenn es solche Vereinfachungen gäbe, werden mehr sich an FHEM heran trauen.
Nun etwas persönliches:
Ich möchte Euch allen die an FHEM arbeiten mal ein riesiges Lob aussprechen!
Hier kann ich nur DANKE sagen!
Ich wünsche allen die dies lesen (die anderen wissen ja davon nichts ;D) Einen guten Rutch ins Jahr 2016!
Gruß Schmitzkatze
define EnO_switch_FSB61 EnOcean 01036620 <--- SenderID des FSB61 (Aktors)
attr EnO_switch_FSB61 model FSB61
attr EnO_switch_FSB61 subDef AABBCC05 <--- AABBCC05 ist eine der 127 SenderID's des TCM mit der Fhem sendet
attr EnO_switch_FSB61 subType manufProfile
attr EnO_switch_FSB61 manufID 00D
Dafür gibt es schon den Assistenten:
define EnO_switch_FSB61 EnOcean 01036620 G5-3F-7F
Weitere siehe commandref... und zusätzliche bei Bedarf. Gibt es denn derzeit schon welche zusätzlich?
Hallo!
habe die Nutzung der inoffiziellen EEP (Geräte-Vorlagen, Assistent) für den FSB61 auf die Schnelle auch im Wiki ergänzt: http://www.fhemwiki.de/wiki/EnOcean-FSB61-Aktor-Beschattungselemente-Rollladen#Nutzung_der_inoffziellen_EEP
Bin bei meinen Struktur- und Aufbauüberlegungen aber eigentlich noch nicht durch...
Für notify (http://www.fhemwiki.de/wiki/Notify#Regexp_wizard_-_FHEMWEB-unterst.C3.BCtzte_Anlage_eines_notify) und at (timewizard-noch nicht im Wiki) gibt es schon Assistenten.
Zusätzlich haben wir in FHEM auch einen Befehlsauswahl-, Befehlsvervollständigungs- und Syntaxhervorhebungsfunktionen im DEF-Bereich und im integrierten Editor http://www.fhemwiki.de/wiki/Konfiguration
Letztlich muss aber mMn jeder Anwender zumindest Perl-Grundzüge kennen. Die ersten Kapitel eines Perl-Buches nebst Suchbereitschaft im Internet sollten reichen.
Gruß, Christian
Frohes NEUES!
Hi Klaus, ja geht! Ich habe es getestet und der Befehl:
define EnO_switch_FSB61 EnOcean 01036620 G5-3F-7F
funktioniert einwandfrei. Nachdem es nun auch im Wiki steht (Danke Krikan) geht die Anlage des Devices schneller.
Aber es ist kein direkter Assistent, sondern nur ein fertiger Befehl. Hierfür muss man wissen, was es mit G5-3F-7F auf sich hat. (Schön: 1. Name in Feld eingeben 2. Hersteller auswählen, 3. Gerät auswählen, 4. fertigstellen klicken.)
Andere enocean Hersteller wie z.B. Peha kann man dann einfach auswählen.
Da alle Geräte in den PM Dateien stehen, und immer mit Updates aktualisiert werden, sind diese doch die perfekte "Datenbank" um solch einen Assistenten zu realisieren.
Das gleiche gilt für das Notify define ntest notify a b
Klick auf einen Button der auf der Seite eines Devices zu finden ist "Neues Notify erstellen" und ein kleines Fenster geht auf und fragt nach dem Namen. Dann wird der Befehl define NameEingegeben notify a b
ausgeführt.
Solche kleinen Helferlein erleichtern einfach das Arbeiten.
Gruß Schmitzkatze
Dann mal ein anderer Standpunkt:
Die Eingabe eines kurzen Befehls für die Anlage eines notifys oder auch eines anderen Devices ist nicht so aufwendig und ein Assistent erleichtert die Arbeit um nicht so viel, als dass es sich lohnen würde, von den Entwicklern das Verwenden wertvoller Kapazitäten für das Entwickeln solch mäßig hilfreicher Assistenten zu verlangen. Da FHEM ohnehin kein System für Klicki-Bunti Fans ist, sind solche Assistenten somit im Grunde sinnlos.
Also: Wenn man sowas braucht oder möchte, kann man sich hinsetzen und es entwickeln. Wenn man es dann anderen zur Verfügung stellt, toll.
Moin,
ZitatKlick auf einen Button der auf der Seite eines Devices zu finden ist "Neues Notify erstellen" und ein kleines Fenster geht auf und fragt nach dem Namen. Dann wird der Befehl blablabla ausgeführt.
Du glaubst doch nicht, dass sich jemand für 14 Zeichen (plus den Devicenamen noch) die Arbeit macht, und nen Anlege-Assi schreibt?
1) Den Namen musst du sowieso eintippseln
2) Für das RegEx hast du nach dem anlegen eh schon einen Assistenten im notify
Bleiben also genau noch "define" ..... "notify" und ".*" für ein allgemeines Regex. Das in der Befehlszeile einzutippen ist imho nicht zuviel verlangt von einem User.
lg, Stefan
Hey - Ihr habt recht!
Für alle die sich gut auskennen, macht ein Assistent keinen Sinn.
Für alle Anderen - schon
Wenn jemand sehr wenig Zeit hat um sich in diversen Schreibweisen, Formeln usw. einzuarbeiten, macht es also keinen Sinn FHEM zu nutzen?
Das finde ich einfach schade!
Man kann doch auch für die "Nichtprofis" etwas tun oder? Es sind auch schon einige tolle Dinge einprogrammiert worden.
Keine Frage: Die wichtigeren Themen sollte vorrangig behandelt werden. Dass muss jeder Programmierer selber wissen.
Aber - nochmal mein Statement: Ich finde Assistenten sehr hilfreich.
Ich helfe gerne an der Umsetzung mit, bringe meine Ideen ein und teste auch gerne mal das eine oder andere (wenn notwendig).
Gruß Schmitzkatze
ZitatWenn jemand sehr wenig Zeit hat um sich in diversen Schreibweisen, Formeln usw. einzuarbeiten, macht es also keinen Sinn FHEM zu nutzen?
Wenn du das so sehen willst dann - ja, so ist es.
Ist doch auf anderen Systemen nichts anderes - wer sich nicht die Zeit nehmen kann/will um sich in Photoshop einzuarbeiten wird damit auch nicht glücklich werden.
Wer sich allerdings die Zeit nehmen will/kann wird auch in Photoshop top Ergebnisse erzielen und mit dem Programm zufrieden sein.
Alle anderen werden sich wohl eher mit "08/15-Programmen aka Paint" begnügen müssen.
Es wird ja niemand gezwungen FHEM zu verwenden - es gibt ja Alternativen.
Ok, die können nicht das was FHEM kann aber so ist es doch mit Photoshop auch.
Ich bin auch der Meinung das die Entwickler ihre Energie nicht in irgendwelche Assistenten stecken sollten die dem "User" das eintippen von 12 Zeichen abnehmen - alles andere muss der User dann ja sowieso wieder selbst machen da ein Assistent NIE alles abfangen/abfragen wird können.
P.S.: Photoshop und Paint darf gerne durch andere Programme ersetzt werden.
Und man sollte nicht vergessen das FHEM kein kommerzielles Produkt ist sondern die Entwickler ihre Freizeit opfern.
... und ich dachte das ist der Bereich "Wunschliste"
Mir kommt es so vor, das Einträge als "Kritik" gewertet werden. Ist nicht so gemeint!
Sorry an alle die sich jetzt schon Gedanken gemacht haben.
Ich wollte niemanden belästigen.
Gruß Schmitzkatze
Wünschen kann man sich ja was, manchmal gehen die auch in Erfüllung :)
Belästigt in dem Sinne hast du ja auch niemanden.
Aber es hält dich natürlich auch niemand davon ab, dich in Perl einzulesen uns selbst so einen Anlegeassistenten zu schreiben :)
lg, Stefan