Treiber

Questions and answers about 3Dconnexion devices on UNIX and Linux.

Moderator: Moderators

Florian86
Posts: 38
Joined: Fri Mar 21, 2008 7:56 am

Treiber

Post by Florian86 »

Hallo

Ich bin nach der Installations anleitung vorgegangen

aber Erhalte dennoch diese nachricht
florian@florianh:~/spacemause/1$ /tmp/xcube
3DxWare: xdrvlib.c
3DxWare MotionEvent = 0
3DxWare ButtonPressEvent = 0
3DxWare ButtonReleaseEvent = 0
3DxWare CommandEvent = 0

No driver is running. Exit ...

Code: Select all

florian@florianh:~/spacemause/1$ cat /etc/inittab 
3d:2345:respawn:/etc/3DxWare/daemon/3dxsrv -d usb </dev>/dev/null 2>&1
/etc/fstab

Code: Select all

none            /proc/bus/usb             usbdevfs        defaults   0   0
/etc/modules

Code: Select all

florian@florianh:~/spacemause/1$ cat /etc/modules
# /etc/modules: kernel modules to load at boot time.
#
# This file contains the names of kernel modules that should be loaded
# at boot time, one per line. Lines beginning with "#" are ignored.

fuse
lp
sbp2
quickcam
kqemu
uhci.o
usb-uhci.o
usbcore.o
Was könnt ich noch Falsch gemacht haben?
Florian86
Posts: 38
Joined: Fri Mar 21, 2008 7:56 am

Post by Florian86 »

Hier noch bischen was dazu
florian@florianh:~$ /etc/3DxWare/daemon/3dxsrv -d usb
Error: Access Error! To get access to /proc/bus/usb/002/004 you have to be user: root!
[2008-03-22 16:53:14] Error: Could not open USB port or no supported device found! Exiting!
florian@florianh:~$ /etc/3DxWare/daemon/3dxsrv -version
3DxWareUNIX = V1.2.17, ID 3493
Florian86
Posts: 38
Joined: Fri Mar 21, 2008 7:56 am

Post by Florian86 »

Was mir noch Problemmäsig aufgefallen ist

Seitdem kann ich Kein GTK Radiant Mehr nutzen da beim aufbau diesem Programmes die musik z.b. hängt und dann wenn ich was machen möchte wieder das gleiche und bild mäsig ändert sich nichts das ist auch bei Google Earth
crobl
Moderator
Moderator
Posts: 138
Joined: Mon Feb 26, 2007 8:34 am
Location: Freiham, Germany

Post by crobl »

Hallo Florian86,

danke schonmal für die recht umfangreichen Angaben!
Um die scheinbaren Startschwierigkeiten des Treibers noch etwas genauer einkreisen zu können, interessieren mich noch folgende Punkte:

Welche Linux-Distribution und welche Kernelversion ("uname -a") wird eingesetzt?

Bitte überprüfe mit "ps -ef | grep 3dxsrv", ob der Treiber aktuell läuft. Wem "gehört" der Prozeß 3dxsrv?
Wird der Prozeß ggf. immer wieder vom init-Prozeß neu gestartet (wechselnde PID)?

Erweitere den inittab-Eintrag wie folgt:

Code: Select all

3d:2345:respawn:/etc/3DxWare/daemon/3dxsrv -d usb -debug -E </dev/null >/tmp/3DxWare_out.log 2>&1
Um sicherzustellen, daß diese neue Zeile von init übernommen wird vorher "respawn" durch "off" ersetzen, "init q" ausführen, "off" wieder zurück nach "respawn" ändern und erneut "init q" aufrufen.


Der Treiber legt nun in /tmp eine Logdatei 3DxWare.log sowie 3DxWare_out.log an und gibt detailliertere Informationen aus. Bitte poste den Inhalt dieser Logdateien hier im Forum.

Bitte starte außerdem den Treiber (als root-Nutzer, via "su" oder "su -") manuell von der Kommandozeile aus mit den gleichen Optionen:

Code: Select all

/etc/3DxWare/daemon/3dxsrv -d usb -debug -E
(bitte vorher den inittab-Eintrag wieder dekativieren)

Startet der Treiber? Welche Meldungen werden ausgegeben und was steht in der Logdatei in /tmp?

Mit freundlichen Grüßen,

Christian Robl
3Dconnexion
Last edited by crobl on Fri Mar 28, 2008 8:42 am, edited 1 time in total.
Florian86
Posts: 38
Joined: Fri Mar 21, 2008 7:56 am

