IOWKIT V2.0 Betatest wird ausgerufen

Dies ist das deutsche Forum für alle Themen um den IO-Warrior. Beiträge bitte nur in Deutsch.

Moderator: Guido Körber

Post Reply
Robert Marquardt
Posts: 543
Joined: Mon Dec 01, 2003 6:09 pm

IOWKIT V2.0 Betatest wird ausgerufen

Post by Robert Marquardt »

Das API ist komplett ueberarbeitet worden.
Ziel ist es die Beschraenkungen des V 1.4 APIs aufzuheben, das API zu vereinfachen und fuer weitere IO-Warrior-Modelle vorzubereiten.

Das Konzept des APIs basiert nun auf Callbacks fuer Events.
Ein Event signalisiert Plugs und Unplugs von IO-Warriors und hebt damit die Beschraenkung auf 16 IO-Warrior auf. Weiterhin muessen die IO-Warriors nun nicht mehr zwingend bereits eingesteckt sein.

Der zweite Callbacktyp ist fuer Read-Events. Es laufen nun interne Lesethreads auf allen Pipes der IO-Warrior. Trifft ein Report ein, so wird er nun zuerst per Callback gemeldet und je nach Rueckgabewert des Callbacks fuer das Lesen mit IowKitRead aufgehoben oder nicht.

Es gibt noch keine Unterstuetzung fuer Java oder Linux.

Wer am Betatest teilnehmen will der melde sich per Email bei marquardt att codemercs dott com und ich sende das Zip zu (641 KByte).
Im Augenblick besteht es aus den Sourcen der DLL mit einem Visual Studio 2005 Projekt zur Erstellung und je einem Beispiel in Delphi und VB6 sowie einer Dokumentation des API als PDF.
Robert Marquardt
Posts: 543
Joined: Mon Dec 01, 2003 6:09 pm

Post by Robert Marquardt »

Ich brauvche Hilfe von einem VB6 Experten.
Beim neuen API scheinen sich Timer und der Callback nicht zu vertragen.
Das koennte bedeuten das VB6 nicht mehr unterstuetzt werden kann.
Robert Marquardt
Posts: 543
Joined: Mon Dec 01, 2003 6:09 pm

Post by Robert Marquardt »

Das Problem ist diagnostiziert und wird behoben werden. Es ist nicht VB spezifisch.
Die DLL hat Probleme wenn die Timeouts auf unendlich stehen. In diesem Fall blockiert IowKitRead das Messagehandling fuer Plug und Unplug.
Robert Marquardt
Posts: 543
Joined: Mon Dec 01, 2003 6:09 pm

Post by Robert Marquardt »

Das Problem ist geloest. Die naechste Betaversion wurde an die gemeldeten Benutzer verschickt.
Mike D
Posts: 91
Joined: Wed Jun 02, 2004 4:07 pm
Location: Elbe- Weser-Dreieck
Contact:

Post by Mike D »

das Beispiel in Samples2\Simple IO\C nutzt aber noch die alte DLL, oder ???

Hat schon irgendwer ein Beispiel in C das die Events nutzt ?
Robert Marquardt
Posts: 543
Joined: Mon Dec 01, 2003 6:09 pm

Post by Robert Marquardt »

Ja, ich bin noch nicht durch mit den Beispielen.
Ich werde die Simple IO-Beispiele auf DataEvent umschnitzen.

Nur das Keyboard-Matrix-Beispiel braucht den DataEvent auf den Special Mode Functions. Alle anderen Special Mode Functions sind sowieso immer IowKitWrite/IowKitRead-Paare. Nur die Keyboard Matrix kann extern getriggerte Read Events verursachen.
Die Beispiele leben also gut mit Timern.

Ich ueberlege im Augenblick nur noch an einer internen Aenderung, die es erlaubt die noch in der Queue befindlichen Reports zu lesen, obwohl das Geraet schon ausgesteckt wurde.
Robert Marquardt
Posts: 543
Joined: Mon Dec 01, 2003 6:09 pm

Post by Robert Marquardt »

Ich habe mich mal fuer die Linux-Implementation ein bischen schlau gemacht.
Soweit ich herausbekommen habe, kann man /proc/bus/usb/devices oeffnen und ein select() darauf ausfuehren.
Jedesmal wenn man ein Geraet ein- oder aussteckt reagiert dann das select().
Ist das File bei den gaengigen 2.6 Distributionen vorhanden?

Ansonsten muss ich mich noch in die Thread-Programmierung einarbeiten.
Es muss ja wohl ein Thread auf die Plugs lauern und fuer die Callbacks braucht es wohl auch einen Lesethread wie unter Windows.
Ich nehme da gerne Tipps entgegen.
l_netwalker
Posts: 35
Joined: Mon Oct 17, 2005 9:51 am
Location: Aachen, Germany
Contact:

Post by l_netwalker »

Bei meiner 2.6 Debian Distri gibt es eine /proc/bus/usb/devices

ansonsten völlig überfragt, aber neugierig und testwillig
Werner
Posts: 4
Joined: Mon May 16, 2005 9:25 pm
Location: Freising
Contact:

Post by Werner »

Mike D wrote:das Beispiel in Samples2\Simple IO\C nutzt aber noch die alte DLL, oder ???

Hat schon irgendwer ein Beispiel in C das die Events nutzt ?
Nur das IIC-Beispiel ist bereits umgestellt. Ich habe mal ein SimpleIO2 in's Netz gestellt, was zu der ausgelieferten Beta 6 - Version passt.

Probiert's mal aus.

Gruß
Werner
Robert Marquardt
Posts: 543
Joined: Mon Dec 01, 2003 6:09 pm

Post by Robert Marquardt »

Danke fuer die Debian-Pruefung. Debian ist immer die nackteste und reinste Distribution. Wenn wir es darauf zum Laufen kriegen, dann sollten die meisten Probleme geloest sein.
Das wird allerdings wohl bis mindestens in den Februar dauern.
Post Reply