Overview

Last update: April 1st, 2020
These ROS packages are for the Geomagic Touch (formerly Sensable PHANToM Omni) haptic device – firewire version.
I developed them during my time at the Group of Robots and Intelligent Machines, Universidad Politécnica de Madrid.
Installation
These instructions have been tested with OpenHaptics SDK 3.0 in Ubuntu 16.04, 64 bits and ROS Kinetic. Before going any further please check the following:
- You have a firewire device NOT the Ethernet one.
- Your development machine has a firewire port. I have tested both Firewire400 and Firewire800 and they work just fine.
- You understand what a catkin workspace, a symbolic link and a git repository are.
Requirements
The following are the requirements so that you can run PHANToMConfiguration
:
sudo apt-get install --no-install-recommends freeglut3-dev g++ libdrm-dev \
libexpat1-dev libncurses5-dev libraw1394-dev libx11-dev libxdamage-dev \
libxext-dev libxt-dev libxxf86vm-dev tcsh unzip x11proto-dri2-dev \
x11proto-gl-dev x11proto-print-dev
OpenHaptics SDK
In order to connect to the device, you will need to install OpenHaptics SDK.
Symbolic Links
Because OpenHaptics SDK installs the libraries in some weird locations, you need to create the following symbolic links: (Only required in 64 bits systems)
sudo ln -s /usr/lib/x86_64-linux-gnu/libraw1394.so.11 /usr/lib/libraw1394.so.8
sudo ln -s /usr/lib64/libPHANToMIO.so.4.3 /usr/lib/libPHANToMIO.so.4
sudo ln -s /usr/lib64/libHD.so.3.0.0 /usr/lib/libHD.so.3.0
sudo ln -s /usr/lib64/libHL.so.3.0.0 /usr/lib/libHL.so.3.0
ROS Metapackage
Go to your ROS working directory. e.g.
cd ~/catkin_ws/src
Use the wstool
to install the repository
wstool init .
wstool merge https://raw.github.com/fsuarez6/phantom_omni/hydro-devel/phantom_omni.rosinstall
wstool update
Check for any missing dependencies using rosdep:
source /opt/ros/$ROS_DISTRO/setup.bash
rosdep update
rosdep check --from-paths . --ignore-src --rosdistro $ROS_DISTRO
After installing the missing dependencies compile your ROS workspace. e.g.
cd ~/catkin_ws && catkin_make
Be sure to always source the appropriate ROS setup file, e.g:
source ~/catkin_ws/devel/setup.bash
You might want to add that line to your ~/.bashrc
.
Allow Access to the FireWire Interface
This package provides a dummy driver that allows you to access the FireWire interface. For new installations or every time you upgrade your linux kernel, please run the following command:
rosrun omni_common initialize_device.sh -c
Testing the Installation
Try the omni.launch
file in the omni_common
package:
roslaunch omni_common omni.launch