Probleme bei Installation unter Linux

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

Moderator: Guido Körber

Didi
Posts: 19
Joined: Mon Apr 19, 2004 8:08 pm
Location: Warendorf

Probleme bei Installation unter Linux

Post by Didi »

Moin Leute,

hab mir gerad IO-Warrior SDK Linux runtergeladen und versucht es auf meinem Ubuntu 8.04 (Kernel 2.6.24-19-generic) an den Start zu bringen. Hab verstanden, dass beiliegendes iowarrior-module-2.6 seit Kernel 2.6.21 nicht mehr gebraucht wird.
Hab also frohen Mutes Folder libiowkit-1.5.0 geöffnet. In der entsprechenden readMe steht das noch ein Driver installiert werden soll!? Ich hab's mit dem aus dem iowkit_1.4 Ordner versucht. (musste zuvor noch den Ordner umbenennen, da LeerZeichen drin waren und

Code: Select all

cd
da ja bekanntlich nich mitmacht) <hmm>.
Driver Installation is aber nicht durch gelaufen:

Code: Select all

make -C /lib/modules/2.6.24-19-generic/build SUBDIRS=/home/dietmar/IO_W/LinuxSDK/Kernel_2.6/iowkit_1.4/Driver modules
make[1]: Betrete Verzeichnis '/usr/src/linux-headers-2.6.24-19-generic'
  CC [M]  /home/dietmar/IO_W/LinuxSDK/Kernel_2.6/iowkit_1.4/Driver/iowarrior.o
/home/dietmar/IO_W/LinuxSDK/Kernel_2.6/iowkit_1.4/Driver/iowarrior.c:25:26: Fehler: linux/config.h: No such file or directory
/home/dietmar/IO_W/LinuxSDK/Kernel_2.6/iowkit_1.4/Driver/iowarrior.c:46: Fehler: expected »)« before string constant
/home/dietmar/IO_W/LinuxSDK/Kernel_2.6/iowkit_1.4/Driver/iowarrior.c:188: Fehler: unbekanntes Feld »owner« in Initialisierung angegeben
/home/dietmar/IO_W/LinuxSDK/Kernel_2.6/iowkit_1.4/Driver/iowarrior.c:188: Warnung: Initialisierung von inkompatiblem Zeigertyp
/home/dietmar/IO_W/LinuxSDK/Kernel_2.6/iowkit_1.4/Driver/iowarrior.c: In Funktion »iowarrior_open«:
/home/dietmar/IO_W/LinuxSDK/Kernel_2.6/iowkit_1.4/Driver/iowarrior.c:635: Warnung: Übergabe des Arguments 6 von »usb_fill_int_urb« von inkompatiblem Zeigertyp
make[2]: *** [/home/dietmar/IO_W/LinuxSDK/Kernel_2.6/iowkit_1.4/Driver/iowarrior.o] Fehler 1
make[1]: *** [_module_/home/dietmar/IO_W/LinuxSDK/Kernel_2.6/iowkit_1.4/Driver] Fehler 2
make[1]: Verlasse Verzeichnis '/usr/src/linux-headers-2.6.24-19-generic'
make: *** [default] Fehler 2
dietmar@dietmar-desktop:~/IO_W/LinuxSDK/Kernel_2.6/iowkit_1.4/Driver$ 
dietmar@dietmar-desktop:~/IO_W/LinuxSDK/Kernel_2.6/iowkit_1.4/Driver$ 
Ist es überhaupt nötig den Treiber zu installieren? Oder wird ein schon vorhandener Treiber genutzt? Hoffe hab nix kaput gemacht und überschrieben oder so !?

Ich bin dann wieder zurück in Folder libiowkit-1.5.0 und hab dort die entsprechenden InstallationsAnweisungen durchgeführt. Is fehlerfrei durch gelaufen. Aber leider zeigten meine LEDs keine Reaktion auf die Test-Applikation iowkittest. Der Aufbau is ok. Lief früher unter Windoof wie geschmiert.

