Pc104
See pc104/Archive for old information.
The pc104 CPU board is located into the iCub's head and it runs a full Debian distribution that boots from a USB pen drive.
Booting and Mounting
After booting, the pc104 mounts a part of the hard-disk of icubsrv (the Dell XPS laptop, IP address 10.10.1.51
).
After that, it runs the scripts that are found in icubsrv's /exports/code-pc104/pc104/hooks
directory. You can use those scripts for making some configuration permanent on pc104 and/or to run programs. They set up the yarp namespace, configure the keys for passwordless log-ins, etc.
Repositories on icubsrv laptop
Note that the icubsrv laptop has 2 repositories:
/exports/code-64
for the laptop itself (compiled for 64bit, rarely used)/exports/code-pc104
for pc104 (compiled for 32bit, this is the one that is actually used)
TODO: verify if the following instructions are still current
Therefore, if you want to update the repository used by pc104, you need to:
- open a pc104 shell window
- open an icubsrv shell window
- on icubsrv:
svn update /exports/code-pc104/yarp2
and/exports/code-pc104/iCub
(for now we need to do this from icubsrv because the version of svn on pc104 is too old) - on pc104: cmake, make in
$YARP_DIR
(the files are physically on icubsrv, but we need to issue the command from pc104 to obtain 32bit binaries) - on pc104: cmake, make, make install_applications in
$ICUB_DIR
(the files are physically on icubsrv, but we need to issue the command from pc104 to obtain 32bit binaries)
About the hook scripts
The common version of the hook scripts is located in the RobotCub repository, under /usr/local/src/robot/iCub/pc104/startupscripts/opencall/hooks
(available, for example, on icubsrv). The procedure is to copy them to icubsrv's /exports/code-pc104/pc104/hooks
and then to customize VisLab-specific settings there.
Software
- Custom yarp2 configuration
CMAKE_BUILD_TYPE Release CREATE_DEVICE_LIBRARY_MODULES ON CREATE_GUIS ON // probably not needed CREATE_LIB_MATH ON CREATE_YARPSERVER3 ON ENABLE_yarpmod_portaudio ON ENABLE_yarpmod_serial ENABLE_yarpmod_serialport
- Custom iCub configuration
BUILD_TESTING ON CMAKE_BUILD_TYPE Release ENABLE_icubmod_canmotioncontrol ON ENABLE_icubmod_cartesiancontrollerclient ON // not needed! this is for the servers ENABLE_icubmod_cartesiancontrollerserver ON ENABLE_icubmod_cfw2can ON ENABLE_icubmod_dragonfly2 ON ENABLE_icubmod_icubarmcalibrator ON ENABLE_icubmod_icubhandcalibrator ON ENABLE_icubmod_icubheadcalibrator ON ENABLE_icubmod_icublegscalibrator ON ENABLE_icubmod_logpolarclient ON ENABLE_icubmod_logpolargrabber ON ENABLE_icubmod_skinprototype ON ENABLE_icubmod_xsensmtx ON ICUB_CANPROTOCOL_STRICT ON ICUB_USE_INTERFACEGUI ON
- Final configuration
yarp namespace /icub
- in order to find the yarpserver running on chico3, write
10.10.1.53 10000
into the file specified byyarp conf