ich möchte Euch einen aktuellen Sachstand zur ETS Applikation nehmen
Stand der neuen KNX Applikation
Hier geht es um die ETS Geräteapplikation für den Timberwolf Server um KNX Objekte zu programmieren.
Bitte nicht verwechseln mit der ETS APP "Timberwolf Importer", die dafür vorgesehen ist, dass die Eintragungen in der ETS Geräteapplikation durch einen CSV-Import angelegt werden können.
Geschichte der Timberwolf ETS Applikation
Wer erst ab hier in das Thema einsteigt, sollte vorerst ein wenig über die Geschichte der ETS Applikation lesen, die ich hier beschrieben habe:
viewtopic.php?t=5602&start=50#p60300
Universalobjekte
Wer alles über die Universalobjekte weiß, kann hier gerne zum nächsten Abschnitt springen.
Universalobjekte sind ein zentrales Element der KNX-Integration im Timberwolf Server. Diese fungieren als flexible Schnittstellen zwischen dem KNX-System und allen anderen unterstützten Subsystemen (wie MQTT, Modbus, 1-Wire usw.) und Technologien wie Logiken und Visualisierungen.
Der zertifizierte KNX Stack des Timberwolf Servers unterstützt insgesamt 8.000 Universalobjekte. Schon immer (seit 2018). Bislang waren nur 2.000 Objekte nutzbar, wegen der Limitation der ETS. Deshalb war diese Applikation nicht registriert, weil wir eben alle 8.000 Objekte unterstützt sehen wollten. Erlaubt wären nach Standard übrigens 64.000 Objekte, wir haben also die ETS nicht über den Standard hinaus gefordert.
Die Besonderheit beim Timberwolf Server ist, dass diese Universalobjekte keine feste Verbindung mit Funktionen im Timberwolf Server haben. Im Gegensatz zu allen anderen KNX Geräten, bei denen jedes Objekt eine relativ feste Verbindung hat zu einem Taster, einer LED, einem Relais im Aktor oder eine sonstige Funktion.
Beim Timberwolf Server wird die Zuordnung erst durch die Objektverknüpfung festgelegt. Damit wäre es möglich, 8.000 Temperatur-Objekte anzulegen, oder 8.000 Logik-Objekte usw. Keine Festlegung bedeutet maximale Freiheit für die Nutzer.
Deshalb bezeichnen wir diese KNX Objekte als Universalobjekte.
Damit der Timberwolf Server die Telegramme für diese KNX Objekte korrekt verarbeiten kann, muss dieser wissen, wie die Telegramme zu kodieren / dekodieren sind. Dies erfährt der Timberwolf Server über die Aktivierung jedes genutzten Universalobjekte mit einem DPT und der anschließenden Programmierung aus der ETS.
Jedes Universalobjekt unterstützt derzeit 223 verschiedene DPT. Künftig noch mehr. Damit sind 8.000 x 223 = 1.78 Mio. Kombinationen möglich.
Es gibt nach unseren Informationen keinen vergleichbaren KNX Stack der soviele Konfigurationsvarianten ermöglicht. Alles, damit die Nutzer des Timberwolf Servers möglichst nicht limitiert sind.
ETS - Herausforderungen & Experimente
Leider tut sich die ETS schwer mit dieser Menge an Objekten und DPT. Das Problem besteht seit 2018 (wie in der oben verlinkten Geschichte beschrieben).
Wir wollen nun unsere ETS Applikation registrieren und (endlich) die schon lange gewünschten - und für den Ausbau er VISU dringend benötigte - Datenpunkttypen hinzufügen.
Leider zeigte sich bei den vielen Versuchen in den letzten Monaten, dass die ETS (obwohl man uns was anderes avisiert hatte mit dem "Mapping"-Feature) sich weiterhin sehr schwer tut mit einer hohen Anzahl an Objekten.
Die Tests haben nicht nur wir durchgeführt, sondern auch unsere DEV-Tester aus dem Kreis der Kunden (vielen lieben Dank hier dafür, einige haben sich da richtig reingehängt). Weil unsere Rechner sind nicht die modernsten, teils läuft Windows auch in einer VM und wir wollten reale Zahlen von Kunden-Endgeräten.
Die Ergebnisse in kurz: Über 2.000 Objekte wurde es zäh, über 4.000 Objekte eher unbrauchbar. Lieferzeiten anstatt Reaktionszeiten.
Warum das so ist, wissen wir nicht. Eigentlich sind die Probleme mit der ETS mit vielen Objekten schon lange bekannt und einer der Chefentwickler (von ISE) hat auch in einem Ticket geschrieben, dass man bei der KNXA eben eine Entscheidung treffen müsste, dass man das besser unterstützt.
Weil, wenn man das effizient kodiert, dann würde man kaum mehr als 100 Bytes speichern müssen pro Universal-Objekt und bei 8.000 Objekten sind das dann gerade mal 800 kBytes. Das ist gar nichts an Datenmenge. Ein ordentliches PC kann das in weniger als einer Millisekunde in die CPU laden und durchsuchen. Warum die ETS dann die Uhr mehrere Minuten (!) kreisen läßt, weil man bei einer 8.000er Applikation wohin klickt, zeigt schon, dass Performance einfach kein Entwicklungsziel war bei der ETS.
Soll kein Bashing der ETS sein, man kann zu einem gegebenen Budget nicht alles haben. Das was die ETS richtig gut macht, ist das, was man nicht sieht, diese enorme Abwärtskompatibilität zu 30 Jahre alten Komponenten (von denen viele eine aktuelle Zertifizierungsanforderung nicht mehr erfüllen würden), die man aber - parallel zu den neusten am Markt befindliche Komponenten - im gleichen Projekt haben und programmieren kann. Das ist, zusammen mit der Unterstützung für 8.000+ Geräten, ein größeres Kunststück, als man denkt und das muss man auch zugute halten.
Trick 17 - oder wie man heute sagt "der Hack"
Um die Performancebremse so gut es geht zu umgehen, ohne dass wir wieder nur eine limitierte APP herausgeben, haben wir auf Basis der gewonnenen Erkenntnise folgende zwei Dinge in der Applikation umgesetzt:
- Die Anzahl der zu nutzenden Objekte ist 1.000er Weise zu aktivieren. Pro aktivem 1.000er Bereich werden 10 Gruppen zu 100 Objekten verfügbar.
- Für jede dieser 100er Gruppen kann man einen DPT-Bereich auswählen, der nur jeweils 13 bis 79 DPT umfasst. Damit deutlich weniger als die 223 Stück. Aus Gründen der Kompatibilität kann man auch "alle DPT" für eine solche 100er Gruppe wählen.
Damit wird die Anzahl der Objekte mal auswählbare DPT deutlich gekürzt und die ETS für alle normalen Anwendungen bedienbar.
Wir werden mit der KNXA hier in Kontakt treten und um Abhilfe bitten. Nur kann das - bei den derzeitigen Entwicklungs-Zyklen in der ETS durchaus ein Jahr dauern (die öffentliche Beta-Phase der ETS 6.4 ist bereits abgeschlossen, es dauert aber trotzdem bis Jahresende, bis die ETS 6.4 erscheint).
Ausblick auf die neue KNX-Applikation
Hinweis: Ob das final so bleibt, kann ich nicht garantieren. Wir kennen die Rückmeldungen der DEV-Tester dazu nicht (geht erst dieser Tage an diese raus) und wir haben noch keine Rückmeldung, ob die ETS APP "Timberwolf Importer" mit dem Zuschalten von Objekt- und DPT-Bereichen umgehen können wird.
Aber ihr wollt immer gerne wissen, wie der Sachstand ist, daher, so wie es heute aussieht:
Timberwolf Server als Gerät im Katalog
Die neue Applikation kann man in den Katalog laden. Hier per lokalem Import, nach er Registrierung auch über die ETS Cloud der KNXA.