Kann mir ein erfahrener Linux User mal unter die Arme greifen? Wo gibt's denn sowas wie'n GeräteManager um zu checken ob der IO-Warrior registriert is oder so?! Wie gehe ich da am besten vor?


Dank&Gruss,
Didi
Elektron
Posts: 19
Joined: Tue Sep 30, 2008 12:57 am

Re: Probleme bei Installation unter Linux

Post by Elektron »

Was die Treiber angeht:
FAQ wrote: Does IO-Warrior require specific drivers?

Only on Linux. IO-Warrior is a device of the HID Class (Human Interface Device). HID devices are controlled by system drivers on MacOS and Windows. The system drivers allow to access the IO-Warrior from application programs. Only on Linux we do provide a specific driver as the Linux system drivers do not allow direct access.
Du benötigst also einen Treiber für Linux.

Hast du beim Programmstart die Konsole geöffnet gehabt? Sollte der fehlende Treiber das Problem gewesen sein, wirft dein Programm die Nachricht "Failed to open device" aus und wird ordnungsgemäß beendet.
Didi
Posts: 19
Joined: Mon Apr 19, 2004 8:08 pm
Location: Warendorf

Re: Probleme bei Installation unter Linux

Post by Didi »

Danke für deine schnelle Antwort!

Und Danke für den Hinweis auf die FAQs ;-) Hätt ich mal genauer hin geschaut...
Aber ist denn der Treiber aus dem IO-Warrior SDK Linux Download Paket (-> LinuxSDK/Kernel_2.6/iowkit_1.4/Driver) der Richtige? Finde es verwirrend, dass er im 1.4 Folder zu finden ist, ich aber natürlich das iowkit_1.5 installieren wollte.

Zu der TestApplikation (LinuxSDK/Kernel_2.6/iowkit_1.5/libiowkit-1.5.0/tests) iowkittest. Hab versucht das Ding einfach mit einem Doppelklick zu starten. Tat sich aber gar nix. Hab's gerad mal aus der Konsole heraus versucht -> bash: iowkittest: command not found
Starte ich iowkittest falsch? Gibt es irgendwo im System die Möglichkeit zu sehen ob der IO-Warrior als USB Gerät registriert ist?

Mann, is das ein Geraffel...

Danke,
Didi
Didi
Posts: 19
Joined: Mon Apr 19, 2004 8:08 pm
Location: Warendorf

Re: Probleme bei Installation unter Linux

Post by Didi »

Hab gerad gelernt das es in der Konsole ./iowkittest sein muss. Und wie du schon vorraus gesagt hast: Failed to open device
Hmm, ok. Bin ich ja schon mal einen Schritt weiter... der Treiber fehlt. Wenn ich den 1.4er (LinuxSDK/Kernel_2.6/iowkit_1.4/Driver) versuche zu bilden kommt die Ausgabe die ich ober bereits schon mal angehängt hab.

Wie kann ich weiter vor gehen? Is es der falsche Treiber?

Danke
wayoda
Posts: 362
Joined: Fri Dec 19, 2003 12:00 pm
Location: Wuppertal/Germany

Re: Probleme bei Installation unter Linux

Post by wayoda »

Hallo Didi.

Das Linux-SDK benötigt wohl mal eine kleine Überarbeitung ;-)
Hier ist eine Kurzanleitung für Ubuntu 8.04.

Der Kerneltreiber wird nicht mehr benötigt, muß also auch nicht mehr compiliert werden.

Das Ubuntu Team war nicht bereit eine Udev-Regel für den Standard-Devicenodes der IOWarrior in die Distribution aufzunehmen.
Das muß man leider per Hand erledigen. Die Datei
LinuxSDK/Kernel_2.6/iowkit1.5/iowarrior-module-2.6/iowarrior-2.6/10-iowarrior.rules
muß dazu als root in ein bestimmtes config - Directory kopiert werden

