ICub laptop

From ISRWiki
Revision as of 13:57, 2 February 2015 by Giovanni Saponaro (talk | contribs) (→‎Launcher icons: add links to gnome bug (desktop launchers open in gedit instead of being executed) and possible workarounds)
Jump to navigation Jump to search

This laptop is used to control the iCub robot.

Toshiba Qosmio X70 17" iCub laptop.

Note: this laptop replaces Chico3, which was used during 2009-2014.

Specifications

  • processor: 4 x i7-4700MQ @ 2.40-3.40 GHz
  • memory: 32GB
  • graphics card: Nvidia GeForce GTX 770M with CUDA and 3072MB of memory; onboard card HD 4600

Setup

Ubuntu LTS Desktop, 64-bit. Computer name: icub-laptop.

Operating system installation

In the Windows 8 preferences, configure the power button to really turn off the machine (as opposed to suspend). In the BIOS, activate CSM instead of UEFI. Now it is possible to boot from a Linux DVD.

Network

See also VisLab machines configuration#Network_configuration.

address 10.10.1.53
netmask 255.255.255.0
gateway 10.10.1.254
dns 10.0.0.1, 10.0.0.2

NFS

These NFS filesystems are exported according to /etc/exports:

/exports/code          10.10.1.0/255.255.255.0(rw,sync,no_root_squash,no_subtree_check)
/exports/local_yarp    10.10.1.0/255.255.255.0(rw,sync,no_root_squash,no_subtree_check)

The NFS filesystems are mounted as defined in /etc/fstab:

icub-laptop:/exports/code        /usr/local/src/robot            nfs    _netdev,auto,hard,intr    0    0
icub-laptop:/exports/local_yarp  /home/icub/.local/share/yarp    nfs    _netdev,auto,hard,intr    0    0

Successful mounting on client machines shows something link this (where 10.10.1.x is the client IP):

$ mount
...
icub-laptop:/exports/code on /usr/local/src/robot type nfs4  
 (rw,relatime,vers=4,rsize=1048576,wsize=1048576,namlen=255,hard,proto=tcp,port=0,timeo=600,retrans=2,sec=sys,clientaddr=10.10.1.x,minorversion=0,
 local_lock=none,addr=10.10.1.53,_netdev)
icub-laptop:/exports/local_yarp on /home/icub/.local/share/yarp type nfs4
 (rw,relatime,vers=4,rsize=1048576,wsize=1048576,namlen=255,hard,proto=tcp,port=0,timeo=600,retrans=2,sec=sys,clientaddr=10.10.1.x,minorversion=0,
 local_lock=none,addr=10.10.1.53,_netdev)

If automatic mounting at boot time fails, mount the volumes manually:

sudo mount icub-laptop:/exports/code        /usr/local/src/robot           -t nfs   -o _netdev,auto,hard,intr
sudo mount icub-laptop:/exports/local_yarp  /home/icub/.local/share/yarp   -t nfs   -o _netdev,auto,hard,intr
# or simply (if the corresponding entries exist in /etc/fstab):
# sudo mount /usr/local/src/robot
# sudo mount /home/icub/.local/share/yarp

Open issues

  • brightness: fn+F2 does not work, fn+F3 does not work and hibernates the machine
  • shutdown does not work

NFS:

  • we can log onto other machines only when NFS volumes have been successfully mounted (when icub-laptop is up) - insert a robust mechanism (e.g. timeout) to let us log anytime

Additional software

Nvidia graphics card

YARP and iCub

Customization

Passwordless connections

First, generate a key as follows. You only need to it once; use default choices:

ssh-keygen -t rsa

Then, copy the key to each machine you want to connect to, e.g., for pc104 do the following:

ssh-copy-id -i /home/icub/.ssh/id_rsa.pub icub@pc104

Launcher icons

Install gnome-panel then use gnome-desktop-item-edit to create/edit launcher icons on the Desktop.

For example, to create a launcher for icub-cluster.py, do

gnome-desktop-item-edit ~/Desktop/cluster-manager.desktop

and select:

Type: Application // <-- runs the command without showing any terminal; use "Application in Terminal" to show it
Name: icub-cluster // <-- put your preferred icon name here
Command: icub-cluster.py vislab-cluster.xml
Comment: Launch iCub cluster manager (yarpserver and yarprun)

More information and troubleshooting:

See also