NEU! Info über den Server
Es gibt nun auch ein paar Tabs in der Applikation über den Timberwolf Server und grundsätzliche Erklärungen. Das sollte es gerade Anfängern leichter machen, einen Einstieg zu finden.
Wir haben im Text auch URLs angegeben zu den dazu passenden Erklärungen im Wiki. Muss man aber abtippen, weil die Formatierung als "Link" für eine URL im Text haben wir im Manufacturer Tool ("MT") - damit erstellt man die Applikationen für die ETS - nicht gefunden.
Der Text ist ein wenig zerhackt strukturiert, weil jedes "Stück" Text immer nur 255 Zeichen haben darf.

Telegrammrate einstellen
Die Einstellung der Telegrammrate hat nun ein eigenes Tab bekommen mit Erklärungen und steht nun per Default auf 25. Bitte nur erhöhen, wenn ihr wisst, was ihr tut und Ihr die Bedeutung aller Flags kennt und daraus ermessen könnt, wieviele Telegramme insbesondere beim Start des KNX Stacks damit erzeugt werden.

Zeitserver
Wir haben diese Einstellung neu strukturiert und den Zeitclient entfernt, den es früher in der alte Applikation gab (aber letztlich deaktiviert war)

Lebensbit
Auch die Einstellungen zum Lebensbit sind nun in einer eigenen Tab untergebracht.

