Hallo,
nach einem heutigen Update wurde auch die KNX Version vom 03.04.2016 mit installiert. Nun bekomme ich zu bereits definierten Gruppenadressen EIB im Eventlog (und auch LOG für autocreate) folgende Einträge von KNX angezeigt:
2016-04-04 10:06:04 EIB 1OG_Flur_Helligkeit 312 Lux
2016-04-04 10:06:04 Global global UNDEFINED KNX_5008 KNX 5/0/8:MODEL_NOT_DEFINED
2016-04-04 10:06:04 Global global DEFINED FileLog_KNX_5008
2016-04-04 10:06:04 Global global SAVE
2016-04-04 10:06:10 EIB Wetterstation1_Helligkeitswert1 24268.8 Lux
2016-04-04 10:06:10 Global global UNDEFINED KNX_5012 KNX 5/0/18:MODEL_NOT_DEFINED
2016-04-04 10:06:10 Global global DEFINED FileLog_KNX_5012
2016-04-04 10:06:10 Global global SAVE
Also zuerst die Meldung der definierten und bekannten Gruppenadresse (z.B. 1OG_Flur_Helligkeit von EIB) und anschl. nochmals die Gruppenadresse 5/0/8 als undefined von KNX.
Wie ich gelesen habe soll das Modul EIB wohl dann nicht mehr verwendet werden (eibd) und man sollte auf KNX (bzw. knxd) umstellen.
Da ich 4 Gebäude mit je einer eigenen FHEM-Instanz nutze (je einer Vielzahl an Gruppenadressen) hier kurz die Frage ob es eine Art "Migration" gibt, oder ob ich alle Adressen neu definieren bzw. umbenennen muss?
Danke
Abend!
Deine Annahmen sind absolut richtig. So lange in der Tul useEib auf 1 steht, gehen die Telegramme an beide Geräte - EIB wie KNX.
Der einfachstmögliche Umzug:
Streiche model aus der Attributeliste und packe es ins define. Ersetze dabei EIB durch KNX. Beachte dabei, dass einige Model sich geändert haben.
So wird aus:
define temp EIB 1/2/3
model tempsensor
define temp KNX 1/2/3:dpt9.001
Frage am Rande: Wieso werden bei Dir die Meldungen vom Autocreate mitgelogged?
Grüße, Andi
Hallo,
auch ich werde mich wohl um den Umzug kümmern müssen. Meine bisherige Definition für TUL lautet:
define KNX TUL eibd:localhost 1.1.255
attr KNX group IO
attr KNX room HM-IO
attr KNX useEIB 1
reicht es für den Umzug neben den oben bereits beschriebenen Änderungen die folgenden Änderungen für TUL zu machen?
define KNX TUL knxd:localhost 1.1.255
attr KNX group IO
attr KNX room HM-IO
attr KNX useEIB 0
Gruß
Michael
Abend Michael,
im Prinzip kannst Du auch mit useEib 1 weiter arbeiten. Erst, wenn der Umzug komplett erledigt ist, solltest Du das FLag umstellen.
Aktuell sollten Dir keine Nachteile beim EIB entstehen. Weiterhin läuft das Modul weiter...
Grüße, Andi
Hallo,
seit dem gestrigen Update von fhem beobachte ich ein deutlich aneres Verhalten meiner KNX Installation.
- Die Gupp KNX ist neu entstanden
- die CPU- Belastung des RasPi II ist von zuvor "nahezu 0" auf ca 25 bis 30% angestiegen. Angezeigt wird dieses über Sysmon.
Die Belastung geht wieder runter, nach einem Reboot, so lange, wie useEIB auf 0 steht.
Was ist zu tun, um den bisherigen, stabilen Zustand wieder zu erhalten?
Servus!
Umziehen auf KNX, oder das Modul 10_KNX.pm nach jedem Update rauslöschen :-)
Spaß mit einem ernsten Kern: klar wächst die CPU-Last. Jede eingehende Nachricht bedient im Kompatibilitätsmodus (also mit useEib = 1) zwei Module. Und die arbeiten doppelt.
Die Prozessorlast im eingeschwungenen Zustand ist bei KNX nicht meßbar anders, als bei EIB. Wenn beide zugleich arbeiten, können aber sehr wohl Peaks entstehen.
Grüße, Andi
Bei meinem Umzug von EIB/eibd auf KNX knxd gehe ich genau wie im Wiki vor:
http://www.fhemwiki.de/wiki/Knxd (http://www.fhemwiki.de/wiki/Knxd)
Unter Punkt 3, 3. Zeile erhalte ich die Screenshot angezeigte Fehlermeldung, wonach alte eibd-Libs eine Fehlermeldung erzeugen.
In dem benannten Verzeichnis kann ich leider die betroffene Lib nicht erkennen, um sie zu entfernen.
Hat jemand einen Tipp für die weitere Vorgehensweise?
Mit welchen Befehlen kann eibd komplett deinstalliert werden?
Gruß
Michael
Abend Michael,
au weh - jetzt haben wir uns anteilig mißverstanden.
Ich hab vom MODUL gesprochen, nicht vom EIBD/KNX-Server. Beide Module (10_EIB und 10_KNX) funktionieren mit beiden Servern (EIBD und KNXD).
Nichtsdestotrotz - der Artikel hat mir geholfen:
https://github.com/knxd/knxd (https://github.com/knxd/knxd)
Grüße, Andi
Hallo Andi,
vielen Dank für die obige Klärung. Soweit passt nun alles bei der Umstellung.
Mir sind jedoch Besonderheiten bei der Anwendung von dpt-Typen aufgefallen:
In meiner Anwendung habe ich KNX-Werte, die ich an meine Wärmepumpe schreibe und die ich lese.
In einigen Fällen habe ich KNX-Adressen, an die ich schreibe und diesen Wert von einer anderen Adresse zur Verifizierung des Schreibvorganges wieder lesen kann
In Abhängigkeit vom eingestellten dpt-Typ auf der schreibenden Adresse lese ich z.T. falsche Werte über die lesende Adresse aus:
Beispiel: dpt5 schreiben und lesen OK
Beispiel: dpt5.003 wird ein falscher Wert zurück-gelesen
Eigentlich sollte doch der Zahlenwert unabhängig von der gewählten Anzeigeform gesendet werden.
Zumindest vermute ich hier einen Fehler.
Gruß
Michael
Hallo Michael,
an den Beispielen DPT5.001 und DPT5.003 - hier ist gemäß Spezifikation ein Faktor drin. Wenn Du auf Nummer sicher gehen willst, und selbst umrechnen möchtest, dann nimm überall dpt5.
Die Subtypen unterscheiden sich durch: Faktor, Einheit und (theoretisch) Offset.
Fazit: DPT5.003 ist was anderes als DPT5.001 ist was anderes als DPT5.
Èn Detail: https://www.knx.org/media/docs/downloads/KNX-Standard/Datapoint-Types.pdf (https://www.knx.org/media/docs/downloads/KNX-Standard/Datapoint-Types.pdf)
Oder meinst Du was anderes?
Grüße, Andi
Hallo Andi,
das ist offenbar die Erklärung.
Habe die Spezifikation nicht gelesen und daher eine falsche Annahme getroffen.
Dann ist alles klar.
Danke!
Hallo zusammen,
hat eventuell jemand einen Tip wie ich Umstellung von EIB auf KNX halbwegs effizient bei Nutzung der configDB hin bekomme?
Nach dem Update von FHEM ist mir erst mal die ConfigDB vollgelaufen da die über autocreate immer wieder neu angelegten KNX Devices eine Speicherung der Config erzeugten bis der Raspberry extrem langsam wurde (configDB > 5GB). Nach etwa 1 Stunde für 'configDB reorg 5' und verkleinern des DB Files mit VACUUM und abschalten von autocreate läuft der Pi nun wieder.
Ich frage mich jetzt wie ich meine Konfiguration auf KNX umstellen kann ohne tage mit jedem Device, DoIF's NT's und AT's zu verbringen.
Ich verbleibe in Hoffnung und Grüßen
Marco
Hallo Marco,
zu ConfigDB kann ich leider nichts beitragen.
ZitatIch frage mich jetzt wie ich meine Konfiguration auf KNX umstellen kann ohne tage mit jedem Device, DoIF's NT's und AT's zu verbringen.
Hier funktioniert es, wenn EIB- und KNX nicht parallel betrieben wird:
EIB habe ich bei mir deaktiviert: 10_EIB nicht mehr geladen durch löschen oder umbenennen
attr global exclude_from_update 10_EIB.pm
Die logischen Verknüpfungen: DoIF's NT's und AT's, ...
die auf EIB basieren, können erhalten bleiben
Hierzu definierst du nur die EIB-Devices in KNX-Devices um
nach einem "shutdown restart" in der geänderten Konfiguration hat es so bei mir geklappt
Gruß
Michael
Hallo Michael,
das ist schon mal etwas beruhigend https://forum.fhem.de/Smileys/default/smiley.gif. Ich hatte befürchtet alles neu programmieren zu müssen da die ganzen KNX Devices mit neuen Devicenamen via autocreate angelegt wurden.
Bedeutet also die neu angelegten KNX Devices Löschen und die bestehenden EIB Devices auf Device Type KNX ändern... richtig?
Nur leider finde ich keinen Weg den Device Type in der ConfigDB auf KNX umzustellen.
Viele Grüße
Marco
Hallo Marco,
soweit richtig. Wie gesagt, zu ConfigDB kann ich leider nichts sagen.
Habe mich bisher nicht getraut da ran zu gehen, weil ich solche Probleme, wie Du sie nun zu haben scheinst, "latent befürchtet" habe.
ConfigDB ist für mich eine "Blackbox" zu der ich zu wenig Infos hier oder im Wiki gefunden habe, die das "praktische" Umgehen so beschreiben, dass es außerhalb der Routine für mich anwendbar ist. Da bleibe ich lieber bei den Logfiles, bei denen ich im Zweifel "alles im Griff" behalte.
Bin gespannt, ob es eine handhabbare Lösung geben wird.
Gruß
Michael
Mahlzeit!
Genau so ist es. Wenn Deine Installation läuft würde ich autocreate deaktivieren.
Dann würde ich Stück für Stück die EIB-Devices nach KNX umziehen. Hier kannst Du Dir Zeit lassen, da beide Module parallel laufen.
Wenn der Umzug beendet ist, dann stelle das Attribut useEib bei der TUL auf 0. Das ist die einfachere Möglichkeit zum Entladen des Moduls :-P
Inwiefern ein Migrieren in der ConfigDB direkt möglich ist, kann ich nicht sagen. Ich würde ein Textfile rausdumpen, ändern und wieder zurück spielen. Wenn ich richtig gegoogled habe, steht hier wie: https://forum.fhem.de/index.php/topic,30551.0.html (https://forum.fhem.de/index.php/topic,30551.0.html)
Grüße, Andi
P.S.: Warum hast Du in einer "fertigen" Installation Autocreate an?
Hi Andi,
danke! folgendes aus dem Threat hat geholfen die fhem.cfg aus der configDB zurückzuholen:
attr global configfile fhem.cfg
save config
shutdown
Zu deiner Frage....
Zitat von: Andi291 am 10 April 2016, 12:59:00
P.S.: Warum hast Du in einer "fertigen" Installation Autocreate an?
Die Anlage wird stetig erweitert und da Autocreate bisher auch keinerlei Probleme gamacht hat und neue Devices automatisch nach dem anlernen angelegt werden ist die Funktion immer an. Soweit mir bekannt ist Autocreate auch genau dazu gedacht.
Nun stellt sich bei der Umstellung allerdings das nächste Problem ein... wenn ich versuche ein Device umzustellen verschwindet es aus FHEM solange bis ich es wieder zurückstelle. Um Sicher zu gehen das ich nichts falsch mache... wie müsste folgendes Device (dpt1) umgestellt werden?
define EIB_a000 EIB a000 a700
attr EIB_a000 userattr lightSceneParamsToSave lightSceneRestoreOnlyIfChanged:1,0
attr EIB_a000 IODev EIB
attr EIB_a000 alias Gallerie Licht 1
attr EIB_a000 group Licht
attr EIB_a000 room Gallerie
Danke und Grüße
Marco
Hallo Marco,
das mit dem Autocreate bei EIB oder KNX ist so ne Sache - ich hab lange überlegt, es rauszunehmen. Ein KNX-Gerät ohne DPT zu betreiben ist schlicht falsch. Und diesen kann ich nicht maschinell ermitteln. Ergo ist autocreate nur ne halbe Sache...
Dein Beispielgerät kann so aussehen:
define nameEgal KNX a000:dpt1.001 a700:dpt1.001
attr nameEgal userattr lightSceneParamsToSave lightSceneRestoreOnlyIfChanged:1,0
attr nameEgal alias Gallerie Licht 1
attr nameEgal group Licht
attr nameEgal room Gallerie
Grüße, Andi
Hallo,
für mich hat nun folgender Weg funktioniert:
Ich nutze (vorerst) eibd als Systemdienst weiter und in FHEM das Modul KNX.
Die Definition für das TUL lautet deswegen
define KNX TUL eibd:localhost 1.1.255
attr KNX useEIB 0
Alle meine Gruppenadressen habe ich händisch auf das Format
define devicename KNX 3/0/0:dpt1
attr devicename IODev KNX
geändert.
Bei manchen Gruppenadressen musste ich noch den Subtyp des Datenformates ändern bzw. ergänzen (war vorher nicht notwendig)
define KNX_aussentemp KNX 0/7/0:dpt9.001
So läuft das ganze nun bei mir - werde meine weiteren Installationen dahingehend anpassen.
Danke für all den Support und die Entwicklung!
Trotzdem noch folgender Hinweis:
Wird eine Gruppenadresse mit falschem Datentyp definiert kommt folgende Fehlermeldung im Log und Autocreate legt nochmals ein neues Device an
2016.04.11 19:21:37 2: parse device hash: HASH(0xb175a3c) name: KNX_1002, message could not be decoded - see log for details
2016.04.11 19:21:37 3: KNX Unknown device 1002 (1/0/2), Value 0d14, please define it
2016.04.11 19:21:37 2: autocreate: define FileLog_KNX_1002 FileLog ./log/KNX_1002-%Y.log KNX_1002
Gibt's es die Möglichkeit einen Hinweis auf den Namen des eigentlich bereits definierten Devices (mit falschen Datentyp)? Das wäre toll um es schneller aufzufinden/korrigieren zu können.
Danke!
Zitat von: spooy99 am 11 April 2016, 21:14:06
Alle meine Gruppenadressen habe ich händisch auf das Format
define devicename KNX 3/0/0:dpt1
attr devicename IODev KNX
geändert.
Hast Du die devices neu angelegt oder die alten EIB Definitionen geändert? Letzteres geht bei mir leider nicht ...
https://forum.fhem.de/index.php/topic,52049.0.html
Edit: Ändern im Browser geht nicht, aber Ändern in der fhem.cfg sehr wohl ...
Servus!
Das mit dem Hinweis schau ich mir an. Glaube, der Aufwand wird recht hoch, aber ich prüfe...
Grüße, Andi
Zitat von: grappa24 am 11 April 2016, 22:28:52
Hast Du die devices neu angelegt oder die alten EIB Definitionen geändert? Letzteres geht bei mir leider nicht ...
https://forum.fhem.de/index.php/topic,52049.0.html
Edit: Ändern im Browser geht nicht, aber Ändern in der fhem.cfg sehr wohl ...
Hallo - ja ich hab mir die komplette fhem.cfg geholt und direkt darin editiert um "alles auf einmal" vom Modul EIB auf KNX umstellen zu können (auch wenn man das lieber sein lassen sollte ::) )
Dank Eurer Hilfe gerade 50 EIB Instanzen erfolgreich nach KNX migriert ohne eine einzige Fehlermeldung - puh ... ;)
Ein Traum :-P Geht doch 8)
Abend!
Antwort zum Thema "Hinweis auf vorhandenes Device mit falschem DPT":
Wie befürchtet haut das NICHT ohne beträchtlichen Aufwand hin. Als Referenz brauche ich den Namen des Devices. Zum Zeitpunkt, an dem der Logeintrag geworfen wird, komme ich da nicht ran. Ich müsste also ALLE definierten Gruppenadressen ALLER definierten Devices parsen, um den EINEN Namen rauszugeben.
Wenn Du (wie von Dir Beschrieben) Autocreate an hast, ist die Zuordnung simpel: KNX_<gruppenadresse>.
Reicht das für den Moment?
Grüße, Andi
Zitat von: Andi291 am 12 April 2016, 18:21:54
Reicht das für den Moment?
Danke - na klar ist das ausreichend ... das andere wäre die "Luxus-Variante ohne selbst nachdenken zu müssen" :-X