Post by Florian86 »

uname -a

Code: Select all

Linux florianh 2.6.22-14-rt #1 SMP PREEMPT RT Tue Dec 18 10:01:34 UTC 2007 i686 GNU/Linux
Ubuntu Läuft dort

Code: Select all

florian@florianh:~$ ps -ef | grep 3dxsrv
florian  22113 22082  0 18:09 pts/0    00:00:00 grep 3dxsrv

Code: Select all

sudo /etc/3DxWare/daemon/3dxsrv -d usb
3DxWareUNIX = V1.2.17
Device      = SpaceMouse Plus/XT
Firmware    = V3.11
Also die Programme Laufen wieder normal

Und Zum abschluss noch die Logfile

Code: Select all

3DxWareUNIX V1.2.17 ID 3493 log file
Process ID: 22164
 Time: 2008-03-25 18:14:03
Machineinfo 1: Systemname=Linux, Nodename=florianh, Release=2.6.22-14-rt
Machineinfo 2: Version=#1 SMP PREEMPT RT Tue Dec 18 10:01:34 UTC 2007, Machine=i686
Runlevel-Info:          Runlevel 2   2008-03-24 15:51                   last=

-----------------------------------

[2008-03-25 18:14:03] uddev.c, 1171: UdDevInit() 0x809a008
[2008-03-25 18:14:04] 3dxsrv.c,704: displayname = :0.0
[2008-03-25 18:14:04] auth.c :: authGetUser(), FOUND: user = florian, id = :0, line = tty7, pid =     6390, host = :0, type = 7
[2008-03-25 18:14:04] auth.c :: authGetUser(), FOUND: user home = "/home/florian"
[2008-03-25 18:14:04] 3dxsrv.c :: startupCommandLine(), authGetUser(), user=florian
[2008-03-25 18:14:04] UdDev: Opening USB device on USB port /dev/bus/usb/002/004
[2008-03-25 18:14:04] UdDev: SpaceMouse Plus/XT opened
[2008-03-25 18:14:04] UdDev: Opening SpaceMouse Plus USB device on USB port /dev/bus/usb/002/004
[2008-03-25 18:14:04] smouseplus_usb.c :: UdDevRezero(): Rezeroing the device
[2008-03-25 18:14:04] 3dxsrv.c,729: UdDevOpen() was successful [SpaceMouse Plus/XT]
nur wie kann ich da jetzt die z.b. In Programmen einbinden?
Z.B. in Google Earth dort ist es mit einem haken vor Controler aktivieren nicht getan
crobl
Moderator
Moderator
Posts: 138
Joined: Mon Feb 26, 2007 8:34 am
Location: Freiham, Germany

Post by crobl »

Hallo Florian86,

entschuldige bitte die leicht verzögerte Antwort!

Also, wenn das Logfile von dem Start aus der inittab herrührt, dann lief bzw. läuft der Treiber ohne Problem aus der inittab heraus. Der Start von der Kommandozeile klappt auch problemlos. Komisch, daß es da Probleme gab? :?
Wird der Treiber aktuell immer noch aus der inittab heraus gestartet?
Gibts noch Probleme?

