Difference between revisions of "Compilation on the pc104"
Line 8: | Line 8: | ||
You need the following modules: | You need the following modules: | ||
* serialport: face expressions | * serial and serialport: face expressions | ||
* xsensmtx: | * xsensmtx: inertial sensor | ||
* canmotioncontrol, ecan, pcan: communication with the can bus | |||
* dragonfly2: cameras | |||
and the calibrators: | |||
* icubarmcalibrator | |||
* icubheadcalibrator | |||
* icublegscalibrator | |||
== | == Compilation of modules == | ||
Some modules are compiled with YARP others, for licensing reasons, are compiled with iCub. | |||
=== YARP modules === | |||
cd $YARP_DIR | |||
ccmake $YARP_ROOT | |||
Set: | |||
CREATE_DEVICE_LIBRARY_MODULES:ON | |||
Configure (hit c): | |||
Now enable: | |||
ENABLE_yarpmod_serial | |||
ENABLE_yarpmod_serialport | |||
Configure and generate makefiles. | |||
Compile YARP: | |||
make | |||
=== iCub modules === | |||
The procedure in this case is similar. First you need to get the device drivers for the ecan and pcan modules. We provide precompiled binaries for the pc104: | |||
http://eris.liralab.it/iCub/downloads/drivers/ | |||
Get the version of the precompiled drivers that matches your system, probably: [[pc104etchnhalf-bin-1.0.tgz | http://eris.liralab.it/iCub/downloads/drivers/pc104etchnhalf-bin-1.0.tgz]] | |||
Download this in /usr/local/src/robot and unpack: | |||
tar xvf pc104etchnhalf-bin-1.0.tgz | |||
this will create a directory called drivers that contains the libraries you need. | |||
Now you are ready to compile the new modules. | |||
cd $ICUB_ROOT | |||
cmake ./ | |||
In cmake enable: | |||
ENABLE_icubmod_pcan | |||
ENABLE_icubmod_ecan | |||
ENABLE_icubmod_canmotioncontrol | |||
ENABLE_icubmod_dragonfly2 | |||
ENABLE_icubmod_logpolarclient | |||
ENABLE_icubmod_logpolargrabber | |||
ENABLE_icubmod_xsensmtx | |||
ENABLE_icubmod_icubarmcalibrator | |||
ENABLE_icubmod_icubheadcalibrator | |||
ENABLE_icubmod_icublegscalibrator | |||
In iCub 1.1 (equipped with force sensors) remove icubarmcalibrator and select: | |||
ENABLE_icubmod_icubarmcalibratorj8 | |||
ENABLE_icubmod_icubhandcalibrator | |||
compile: | |||
make |
Revision as of 19:08, 18 August 2009
The pc104 is a Linux Debian (Live), system.
Compilation on the pc104 follows the same procedure we have seen (see Section 6 of the manual), with some differences.
Modules running on the pc104 require access to the hardware and interface directly with the hardware device drivers. To do this you need to compile some optional modules in both YARP and iCub. Before doing this you need to get the original APIs that are distributed with the device drivers.
List of modules
You need the following modules:
- serial and serialport: face expressions
- xsensmtx: inertial sensor
- canmotioncontrol, ecan, pcan: communication with the can bus
- dragonfly2: cameras
and the calibrators:
- icubarmcalibrator
- icubheadcalibrator
- icublegscalibrator
Compilation of modules
Some modules are compiled with YARP others, for licensing reasons, are compiled with iCub.
YARP modules
cd $YARP_DIR ccmake $YARP_ROOT
Set:
CREATE_DEVICE_LIBRARY_MODULES:ON
Configure (hit c):
Now enable:
ENABLE_yarpmod_serial ENABLE_yarpmod_serialport
Configure and generate makefiles.
Compile YARP:
make
iCub modules
The procedure in this case is similar. First you need to get the device drivers for the ecan and pcan modules. We provide precompiled binaries for the pc104:
http://eris.liralab.it/iCub/downloads/drivers/
Get the version of the precompiled drivers that matches your system, probably: http://eris.liralab.it/iCub/downloads/drivers/pc104etchnhalf-bin-1.0.tgz
Download this in /usr/local/src/robot and unpack:
tar xvf pc104etchnhalf-bin-1.0.tgz
this will create a directory called drivers that contains the libraries you need.
Now you are ready to compile the new modules.
cd $ICUB_ROOT cmake ./
In cmake enable:
ENABLE_icubmod_pcan ENABLE_icubmod_ecan ENABLE_icubmod_canmotioncontrol
ENABLE_icubmod_dragonfly2 ENABLE_icubmod_logpolarclient ENABLE_icubmod_logpolargrabber ENABLE_icubmod_xsensmtx ENABLE_icubmod_icubarmcalibrator ENABLE_icubmod_icubheadcalibrator ENABLE_icubmod_icublegscalibrator
In iCub 1.1 (equipped with force sensors) remove icubarmcalibrator and select:
ENABLE_icubmod_icubarmcalibratorj8 ENABLE_icubmod_icubhandcalibrator
compile:
make