Pc104: Difference between revisions

From ISRWiki
Jump to navigation Jump to search
m (→‎Booting and Mounting: remove references to icubsrv laptop - just speak about 'the laptop' generically, as we might change it)
Line 3: Line 3:
The '''pc104 CPU board''' is located into the iCub's head and nowadays it runs a full (read/write) Debian distribution that boots from a USB pen drive.
The '''pc104 CPU board''' is located into the iCub's head and nowadays it runs a full (read/write) Debian distribution that boots from a USB pen drive.


= Booting and Mounting =
= Booting and mounting =


After booting, the pc104 mounts a remote disk from the laptop using NFS. The mounted volume contains the yarp and iCub repositories.
After booting, the pc104 mounts a remote disk from the laptop using NFS. The mounted volume contains the yarp and iCub repositories, both code and binaries. The binaries are located in the respective build-pc104 subdirectories within the repositories.
 
== Repositories on icubsrv laptop ==
 
Note that the icubsrv laptop has 2 locations for the repositories:
* <code>/exports/code-64</code> for the laptop itself (compiled for 64bit, rarely used)
* <code>/exports/code-pc104</code> for pc104 (compiled for 32bit, this is the one that is actually used)
 
== Updating the repositories ==
 
First method: from a pc104 console, normally update and compile the repositories as if on a normal machine - see [[RobotCub software]] for details. Note that after compiling iCub you must type <code>make install_applications</code> as well: this will copy files from <code>$ICUB_ROOT/main/app/robots/iCubLisboa01</code> to <code>$ICUB_ROOT/app/iCubLisboa01</code> (check that the new versions are effectively copied).
 
If the above method fails for any reason (old version of svn, internet problems with DNS or NTP, etc.) you can use the following workaround:
# open a pc104 shell window
# open an icubsrv shell window
# on icubsrv: <code>svn update /exports/code-pc104/yarp2</code> and <code>/exports/code-pc104/iCub</code> (for now we need to do this from icubsrv because the version of svn on pc104 is too old)
# on pc104: cmake, make in <code>$YARP_DIR</code> (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 <code>$ICUB_DIR</code> (the files are physically on icubsrv, but we need to issue the command from pc104 to obtain 32bit binaries)


= Software =
= Software =

Revision as of 12:41, 30 September 2014

See pc104/Archive for information about the previous setup with the read-only pen drive.

The pc104 CPU board is located into the iCub's head and nowadays it runs a full (read/write) Debian distribution that boots from a USB pen drive.

Booting and mounting

After booting, the pc104 mounts a remote disk from the laptop using NFS. The mounted volume contains the yarp and iCub repositories, both code and binaries. The binaries are located in the respective build-pc104 subdirectories within the repositories.

Software

  • Custom yarp configuration
CMAKE_BUILD_TYPE Release
CREATE_DEVICE_LIBRARY_MODULES ON
CREATE_LIB_MATH ON
ENABLE_yarpmod_portaudio ON
ENABLE_yarpmod_serial ON
ENABLE_yarpmod_serialport ON
CREATE_OPTIONAL_CARRIERS
ENABLE_yarpcar_bayer_carrier
  • Custom iCub configuration using robotInterface
CMAKE_BUILD_TYPE Release
ENABLE_icubmod_canBusAnalogSensor ON
ENABLE_icubmod_canBusSkin ON
ENABLE_icubmod_canBusVirtualAnalogSensor ON
ENABLE_icubmod_canmotioncontrol ON
ENABLE_icubmod_cartesiancontrollerclient ON
ENABLE_icubmod_cartesiancontrollerserver ON
ENABLE_icubmod_cfw2can ON
ENABLE_icubmod_dragonfly2 ON
ENABLE_icubmod_dragonfly2raw ON
ENABLE_icubmod_icubarmcalibrator ON
ENABLE_icubmod_icubhandcalibrator ON
ENABLE_icubmod_icublegscalibrator ON
ENABLE_icubmod_logpolarclient ON
ENABLE_icubmod_logpolargrabber ON
ENABLE_icubmod_parametricCalibrator ON
ENABLE_icubmod_sharedcan ON
ENABLE_icubmod_skinWrapper ON
ENABLE_icubmod_skinprototype ON
ENABLE_icubmod_xsensmtx ON
  • Custom iCub configuration using iCubInterface
CMAKE_BUILD_TYPE Release
ENABLE_icubmod_canmotioncontrol ON
ENABLE_icubmod_cartesiancontrollerclient ON
ENABLE_icubmod_cartesiancontrollerserver ON
ENABLE_icubmod_cfw2can ON
ENABLE_icubmod_dragonfly2 ON
ENABLE_icubmod_dragonfly2raw ON
ENABLE_icubmod_icubarmcalibrator ON
ENABLE_icubmod_icubarmcalibratorj8 ON
ENABLE_icubmod_icubhandcalibrator ON
ENABLE_icubmod_icubheadcalibrator ON
ENABLE_icubmod_icubheadcalibratorV2 ON
ENABLE_icubmod_icublegscalibrator ON
ENABLE_icubmod_logpolarclient ON
ENABLE_icubmod_logpolargrabber ON
ENABLE_icubmod_skinprototype ON
ENABLE_icubmod_xsensmtx ON
  • Final configuration
  1. yarp namespace /icub
  2. in order to find the yarpserver running on chico3, write 10.10.1.53 10000 into the file specified by yarp conf

See also