Difference between revisions of "3D Mouse"

From ArchWiki
Jump to: navigation, search
(Installation: lines starting with a space: keep indentation and don't convert to code snippets; probably can be fixed in a better way)
(Installation)
Line 53: Line 53:
 
Password:
 
Password:
  
 +
<nowiki>
 
This installs 3DxWareUnix V1.5.2 on this machine. Continue? (y/n) [y]
 
This installs 3DxWareUnix V1.5.2 on this machine. Continue? (y/n) [y]
 
y
 
y
  
<nowiki>
 
 
  Choose one of the following platforms:
 
  Choose one of the following platforms:
  
Line 114: Line 114:
 
Please start the driver manually. [/etc/3DxWare/daemon/3dxsrv -d <port>]
 
Please start the driver manually. [/etc/3DxWare/daemon/3dxsrv -d <port>]
  
''****************************************************************''
+
****************************************************************
 
     For testing purposes you can find the demos
 
     For testing purposes you can find the demos
 
xcube and xvalues at /tmp</nowiki>
 
xcube and xvalues at /tmp</nowiki>
 
''****************************************************************''
 
''****************************************************************''
 +
 
}}
 
}}
 
<br>
 
<br>

Revision as of 06:11, 10 May 2011

What is a 3D Mouse?

"Also known as bats, flying mice, or wands, these devices generally function through ultrasound and provide at least three degrees of freedom. Probably the best known example would be 3DConnexion/Logitech's SpaceMouse from the early 1990s." - Wikipedia

For more information: http://www.3dconnexion.com/products/what-is-a-3d-mouse.html

Installation

NOTE: The following instructions work only for 3DConnexions 3D mouse. The instructions have been tested and proven to work on the most basic model (space navigator).

1. Insert mouse to USB port
2. lsusb to confirm connection. Something like this should come up: Template:Cli 3. Install openmotif Template:Cli 4. Symlink libXm.so.4 to libXm.so.3 Template:Cli 5. Compile (gcc PRGRM.c) this program:

#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <utmpx.h>

int main(int argc, char ** argv) {
  if (argc != 2) {
    fprintf(stderr, "Need a name to put in the structure\n");
    exit(1);
  }
  struct utmpx u;
  memset(&u, 0, sizeof(u));
  u.ut_type = USER_PROCESS;
  u.ut_pid = getpid();
  strcpy(u.ut_id, ":0");
  strcpy(u.ut_line, ":0");
  strcpy(u.ut_user, argv[1]);
  setutxent();
  pututxline(&u);
  endutxent();
} 

source: http://forums.gentoo.org/viewtopic-t-609224.html?sid=6c70ce10f37a57d9a4f341e36149df5b
6. Run a.out to user root Template:Cli 7. Download linux drivers to /tmp from here: http://www.3dconnexion.com/service/drivers.html
8. Run tar xfz 3dxware-linux-v1-5-2.i386.tar.gz install-3dxunix.sh
9. Run sudo ./install-3dxunix.sh and follow instructions
10. Your output should look something like this: Template:Cli
NOTE: I chose not to run the driver everytime I login.
11. You can run the driver manually by calling it like this (for USB version): Template:Cli
12. You should now have a working 3D mouse in Arch Linux!

More Infformation

3dconnexion linux forum
Source of C program used
Information about libXm.so.4 and libXm.so.3