JLab und die Firmware

Alles zum Thema Instrumentation (Anzeige- und Steuersoftware) auf Computerseite (Labview, JLab, ...) kann hier rein: Installation, Komponenten, Probleme...
Antworten
magicroomy
kann c't-Lab-Module konstruieren
kann c't-Lab-Module konstruieren
Beiträge: 205
Registriert: 01.12.2007, 09:23

JLab und die Firmware

Beitrag von magicroomy »

Ich mache hier mal ein Thema auf, welches mich als JLab Entwickler immer mehr betrifft:
C't Lab Module und unterschiedliche Firmware.
Die Modulanzahl im c't Lab steigt und auch die Firmware Versionen.
Es gibt neben den 'offiziellen' Firmwareversionen gibt es Eigenentwicklungen für verschiedene Module (DDS, DCG). Bei EDL zeichnet sich evtl. eine komplette Eigenentwicklung von Hard- und Software ab.
JLab ist zwar in der Lage aufgrund von Erkennung des ID Strings eines Moduls und manueller Konfiguration mit unterschiedlichen Features von Firmwareversionen umzugehen, aber ich würde diesen Aufwand ungern zu weit treiben.
Was mir also entgegenkäme wäre Folgendes:
Ich entwickle JLab mit allen angebotenen Features immer gegen die aktuelle Firmware von CM. Zusätzlich kann es Features geben, die durch andere Firmware bereitgestellt werden.
Das bedeuet aber für die Firmwareentwickler den Aufwand immer alle Features von CM nachzuprogrammieren, weil JLAB diese erwartet.
Ich stelle das hier mal zur Diskussion.

Gruss
Magic Roomy
Benutzeravatar
thoralt
Site Admin
Site Admin
Beiträge: 262
Registriert: 10.04.2006, 08:48
Wohnort: Chemnitz
Kontaktdaten:

Re: JLab und die Firmware

Beitrag von thoralt »

magicroomy hat geschrieben:Was mir also entgegenkäme wäre Folgendes:
Ich entwickle JLab mit allen angebotenen Features immer gegen die aktuelle Firmware von CM. Zusätzlich kann es Features geben, die durch andere Firmware bereitgestellt werden.
Das bedeuet aber für die Firmwareentwickler den Aufwand immer alle Features von CM nachzuprogrammieren, weil JLAB diese erwartet.
Ich stelle das hier mal zur Diskussion.
Die DDS-C-Firmware ist voll zu CM's Original kompatibel. Es sind einige neue Features enthalten, welche natürlich auch neue Opto-Bus-Befehle bekommen haben. Alle unterstützten Befehle sind in einer großen Excel-Datei innerhalb des Sourcecode-Verzeichnisses dokumentiert.

Viele Grüße
Thoralt
There are 10 kinds of people in this world: Those who understand binary and those who don't.
magicroomy
kann c't-Lab-Module konstruieren
kann c't-Lab-Module konstruieren
Beiträge: 205
Registriert: 01.12.2007, 09:23

DDS stimmt noch

Beitrag von magicroomy »

Meine Frage zielt auch mehr auf die Zukunft:

Am DDS hat CM ja auch keine funktionalen Erweiterungen in den letzten Firmware Releases gemacht => DDS macht mir derzeit keine Sorgen.
Was passiert aber wenn CM neue Features einbaut? Werdet Ihr nachziehen?
Zusätzliche Features euerer DDS machen mir keine Sorgen.

DCG hat aber mit der neuen Firmware das Brummspannungsfeature bekommen => hier habe ich schon das erste "Problem", weil es das für die DCG-C Variante nicht nicht gibt?

Gruss
Magic Roomy
Benutzeravatar
thoralt
Site Admin
Site Admin
Beiträge: 262
Registriert: 10.04.2006, 08:48
Wohnort: Chemnitz
Kontaktdaten:

Re: DDS stimmt noch

Beitrag von thoralt »

magicroomy hat geschrieben:Was passiert aber wenn CM neue Features einbaut? Werdet Ihr nachziehen?
Natürlich!
magicroomy hat geschrieben:DCG hat aber mit der neuen Firmware das Brummspannungsfeature bekommen => hier habe ich schon das erste "Problem", weil es das für die DCG-C Variante nicht nicht gibt?
Das ist wahr. Aber überleg mal: Was passiert denn, wenn Du das Ripple-Feature im JLab implementierst, und das wird dann mit einer DCG-C-Firmware benutzt? Ich würde mal sagen: Nichts. Schlimmer wäre es, wenn ein Parameter von beiden Firmwares unterstützt, aber unterschiedlich interpretiert würde. Dann hättest Du ein Problem. Aber bei nicht unterstützten Features kommt im günstigsten Fall eine Fehlermeldung von der Firmware, im ungünstigsten Fall kommt nichts zurück. Übersehe ich da etwas?

Viele Grüße
Thoralt
There are 10 kinds of people in this world: Those who understand binary and those who don't.
magicroomy
kann c't-Lab-Module konstruieren
kann c't-Lab-Module konstruieren
Beiträge: 205
Registriert: 01.12.2007, 09:23

Kleines Problem

Beitrag von magicroomy »