Kommandozeile öffnen:

Code: Select all

cd LinuxSDK/Kernel_2.6/iowkit1.5/iowarrior-module-2.6/iowarrior-2.6
sudo cp 10-iowarrior.rules /etc/udev/rules.d
sudo udevcontrol reload_rules
Wenn ein IOWarrior neu eingesteckt wird sollte im Verzeichnis /dev/usb jeweils 2 Dateien mit Namen IOWarrior[Nummer]
angelegt werden.
Wenn das geschieht werden die IOWarrior schon mal erkannt.

Man kann sich unter Linux auch die Eigenschaften von allen USB-Geräten im System mit dem Kommando

Code: Select all

lsusb -vvv
anzeigen lassen.

Es muß auf jeden Fall noch die Iowkit-Library compiliert und installiert werden. Es gibt keinen vernüftigen Grund hierbei noch die Version 1.4 zu verwenden, Version 1.5 kann mehr und ist kompatibel.
Die Library wird wie fast alle Quellpakete mit

Code: Select all

cd LinuxSDK/Kernel_2.6/iowkit1.5/libiowkit-1.5.0
./configure
make
sudo make install
compiliert und installiert. Die Installtion der Java-Unterstützung ist in
LinuxSDK/Kernel_2.6/iowkit1.5/libiowkit-1.5.0/INSTALL-JAVA
beschrieben.

iowkittest im Verzeichnis LinuxSDK/Kernel_2.6/iowkit1.5/libiowkit-1.5.0/tests sollte nun auch funktioneren, sofern man ein IOWarrior-Starterkit verwendet oder nachgebaut hat, und das ganze von der Kommandozeile startet.

Eberhard
Didi
Posts: 19
Joined: Mon Apr 19, 2004 8:08 pm
Location: Warendorf

Re: Probleme bei Installation unter Linux

Post by Didi »

Mensch Eberhard, ich könnt dir knutschen. Kaum macht man's richtig dann geht's :-) !!! Klasse; Danke dir für die ausführliche & verständliche Erklährung!!!
Die Geschichte is aber auch wirklich nicht selbsterklährend. Woher hast du das InsiderWissen? Vielleicht sollte man mal einen Artikel für's Ubuntu Portal schreiben?!

Das TestProgramm lässt schon mal die LEDs blinken. Jetzt kümmere ich mich mal um die Java Anbindung ...

Werde weiter berichten

Gruß&Dank auch an Elektron
Didi
Posts: 19
Joined: Mon Apr 19, 2004 8:08 pm
Location: Warendorf

Re: Probleme bei Installation unter Linux

Post by Didi »

So, zum Thema Java Anbindung...
Hab jetzt im Verzeichniss /.../LinuxSDK/Kernel_2.6/iowkit_1.5/libiowkit-1.5.0 den Befehl

Code: Select all

make java-install 
in der Console ausgeführt.
Das Ergebniss war:

Code: Select all

dietmar@dietmar-desktop:~/IO_W/LinuxSDK/Kernel_2.6/iowkit_1.5/libiowkit-1.5.0$ make java-install
make -C java java-install
make[1]: Betrete Verzeichnis '/home/dietmar/IO_W/LinuxSDK/Kernel_2.6/iowkit_1.5/libiowkit-1.5.0/java'
java -cp iowkit_install.jar com.codemercs.install.IowkitInstall /usr/lib iowkit codemercs.jar
Can't find java library directory
make[1]: *** [java-install] Fehler 1
make[1]: Verlasse Verzeichnis '/home/dietmar/IO_W/LinuxSDK/Kernel_2.6/iowkit_1.5/libiowkit-1.5.0/java'
make: *** [java-install] Fehler 2
d
Sieht ja ehr nach Fehlschlag aus, aber das Testen des Java support

Code: Select all

java -jar iowkit_test.jar
brachte

Code: Select all

