Chico3/Archive
Note: these methods are obsolete and kept here for historic reference only. Most probably, you may ignore this page and go back to Chico3 laptop machine configuration (2009-2014) or iCub laptop (2014-).
Information archived in Nov. 2014 when dismissing this laptop
Network
- configure the internet connection with the following parameters (see VisLab machines configuration#Network_configuration if in doubt) :
Address | Netmask | Gateway | DNS Servers | notes |
---|---|---|---|---|
10.10.1.53 | 255.255.255.0 | 10.10.1.254 | 10.0.0.1, 10.0.0.2 | for when we connect to the iCub switch |
10.0.3.88 | 255.255.0.0 | 10.0.0.254 | 10.0.0.1, 10.0.0.2 | for when we connect to the rest of ISR |
- added the following lines to
/etc/hosts
, to enable running commands like:ping cortex1
(if we don't make this change, we can still easily access other machines, but with.visnet
attached at the end of their names, see VisLab network for details)
10.10.1.50 pc104 10.10.1.51 icubsrv 10.10.1.53 chico3 10.10.1.1 cortex1 10.10.1.2 cortex2 10.10.1.3 cortex3 10.10.1.4 cortex4 10.10.1.5 cortex5 10.10.1.6 cortex6 10.10.1.41 icubbrain1 10.10.1.42 icubbrain2
Nvidia graphics card
Enable the Nvidia proprietary drivers to obtain a decent screen resolution.
In order to have multi-screen external monitor support for beamers,
sudo apt-get install nvidia-settings sudo nvidia-settings
In the 'X Server Display Configuration' menu, select the 'Separate X screen' configuration. Then, edit /etc/X11/xorg.conf
(make a backup first) by doing the following under Section 'ServerLayout': switch the Screen 0
with the Screen 1
strings.
Restart the xserver and enter nvidia-settings again, you will get some errors in the terminal because of the manual change, furthermore you will now see the correct screen numbering. To resolve the error in the configuration press "save X configuration file". Restart xserver, everything should be ok.
YARP and iCub
Follow the instructions on the iCub software article. For compilation, do not use sudo make install
but simply make
(we have configured the PATH variable to find the latest compiled binaries, and we do not want two copies of the same thing on the system).
- Custom yarp configuration
CMAKE_BUILD_TYPE Release CREATE_GUIS CREATE_LIB_MATH
CREATE_OPTIONAL_CARRIERS ENABLE_yarpcar_bayer_carrier
- Custom iCub configuration
CMAKE_BUILD_TYPE Release ENABLE_icubmod_cartesiancontrollerclient # for Cartesian robotMotorGui ENABLE_icubmod_gazecontrollerclient
Wacom Bamboo
- Follow these instructions: http://www.ubuntugeek.com/install-the-wacom-bamboo-driver-in-ubuntu-10-04-lucid-lynx-using-ppas.html
- Also install the package
wacom-dkms
- Reboot
Passwordless connection to other machines
- set up passwordless log-in to the Cortex computers:
# type the following commands on chico3: # # generate public and private keys. enter empty strings when prompted for various answers. ssh-keygen #copy the public key you just generated to cortex1, on the user account you want to use there (e.g. icub). scp /home/icub/.ssh/id_rsa.pub icub@cortex1: <-- be sure to write the colon ":" at the end # # log in as 'icub' to cortex1 and type the following commands there: ssh cortex1 #add the public key to the authorized ones cat id_rsa.pub >> ~/.ssh/authorized_keys #remove the id_rsa.pub file and log out rm id_rsa.pub exit exit #log in again to each cortex computer, to check that the process worked and they don't prompt for a password.
- set up passwordless log-in to the iCubBrain server configuration computers: as above.
- set up passwordless log-in to chico3 (this very machine - needed by the Cluster Manager): as above.
- set up passwordless log-in to pc104: as above.
Customization of GNOME
Add buttons to the panel/bar at the top of the screen, to conveniently open terminals and file managers on remote machines. The top bar should look something like this when you're done:
Pick the images you like and turn them into 48x48pixel GIF images with GIMP or a similar program.
Example for the button to open the gnome-terminal on cortex1:
right click on the panel and select "add to panel" select "custom application launcher" click on the icon and select the directory where your icons are, typically ~/Pictures/ click on open, then select the picture for this particular button write in the field "command": gnome-terminal --window-with-profile=cortex -e "ssh icub@cortex1 -X" # or icub@10.10.1.1, or icub@cortex1.visnet set the name to something like: ssh icub@cortex1
The profile specified (--window-with-profile=cortex) does not exist by default, you need to create it. These profiles are used to give terminals on different machines different colors (e.g. all terminals running in a cortex computer will be blue, terminals local to chico3 will be white, etc.). In order to create the "cortex" profile:
open a terminal on, say, cortex1 click on File, select "new profile" and name it "cortex". choose the colors. cortex windows usually are blue with white text, while pc104 windows are yellow with black text.
Adding a new terminal button
Example for the button to open the gnome-terminal on cortex1:
- right click on the panel and select "add to panel"
- select "custom application launcher"
- click on the icon and select the directory where your icons are, typically ~/Pictures/
- click on open, then select the picture for this particular button
- write this in the "command" field:
gnome-terminal --window-with-profile=cortex -e "ssh icub@10.10.1.1 -X"
- set the name to something like: ssh icub@cortex1
Note about gnome-terminal profiles: the profile we have specified specified (--window-with-profile=cortex) does not exist by default, we need to create it. These profiles are used to give terminals on different machines different colors (e.g., all terminals running in a cortex computer will be blue, terminals local to chico2 will be white, etc.). To create the "cortex" profile do this:
- open a terminal on, say, cortex1
- click on File, select "new profile" and name it "cortex", then choose the colors
- cortex windows usually are blue background with white text, while pc104 windows are yellow with black text.
Nautilus buttons
For the buttons that start the file manager Nautilus on pc104 and on cortex (once again, all cortex computers share the same disk, so you need only one button for them) you should use these lines of code:
nautilus sftp://icub@10.10.1.50/home/icub/ nautilus sftp://icub@10.10.1.1/home/icub
After you are done browsing a remote machine disk with Nautilus, don't forget to unmount the volume (right-click the relevant icon on the desktop).
Desktop background
Last but not least, you can change the default Ubuntu desktop background to something fancier:
Initial 2009 installation
Additional RobotCub software
iCub: downloading the repository
In /home/icub, do:
cvs -d vislab@cvs.robotcub.org:/cvsroot/robotcub co iCub
For now, don't compile iCub but start installing YARP instead. (This is the most general approach which always works. However, since this machine does not have special iCub hardware to be found by YARP, like in the case of the PC104, then in this case we could've probably compiled straight ahead.)
YARP
- Type this from the homedir (/home/icub):
mkdir ~/YARP cd ~/YARP cvs -d:pserver:anonymous@yarp0.cvs.sourceforge.net:/cvsroot/yarp0 login cvs -z3 -d:pserver:anonymous@yarp0.cvs.sourceforge.net:/cvsroot/yarp0 co -P yarp2 cd yarp2
- (SKIP THIS POINT, AS THIS MACHINE IS NOT ATTACHED TO dragonfly esdMotionControl headcalibrator xsensmtx) Enter yarp2/conf and do:
cp ExternalModules.cmake.template ExternalModules.cmake
then write the following lines in ExternalModules.cmake:
SET(EXTERNAL_MODULES icub) SET(icub_DIR "/home/icub/iCub/src/modules")
- Proceed with the configuration and compilation:
ccmake .
Click 'c' when CMake starts, then enable:
COMPILE_NEW_YARPVIEW <-- right? CREATE_DEVICE_LIBRARY_MODULES CREATE_GUIS CREATE_LIB_MATH
Click 'c' again, then choose
ENABLE_yarpmod_opencv_grabber
Click 'c' a couple of times more, until nothing happens when you do it. Now hit 'g': generate and quit.
make make test sudo make install
iCub: compiling and installing
- Off we go:
cd /home/icub/iCub ccmake . c <-- whenever necessary
- Enable these modules:
BUILD_IN_ROOT CREATE_GUIS_GTK CREATE_GUIS_GTKMM CREATE_GUIS_QT
- And finally:
g make sudo make install
Operating system installation
Partitions
We chose the 'Guided - use entire disk' option, which yielded the following:
size | mountpoint | filesystem |
---|---|---|
287GB | / | ext3 |
8GB | swap |
Other operations performed
Additional packages and environment variables
- Copy all that stuff at the bottom of ~/.bashrc, too (this step could be redundant, provided that we always source .bash_env - TO CHECK):
cat ~/.bash_env >> ~/.bashrc
Customization
Passwordless connection to other machines
- set up passwordless log-in to pc104
pc104 boots from a read-only medium, so you cannot modify permanently its authorized_keys file. pc104, though, mounts a part of icubsrv's hard-disk and then runs some scripts from there (see the pc104 page for reference).
#copy the usual public key to the icubsrv (laptop) scp id_rsa.pub icub@10.10.1.51: #ssh to icubsrv ssh icub@10.10.1.51 #add the key to the authorized ones cat id_rsa.pub >> /exports/code-pc104/pc104/hooks/keys/authorized_keys #rm the id_rsa.pub file rm id_rsa.pub
PC104 authentication caveat
For pc104 it might be necessary to add a StrictHostKeyChecking=no option argument to ssh (because there are different incompatible keys depending on the pc104 hardware setup, i.e., with or without pen):
gnome-terminal --window-with-profile=pc104 -e "ssh -o StrictHostKeyChecking=no icub@10.10.1.50 -X"