Guide on setting up phantom omni with the IEEE1394 firewire on Ubuntu. Important files are included in this repository. Also added some tips on solving problems which aren't covered widely on websites.
Make sure the following libraries are installed in your computer.
$ sudo apt-get install freeglut3-dev x11proto-gl-dev libmotif-dev mesa-utils libglw1-mesa-dev libncurses5-devDownload the contents from this folder. Install the PHANTOM Device Drivers (PDD) via:
For x86 system:
$ cd [DOWNLOAD DIR]/OpenHapticsAE_Linux_v3_0/PHANTOM Device Drivers/32-bit/
$ sudo dpkg -i phantomdevicedrivers_4.3-3_i386.debFor x64 system:
$ cd [DOWNLOAD DIR]/OpenHapticsAE_Linux_v3_0/PHANTOM Device Drivers/64-bit/
$ sudo dpkg -i phantomdevicedrivers_4.3-3_amd64.debAfter this step, download the Linux_JUJU_PDD folder available here. The PDD is contained within libPHANToMIO.so.4.3. Hence, before continuing, make sure the previous PDD files or associated symbolic links are removed. First, check if such files exists.
$ find /usr/lib/ libPHAN*If the results shows this:
/usr/lib/libPHANToMIO.so.4.3
/usr/lib/libPHANToMIO.so.4
/usr/lib/libPHANToMIO.soRemove them via:
$ cd /usr/lib/
$ sudo rm libPHANToMIO.so.4.3
$ sudo rm libPHANToMIO.so.4
$ sudo rm libPHANToMIO.soWith that done, copy the provided PDD files in the Linux_JUJU_PDD into /usr/lib, via:
For x86 system:
$ cd [DOWNLOAD DIR]/Linux_JUJU_PDD/Linux_JUJU_PDD_32-bit/
$ sudo cp libPHANToMIO.so.4.3 /usr/lib/
$ sudo cp libPHANToMIO.so.4 /usr/lib/
$ sudo cp libPHANToMIO.so /usr/lib/For x64 system:
$ cd [DOWNLOAD DIR]/Linux_JUJU_PDD/Linux_JUJU_PDD_64-bit/
$ sudo cp libPHANToMIO.so.4.3 /usr/lib/
$ sudo cp libPHANToMIO.so.4 /usr/lib/
$ sudo cp libPHANToMIO.so /usr/lib/NOTE: In most setup guides, only the libPHANToMIO.so.4.3 is copied to the directory whereas the remaining two files are created via symbolic link. Doing so resulted in a driver initialization error when PHANToMTest is launched, in my case. This problem is solved through the direct copy/paste method instead of creating symbolic links.
Next, copy the PHANToMConfiguration file into /usr/sbin/:
For x86 system:
$ cd [DOWNLOAD DIR]/Linux_JUJU_PDD/Linux_JUJU_PDD_32-bit/
$ sudo cp PHANToMConfiguration /usr/sbin/For x64 system:
$ cd [DOWNLOAD DIR]/Linux_JUJU_PDD/Linux_JUJU_PDD_64-bit/
$ sudo cp PHANToMConfiguration /usr/sbin/At this point, the setup for the PDD is completed. Launch PHANToMConfiguration (Three alternatives given below):
$ PHANToMConfiguration$ /usr/sbin/PHANToMConfiguration$ LANG=en_us /usr/sbin/PHANToMConfigurationIf the below error appears, for Ubuntu 11.04 and above, when lauching PHANToMConfiguration:
$ /usr/sbin/PHANToMConfiguration
/usr/sbin/PHANToMConfiguration: error while loading shared libraries: libraw1394.so.8: cannot open shared object file: No such file or directoryLink the libraw1394.so.8 to libraw1394.so.11:
For x86 system:
$ cd /usr/lib/i386-linux-gnu
$ sudo ln -s libraw1394.so.11 libraw1394.so.8For x64 system:
$ cd /usr/lib/x86_64-linux-gnu
$ sudo ln -s libraw1394.so.11 libraw1394.so.8A successful launch of PHANToMConfiguration should look like this:
Please change the Phantom model to omni. If the device connection is correct, the serial number should be detected below. If so, select Apply and Ok.
Finally, launch PHANToMTest to calibrate your device and also to verify that the system can be run successfully.
$ PHANToMTestIf the following error appears:
But you have verified that GLX is installed and is working in your system. Then this is most likely because GLX wasn't enabled in your graphics driver. To enable it, follow the instructions below:
First, go to the xorg configuration directory.
$ cd /usr/share/x11/xorg.conf.d/By listing out all the configuration files, you should see something like this:
$ lsFor example, if you are using nvidia driver, open and edit 10-nvidia.conf:
$ sudo gedit 10-nvidia.confAt the end of the script, add this section:
Section "ServerFlags"
Option "AllowIndirectGLX" "on"
Option "IndirectGLX" "on"
EndSection
Then save and exit the file.
If permission is needed to access the firewire card, run the following line in the terminal:
$ sudo chmod 777 /dev/fw*Relaunch PHANToMTest and it should appear successfully as so:

Lastly, install OpenHaptics via:
For x86 system:
$ cd [DOWNLOAD DIR]/OpenHapticsAE_Linux_v3_0/OpenHaptics-AE 3.0/32-bit/
$ sudo dpkg -i openhaptics-ae_3.0-2_i386.debFor x64 system:
$ cd [DOWNLOAD DIR]/OpenHapticsAE_Linux_v3_0/OpenHaptics-AE 3.0/64-bit/
$ sudo dpkg -i openhaptics-ae_3.0-2_amd64.debAlso add 3D Touch to /etc/environment file, by first opening the file in editing mode:
$ sudo gedit /etc/environmentThen add the following lines:
3DTOUCH_BASE=/usr/share/3DTouch
Once done, save and exit.