dietmar@dietmar-desktop:~/IO_W/LinuxSDK/Kernel_2.6/iowkit_1.5/libiowkit-1.5.0/java$ java -jar iowkit_test.jar
Sample Application for the Iowkit-library
Checking Library Version...IO-Warrior Kit V1.5
Found 1 IOWarriors
1 - Product = 1500 Serial = 0000062C Revision = 1021 Handle = ffffffffb4cd3640
Device No. 1 read 5 Bytes 00 ff ff ff ff 
Device No. 1 read 5 Bytes 00 ff ff ff 7e 
Device No. 1 read 5 Bytes 00 ff ff ff ff 
Device No. 1 read 5 Bytes 00 ff ff ff 7e 
Device No. 1 read 5 Bytes 00 ff ff ff ff 
Device No. 1 read 5 Bytes 00 ff ff ff 7e 
Device No. 1 read 5 Bytes 00 ff ff ff ff 
Device No. 1 read 5 Bytes 00 ff ff ff 7e 
Device No. 1 read 5 Bytes 00 ff ff ff ff 
Device No. 1 read 5 Bytes 00 ff ff ff 7e 

Und geblinkt hat's auf dem Testaufbau auch ordentlich.
Mysteriös... Wenn ich das richtig verstanden hab, is jetzt die JNI Schnittstelle zu Java hergestellt.

Gut, um jetzt eine eigene Applikation zu basteln muss ich ja noch die entsprechenden Bibliotheken, die den Zugriff auf das JNI-Interface steuern, in die Entwicklungsumgebung (z.B. Eclipse) importieren. Wo find ich die denn? Sind die auch schon mit im Paket?

Gruss,
Didi
wayoda
Posts: 362
Joined: Fri Dec 19, 2003 12:00 pm
Location: Wuppertal/Germany

Re: Probleme bei Installation unter Linux

Post by wayoda »

Hallo Didi,
leider wird im File INSTALL_JAVA nicht erwähnt das der Befehl 'make java-install' mit root-rechten ausgeführt werden muß. Richtig wäre also :

Code: Select all

sudo make java-install
Bzgl. Eclipse oder anderen IDE's kenne ich mich nicht besonders aus.
Aber die iowkit-lib ist eine 'normale' plattformspezifischen Erweiterung über JNI. Das wäre also eine Frage an Eclipse-Profis.

Eberhard
Didi
Posts: 19
Joined: Mon Apr 19, 2004 8:08 pm
Location: Warendorf

Re: Probleme bei Installation unter Linux

Post by Didi »

Moin Eberhard,

hab's an den Start bekommen! Das SDK liefert 3 JARs mit (/../LinuxSDK/Kernel_2.6/iowkit_1.5/libiowkit-1.5.0/java):
  • codemercs.jar
    iowkit_install.jar
    iowkit_test.jar
Die können in die Java-Umgebung integriert werden und dann kann's eigentlich losgehen. Die von Code Mercenaries mitgelieferten InstallationsBeschreibungen speziell für Linux und Java sollten wirklich mal Überarbeitet werden... :- |

