Difference between revisions of "Phidgets Installation"

From wikidb
Jump to: navigation, search
(sound_play)
(2015 NUC)
 
(24 intermediate revisions by the same user not shown)
Line 1: Line 1:
 +
= 2015 NUC =
 +
 +
These are core Phidget library install instructions that are independent of Indigo and Jade distributions.
 +
 +
== Reference ==
 +
* [http://www.phidgets.com/docs/OS_-_Linux Linux Install]
 +
 +
== Install Core Libraries ==
 +
 +
* [http://www.phidgets.com/docs/OS_-_Linux#Quick_Downloads download] libphidget_2.1.8.20150410.tar.gz
 +
* libusb-1.0-0-dev is already installed
 +
 +
  mkdir phidgets
 +
  cd phidgets/
 +
  tar -xzf ../Downloads/libphidget_2.1.8.20150410.tar.gz
 +
  cd libphidget-2.1.8.20150410/
 +
  ./configure
 +
  make
 +
  sudo make install
 +
    ----------------------------------------------------------------------
 +
    Libraries have been installed in:
 +
      /usr/lib
 +
   
 +
    If you ever happen to want to link against installed libraries
 +
    in a given directory, LIBDIR, you must either use libtool, and
 +
    specify the full pathname of the library, or use the `-LLIBDIR'
 +
    flag during linking and do at least one of the following:
 +
      - add LIBDIR to the `LD_LIBRARY_PATH' environment variable
 +
        during execution
 +
      - add LIBDIR to the `LD_RUN_PATH' environment variable
 +
        during linking
 +
      - use the `-Wl,-rpath -Wl,LIBDIR' linker flag
 +
      - have your system administrator add LIBDIR to `/etc/ld.so.conf'
 +
   
 +
    See any operating system documentation about shared libraries for
 +
    more information, such as the ld(1) and ld.so(8) manual pages.
 +
    ----------------------------------------------------------------------
 +
 +
== Check Install ==
 +
 +
  tar xzvf ../Downloads/phidget21-c-examples_2.1.8.20150410.tar.gz
 +
  cd phidget21-c-examples-2.1.8.20150410/
 +
  gcc HelloWorld.c -o HellowWorld -lphidget21
 +
  sudo ./HellowWorld
 +
    Opening...
 +
    Phidget Simple Playground (plug and unplug devices)
 +
    Press Enter to end anytime...
 +
    Hello Device Phidget High Current Motor Controller 2-motor, Serial Number: 147489
 +
    Hello Device Phidget InterfaceKit 8/8/8, Serial Number: 69535
 +
   
 +
    Closing...
 +
   
 +
== udev setup ==
 +
 +
  sudo cp ../libphidget-2.1.8.20150410/udev/99-phidgets.rules /etc/udev/rules.d/
 +
  ./HellowWorld
 +
    Opening...
 +
    Phidget Simple Playground (plug and unplug devices)
 +
    Press Enter to end anytime...
 +
    Hello Device Phidget High Current Motor Controller 2-motor, Serial Number: 147489
 +
    Hello Device Phidget InterfaceKit 8/8/8, Serial Number: 69535
 +
   
 +
    Closing...
 +
 +
== Dead Ends ==
 +
 +
The following didn't give me what I wanted.
 +
 +
  sudo aptitude search phidget
 +
  sudo apt-get install ros-indigo-libphidgets
 +
 +
= 2012 FitPC =
 +
 +
This was done on a FitPC and using the ROS Electric Distribution in May of 2012.
 +
 
== Core Libraries ==
 
== Core Libraries ==
  
Line 4: Line 79:
  
 
Note: using Synaptic to get the phidgets drivers will not give you the correct version.
 
Note: using Synaptic to get the phidgets drivers will not give you the correct version.
 
+
Note: requires libusb-dev
 
* I got libphidget-2.1.8.20120503
 
* I got libphidget-2.1.8.20120503
 
* untar
 
* untar
Line 12: Line 87:
 
* sudo make install
 
* sudo make install
  
== sound_play ==
+
Allow access to USB in user mode. Requires a restart.
  
Sound play is required for ROS phidgets to build and install.  
+
* sudo cp udev/99-phidgets.rules /etc/udev/rules.d/
  
[http://rosphidgets.wordpress.com/ sound_play fix]
+
If you forget this step you will get errors like
 +
<pre>
 +
libusb couldn't open USB device /dev/bus/usb/001/006: Permission denied.
 +
libusb requires write access to USB device nodes.
 +
</pre>
 +
 
 +
== sound_play ==
 +
 
 +
Sound play is required for ROS phidgets to build and install. See [http://rosphidgets.wordpress.com/ sound_play fix] for more details.
  
 
As root or using sudo
 
As root or using sudo
Line 25: Line 108:
 
   ubuntu: python-pygame
 
   ubuntu: python-pygame
 
</pre></blockquote>
 
</pre></blockquote>
 +
 +
* cd /opt/ros/electric/stacks/
 
   
 
   
 
* svn co https://code.ros.org/svn/ros-pkg/stacks/sound_drivers/tags/latest/sound_play/
 
* svn co https://code.ros.org/svn/ros-pkg/stacks/sound_drivers/tags/latest/sound_play/
* cd sound_play
 
  
In the following steps it complained about festival missing - but it is there. I wonder if the following steps are not necessary for ROS phidgets to install in the following section.  
+
Do not try to build sound_play. It is built when ROS Phidgets are built in the next section. If you try to build it, it will complain about festival missing even if you load festival with Synaptic.
 
+
* With Synaptic get festival
+
* rosmake --rosdep-install sound_play
+
  
 
== ROS Phidgets ==
 
== ROS Phidgets ==
Line 38: Line 119:
 
Be sure to quit Synaptic. It will lock the repository so that the dependencies cannot be loaded below.
 
Be sure to quit Synaptic. It will lock the repository so that the dependencies cannot be loaded below.
  
[https://launchpad.net/phidgets-ros-pkg download]
+
Download phidgets-ros-pkg-1.40.tar.gz from [https://launchpad.net/phidgets-ros-pkg launchpad.net].
* Download file: phidgets-ros-pkg-1.40.tar.gz
+
  
As root
+
As root or sudo
  
 +
* cd /opt/ros/electric/stacks
 +
* mkdir phidgets
 +
* cd phidgets
 
* untar in /opt/ros/electric/stacks/phidgets
 
* untar in /opt/ros/electric/stacks/phidgets
 +
* source /opt/ros/electric/setup.sh
 
* rosmake --rosdep-install phidgets
 
* rosmake --rosdep-install phidgets
 +
 +
The last step is long.

Latest revision as of 12:40, 4 November 2015

2015 NUC

These are core Phidget library install instructions that are independent of Indigo and Jade distributions.

Reference

Install Core Libraries

  • download libphidget_2.1.8.20150410.tar.gz
  • libusb-1.0-0-dev is already installed
 mkdir phidgets
 cd phidgets/
 tar -xzf ../Downloads/libphidget_2.1.8.20150410.tar.gz 
 cd libphidget-2.1.8.20150410/
 ./configure 
 make
 sudo make install
   ----------------------------------------------------------------------
   Libraries have been installed in:
     /usr/lib
   
   If you ever happen to want to link against installed libraries
   in a given directory, LIBDIR, you must either use libtool, and
   specify the full pathname of the library, or use the `-LLIBDIR'
   flag during linking and do at least one of the following:
      - add LIBDIR to the `LD_LIBRARY_PATH' environment variable
        during execution
      - add LIBDIR to the `LD_RUN_PATH' environment variable
        during linking
      - use the `-Wl,-rpath -Wl,LIBDIR' linker flag
      - have your system administrator add LIBDIR to `/etc/ld.so.conf'
   
   See any operating system documentation about shared libraries for
   more information, such as the ld(1) and ld.so(8) manual pages.
   ----------------------------------------------------------------------

Check Install

 tar xzvf ../Downloads/phidget21-c-examples_2.1.8.20150410.tar.gz 
 cd phidget21-c-examples-2.1.8.20150410/
 gcc HelloWorld.c -o HellowWorld -lphidget21
 sudo ./HellowWorld 
   Opening...
   Phidget Simple Playground (plug and unplug devices)
   Press Enter to end anytime...
   Hello Device Phidget High Current Motor Controller 2-motor, Serial Number: 147489
   Hello Device Phidget InterfaceKit 8/8/8, Serial Number: 69535
   
   Closing...
   

udev setup

 sudo cp ../libphidget-2.1.8.20150410/udev/99-phidgets.rules /etc/udev/rules.d/
 ./HellowWorld 
   Opening...
   Phidget Simple Playground (plug and unplug devices)
   Press Enter to end anytime...
   Hello Device Phidget High Current Motor Controller 2-motor, Serial Number: 147489
   Hello Device Phidget InterfaceKit 8/8/8, Serial Number: 69535
   
   Closing...

Dead Ends

The following didn't give me what I wanted.

 sudo aptitude search phidget
 sudo apt-get install ros-indigo-libphidgets

2012 FitPC

This was done on a FitPC and using the ROS Electric Distribution in May of 2012.

Core Libraries

Get the core phidgets libraries from www.phidgets.com drivers.

Note: using Synaptic to get the phidgets drivers will not give you the correct version. Note: requires libusb-dev

  • I got libphidget-2.1.8.20120503
  • untar
  • cd libphidget-2.1.8.20120503
  • ./configure
  • make
  • sudo make install

Allow access to USB in user mode. Requires a restart.

  • sudo cp udev/99-phidgets.rules /etc/udev/rules.d/

If you forget this step you will get errors like

libusb couldn't open USB device /dev/bus/usb/001/006: Permission denied.
libusb requires write access to USB device nodes.

sound_play

Sound play is required for ROS phidgets to build and install. See sound_play fix for more details.

As root or using sudo

  • add the following to the end of /opt/ros/electric/ros/rosdep.yaml
python-pygame:
  ubuntu: python-pygame
  • cd /opt/ros/electric/stacks/

Do not try to build sound_play. It is built when ROS Phidgets are built in the next section. If you try to build it, it will complain about festival missing even if you load festival with Synaptic.

ROS Phidgets

Be sure to quit Synaptic. It will lock the repository so that the dependencies cannot be loaded below.

Download phidgets-ros-pkg-1.40.tar.gz from launchpad.net.

As root or sudo

  • cd /opt/ros/electric/stacks
  • mkdir phidgets
  • cd phidgets
  • untar in /opt/ros/electric/stacks/phidgets
  • source /opt/ros/electric/setup.sh
  • rosmake --rosdep-install phidgets

The last step is long.