Was die Anbindung unserer Geräte an verschieden Programme angeht, hängt dies meist davon ab, ob diese Applikationen unsere Geräte unterstützen (wollen) oder eine Plugin-Schnittstelle besitzen, für die wir ein Plugin schrieben können.
GoogleEarth/Linux unterstützt unsere Geräte leider nicht! :( Wir sind zwar mit Google dahingehend im Gespräch, empfehlen aber grundsätzlich den Nutzern selbst bei Google enstprechende Anfragen zu stellen!
Prominente Bespiele unter Linux, die unsere Geräte unterstützen, sind: Maya, ProEngineer, Blender, Abaqus 6.7 und einige mehr.
Für die Unterstützung in Eigenentwicklungen bieten wir hier ein SDK an.


Mit freundlichen Grüßen,

Christian Robl
3Dconnexion
Florian86
Posts: 38
Joined: Fri Mar 21, 2008 7:56 am

Post by Florian86 »

So ich bin auch wieder Online

Jetzt wollt ich mal das SDK tool nutzen

Nur wo finde ich eine Anleitung zum installieren ?

In makefile.dec

steht das

Code: Select all

all: 		xapp

		ls -al xapp



xdrvlib.o:	xdrvlib.c xdrvlib.h

		cc xdrvlib.c -c -fullwarn -DDEC



xapp:		xapp.c xdrvlib.o

		cc xapp.c xdrvlib.o -o xapp -lX11 -lm -fullwarn -DDEC
ich hab das ausgeführt

Code: Select all

cc xapp.c xdrvlib.o -o xapp -lX11 -lm  -DDEC
Da -fullwarn bei mir fehler machte
florianh@florianh:~/Desktop/xdevelop$ ls -al xapp
-rwxr-xr-x 1 florianh florianh 18418 2008-05-21 22:21 xapp
und ein

Code: Select all

sudo /etc/3DxWare/daemon/3dxsrv -d usb
gibt Dies aus
Invalid MIT-MAGIC-COOKIE-1 key[2008-05-22 00:49:31] Error:
...No connection to Xserver :0.0 - aborting.
crobl
Moderator
Moderator
Posts: 138
Joined: Mon Feb 26, 2007 8:34 am
Location: Freiham, Germany

Post by crobl »

Hallo Florian86,

im Post vom 25.März hast Du ja geschrieben, daß
Also die Programme Laufen wieder normal
Warum started 3dxsrv nun nicht mehr? Hast Du in der Zwischenzeit Einstellungen am System geändert oder Updates gefahren? Der Treiber sollte ja wie im März-Post geschrieben laufen...

Hilft evtl. temporär ein "xhost +" oder "xhost +localhost"?


Zum compilierten SDK-Bespiel "xapp":
Die Option "-DDEC" kannst Du unter Linux übrigens getrost weglassen.
Die Alternative zum "-fullwarn" beim GCC - wenn gewünscht - wäre "-Wall" evtl. in Verbindung mit "-pedantic" und/oder "-ansi".


Mit freundlichen Grüßen,

Christian Robl
3Dconnexion
Florian86
Posts: 38
Joined: Fri Mar 21, 2008 7:56 am

Post by Florian86 »

Ich habe Hardy Herdon installiert
Hilft evtl. temporär ein "xhost +" oder "xhost +localhost"?
Wie sollte dies gehn ?
crobl
Moderator
Moderator
Posts: 138
Joined: Mon Feb 26, 2007 8:34 am
Location: Freiham, Germany

Post by crobl »

Hallo Florian86,

ich dachte daran, daß "xhost +" probehalber im Terminal eingegeben wird :wink: So zum Testen, ob sich was ändert. Sei es für den Fall, daß der Treiber aus der inittab startet oder manuell ebenfalls von der Kommandozeile gestartet wird.

Kannst Du evtl. bitte einen anderen/weiteren Benutzer anlegen und testen, ob der Treiber sich, wenn dieser Benutzer eingeloggt ist (start aus Inittab bzw. manuell vom Terminal) anders verhält bzw. startet?

In einem anderen Thread hat ein Nutzer auch Probleme mit Hardy Heron gemeldet. Die Probleme verschwanden dann nach einem System-Update; allerdings aus nicht näher nachvollziehbaren Gründen.
Vielleicht hilft Dir das weiter?


Gruß,

Christian
3Dconnexion
Florian86
Posts: 38
Joined: Fri Mar 21, 2008 7:56 am

Post by Florian86 »

Hi crobl

danke das mit dem Thread hat mir weiter geholfen

Ein

Code: Select all

 cc xapp.c xdrvlib.o -o xapp -lX11 -lm -Wall -pedantic
ergab
[quote]
xapp.c: In Funktion
crobl
Moderator
Moderator
Posts: 138
Joined: Mon Feb 26, 2007 8:34 am
Location: Freiham, Germany

Post by crobl »

Hi Florian86,

freut mich, daß es nun endlich klappt! :D

Der Treiber muß natürlich laufen, damit man mit dem SDK auf unsere Geräte zugreifen kann. Falls Du den Treiber automatisch gestartet haben willst, kannst Du ihn auch gerne in die inittab bzw. upstart eintragen - sollte eigentlich auch ohne Probleme funktionieren, wenns vom Terminal aus klappt.

Nutzt Du eigentlich V1.2.7, so wie im letzten Post geschrieben, oder doch die V1.2.17, wie in einem frührern Post in der Debug-Ausgabe zu sehen? Falls es 1.2.7 ist solltest Du Dir die aktuelle Version des Treibers (V1.3.0) laden. Da sind seit der 1.2.7 einige Verbesserungen eingeflossen.

Viel Spaß noch beim Basteln!

Für weitere Fragen stehe ich natürlich gerne zur Verfügung!


Gruß

Christian
3Dconnexion

P.S: Irgendwie gruslig, die Fehlermeldungen und Warnungen von gcc auf deutsch zu sehen 8)
Florian86
Posts: 38
Joined: Fri Mar 21, 2008 7:56 am

