Hallo, ich versuche von FTDI den USB Chip 245 unter linux zm Laufen zu bekommen. Dafür habe ich mir von der ftdi Seite das Linuxpaket libftd2xx??.tar.gz heruntergeladen. Beim Beispiel simple gibt er aber immer simple: relocation error: /usr/local/lib/libftd2xx.so: undefined symbol: usb_init aus. Hat schon jemand Erfahrungen damit gesammelt und kann mir etwas weiterhelfen? Martin
hmmh schwere frage wenn ich zugrieff haette keonnte ich dir evtl etwas helfen.. was sagt denn "tail -f /var/log/syslog" ?? oder messages wenn du den chip anschliesst?? Gruss Jens
Wenn ich mich recht erinnere brauchst du die SOftware von der Herstellerseite nicht. Seit einiger Zeit (frag nicht seit wann) ist der Treiber schon fix beim Kernelsource dabei. Wenn er nicht einkompiliert ist oder das Modul fertig ist, musst es selbst kompilieren. Aus irgendeinem Grund ist der Treiber nämlich "experimental" gekennzeichnet. Wiesi
evtl ist der kernel aber auch nur zu alt =) und man muss einen neuen backen ;)
Meine Güte, was bin ich froh das ich mich bei dem extrem guten Windows XP nicht mit so einem Blödsinn wie Kernelkompilierung herumschlagen muß.
Blödsinn?? Blödsinn ist dein post, der hier nichts zu suchen hat schmier dir diese kommmentare in den papierkorb ehh sry der kennt ja nur dateien und sonnst nichts.. Ach ja, Blödsinn ist es, in windows, dass alles an treibern etc immer mit geladen werden muss Blödsinn ist es, wenn man auf eine neue version updaten will gleich format c machen muss, da sonnst nichts mehr laeft also lass den scheiss und spiel weiter mit windows rum
Hallo, der FTDI Support hat mir zuerst die Treiberversion 4.3 geschickt. Damit hatte ich dann weiter einen usb_init Fehler. Nach weiterem Nachfragen bekam ich dann die Version 4.1. Diese produzier zwar keinen usb_init Fehler mehr sondern FT_ListDevices(18). Jemand schonmal diesen Fehler gehabt. Unter Windows lief alles innerhalb von einem Tag :-) Ist es richtig das bei Linux unter /proc/bus/usb/devices das device mit driver=serial erscheint? Martin
Hi Martin, also bei mir lief der FT245 unter Linux (Suse 9.2) auch innerhalb von einem Tag ;o). Im Prinzip sind die einfachen Seriell<->USB Treiber ab dem Kernel 2.4.2 mit drin (Module ftdi_sio und fusbserial). Ich habe mich aber auch für den Weg entschieden, die Treiber von der FTDI-Page (ftd2xxpackage_v1.tar.gz) zu nehmen. Dazu muss man allerdings zunächst die Kerneltreibermodule mit rmmod ftdi_sio und rmmod usbserial deaktivieren Ich habe dann anschließend alles wie in der Readme.dat beschrieben installiert und und es klappte auf Anhieb. Was sagt den "usbview" und die Status-LED am USB-Chip wenn das Teil eingestöpselt ist? Andreas
Hallo Andreas, so soweit habe ich jetzt auch alles hinbekommen. Nur etwas lästig ist dieses ständige rmmod nach einem Abstöpseln des FT245. Aber ich habe mit dem Support von FTDI gesprochen: die arbeiten an einer Version die das ganze selbstständig macht. Martin
such evtl mal nach hotplug, damit kann man dies automatisieren.. kann zumidnest nutzen, um USB (Massen)Speicher automatisch zu mounten Gruss Jens
...gemounted wird der USB-Chip schon automatisch, da man ja auch den entsprechenden Eintrag in der fstab macht. Nur das die Kernelmodule sich immer "vordrängeln" ist halt lästig. Sicher kann man das "rmmod" auch irgendwie automatisieren - hatte aber noch keine Zeit, um mich damit zu beschäftigen. @Jens: vielleicht meintest Du aber auch genau das ;o) Andreas
echt in der fstab kann man automatisch USB devices mounten hmmh nein ich weiss nicht, wie hotplug funktioniert :( leider ich koennte mir vorstellen, dass du im hintergrund ein kleines script laufen laesst, welches nach dem USB Device sucht und wenn nicht gefunden aber modul geladen das modul entläd sollte machbar sein Gruss Jens
> Nur das die Kernelmodule sich immer "vordrängeln" ist halt lästig.
früher (lange kein active linux kernel && system mehr gemacht), konnte
man in der /etc/config.mod Bedingungen angeben, auch Reihenfolge etc,
ein keyword war preload (sicher nutzlos hier), aber es gab weitere. Mit
Kernel 2.6 sind die module-init-tools und nicht mehr die modutils für
das Laden von Modulen zuständig. Aber in der Doku sollte etwas dazu
stehen (zumindest stand's noch vor 2.6.x).
Viele Grüße
Olaf
Hallo, einie Mails weiter mit dem Support von FTDI: der neue Treiber von denen (interne Version 4.4) soll angeblich das automatische rmmod unterstützen. Funktioniert bei mir aber nicht. Das Problem scheint wohl zu sein das ich nicht als root an meinem System arbeiten will. Hat jemand eine gute Quelle was alles in welcher Reihenfole passiert wenn man ein USB Gerät einsteckt? Martin
Hallo, ich benutze sudo. Meine Frage zielte eher in dei Richtung wo es Infos gibt in welcher Reihenfolge was geladen wird. Im syslog findet sich da nicht so viel drüber. Martin
Hallo, hat einer schon den FTDI als normaler User zum laufen bekommen? Als root läuft alles einwandfrei, aber ich will auch nicht immer mit sudo das Programm aufrufen müssen. Rudi
Ich habe in /etc/udev/rules/50-udev.rules SUBSYSTEM=="usb", ACTION=="add", ENV{PRODUCT}=="403/6010/*",\ RUN+="/bin/chmod go+rw $env{DEVICE}" Das setzt die Zugriffsrechte fuer das Device. Mit libusb und usb_detach_kernel_driver_np()kann man dann das Interface from Kerneltreiber abkoppeln
>Mit libusb und usb_detach_kernel_driver_np()
Wie machst du das ?
wenn das init vom libusb schiefgeht (: -5 unable to claim usb device.
Make sure ftdi_sio is unloaded!)
dann ist ja das usbdevice geschlossen (libusb.c, vorm return -.5 steht
nen usb_close())
Deshalb (?) scheitert bei mir auch folgender Code:
1 | int f = ftdi_usb_open(&ftdi, 0x0403, 0x6001); |
2 | |
3 | //ftdi_sio loaded, try to unload!
|
4 | if (f == -5){ |
5 | //unload/unbind module
|
6 | f = usb_detach_kernel_driver_np(ftdi.usb_dev, ftdi.interface); |
7 | printf("usb unload: %d [%s]\n",f,usb_strerror()); |
8 | |
9 | //retry open
|
10 | f = ftdi_usb_open(&ftdi, 0x0403, 0x6001); |
11 | }
|
Wie machst du das ? Anonsten ist die libusb echt klasse. Bekomme locker 840KByte/s rübergeschoben (evtl bekommt man mit größerem buffer noch die 1000 hin, 840 reichen mir aber :) ). Und das mit nur 40 Zeilen C-Code ohne großartig Ahnung von USB zu haben :) Gruss, Simon
ups, fehlermeldung vom unload vergessen: usb unload: -22 [could not detach kernel driver from interface 0: Invalid argument]
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.