Naja,
ein Problem gibt es schon.
Der User hat an der Oberfläche Bedienelemente die ihm vorgaukeln er könnte bestimmte Einstellungen vornehmen und nichts passiert.
Ich mag das immer gar nicht, wenn eine Software das mit mir macht.


Gruss
Magic Roomy
Benutzeravatar
thoralt
Site Admin
Site Admin
Beiträge: 262
Registriert: 10.04.2006, 08:48
Wohnort: Chemnitz
Kontaktdaten:

Re: Kleines Problem

Beitrag von thoralt »

Hm. Dann wirst Du um eine Tabelle (XML, oder der Einfachheit halber auch Excel*) mit allen Parametern und allen Firmwares, welche die unterstützten Merkmale enthält, nicht herumkommen. Die Parameter und Firmwares sind bekannt, der größte Aufwand ist die Zuordnung der Steuerelemente zu den Array-Einträgen. Dann trägst Du in die Tabelle die Namen der Steuerelemente ein, welche von den Parametern abhängen (die kannst Du dann z. B. "disabled" schalten). Die Steuerelemente könnten sich dann anhand ihres Namens über eine zentrale Funktion selbst in der Tabelle suchen (bei der Gelegenheit könntest Du auch eine Lokalisierung vorsehen, aber das halte ich für nicht so wichtig im Moment).

Viele Grüße
Thoralt

*) Der Zugriff auf Excel-Tabellen ist mit dem Paket POI sehr einfach. Ich habe das bereits gemacht und könnte Dir dazu ein aussagekräftiges Beispiel schicken.
There are 10 kinds of people in this world: Those who understand binary and those who don't.
magicroomy
kann c't-Lab-Module konstruieren
kann c't-Lab-Module konstruieren
Beiträge: 205
Registriert: 01.12.2007, 09:23

Versionsmanagement

Beitrag von magicroomy »

Also wenn ihr, wie Du schreibst, euch dazu commitet die neuen Features von CM bei Euch nachzuziehen habe ich eigentlich kein Problem mehr.
Ich habe dann immer eine Baseline. Das ist die Firmware von CM. Euere Zusatzfeatures stellen dann eine Erweiterung dar. Dann muß man auch keine 100 Versionen unterstützen sondern eben nur zwei.
Wenn jemand alte Firmware Versionen einsetzt, muß er dann damit leben, daß bestimmte Dinge halt nicht funktionieren. Damit hab ich keine emotionalen Probleme. ;-)

Noch eine Anmerkung zu POI (und HSSF).
Sollte man nicht machen wenn es nicht umbedingt notwendig ist. Habe ich geschäftlich auch schon am Backen gehabt.
=> "Vermeiden wo es nur geht". Und Alternativen wie man mit Konfigurationsdaten umgeht gibt es dutzende.

Gruss
Magic Roomy
Wilkeltus
kann c't-Lab-Bausätze löten
kann c't-Lab-Bausätze löten
Beiträge: 36
Registriert: 29.11.2007, 10:06
Wohnort: Bad Soden / Ts.

Beitrag von Wilkeltus »

Also committen ist schwierig, weils ja nurn Hobby ist und Spass machen soll. Wir haben ja jetzt mal ne Woche Pause gemacht und ich muss auch noch ein paar Platinen fertigbauen, um ein paar Fehler von PSCLAB nachzustellen.

Thoralt hat (momentan) noch mehr Zeit als ich, aber ich würde die DDS (und demnächst auch DIV)-Firmware schon als unser Baby, welches wir auch weiterhin supporten, betrachten. Das schliesst auch neue (unangekündigte Featueres von cm ein). Für DCG kann ich nicht sprechen, aber wenn amd-65 nichts dagegen hat, könnten wir da auch nach Absprache einspringen. Aber er ist ja auch hochaktiv.

Eigentlich finde ich es ziemlich schade, dass wir hier 2 Zweige haben und cm nicht dazu überreden können, mit dem Gürteltier über die Tastatur zu walzen. Das ist ja die eigentliche Ursache Deines Problems.
amd-65
kann c't-Lab-Module konstruieren
kann c't-Lab-Module konstruieren
Beiträge: 130
Registriert: 29.11.2007, 16:28

Re: DDS stimmt noch

Beitrag von amd-65 »

thoralt hat geschrieben:
magicroomy hat geschrieben:Was passiert aber wenn CM neue Features einbaut? Werdet Ihr nachziehen?
Natürlich!
magicroomy hat geschrieben:DCG hat aber mit der neuen Firmware das Brummspannungsfeature bekommen => hier habe ich schon das erste "Problem", weil es das für die DCG-C Variante nicht nicht gibt?
Ich will nicht unbedingt jedes Feature von CM nachbauen. Mein eigentliches Ziel ist es, mein bisheriges Labornetzteil umzubauen. Mich hat das Konzept vom DCG begeistert. Nach einigen Tiefpunkten bin ich da jetzt wieder dran. Eigene Messungen mit dem letzten Bugfixes zeigen, daß der aktuelle Aufbau vernünftig umsetzbar ist. Für die eigentliche Firmware benötige ich eine komplett geänderte Umschaltung der Versorgung und ich möchte über ein Panel mit größerem Display drei weitere DCG's steuern können.

Gruß
amd-65
Antworten