Post by Florian86 »

Nach einem Treiberupdate erhalte ich dies

Code: Select all

Invalid MIT-MAGIC-COOKIE-1 key[2008-06-24 10:18:55] Error: 
	...No connection to Xserver :0.0 - aborting.
florianh@florianh:~/Programme/Spacemouse/linux$ sudo nano /etc/inittabsudo: unable to resolve host florianh

Zum Automatischen laden: anstelle respawn ein upstart?

Code: Select all

florianh@florianh:~/Programme/Spacemouse/linux$ cat /etc/inittab
3d:2345:respawn:/etc/3DxWare/daemon/3dxsrv -d usb </dev>/dev/null 2>&1
Gibt es Howtos zu SDK ?
Wie ich dies in Programmen einbinde?
crobl
Moderator
Moderator
Posts: 138
Joined: Mon Feb 26, 2007 8:34 am
Location: Freiham, Germany

Post by crobl »

Hallo Florian86,

Code: Select all

Invalid MIT-MAGIC-COOKIE-1 key[2008-06-24 10:18:55] Error: 
	...No connection to Xserver :0.0 - aborting.
florianh@florianh:~/Programme/Spacemouse/linux$ sudo nano /etc/inittabsudo: unable to resolve host florianh
Die erste Zeile deutet darauf hin, daß irgendwas mit dem magic cookie des XServers/Benutzers nicht stimmt. Da hat sich was geändert. XServer update? Löschen der Cookie-Datei ($XHAUTORITY) kann helfen, d.h. ein Neustart des XServers ist danach nötig (einfachste Lösung), damit ein neues $XAUTHORITY angelegt wird. Oder Du nutzt das xauth-Utility

Die zweite Zeile (die mit nano) ist aber ein anderes Problem. Da ist irgendwas an Deinem System verkonfiguriert. Da kann ich Dir leider nicht weiterhelfen. Mit 3DxWareUNIX hat das jedenfalls nichts zu tun.
Zum Automatischen laden: anstelle respawn ein upstart?
Nein, entschuldige, das ist ein Misverständnis. Ich dachte, daß Ubuntu upstart anstelle der inittab nutzt. Also wenn die inittab funktioniert, dann ist der Eintrag so wie er hier steht völlig richtig!

Code: Select all

florianh@florianh:~/Programme/Spacemouse/linux$ cat /etc/inittab
3d:2345:respawn:/etc/3DxWare/daemon/3dxsrv -d usb </dev>/dev/null 2>&1
"respawn" sorgt lediglich dafür, daß der Prozeß immer wieder neu gestartet wird, nachdem er beendet wurde, z.B. beim Abmelden und Anmelden als anderer Benutzer.
Gibt es Howtos zu SDK ?
Wie ich dies in Programmen einbinde?
Nein, eigentlich nicht. D.h. das Einfach-Beispiel xapp.c dient als Dokumentation fürs SDK. Jedenfalls für X-Applikationen. Falls Du mit QT oder GTK entwickeln willst, gibts hier im Forum evtl. den ein oder andern Thread, der Dir weiterhelfen könnte.

Falls Du trotzdem Fragen zum SDK hast oder immer noch Probleme mit dem Treiber, laß es mich wissen. Ich stehe gerne zur Verfügung!


Gruß

Christian
3Dconnexion
Last edited by crobl on Wed Jul 09, 2008 2:11 am, edited 1 time in total.
Florian86
Posts: 38
Joined: Fri Mar 21, 2008 7:56 am

Post by Florian86 »

Danke für deine antwort

Also in Gimp hab ich sie dadurch zum laufen bekommen

viewtopic.php?p=9169
Hinweis: URL/Link nachträglich gekürzt (crobl)

Allerdings ist die Sensitivity etwas sehr hoch wie Kann ich diese denn runterstellen?
Die zweite Zeile (die mit nano) ist aber ein anderes Problem. Da ist irgendwas an Deinem System verkonfiguriert. Da kann ich Dir leider nicht weiterhelfen. Mit 3DxWareUNIX hat das jedenfalls nichts zu tun.
Ja da bin ich vielleicht nochmal auf die Taste ↑ gekommen und habs mitkopiert

wenn ich die datei .Xauthority lösche gehts ohne Probleme
Post Reply