Möchte aber auf jeden Fall noch auf die die Java-Bibliothek von Thomas Wagner (http://iow.wagner-ibw.de/iowj.html) hinweisen. Darin hat er die gesammte Kommunikation mit den I/Os schon sehr stark abstrahiert. Die Klassen lassen sich wirklich sehr einfach benutzen und man kommt schnell zum Erfolg. Echt Super!

So, jetzt muss ich mir mal überlegen wofür ich den IO-Warrior eigentlich benutzten will... Hat jemand 'n paar Links auf Lager wo Projekte vorgestellt werden und so?


Gruss,
Didi
wayoda
Posts: 362
Joined: Fri Dec 19, 2003 12:00 pm
Location: Wuppertal/Germany

Re: Probleme bei Installation unter Linux

Post by wayoda »

Hallo Didi,
schön das es jetzt klappt.
Die jar-Dateien 'iowkit_install.jar' und 'iowkit_test.jar' werden nach der Installation der Java-Unterstützung für die Iowkit-lib nicht mehr benötigt. Ein Import in ein Eclipse Projekt ist daher auch nicht nötig.

Nur 'codemercs.jar' muß im classpath der JavaVirtualMachine liegen und die eigentliche Plattform-library 'libiowkit.so' muß auch in einem der Directories aus dem Java System.property java.library.path liegen. (Das wäre dannn auch schon genau alles, was 'iowkit_install.jar' macht. )

Eberhard
Didi
Posts: 19
Joined: Mon Apr 19, 2004 8:08 pm
Location: Warendorf

Re: Probleme bei Installation unter Linux

Post by Didi »

Hi Eberhard,
jar-Dateien 'iowkit_install.jar' und 'iowkit_test.jar' werden nach der Installation der Java-Unterstützung für die Iowkit-lib nicht mehr benötigt.
Hmm.. Ja, stimmt. Die Bezeichnungen <install> oder <test> hätten ein schwacher Hinweis sein können :-) Na ja, passiert halt im Eifer des Gefechts..

Wie setzt du den I/O denn eigentlich ein? Ich möchte jetzt erstmal ganz einfach n paar Relais schalten um vielleicht ne Glühbirne oder so zu betreiben. Hast'e ne Ahnung was für Bauteile da am besten geeignet sind?

Gruss&Dank,
Didi
towaibw
Posts: 198
Joined: Sat Dec 27, 2003 10:55 pm
Location: Berlin / Germany
Contact:

Re: Probleme bei Installation unter Linux

Post by towaibw »

Hi Didi,

Dank für Deine Reklame (IOWJ). Gut, dass das mal wieder einer unter Linux testet (hab ich schon seit Ewigkeiten nicht mehr getan ;-).
Feedback ist immer erwünscht. Wenn etwas nicht funktionieren sollte, einfach melden.

Thomas
Didi
Posts: 19
Joined: Mon Apr 19, 2004 8:08 pm
Location: Warendorf

Re: Probleme bei Installation unter Linux

Post by Didi »

Moin Thomas,

schön ,dass du dir persönlich die Ehre gibst :-) Deine IOWJ gefällt mir sehr gut. Glüchwunsch zu der Arbeit! Hast bestimmt 'ne menge Zeit rein versenkt...
Hab inzwischen 'ne kleine GUI dazu gebastelt, die das IOW40 StarterKit unterstützt. Man kann halt die Ausgänge der verschiedenen Ports schalten (LEDs blinken lassen) und eine Reaktion auf den den Taster sehen. Kann problemlos auch auf die Anderen I/Os erweitert werden.
Wenn's dich interessiert stell ich's dir gern zur Verfügung. Könnte deine Test-Klassen ergänzen.

Gruss,
Didi
towaibw
Posts: 198
Joined: Sat Dec 27, 2003 10:55 pm
Location: Berlin / Germany
Contact:

Re: Probleme bei Installation unter Linux

Post by towaibw »

Hi Didi,

das ist zwar jetzt OT, aber immer her damit. Ich hatte auch schon mal über eine grafische Repräsentation nachgedacht, dann aber andere Sachen als wichtiger empfunden ;-).

Thomas
Mike D
Posts: 91
Joined: Wed Jun 02, 2004 4:07 pm
Location: Elbe- Weser-Dreieck
Contact:

Re: Probleme bei Installation unter Linux

Post by Mike D »

Stichwort Glühbirne: für einen Nichtelektriker wird es das einfachste sein sich ein Funksteckdosen-Set zu besorgen und die Fernbedienung davon an den IOWarrior zu hängen.
Dann hast du keine Probleme mit den 240V und keine Kabelage rumfliegen.
Da war irgenwo schon ne Anleitung im Forum.
Ja, siehe da, auch von Thomas HIER und HIER

Mike
Post Reply