Difference between revisions of "Phidgets Installation"
(→Core Libraries) |
(→2015 NUC) |
||
(20 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 15: | Line 90: | ||
* sudo cp udev/99-phidgets.rules /etc/udev/rules.d/ | * sudo cp udev/99-phidgets.rules /etc/udev/rules.d/ | ||
+ | |||
+ | 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 == | ||
Line 27: | 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/ | ||
− | + | 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 == | == ROS Phidgets == | ||
Line 40: | 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 phidgets-ros-pkg-1.40.tar.gz from [https://launchpad.net/phidgets-ros-pkg launchpad.net]. |
− | + | ||
As root or sudo | 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
Contents
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.