IOW SDK 1.5GM
Moderator: Guido Körber
-
- Site Admin
- Posts: 2879
- Joined: Tue Nov 25, 2003 10:25 pm
- Location: Germany/Berlin
- Contact:
-
- Posts: 6
- Joined: Thu Oct 26, 2006 1:19 pm
- Location: München
-
- Posts: 543
- Joined: Mon Dec 01, 2003 6:09 pm
-
- Posts: 389
- Joined: Sun Feb 13, 2005 1:22 pm
- Location: Gerblingerode / Duderstadt
- Contact:
-
- Site Admin
- Posts: 2879
- Joined: Tue Nov 25, 2003 10:25 pm
- Location: Germany/Berlin
- Contact:
-
- Posts: 389
- Joined: Sun Feb 13, 2005 1:22 pm
- Location: Gerblingerode / Duderstadt
- Contact:
Hallo
der Fehler das IOW nicht sauber erkannt werden ist immer noch !!!
wenn ich mein Testprogramm mit der iowkit.dll Version 1.5 (10.01.2007) verwende, werden alle angeschlossenen IOW`s erkannt.
Aber das entfehrnen eines IOW`s wird nicht mehr sauber erkannt !!!
Mit der iowkit.dll Version 1.4 (29.07.2005) funktioniert es fehlerfrei
mfg
R.Greinert
der Fehler das IOW nicht sauber erkannt werden ist immer noch !!!
wenn ich mein Testprogramm mit der iowkit.dll Version 1.5 (10.01.2007) verwende, werden alle angeschlossenen IOW`s erkannt.
Aber das entfehrnen eines IOW`s wird nicht mehr sauber erkannt !!!
Mit der iowkit.dll Version 1.4 (29.07.2005) funktioniert es fehlerfrei
mfg
R.Greinert
-
- Posts: 543
- Joined: Mon Dec 01, 2003 6:09 pm
Weder die 1.4 noch die 1.5 sind dafuer spezifiziert das man den IOWarrior ueberhaupt an- oder abstecken kann.
Das Problem der 1.5 mit ausgesteckten Devices kann erst in der 2.0 vollstaendig geloest werden. Die 2.0 wird das 1.5 API zusatzlich unterstuetzen.
Der Grund fuer das Problem ist das eine DLL, die mehrere Programme gleichzeitig den Zugriff auf die IOWarrior ermoeglicht, nicht moeglich ist. Das gibt Windows nicht her. Es muss also ein Daemon-Programm her. Dieses verwaltet die IOWarrior und die DLL dient nur noch als Kommunikationsvermittler zu den Programmen.
Das Problem der 1.5 mit ausgesteckten Devices kann erst in der 2.0 vollstaendig geloest werden. Die 2.0 wird das 1.5 API zusatzlich unterstuetzen.
Der Grund fuer das Problem ist das eine DLL, die mehrere Programme gleichzeitig den Zugriff auf die IOWarrior ermoeglicht, nicht moeglich ist. Das gibt Windows nicht her. Es muss also ein Daemon-Programm her. Dieses verwaltet die IOWarrior und die DLL dient nur noch als Kommunikationsvermittler zu den Programmen.
-
- Site Admin
- Posts: 2879
- Joined: Tue Nov 25, 2003 10:25 pm
- Location: Germany/Berlin
- Contact:
-
- Posts: 389
- Joined: Sun Feb 13, 2005 1:22 pm
- Location: Gerblingerode / Duderstadt
- Contact:
Hallo
Für mich ist das ein Schritt zurück ....
denn mit allen Versionen vor 1.5 hat das hot-plug gut funkioniert ...
Ich setze mehrere IOW für Steuerzwecke ein ...
Um einen sichen Ablauf zu gewähren,
prüfe ich vor jeder Änderung, ob der IOW vorhanden ist ...
da die IOW`s im dauereinsatz sind ist es schon vorgekommen das ein
IOW sich abgehängt hatte ....
ein einfaches ziehen (USB)und wieder reinstecken und schon ging es weiter .....
mit version 1.5 geht das somit nicht mehr (Programmabsturz !!!)
für mich ist das ein BUG kein Feature
wofür dann noch den CLOSE Befehl ????
mfg
R.Greinert
USB ist doch eine hot-plug Schnittstelle ....Feature, nicht Bug
Für mich ist das ein Schritt zurück ....
denn mit allen Versionen vor 1.5 hat das hot-plug gut funkioniert ...
Ich setze mehrere IOW für Steuerzwecke ein ...
Um einen sichen Ablauf zu gewähren,
prüfe ich vor jeder Änderung, ob der IOW vorhanden ist ...
da die IOW`s im dauereinsatz sind ist es schon vorgekommen das ein
IOW sich abgehängt hatte ....
ein einfaches ziehen (USB)und wieder reinstecken und schon ging es weiter .....
mit version 1.5 geht das somit nicht mehr (Programmabsturz !!!)
für mich ist das ein BUG kein Feature
wofür dann noch den CLOSE Befehl ????
mfg
R.Greinert
-
- Posts: 543
- Joined: Mon Dec 01, 2003 6:09 pm
Das API muss so einfach wie moeglich sein. Echter Hotplug-Support im API braucht Callbacks. Das schliesst weniger erfahrene Programmierer aus.
Fuer das 2.0 API machen wir das trotzdem, da es doch noetig ist.
Das 1.5 API ist ein Zwischenrelease, um den IOWarrior 56 zu unterstuetzen.
Das 2.0 API wird das 1.5 API in der DLL mit unterstuetzen. Die Codebasis wird aber voellig neu geschrieben.
Fuer das 2.0 API machen wir das trotzdem, da es doch noetig ist.
Das 1.5 API ist ein Zwischenrelease, um den IOWarrior 56 zu unterstuetzen.
Das 2.0 API wird das 1.5 API in der DLL mit unterstuetzen. Die Codebasis wird aber voellig neu geschrieben.
-
- Site Admin
- Posts: 2879
- Joined: Tue Nov 25, 2003 10:25 pm
- Location: Germany/Berlin
- Contact:
-
- Posts: 543
- Joined: Mon Dec 01, 2003 6:09 pm
Was ist das genaue Problem? Ich habe einen Test mit einem IOWarrior 40 durchgefuehrt und das Abstecken loest kein Problem aus. Die DLL stuerzt nicht ab. Ein Wiederanstecken und ein Aufruf von IowKitCloseDevice() und IowKitOpenDevice() findet den IOWarrior 40. Ohne diese Aufrufe bleibt der IOWarrior natuerlich unerkannt.friend-of-rq wrote: Aber das entfehrnen eines IOW`s wird nicht mehr sauber erkannt !!!
-
- Posts: 389
- Joined: Sun Feb 13, 2005 1:22 pm
- Location: Gerblingerode / Duderstadt
- Contact:
ich verwende einen IOW24 für meine Haussteuerung.Was ist das genaue Problem? Ich habe einen Test mit einem IOWarrior 40 durchgefuehrt und das Abstecken loest kein Problem aus.
Zwischen den Steuerbefehlen können Stunden liegen.
Vorgehensweise: ....... (unter 1.4) fehlerfrei
Ein Steuerbefehl liegt an ...
-IowKitOpenDevice()
-überprüfen wie viele IOW`s sind angeschlossen
-suche des richtigen IOW über die SN
-Ausgabe des Steuerbefehls an den entsprechenden IOW
-IowKitCloseDevice()
sollte der benötigte IOW bei der suche nicht gefunden werden,
versucht das Steuerprogramm es später wieder ....
Ein Abhängen des IOW ist durchaus öffter schon vorgekommen ....
teilweise läuft es Monante gut, dann aber hängt er sich zweimal die Woche ab.
mit der oben beschriebenen vogehensweise kein Problem ....
IOW ziehen, kurz warten und wieder einstecken und das Programm kann
wieder auf den IOW zugreifen ....
mit der 1.5 Version werden aber nach dem IowKitOpenDevice()
noch IOW`s erkannt die längs nicht mehr vorhanden (gezogen oder abgestürzt) sind.
Problem:
Programm will auf einen nicht vorhandenen IOW zugreifen ...
Folge : eine Fehlermeldung die das Programm abstürzen lässt ...
Aus meiner Webseite ist die aktuelle Version 2.2.018 des IOWTestProgs
es werden die DLL version 1.4 und 1.5 unterstützt.
hiermit könnt Ihr eure beiden DLL-Versionen mal testen ...
http://greinert.hopto.org/main/fileadmi ... -2-018.zip
-------
wer oder was ist denn damit gemeit ???Absaufen ist auf jeden Fall keine Option, wir schauen uns das an.
mfg
R.Greinert
-
- Site Admin
- Posts: 2879
- Joined: Tue Nov 25, 2003 10:25 pm
- Location: Germany/Berlin
- Contact:
Es ging darum, dass das Programm abstürzen soll bei mehrmaligem Aufruf von Open.friend-of-rq wrote:wer oder was ist denn damit gemeit ???Absaufen ist auf jeden Fall keine Option, wir schauen uns das an.
Was das Absaufen des IO-Warrior betrifft: Dafür gibt es keinen systeminternen Grund. Wahrscheinlich kommt da von aussen eine Störung, wie z.B. Elektrostatik. Ist die Schaltung auf einem Starterkit aufgebaut, oder eigene Platine?
-
- Posts: 389
- Joined: Sun Feb 13, 2005 1:22 pm
- Location: Gerblingerode / Duderstadt
- Contact:
Die schaltung ist auf einem eigenen Board ...
des weiteren häng ein Hausbus dran (RS485 mit Holtec IC`s)....
ich hätte den Bus vom Board über Optokopplern entkoppeln sollen ...
Bin aber gerade dabei alles auf I2C umzustellen ( mit Entkopplung)
Ich habe zwei IOW an meinem Steuerrechner laufen
den IOW24 der sich gelegendlich abhäng (vermutlich Einstreuung durch die Hausbusleitung) und einen IOW40, den ich über eine 15m langem USB-Kabel betreibe ... der läuft dagegen durchgehend sauber.
Das Abhängen ist aber nicht das Problem !!!!
mfg
R.Greinert
des weiteren häng ein Hausbus dran (RS485 mit Holtec IC`s)....
ich hätte den Bus vom Board über Optokopplern entkoppeln sollen ...
Bin aber gerade dabei alles auf I2C umzustellen ( mit Entkopplung)
Ich habe zwei IOW an meinem Steuerrechner laufen
den IOW24 der sich gelegendlich abhäng (vermutlich Einstreuung durch die Hausbusleitung) und einen IOW40, den ich über eine 15m langem USB-Kabel betreibe ... der läuft dagegen durchgehend sauber.
Das Abhängen ist aber nicht das Problem !!!!
mfg
R.Greinert