NEU! Objektbereiche aktivieren
Wie oben beschrieben, unterstützt die neue Applikation zwar 8.000 Universalobjekte. Da die allermeisten Nutzer, insbesondere am Anfang, weniger davon benötigen, lassen sich diese nun in 1.000er Schritten aktivieren.
Dies nimmt man im TAB "Objektbereiche aktivieren" vor.
Zunächst sieht man nur die Möglichkeit, den ersten 1000er Bereich zu aktiveren.

Sobald man den ersten Bereich aktiviert hat, werden zehn Gruppen zu 100 Objekten freigeschaltet (links unten) und es wird die Möglichkeit zur Verfügung gestellte, den nächsten 1000er Bereich zu aktiveren.

Bis hin zu allen 8.000 Objekten

NEU! DPT-Bereich auswählen
Für jeden der 100er-Gruppen muss zunächst ausgewählt werden, welcher DTP-Bereich für jedes der 100 Universalobjekte auswählbar ist beim jeweiligen aktivieren.
Es besteht auch die Möglichkeit sämtliche unterstützten Datenpunkttypen mit "DPT alle" für diese 100er Gruppe zu aktivieren. Dies sollte man nicht zu oft einstellen, da dies die ETS mit längerem Nachdenken quittiert.

Aus dem gewählten DPT Bereich kann man dann für jedes Objekt entsprechend den DPT aussuchen.

Netzwerkeinstellungen
Die Einstellungen für die IP-Adressen haben wir aus den Spezialobjekten entfernt.
Unterstützt werden soll (geht gerade noch nicht) die in der ETS vorgesehene IP-Einstellung für ein Interface. Dieses soll auch eine aktuelle Einstellung auslösen können.
Damit ist auch denjenigen Nutzern geholfen, die sich die IP-Einstellung irgendwie "verschossen" haben, weil es dann künftig auch einen Weg gibt, diese per ETS zu programmieren / auszulesen.

Edit: Wir haben eben gerade über die IP-Eigenschaften gesprochen und beim nochmaligen Hinsehen bemerkt, dass es gar keine Einstellungen gibt für DNS-Server. Damit ist dieser fixe IP-Dialog in der ETS komplett unbrauchbar. Stammt wohl aus einer Zeit, da hatte ein Heimnetzwerk keinen Internet-Router (also im vergangenen Jahrtausend) und damit musste man auch keinen DNS Server angeben, damit z.B. ein Timberwolf Server auch seine Zeit per NTP bekommt, weil er den NTP-Server im Internet auch findet. Oder andere Cloud-Komponenten. Dürfte alle KNX Geräte mit IP betreffen, die z.B. NTP benötigen oder ein VPN zur Verfügung stellen. Fühlt sich schon irgendwie limitiert an. Werden wir wohl ein Ticket machen müssen und die Netzwerkeinstellungen dann in einem eigenen Tab.

Wann fertig?
Wir müssen nun die APP "Timberwolf Importer" anpassen lassen auf diese Applikation. Dafür musste erst die Applikation fertig gestellt werden, daher konnten wir das nicht parallel angehen.
Hierfür wollen wir ein darauf spezialisiertes externes Unternehmen beauftragen (die damals den Timberwolf Importer entwickelt hat). Wie lange das dauert kann ich derzeit nicht sagen, weil die Anfrage läuft parallel, ich werden dazu informieren, wenn es belastbare Aussagen gibt.
Parallel geben wir die Applikation an die DEV-Tester, wobei wir noch Ergänzungen programmieren müssen im Timberwolf Server, da wir für den DPT 232.600 (RGB) eine umschaltbare Konvertierung brauchen, da leider Hersteller auf die Idee gekommen sind, dass man das auch mit HSV kodieren könnte. Das stellt das ganze DPT-System auf den Kopf, wenn es verschiedene Kodierungen gibt.....
Einen genauen Termin kann ich daher nicht nennen, das Bergfest sollten wir aber schon feiern können.
lg
Stefan