<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>http://mediawiki.isr.tecnico.ulisboa.pt/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Giovanni+Saponaro</id>
	<title>ISRWiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="http://mediawiki.isr.tecnico.ulisboa.pt/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Giovanni+Saponaro"/>
	<link rel="alternate" type="text/html" href="http://mediawiki.isr.tecnico.ulisboa.pt/wiki/Special:Contributions/Giovanni_Saponaro"/>
	<updated>2026-07-12T02:19:00Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.41.0</generator>
	<entry>
		<id>http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=ICub_instructions&amp;diff=7110</id>
		<title>ICub instructions</title>
		<link rel="alternate" type="text/html" href="http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=ICub_instructions&amp;diff=7110"/>
		<updated>2020-02-14T18:58:32Z</updated>

		<summary type="html">&lt;p&gt;Giovanni Saponaro: /* Starting YARP components */ embed new yarpmanager screenshots (2020)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[File:ICubLisbonSept2015bright.png|thumb|400px|right|caption|Lisbon iCub robot.]]&lt;br /&gt;
&lt;br /&gt;
This article explains how to use the full-body Lisbon iCub robot (code-name: iCubLisboa01, nickname: Chico) for &#039;&#039;&#039;demos and experiments&#039;&#039;&#039; alike. We will describe the hardware setup that accompanies our iCub, how to turn things on and off, and how to run demos. For a generic description of the robot, refer to the [[Chico]] article.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;An older version of this article can be found at [[iCub instructions/Archive]].&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== Setup ==&lt;br /&gt;
&lt;br /&gt;
The inventory consists of:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  machine&lt;br /&gt;
!  notes&lt;br /&gt;
!  IP address, username&lt;br /&gt;
|-&lt;br /&gt;
|  &#039;&#039;&#039;Chico&#039;&#039;&#039; the robot (duh)&lt;br /&gt;
|  has a [[pc104]] CPU in its head&lt;br /&gt;
|  10.10.1.50, icub&lt;br /&gt;
|-&lt;br /&gt;
|  &#039;&#039;&#039;[[iCub laptop]]&#039;&#039;&#039;&lt;br /&gt;
|  used to control the robot; also, it exports shared volumes (directories) to other machines of the computational cluster&lt;br /&gt;
|  10.10.1.53, icub&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Below Chico&#039;s metal support, from top to bottom we have:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  what&lt;br /&gt;
!  notes&lt;br /&gt;
|-&lt;br /&gt;
|  Xantrex XFR 35-35&lt;br /&gt;
|  thin power supply unit, to power [[pc104]] and some motors. &#039;&#039;&#039;Voltage: 12.9&#039;&#039;&#039;, current: 05.0 or more&lt;br /&gt;
|-&lt;br /&gt;
|  Xantrex XFR 60-46&lt;br /&gt;
|  thick power supply unit, to power most motors. &#039;&#039;&#039;Voltage: 40.0&#039;&#039;&#039; (initially it is 0 - it changes when you turn the green motor switch), current: 10.0 or more&lt;br /&gt;
|-&lt;br /&gt;
|  APC UPS&lt;br /&gt;
|  uninterruptible power supply&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
In a separate room there are servers that make up the iCub computational cluster, to run the bulk of algorithms and programs (inverse kinematics, vision routines, etc.).&lt;br /&gt;
&lt;br /&gt;
== Switching on the robot ==&lt;br /&gt;
&lt;br /&gt;
=== Hardware side ===&lt;br /&gt;
&lt;br /&gt;
* Check that the UPS is on&lt;br /&gt;
* Check that the [[iCub laptop]] is on, if not switch it on&lt;br /&gt;
* Turn on the Xantrex power supply units; make sure the voltage values are correct (see [[iCub_instructions#Setup]])&lt;br /&gt;
* Check that the &#039;&#039;&#039;red emergency button is unlocked&#039;&#039;&#039;&lt;br /&gt;
* Turn on the green switches next to Chico&lt;br /&gt;
** Safety hint: first turn on the [[pc104]] CPU switch, wait for the CPU to be on, and only then switch the motors on&lt;br /&gt;
** Another safety hint, after turning on motors: wait for the four purple lights on each board to turn off and become two blue lights – at this point you can continue to the next steps&lt;br /&gt;
&lt;br /&gt;
=== Software side ===&lt;br /&gt;
&lt;br /&gt;
* Check that the YARP Module Manager (yarpmanager) window is shown, if not run &#039;&#039;&#039;yarpmanager.sh&#039;&#039;&#039; from the laptop desktop icon and [[#Starting YARP components|start the needed YARP components (click here for detailed instructions)]]. The summary is:&lt;br /&gt;
** First, launch &amp;lt;code&amp;gt;yarpserver&amp;lt;/code&amp;gt; with the &#039;Run&#039; button in the Cluster tab&lt;br /&gt;
** Then, if your application employs machines other than the laptop itself, launch the necessary &amp;lt;code&amp;gt;yarprun&amp;lt;/code&amp;gt; listeners in the Entities panel: &#039;&#039;&#039;icub-laptop, pc104, icubbrain1, icubbrain2, icub-cuda&#039;&#039;&#039;&lt;br /&gt;
* The Entities tab is a GUI that manages all the necessary iCub applications&lt;br /&gt;
** In the iCubStartup application, launch all modules, including yarprobotinterface which is the most important one that will calibrate the robot. Just in case, make sure that the iCub is vertical before launching this software, otherwise the robot will fall down (dangerous)&lt;br /&gt;
** Other applications: depending on the desired application or demo, you will need to start other necessary drivers such as [[#Cameras | cameras]] or [[#Facial expression driver |facial expressions]]&lt;br /&gt;
&lt;br /&gt;
== Shutting off the robot ==&lt;br /&gt;
&lt;br /&gt;
=== Software side ===&lt;br /&gt;
&lt;br /&gt;
* Stop your demo software and the cameras with the GUI; do not stop yarprobotinterface (in the iCubStartup panel) nor &amp;lt;code&amp;gt;yarpserver&amp;lt;/code&amp;gt; (in the Cluster Manager window)&lt;br /&gt;
* In the iCubStartup panel of the GUI, stop all modules, including yarprobotinterface. Chico will thus move its limbs and head to a &amp;quot;parking&amp;quot; position. (If things don&#039;t quit gracefully, stop or kill the process more times and be ready to hold Chico&#039;s chest since the head may fall to the front.)&lt;br /&gt;
* In the Cluster Manager window, stop the instances of &amp;lt;code&amp;gt;yarprun&amp;lt;/code&amp;gt; (lower panel). It is not necessary to stop &amp;lt;code&amp;gt;yarpserver&amp;lt;/code&amp;gt; (upper panel), we usually keep it on&lt;br /&gt;
&lt;br /&gt;
=== Hardware side ===&lt;br /&gt;
&lt;br /&gt;
* Shut down the [[pc104]] with this command in a terminal: &amp;lt;code&amp;gt;sudo halt&amp;lt;/code&amp;gt;&lt;br /&gt;
* Turn off the two green switches. Pay attention when turning off the &#039;Motors&#039; switch: if yarprobotinterface was not stopped properly in the previous steps, then be ready to hold the robot when turning that switch&lt;br /&gt;
* Turn off the Xantrex power supply units&lt;br /&gt;
* Do not turn off the [[iCub laptop]], we usually keep it on&lt;br /&gt;
&lt;br /&gt;
== Stopping the robot with the red emergency button ==&lt;br /&gt;
&lt;br /&gt;
The emergency button, as the name suggests, is to be used for emergencies only. For example:&lt;br /&gt;
* When the robot is about to break something&lt;br /&gt;
* When some components make nasty noises that suggest they are going to break&lt;br /&gt;
Use this button with great care, as it cuts power to all motors and controllers abruptly! In particular, be ready to hold Chico, because the upper part of his body might fall upon losing power.&lt;br /&gt;
&lt;br /&gt;
To start using the robot again, it is convenient to quit and restart all the software components and interfaces; refer to [[#Switching on the robot]] for that. &#039;&#039;&#039;Don&#039;t forget to unlock the red emergency button&#039;&#039;&#039; after an emergency, otherwise the program [[#yarprobotinterface]] will start but not move any joint.&lt;br /&gt;
&lt;br /&gt;
== Starting YARP components ==&lt;br /&gt;
&lt;br /&gt;
* Click on the &#039;&#039;&#039;yarpmanager.sh&#039;&#039;&#039; icon on the desktop and select &#039;Run in Terminal&#039; (or &#039;Run&#039; if you want to suppress the optional debug information terminal)&lt;br /&gt;
* You will see a window divided in two parts: Cluster Management and Nodes&lt;br /&gt;
* In the Cluster part, click on the green &#039;Run yarpserver&#039; play button. The light above the &#039;Stop&#039; button will become green.&lt;br /&gt;
* In the Nodes part, choose all the machines in the &#039;Select&#039; column, then click &#039;Run Selected&#039; and wait a bit so that all machines can turn on their green &#039;On&#039; light.&lt;br /&gt;
&lt;br /&gt;
=== Screenshots ===&lt;br /&gt;
&lt;br /&gt;
[[Image:Yarpmanager_launch_yarpserver.png|1024px]]&lt;br /&gt;
&lt;br /&gt;
[[Image:Yarpmanager_launch_yarprun.png|1024px]]&lt;br /&gt;
&lt;br /&gt;
[[Image:Yarpmanager_launch_yarprobotinterface.png|1024px]]&lt;br /&gt;
&lt;br /&gt;
== Other components ==&lt;br /&gt;
&lt;br /&gt;
Many demos and programs assume that components such as cameras, the yarprobotinterface driver or the facial expression driver have been launched. To start them, first of all run the &#039;&#039;&#039;yarpmanager.sh&#039;&#039;&#039; icon. A GUI similar to this one will appear:&lt;br /&gt;
&lt;br /&gt;
[[Image:gyarpmanager.png]]&lt;br /&gt;
&lt;br /&gt;
When you have one or more applications running, each one will have its panel (tab) and the following toolbar will be visible. Here are the most important functions (which affect all modules of the currently selected application):&lt;br /&gt;
&lt;br /&gt;
[[Image:gyarpmanager_toolbar.png]]&lt;br /&gt;
&lt;br /&gt;
=== yarprobotinterface ===&lt;br /&gt;
&lt;br /&gt;
This program controls the motors and reads the robot sensors (encoders, inertial sensor, skin, force/torque). It is needed by almost all demos.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;check that the red emergency button is unlocked&#039;&#039;&#039;&lt;br /&gt;
* open the &#039;&#039;&#039;iCubStartup&#039;&#039;&#039; panel in the yarpmanager GUI; click the Run Application button. This will start both kinematics (yarprobotinterface, cartesian solvers and gaze control) and dynamics (wholeBodyDynamics and gravityCompensator)&lt;br /&gt;
&lt;br /&gt;
Wait for all boards to answer (which takes around 1 minute); after that, you are ready to move on. &lt;br /&gt;
&lt;br /&gt;
There is a GUI application to manually command robot joints. Just invoke it from the [[iCub laptop]] with:&lt;br /&gt;
 yarpmotorgui&lt;br /&gt;
&lt;br /&gt;
=== Cameras ===&lt;br /&gt;
&lt;br /&gt;
* Make sure that basic YARP components are running: [[#Switching on the robot|summarized Cluster Manager instructions are here]]; detailed instructions are in section [[#Starting YARP components]]&lt;br /&gt;
* open the &#039;&#039;&#039;Cameras_320x240_for_ball_tracking&#039;&#039;&#039; panel in the yarpmanager GUI; click the Run Application button; click the Connect Links button&lt;br /&gt;
&lt;br /&gt;
=== Facial expression driver ===&lt;br /&gt;
&lt;br /&gt;
* Make sure that basic YARP components are running: [[#Switching on the robot|summarized Cluster Manager instructions are here]]; detailed instructions are in section [[#Starting YARP components]]&lt;br /&gt;
* open the &#039;&#039;&#039;Face_Expressions&#039;&#039;&#039; panel in the yarpmanager GUI; click the Run Application button; click the Connect Links button&lt;br /&gt;
&lt;br /&gt;
Note that the actual expression device driver (the first module of the two listed) runs on the [[pc104]]. Sometimes, that process cannot be properly killed and restarted from the graphical interface; in the event of you needing to do that, you can either &amp;lt;code&amp;gt;kill -9&amp;lt;/code&amp;gt; its PID, or do a hard restart of the [[pc104]].&lt;br /&gt;
&lt;br /&gt;
=== iCubGui ===&lt;br /&gt;
&lt;br /&gt;
This component shows a real-time 3D model of the robot on the screen.&lt;br /&gt;
&lt;br /&gt;
* Make sure that basic YARP components are running: [[#Switching on the robot|summarized Cluster Manager instructions are here]]; detailed instructions are in section [[#Starting YARP components]]&lt;br /&gt;
* open the &#039;&#039;&#039;iCubGui&#039;&#039;&#039; panel in the yarpmanager GUI; click the Run Application button; click the Connect Links button&lt;br /&gt;
&lt;br /&gt;
=== Skin GUI ===&lt;br /&gt;
&lt;br /&gt;
* Make sure that basic YARP components are running: [[#Switching on the robot|summarized Cluster Manager instructions are here]]; detailed instructions are in section [[#Starting YARP components]]&lt;br /&gt;
* open the &#039;&#039;&#039;Skin_Gui_All&#039;&#039;&#039; panel in the yarpmanager GUI; click the Run Application button; click the Connect Links button&lt;br /&gt;
&lt;br /&gt;
== Specific demos ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Refer to [[iCub demos/Archive]] for older information such as starting demos from terminals&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
=== Ball tracking and grasping ===&lt;br /&gt;
&lt;br /&gt;
* Make sure that basic YARP components are running: [[#Switching on the robot|summarized Cluster Manager instructions are here]]; detailed instructions are in section [[#Starting YARP components]]&lt;br /&gt;
* Make sure that the applications iCubStartup, Cameras_320x240_for_Ball_Tracking have been started&lt;br /&gt;
* Optionally, Face_Expression and iCubGui can be started too&lt;br /&gt;
* open the &#039;&#039;&#039;Red-Ball_Demo&#039;&#039;&#039; panel in the yarpmanager GUI; click the Run Application button; click the Connect Links button&lt;br /&gt;
&lt;br /&gt;
Note that this demo launches the left eye camera with special parameter values:&lt;br /&gt;
  brightness 0&lt;br /&gt;
  sharpness 0.5&lt;br /&gt;
  white balance red 0.474      // you may need to lower this, depending on illumination&lt;br /&gt;
  white balance blue 0.648 &lt;br /&gt;
  hue 0.482&lt;br /&gt;
  saturation 0.826&lt;br /&gt;
  gamma 0.400&lt;br /&gt;
  shutter 0.592&lt;br /&gt;
  gain 0.305&lt;br /&gt;
&lt;br /&gt;
=== Facial expressions ===&lt;br /&gt;
&lt;br /&gt;
* Make sure that basic YARP components are running: [[#Switching on the robot|summarized Cluster Manager instructions are here]]; detailed instructions are in section [[#Starting YARP components]]&lt;br /&gt;
* Start the [[#Facial expression driver | facial expression driver]]&lt;br /&gt;
* Select the &#039;&#039;&#039;EMOTIONS2&#039;&#039;&#039; icon (Run in terminal); stop with ctrl+c&lt;br /&gt;
&lt;br /&gt;
=== Force Control ===&lt;br /&gt;
&lt;br /&gt;
* Make sure that basic YARP components are running: [[#Switching on the robot|summarized Cluster Manager instructions are here]]; detailed instructions are in section [[#Starting YARP components]]&lt;br /&gt;
* Make sure that the applications iCubStartup has been started&lt;br /&gt;
* Click on the &#039;&#039;&#039;Force_Control&#039;&#039;&#039; panel in the yarpmanager GUI, Run Application, Connect Links&lt;br /&gt;
* select the desired modality (screenshot below) and manually move the robot limbs:&lt;br /&gt;
[[Image:Force_control_gui.png]]&lt;br /&gt;
* More information available here: http://eris.liralab.it/wiki/Force_Control&lt;br /&gt;
&lt;br /&gt;
=== Interactive Objects Learning Behavior ===&lt;br /&gt;
&lt;br /&gt;
For this demo, you also need a Windows machine with a &amp;lt;code&amp;gt;yarprun&amp;lt;/code&amp;gt; listener (the speech recognition module will be launched on this machine).&lt;br /&gt;
&lt;br /&gt;
In yarpmanager, select the &amp;quot;Interactive Objects Learning Behavior with SCSPM&amp;quot; application: refresh, run, connect.&lt;br /&gt;
&lt;br /&gt;
The grammar of recognized spoken sentences is located at &lt;br /&gt;
https://github.com/robotology/iol/blob/master/app/lua/verbalInteraction.txt&lt;br /&gt;
&lt;br /&gt;
Notes: do the following commands for using IOL Object Recognition side by side with the POETICON++ demo.&lt;br /&gt;
  yarp rpc /actionsRenderingEngine/cmd:io&lt;br /&gt;
  home all&lt;br /&gt;
&lt;br /&gt;
  yarp rpc /iolStateMachineHandler/human:rpc&lt;br /&gt;
  attention stop&lt;br /&gt;
&lt;br /&gt;
=== Yoga ===&lt;br /&gt;
&lt;br /&gt;
* Make sure that basic YARP components are running: [[#Switching on the robot|summarized Cluster Manager instructions are here]]; detailed instructions are in section [[#Starting YARP components]]. For this demo we only need &amp;lt;code&amp;gt;yarpserver&amp;lt;/code&amp;gt; (&amp;lt;code&amp;gt;yarprun&amp;lt;/code&amp;gt;s are not necessary)&lt;br /&gt;
* Make sure that iCubStartup ([[#yarprobotinterface|yarprobotinterface]]) is running&lt;br /&gt;
* open the &#039;&#039;&#039;Yoga&#039;&#039;&#039; panel in the yarpmanager GUI; click the Run Application button&lt;br /&gt;
&lt;br /&gt;
[[Category:Vislab]]&lt;/div&gt;</summary>
		<author><name>Giovanni Saponaro</name></author>
	</entry>
	<entry>
		<id>http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=File:Yarpmanager_launch_yarprobotinterface.png&amp;diff=7109</id>
		<title>File:Yarpmanager launch yarprobotinterface.png</title>
		<link rel="alternate" type="text/html" href="http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=File:Yarpmanager_launch_yarprobotinterface.png&amp;diff=7109"/>
		<updated>2020-02-14T18:55:49Z</updated>

		<summary type="html">&lt;p&gt;Giovanni Saponaro: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Giovanni Saponaro</name></author>
	</entry>
	<entry>
		<id>http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=File:Yarpmanager_launch_yarprun.png&amp;diff=7108</id>
		<title>File:Yarpmanager launch yarprun.png</title>
		<link rel="alternate" type="text/html" href="http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=File:Yarpmanager_launch_yarprun.png&amp;diff=7108"/>
		<updated>2020-02-14T18:55:36Z</updated>

		<summary type="html">&lt;p&gt;Giovanni Saponaro: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Giovanni Saponaro</name></author>
	</entry>
	<entry>
		<id>http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=File:Yarpmanager_launch_yarpserver.png&amp;diff=7107</id>
		<title>File:Yarpmanager launch yarpserver.png</title>
		<link rel="alternate" type="text/html" href="http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=File:Yarpmanager_launch_yarpserver.png&amp;diff=7107"/>
		<updated>2020-02-14T18:55:21Z</updated>

		<summary type="html">&lt;p&gt;Giovanni Saponaro: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Giovanni Saponaro</name></author>
	</entry>
	<entry>
		<id>http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=ICub_instructions&amp;diff=7106</id>
		<title>ICub instructions</title>
		<link rel="alternate" type="text/html" href="http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=ICub_instructions&amp;diff=7106"/>
		<updated>2020-02-14T18:53:56Z</updated>

		<summary type="html">&lt;p&gt;Giovanni Saponaro: robotInterface -&amp;gt; yarprobotinterface&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[File:ICubLisbonSept2015bright.png|thumb|400px|right|caption|Lisbon iCub robot.]]&lt;br /&gt;
&lt;br /&gt;
This article explains how to use the full-body Lisbon iCub robot (code-name: iCubLisboa01, nickname: Chico) for &#039;&#039;&#039;demos and experiments&#039;&#039;&#039; alike. We will describe the hardware setup that accompanies our iCub, how to turn things on and off, and how to run demos. For a generic description of the robot, refer to the [[Chico]] article.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;An older version of this article can be found at [[iCub instructions/Archive]].&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== Setup ==&lt;br /&gt;
&lt;br /&gt;
The inventory consists of:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  machine&lt;br /&gt;
!  notes&lt;br /&gt;
!  IP address, username&lt;br /&gt;
|-&lt;br /&gt;
|  &#039;&#039;&#039;Chico&#039;&#039;&#039; the robot (duh)&lt;br /&gt;
|  has a [[pc104]] CPU in its head&lt;br /&gt;
|  10.10.1.50, icub&lt;br /&gt;
|-&lt;br /&gt;
|  &#039;&#039;&#039;[[iCub laptop]]&#039;&#039;&#039;&lt;br /&gt;
|  used to control the robot; also, it exports shared volumes (directories) to other machines of the computational cluster&lt;br /&gt;
|  10.10.1.53, icub&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Below Chico&#039;s metal support, from top to bottom we have:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  what&lt;br /&gt;
!  notes&lt;br /&gt;
|-&lt;br /&gt;
|  Xantrex XFR 35-35&lt;br /&gt;
|  thin power supply unit, to power [[pc104]] and some motors. &#039;&#039;&#039;Voltage: 12.9&#039;&#039;&#039;, current: 05.0 or more&lt;br /&gt;
|-&lt;br /&gt;
|  Xantrex XFR 60-46&lt;br /&gt;
|  thick power supply unit, to power most motors. &#039;&#039;&#039;Voltage: 40.0&#039;&#039;&#039; (initially it is 0 - it changes when you turn the green motor switch), current: 10.0 or more&lt;br /&gt;
|-&lt;br /&gt;
|  APC UPS&lt;br /&gt;
|  uninterruptible power supply&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
In a separate room there are servers that make up the iCub computational cluster, to run the bulk of algorithms and programs (inverse kinematics, vision routines, etc.).&lt;br /&gt;
&lt;br /&gt;
== Switching on the robot ==&lt;br /&gt;
&lt;br /&gt;
=== Hardware side ===&lt;br /&gt;
&lt;br /&gt;
* Check that the UPS is on&lt;br /&gt;
* Check that the [[iCub laptop]] is on, if not switch it on&lt;br /&gt;
* Turn on the Xantrex power supply units; make sure the voltage values are correct (see [[iCub_instructions#Setup]])&lt;br /&gt;
* Check that the &#039;&#039;&#039;red emergency button is unlocked&#039;&#039;&#039;&lt;br /&gt;
* Turn on the green switches next to Chico&lt;br /&gt;
** Safety hint: first turn on the [[pc104]] CPU switch, wait for the CPU to be on, and only then switch the motors on&lt;br /&gt;
** Another safety hint, after turning on motors: wait for the four purple lights on each board to turn off and become two blue lights – at this point you can continue to the next steps&lt;br /&gt;
&lt;br /&gt;
=== Software side ===&lt;br /&gt;
&lt;br /&gt;
* Check that the YARP Module Manager (yarpmanager) window is shown, if not run &#039;&#039;&#039;yarpmanager.sh&#039;&#039;&#039; from the laptop desktop icon and [[#Starting YARP components|start the needed YARP components (click here for detailed instructions)]]. The summary is:&lt;br /&gt;
** First, launch &amp;lt;code&amp;gt;yarpserver&amp;lt;/code&amp;gt; with the &#039;Run&#039; button in the Cluster tab&lt;br /&gt;
** Then, if your application employs machines other than the laptop itself, launch the necessary &amp;lt;code&amp;gt;yarprun&amp;lt;/code&amp;gt; listeners in the Entities panel: &#039;&#039;&#039;icub-laptop, pc104, icubbrain1, icubbrain2, icub-cuda&#039;&#039;&#039;&lt;br /&gt;
* The Entities tab is a GUI that manages all the necessary iCub applications&lt;br /&gt;
** In the iCubStartup application, launch all modules, including yarprobotinterface which is the most important one that will calibrate the robot. Just in case, make sure that the iCub is vertical before launching this software, otherwise the robot will fall down (dangerous)&lt;br /&gt;
** Other applications: depending on the desired application or demo, you will need to start other necessary drivers such as [[#Cameras | cameras]] or [[#Facial expression driver |facial expressions]]&lt;br /&gt;
&lt;br /&gt;
== Shutting off the robot ==&lt;br /&gt;
&lt;br /&gt;
=== Software side ===&lt;br /&gt;
&lt;br /&gt;
* Stop your demo software and the cameras with the GUI; do not stop yarprobotinterface (in the iCubStartup panel) nor &amp;lt;code&amp;gt;yarpserver&amp;lt;/code&amp;gt; (in the Cluster Manager window)&lt;br /&gt;
* In the iCubStartup panel of the GUI, stop all modules, including yarprobotinterface. Chico will thus move its limbs and head to a &amp;quot;parking&amp;quot; position. (If things don&#039;t quit gracefully, stop or kill the process more times and be ready to hold Chico&#039;s chest since the head may fall to the front.)&lt;br /&gt;
* In the Cluster Manager window, stop the instances of &amp;lt;code&amp;gt;yarprun&amp;lt;/code&amp;gt; (lower panel). It is not necessary to stop &amp;lt;code&amp;gt;yarpserver&amp;lt;/code&amp;gt; (upper panel), we usually keep it on&lt;br /&gt;
&lt;br /&gt;
=== Hardware side ===&lt;br /&gt;
&lt;br /&gt;
* Shut down the [[pc104]] with this command in a terminal: &amp;lt;code&amp;gt;sudo halt&amp;lt;/code&amp;gt;&lt;br /&gt;
* Turn off the two green switches. Pay attention when turning off the &#039;Motors&#039; switch: if yarprobotinterface was not stopped properly in the previous steps, then be ready to hold the robot when turning that switch&lt;br /&gt;
* Turn off the Xantrex power supply units&lt;br /&gt;
* Do not turn off the [[iCub laptop]], we usually keep it on&lt;br /&gt;
&lt;br /&gt;
== Stopping the robot with the red emergency button ==&lt;br /&gt;
&lt;br /&gt;
The emergency button, as the name suggests, is to be used for emergencies only. For example:&lt;br /&gt;
* When the robot is about to break something&lt;br /&gt;
* When some components make nasty noises that suggest they are going to break&lt;br /&gt;
Use this button with great care, as it cuts power to all motors and controllers abruptly! In particular, be ready to hold Chico, because the upper part of his body might fall upon losing power.&lt;br /&gt;
&lt;br /&gt;
To start using the robot again, it is convenient to quit and restart all the software components and interfaces; refer to [[#Switching on the robot]] for that. &#039;&#039;&#039;Don&#039;t forget to unlock the red emergency button&#039;&#039;&#039; after an emergency, otherwise the program [[#yarprobotinterface]] will start but not move any joint.&lt;br /&gt;
&lt;br /&gt;
== Starting YARP components ==&lt;br /&gt;
&lt;br /&gt;
* Click on the &#039;&#039;&#039;yarpmanager.sh&#039;&#039;&#039; icon on the desktop and select &#039;Run in Terminal&#039; (or &#039;Run&#039; if you want to suppress the optional debug information terminal)&lt;br /&gt;
* You will see a window divided in two parts: Cluster Management and Nodes&lt;br /&gt;
* In the Cluster part, click on the green &#039;Run yarpserver&#039; play button. The light above the &#039;Stop&#039; button will become green.&lt;br /&gt;
* In the Nodes part, choose all the machines in the &#039;Select&#039; column, then click &#039;Run Selected&#039; and wait a bit so that all machines can turn on their green &#039;On&#039; light.&lt;br /&gt;
&lt;br /&gt;
== Other components ==&lt;br /&gt;
&lt;br /&gt;
Many demos and programs assume that components such as cameras, the yarprobotinterface driver or the facial expression driver have been launched. To start them, first of all run the &#039;&#039;&#039;yarpmanager.sh&#039;&#039;&#039; icon. A GUI similar to this one will appear:&lt;br /&gt;
&lt;br /&gt;
[[Image:gyarpmanager.png]]&lt;br /&gt;
&lt;br /&gt;
When you have one or more applications running, each one will have its panel (tab) and the following toolbar will be visible. Here are the most important functions (which affect all modules of the currently selected application):&lt;br /&gt;
&lt;br /&gt;
[[Image:gyarpmanager_toolbar.png]]&lt;br /&gt;
&lt;br /&gt;
=== yarprobotinterface ===&lt;br /&gt;
&lt;br /&gt;
This program controls the motors and reads the robot sensors (encoders, inertial sensor, skin, force/torque). It is needed by almost all demos.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;check that the red emergency button is unlocked&#039;&#039;&#039;&lt;br /&gt;
* open the &#039;&#039;&#039;iCubStartup&#039;&#039;&#039; panel in the yarpmanager GUI; click the Run Application button. This will start both kinematics (yarprobotinterface, cartesian solvers and gaze control) and dynamics (wholeBodyDynamics and gravityCompensator)&lt;br /&gt;
&lt;br /&gt;
Wait for all boards to answer (which takes around 1 minute); after that, you are ready to move on. &lt;br /&gt;
&lt;br /&gt;
There is a GUI application to manually command robot joints. Just invoke it from the [[iCub laptop]] with:&lt;br /&gt;
 yarpmotorgui&lt;br /&gt;
&lt;br /&gt;
=== Cameras ===&lt;br /&gt;
&lt;br /&gt;
* Make sure that basic YARP components are running: [[#Switching on the robot|summarized Cluster Manager instructions are here]]; detailed instructions are in section [[#Starting YARP components]]&lt;br /&gt;
* open the &#039;&#039;&#039;Cameras_320x240_for_ball_tracking&#039;&#039;&#039; panel in the yarpmanager GUI; click the Run Application button; click the Connect Links button&lt;br /&gt;
&lt;br /&gt;
=== Facial expression driver ===&lt;br /&gt;
&lt;br /&gt;
* Make sure that basic YARP components are running: [[#Switching on the robot|summarized Cluster Manager instructions are here]]; detailed instructions are in section [[#Starting YARP components]]&lt;br /&gt;
* open the &#039;&#039;&#039;Face_Expressions&#039;&#039;&#039; panel in the yarpmanager GUI; click the Run Application button; click the Connect Links button&lt;br /&gt;
&lt;br /&gt;
Note that the actual expression device driver (the first module of the two listed) runs on the [[pc104]]. Sometimes, that process cannot be properly killed and restarted from the graphical interface; in the event of you needing to do that, you can either &amp;lt;code&amp;gt;kill -9&amp;lt;/code&amp;gt; its PID, or do a hard restart of the [[pc104]].&lt;br /&gt;
&lt;br /&gt;
=== iCubGui ===&lt;br /&gt;
&lt;br /&gt;
This component shows a real-time 3D model of the robot on the screen.&lt;br /&gt;
&lt;br /&gt;
* Make sure that basic YARP components are running: [[#Switching on the robot|summarized Cluster Manager instructions are here]]; detailed instructions are in section [[#Starting YARP components]]&lt;br /&gt;
* open the &#039;&#039;&#039;iCubGui&#039;&#039;&#039; panel in the yarpmanager GUI; click the Run Application button; click the Connect Links button&lt;br /&gt;
&lt;br /&gt;
=== Skin GUI ===&lt;br /&gt;
&lt;br /&gt;
* Make sure that basic YARP components are running: [[#Switching on the robot|summarized Cluster Manager instructions are here]]; detailed instructions are in section [[#Starting YARP components]]&lt;br /&gt;
* open the &#039;&#039;&#039;Skin_Gui_All&#039;&#039;&#039; panel in the yarpmanager GUI; click the Run Application button; click the Connect Links button&lt;br /&gt;
&lt;br /&gt;
== Specific demos ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Refer to [[iCub demos/Archive]] for older information such as starting demos from terminals&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
=== Ball tracking and grasping ===&lt;br /&gt;
&lt;br /&gt;
* Make sure that basic YARP components are running: [[#Switching on the robot|summarized Cluster Manager instructions are here]]; detailed instructions are in section [[#Starting YARP components]]&lt;br /&gt;
* Make sure that the applications iCubStartup, Cameras_320x240_for_Ball_Tracking have been started&lt;br /&gt;
* Optionally, Face_Expression and iCubGui can be started too&lt;br /&gt;
* open the &#039;&#039;&#039;Red-Ball_Demo&#039;&#039;&#039; panel in the yarpmanager GUI; click the Run Application button; click the Connect Links button&lt;br /&gt;
&lt;br /&gt;
Note that this demo launches the left eye camera with special parameter values:&lt;br /&gt;
  brightness 0&lt;br /&gt;
  sharpness 0.5&lt;br /&gt;
  white balance red 0.474      // you may need to lower this, depending on illumination&lt;br /&gt;
  white balance blue 0.648 &lt;br /&gt;
  hue 0.482&lt;br /&gt;
  saturation 0.826&lt;br /&gt;
  gamma 0.400&lt;br /&gt;
  shutter 0.592&lt;br /&gt;
  gain 0.305&lt;br /&gt;
&lt;br /&gt;
=== Facial expressions ===&lt;br /&gt;
&lt;br /&gt;
* Make sure that basic YARP components are running: [[#Switching on the robot|summarized Cluster Manager instructions are here]]; detailed instructions are in section [[#Starting YARP components]]&lt;br /&gt;
* Start the [[#Facial expression driver | facial expression driver]]&lt;br /&gt;
* Select the &#039;&#039;&#039;EMOTIONS2&#039;&#039;&#039; icon (Run in terminal); stop with ctrl+c&lt;br /&gt;
&lt;br /&gt;
=== Force Control ===&lt;br /&gt;
&lt;br /&gt;
* Make sure that basic YARP components are running: [[#Switching on the robot|summarized Cluster Manager instructions are here]]; detailed instructions are in section [[#Starting YARP components]]&lt;br /&gt;
* Make sure that the applications iCubStartup has been started&lt;br /&gt;
* Click on the &#039;&#039;&#039;Force_Control&#039;&#039;&#039; panel in the yarpmanager GUI, Run Application, Connect Links&lt;br /&gt;
* select the desired modality (screenshot below) and manually move the robot limbs:&lt;br /&gt;
[[Image:Force_control_gui.png]]&lt;br /&gt;
* More information available here: http://eris.liralab.it/wiki/Force_Control&lt;br /&gt;
&lt;br /&gt;
=== Interactive Objects Learning Behavior ===&lt;br /&gt;
&lt;br /&gt;
For this demo, you also need a Windows machine with a &amp;lt;code&amp;gt;yarprun&amp;lt;/code&amp;gt; listener (the speech recognition module will be launched on this machine).&lt;br /&gt;
&lt;br /&gt;
In yarpmanager, select the &amp;quot;Interactive Objects Learning Behavior with SCSPM&amp;quot; application: refresh, run, connect.&lt;br /&gt;
&lt;br /&gt;
The grammar of recognized spoken sentences is located at &lt;br /&gt;
https://github.com/robotology/iol/blob/master/app/lua/verbalInteraction.txt&lt;br /&gt;
&lt;br /&gt;
Notes: do the following commands for using IOL Object Recognition side by side with the POETICON++ demo.&lt;br /&gt;
  yarp rpc /actionsRenderingEngine/cmd:io&lt;br /&gt;
  home all&lt;br /&gt;
&lt;br /&gt;
  yarp rpc /iolStateMachineHandler/human:rpc&lt;br /&gt;
  attention stop&lt;br /&gt;
&lt;br /&gt;
=== Yoga ===&lt;br /&gt;
&lt;br /&gt;
* Make sure that basic YARP components are running: [[#Switching on the robot|summarized Cluster Manager instructions are here]]; detailed instructions are in section [[#Starting YARP components]]. For this demo we only need &amp;lt;code&amp;gt;yarpserver&amp;lt;/code&amp;gt; (&amp;lt;code&amp;gt;yarprun&amp;lt;/code&amp;gt;s are not necessary)&lt;br /&gt;
* Make sure that iCubStartup ([[#yarprobotinterface|yarprobotinterface]]) is running&lt;br /&gt;
* open the &#039;&#039;&#039;Yoga&#039;&#039;&#039; panel in the yarpmanager GUI; click the Run Application button&lt;br /&gt;
&lt;br /&gt;
[[Category:Vislab]]&lt;/div&gt;</summary>
		<author><name>Giovanni Saponaro</name></author>
	</entry>
	<entry>
		<id>http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=ICub_instructions/Archive&amp;diff=7105</id>
		<title>ICub instructions/Archive</title>
		<link rel="alternate" type="text/html" href="http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=ICub_instructions/Archive&amp;diff=7105"/>
		<updated>2020-02-14T18:25:41Z</updated>

		<summary type="html">&lt;p&gt;Giovanni Saponaro: archive old Cluster Manager screenshots&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;Note: these methods are obsolete and kept here for historic reference only. Most probably, you may ignore this page and go back to &#039;&#039;&#039;[[iCub instructions]]&#039;&#039;&#039;.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
= Useful things to archive =&lt;br /&gt;
&lt;br /&gt;
== Desktop icons to launch the Application Manager and XMLs ==&lt;br /&gt;
&lt;br /&gt;
Example: &#039;&#039;&#039;cameras.sh icon&#039;&#039;&#039; (to be placed in &amp;lt;code&amp;gt;~/Desktop/&amp;lt;/code&amp;gt;) contains:&lt;br /&gt;
&lt;br /&gt;
=== 2011 version ===&lt;br /&gt;
&lt;br /&gt;
  #!/bin/bash&lt;br /&gt;
  source ~/.bash_env&lt;br /&gt;
  cd $ICUB_ROOT/app/$ICUB_ROBOTNAME/scripts&lt;br /&gt;
  manager.py cameras_320x240_setForTracking.xml&lt;br /&gt;
&lt;br /&gt;
=== 2010 version ===&lt;br /&gt;
&lt;br /&gt;
  #!/bin/bash&lt;br /&gt;
  source ~/.bash_env&lt;br /&gt;
  cd $ICUB_ROOT/app/default/scripts&lt;br /&gt;
  ./manager.py cameras_320x240.xml&lt;br /&gt;
&lt;br /&gt;
Note that Resource Finder searches for XMLs in &amp;lt;code&amp;gt;$ICUB_ROOT/app/$ICUB_ROBOTNAME/scripts/&amp;lt;/code&amp;gt; first, then in a number of other directories.&lt;br /&gt;
&lt;br /&gt;
= 2019 archive =&lt;br /&gt;
&lt;br /&gt;
== Starting YARP components ==&lt;br /&gt;
&lt;br /&gt;
[[Image:Cluster_mgr-run_in_terminal.png]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;yarpserver&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;yarprun&amp;lt;/code&amp;gt;s (the former is a global, single-instance nameserver; the latter are various instances of network command listeners, one per each machine involved in the demos)&lt;br /&gt;
&lt;br /&gt;
[[Image:Cluster_mgr.png]]&lt;br /&gt;
&lt;br /&gt;
= 2015 archive =&lt;br /&gt;
&lt;br /&gt;
== Face tracking ==&lt;br /&gt;
&lt;br /&gt;
* Make sure that basic YARP components are running: [[#Switching on the robot|summarized Cluster Manager instructions are here]]; detailed instructions are in section [[#Starting YARP components]]&lt;br /&gt;
* Make sure that iCubStartup ([[#robotInterface|robotInterface]]) and cameras are running&lt;br /&gt;
* Optionally, start the [[#Facial expression driver | facial expression driver]]&lt;br /&gt;
* Select the &#039;&#039;&#039;faceTracking_RightEye_NoHand&#039;&#039;&#039; panel (or the Left/Right Arm version); start modules and make connections&lt;br /&gt;
&lt;br /&gt;
== Bringing the iCub to external demos ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Note: the &#039;&#039;&#039;[[iCubBrain]]&#039;&#039;&#039; chassis, which contains two servers used for computation (icubbrain1 - 10.10.1.41, icubbrain2 - 10.10.1.42) is normally in the ISR server room on the 6th floor. When we bring the iCub to external demos, it sits on top of the power supply units.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* Check that the two [[iCubBrain]] servers are on (if the demo is held at ISR then they are already on: ignore this step)&lt;br /&gt;
&lt;br /&gt;
* If necessary, turn off other machines (such as portable servers during a demo outside ISR) and the UPS&lt;br /&gt;
&lt;br /&gt;
== Starting YARP components ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;See [[Cluster Management in VisLab]] for background information about this GUI (not important for most users).&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Do all the selected machines have their &#039;On/Off&#039; switch green by now? If so, proceed to the next step. If not, click on &#039;Check All&#039; and see if we have a green light from the [[pc104]] at this point. You should see something similar to this, actually with all the required machines showing a green &#039;On&#039; light:&lt;br /&gt;
&lt;br /&gt;
[[Image:Successful_cluster_mgr.png]]&lt;br /&gt;
&lt;br /&gt;
= 2013 archive =&lt;br /&gt;
&lt;br /&gt;
== Specific demos ==&lt;br /&gt;
&lt;br /&gt;
=== Interactive Objects Learning Behavior ===&lt;br /&gt;
&lt;br /&gt;
For this demo, you also need a Windows machine to run the RAD speech recognition module. The Toshiba Satellite laptop is already configured for this purpose.&lt;br /&gt;
&lt;br /&gt;
In Linux:&lt;br /&gt;
* &amp;lt;code&amp;gt;yarp clean&amp;lt;/code&amp;gt; to remove dead ports&lt;br /&gt;
* make sure that no IOL module is running in the background: &amp;lt;code&amp;gt;yarp name list&amp;lt;/code&amp;gt; should be empty, if not remove any IOL module running&lt;br /&gt;
&lt;br /&gt;
Turn on the Windows machine. On startup, it will launch a command prompt with a &amp;lt;code&amp;gt;yarprun&amp;lt;/code&amp;gt; listener.&lt;br /&gt;
&lt;br /&gt;
Back to the Linux machine, in the yarpmanager IOL demo panel:&lt;br /&gt;
* refresh&lt;br /&gt;
* Run Application - wait for a bit to allow the network to start all modules; then do another refresh in order to see that all modules are running ok and all ports are green&lt;br /&gt;
* Connect Links - wait for a bit, then refresh to check that everything is connected&lt;br /&gt;
&lt;br /&gt;
Finally, in the Windows machine, go to the &#039;&#039;&#039;InteractiveObjectsLearning.rad&#039;&#039;&#039; icon. Right-click it, select &amp;quot;Edit&amp;quot;, then click the Build button and finally Run.&lt;br /&gt;
&lt;br /&gt;
The grammar of recognized spoken sentences is located at [http://robotcub.svn.sf.net/viewvc/robotcub/trunk/iCub/contrib/src/interactiveObjectsLearning/app/RAD/verbalInteraction.txt &amp;lt;code&amp;gt;$ICUB_ROOT/contrib/src/interactiveObjectsLearning/app/RAD/verbalInteraction.txt&amp;lt;/code&amp;gt;]&lt;br /&gt;
&lt;br /&gt;
= 2012 archive =&lt;br /&gt;
&lt;br /&gt;
== Shutting off the robot ==&lt;br /&gt;
&lt;br /&gt;
=== Software side ===&lt;br /&gt;
&lt;br /&gt;
* Go to the (yellow) [[pc104]] iCubInterface shell window and stop the program hitting &#039;&#039;&#039;ctrl+c&#039;&#039;&#039;, just &#039;&#039;&#039;once&#039;&#039;&#039;. Chico will thus move its limbs and head to a &amp;quot;parking&amp;quot; position. (If things don&#039;t quit gracefully, hit ctrl+c more times and be ready to hold Chico&#039;s chest since the head may fall to the front.)&lt;br /&gt;
* Optionally, shut down the [[pc104]] gracefully by typing this in the yellow pc104 shell window: &amp;lt;code&amp;gt;sudo shutdown -h now&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Other components ==&lt;br /&gt;
&lt;br /&gt;
=== Cameras ===&lt;br /&gt;
&lt;br /&gt;
* Double-click the &#039;&#039;&#039;cameras.sh icon&#039;&#039;&#039; on chico3 desktop and select &#039;Run&#039;&lt;br /&gt;
* Run modules and connect&lt;br /&gt;
&lt;br /&gt;
=== iCubInterface ===&lt;br /&gt;
&lt;br /&gt;
click on the &#039;&#039;&#039;iCubStartup.sh&#039;&#039;&#039; icon (formerly known as cartesian_solver.sh), running its modules. You should start at least the first module (iCubInterface, as shown in the following picture) and optionally the other modules, depending on your demo.&lt;br /&gt;
&lt;br /&gt;
[[Image:ICubInterface_launcher_nov2011.png]]&lt;br /&gt;
&lt;br /&gt;
=== Cartesian Solvers, Gaze Control, wholeBodyDynamics ===&lt;br /&gt;
&lt;br /&gt;
The iCubStartup window has a number of different modules that you can start. Normally, you do not need to run all of them. Only the iCubInterface part is necessary for all demos. The additional modules, depending on what you want to do, are reflected in this picture:&lt;br /&gt;
&lt;br /&gt;
[[Image:ICubStartup.png]]&lt;br /&gt;
&lt;br /&gt;
=== Facial expression driver ===&lt;br /&gt;
&lt;br /&gt;
* Double-click the &#039;&#039;&#039;EMOTIONS1&#039;&#039;&#039; icon on chico3 desktop and select &#039;Run&#039;&lt;br /&gt;
* Finally, run modules and connect. It should look similar to this:&lt;br /&gt;
&lt;br /&gt;
[[Image:Face_expressions_app_mgr.png]]&lt;br /&gt;
&lt;br /&gt;
=== Skin GUI ===&lt;br /&gt;
&lt;br /&gt;
* Double-click the &#039;&#039;&#039;skinGuiRightArm&#039;&#039;&#039; icon on chico3 desktop and select &#039;Run&#039;&lt;br /&gt;
* Finally, run modules and connect.&lt;br /&gt;
&lt;br /&gt;
At this point, the &#039;&#039;&#039;driftPointGuiRight&#039;&#039;&#039; window should look like this:&lt;br /&gt;
&lt;br /&gt;
[[Image:DriftCompGuiRight connected.png]]&lt;br /&gt;
&lt;br /&gt;
and the &#039;&#039;&#039;iCubSkinGui&#039;&#039;&#039; window will display the fingertip/skin tactile sensors response:&lt;br /&gt;
&lt;br /&gt;
[[Image:ICubSkinGui example.png]]&lt;br /&gt;
&lt;br /&gt;
See also: http://eris.liralab.it/viki/images/c/cd/SkinTutorial.pdf&lt;br /&gt;
&lt;br /&gt;
== Specific demos ==&lt;br /&gt;
&lt;br /&gt;
=== Ball tracking and grasping (demoGrasp) ===&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;iCubStartup.sh&#039;&#039;&#039;; start modules and make connections&lt;br /&gt;
* Run &#039;&#039;&#039;camerasSetForTracking.sh&#039;&#039;&#039; (not cameras.sh!) from the chico3 desktop icon; start modules and make connections&lt;br /&gt;
* Optionally, start the [[#Facial expression driver | facial expression driver]] (&#039;&#039;&#039;EMOTIONS1&#039;&#039;&#039; icon)&lt;br /&gt;
* Finally, run the &#039;&#039;&#039;demoGrasp.sh&#039;&#039;&#039; icon and use the Application Manager interface to start the modules and make the connections&lt;br /&gt;
&lt;br /&gt;
=== Yoga demo ===&lt;br /&gt;
&lt;br /&gt;
* Click on the &#039;&#039;&#039;yoga.sh&#039;&#039;&#039; icon and run the module&lt;br /&gt;
&lt;br /&gt;
=== Facial expression demo ===&lt;br /&gt;
&lt;br /&gt;
= 2011 archive =&lt;br /&gt;
&lt;br /&gt;
== Specific demos ==&lt;br /&gt;
&lt;br /&gt;
=== Ball tracking and reaching (demoReach) ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;This demo uses an old module compiled with some hacks, use the grasping demo instead.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* Make sure that basic YARP components are running: [[#Switching on the robot|summarized Cluster Manager instructions are here]]; detailed instructions are in section [[#Starting YARP components]]&lt;br /&gt;
* Start [[#iCubInterface | iCubInterface]] on the [[pc104]]&lt;br /&gt;
* Run &#039;&#039;&#039;camerasSetForTracking.sh&#039;&#039;&#039; (not cameras.sh!) from the chico3 desktop icon; start modules and make connections&lt;br /&gt;
* Finally, run the &#039;&#039;&#039;demoReach_LeftHand.sh&#039;&#039;&#039; icon and use the Application Manager interface to start the modules and make the connections&lt;br /&gt;
&lt;br /&gt;
Note that this demo launches the left eye camera with special parameter values:&lt;br /&gt;
  brightness 0&lt;br /&gt;
  sharpness 0.5&lt;br /&gt;
  white balance red 0.474      // you may need to lower this, depending on illumination&lt;br /&gt;
  white balance blue 0.648 &lt;br /&gt;
  hue 0.482&lt;br /&gt;
  saturation 0.826&lt;br /&gt;
  gamma 0.400&lt;br /&gt;
  shutter 0.592&lt;br /&gt;
  gain 0.305&lt;br /&gt;
&lt;br /&gt;
=== Ball tracking and grasping (demoGrasp) ===&lt;br /&gt;
&lt;br /&gt;
* Run iKinGazeCtrl via command line on one of the iCubBrains.&lt;br /&gt;
&lt;br /&gt;
=== Yoga demo ===&lt;br /&gt;
&lt;br /&gt;
* On any machine, type:&lt;br /&gt;
   iCubDemoY3 --config /app/demoy3/fullBody.txt&lt;br /&gt;
&lt;br /&gt;
= 2010 archive =&lt;br /&gt;
&lt;br /&gt;
== Starting YARP components ==&lt;br /&gt;
&lt;br /&gt;
In case that (i.e., cluster_manager.sh) did not work, you can launch the program in a terminal:&lt;br /&gt;
&lt;br /&gt;
   cd $ICUB_ROOT/app/default/scripts&lt;br /&gt;
   ./icub-cluster.py $ICUB_ROOT/app/$ICUB_ROBOTNAME/scripts/vislab-cluster.xml&lt;br /&gt;
&lt;br /&gt;
== Cameras ==&lt;br /&gt;
&lt;br /&gt;
In case that (i.e., cameras.sh) did not work, type this inside a chico3 console:&lt;br /&gt;
   cd $ICUB_ROOT/app/default/scripts&lt;br /&gt;
   ./manager.py cameras_320x240.xml&lt;br /&gt;
&lt;br /&gt;
That XML file is actually located in $ICUB_ROOT/app/$ICUB_ROBOTNAME/scripts/. Resource Finder gives priority to that directory, when $ICUB_ROBOTNAME is defined, as is the case for us (iCubLisboa01).&lt;br /&gt;
&lt;br /&gt;
Alternatively, the second command can use the &amp;lt;code&amp;gt;cameras_640x480.xml&amp;lt;/code&amp;gt; configuration, if you need a larger resolution.&lt;br /&gt;
&lt;br /&gt;
== Face expression driver ==&lt;br /&gt;
&lt;br /&gt;
Open a [[pc104]] console and type:&lt;br /&gt;
&lt;br /&gt;
 cd $ICUB_ROOT/app/faceExpressions/scripts&lt;br /&gt;
 ./emotions.sh $ICUB_ROOT/app/iCubLisboa01/conf&lt;br /&gt;
&lt;br /&gt;
== Facial expression demo ==&lt;br /&gt;
&lt;br /&gt;
Run &#039;&#039;&#039;one&#039;&#039;&#039; of these two commands on any machine:&lt;br /&gt;
  $ICUB_DIR/app/faceExpressions/scripts/cycle.sh&lt;br /&gt;
or&lt;br /&gt;
   yarp rpc /icub/face/emotions/in&lt;br /&gt;
&lt;br /&gt;
   set all hap      // full face happy&lt;br /&gt;
   set all sad      // full face sad&lt;br /&gt;
   set all ang      // full face angry&lt;br /&gt;
   set all neu      // full face neutral&lt;br /&gt;
   set mou sur      // mouth surprised&lt;br /&gt;
   set eli evi      // eyelids evil&lt;br /&gt;
   set leb shy      // left eyebrow shy&lt;br /&gt;
   set reb cun      // right eyebrow cunning&lt;br /&gt;
   set all ta1      // mouth talking position 1 (mouth closed)&lt;br /&gt;
   set all ta2      // mouth talking position 2 (mouth open)&lt;br /&gt;
&lt;br /&gt;
== iCubInterface ==&lt;br /&gt;
&lt;br /&gt;
Alternatively, you can start it manually, typing &#039;&#039;&#039;one&#039;&#039;&#039; of these commands on a [[pc104]] console (depending if any limb is broken):&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  command&lt;br /&gt;
!  notes&lt;br /&gt;
|-&lt;br /&gt;
|  &amp;lt;code&amp;gt;iCubInterface --from iCubInterfaceSimple.ini&amp;lt;/code&amp;gt;&lt;br /&gt;
|  without Cartesian interface - usually, we launch the program this way&lt;br /&gt;
|-&lt;br /&gt;
|  &amp;lt;code&amp;gt;iCubInterface --from iCubInterfaceSimpleLeftArmDisabled.ini&amp;lt;/code&amp;gt;&lt;br /&gt;
|  without Cartesian interface, left arm disabled&lt;br /&gt;
|-&lt;br /&gt;
|  &amp;lt;code&amp;gt;iCubInterface --from iCubInterfaceSimpleRightArmDisabled.ini&amp;lt;/code&amp;gt;&lt;br /&gt;
|  without Cartesian interface, right arm disabled&lt;br /&gt;
|-&lt;br /&gt;
|  &amp;lt;code&amp;gt;iCubInterface&amp;lt;/code&amp;gt;&lt;br /&gt;
|  with [http://eris.liralab.it/iCub/dox/html/icub_cartesian_interface.html Cartesian interface]. Equivalent to &amp;lt;code&amp;gt;--from iCubInterface.ini&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;--from iCubInterfaceCartesian.ini&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|  &amp;lt;code&amp;gt;iCubInterface --from iCubInterfaceCartesianLeftArmDisabled.ini&amp;lt;/code&amp;gt;&lt;br /&gt;
|  with Cartesian interface, left arm disabled&lt;br /&gt;
|-&lt;br /&gt;
|  &amp;lt;code&amp;gt;iCubInterface --from iCubInterfaceCartesianRightArmDisabled.ini&amp;lt;/code&amp;gt;&lt;br /&gt;
|  with Cartesian interface, right arm disabled&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Keep the [[pc104]] shell window open or minimize it; you will use it again when you quit iCubInterface. For instructions about quitting, refer to section [[#Shutting off the robot]].&lt;br /&gt;
&lt;br /&gt;
= Innovation Days 2009 archive =&lt;br /&gt;
&lt;br /&gt;
In this page we explain how we took care of Chico during the [http://web.archive.org/web/20090714015011/http://www.innovationdays.eu/ Innovation Days 2009] exhibition that occurred in FIL (Lisbon International Fairgrounds) from 18 to 20 June 2009. &lt;br /&gt;
&lt;br /&gt;
EuroNews talked about the event: http://web.archive.org/web/20090627064957/http://www.euronews.net/2009/06/23/innovation-days-in-lisbon/&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Note: please &#039;&#039;&#039;refer to the [[iCub instructions]] article&#039;&#039;&#039; for up-to-date instructions about managing Chico. This page is obsolete!&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== Other components ==&lt;br /&gt;
&lt;br /&gt;
=== Cameras ===&lt;br /&gt;
&lt;br /&gt;
Open a chico3 console and type:&lt;br /&gt;
   cd $ICUB_ROOT/app/default/scripts&lt;br /&gt;
   ./cameras start&lt;br /&gt;
&lt;br /&gt;
Sometimes we need to manually establish these connections in order for images to display:&lt;br /&gt;
   yarp connect /icub/cam/right /icub/view/right&lt;br /&gt;
   yarp connect /icub/cam/left /icub/view/left&lt;br /&gt;
&lt;br /&gt;
To turn off the cameras:&lt;br /&gt;
   ./cameras stop&lt;br /&gt;
&lt;br /&gt;
To change the size of images:&lt;br /&gt;
   nano -w $ICUB_ROOT/app/$ICUB_ROBOTNAME/scripts/config.sh   &#039;&#039;// TODO: check if we are really using $ICUB_ROBOTNAME and not default&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== Ball tracking and reaching demo, old method ==&lt;br /&gt;
&lt;br /&gt;
* Run image rectifier on &#039;&#039;&#039;icubbrain2&#039;&#039;&#039;&lt;br /&gt;
   cd 13.FIL&lt;br /&gt;
   ./0.LEFT_320x240_image_rectifier.sh&lt;br /&gt;
* Set left camera colour parameters and run tracker&lt;br /&gt;
   cd 13.FIL&lt;br /&gt;
   ./1.LEFT320x240.iCub_set_parameters_of_framegrabber_REALISTIC.sh&lt;br /&gt;
   ./2.execute_the_tracker.sh&lt;br /&gt;
* Start a viewer on chico3&lt;br /&gt;
   yarpview /viewer&lt;br /&gt;
* Start the facial expression driver on the [[pc104]]:&lt;br /&gt;
   cd $ICUB_DIR/app/faceExpressions/scripts&lt;br /&gt;
   ./emotions.sh $ICUB_DIR/app/iCubLisboa01/conf&lt;br /&gt;
* Run expression decision module&lt;br /&gt;
   cd 13.FIL&lt;br /&gt;
   ./3.execute_trackerExpressions.sh&lt;br /&gt;
* Run coordinate transformation module&lt;br /&gt;
   cd 13.FIL&lt;br /&gt;
   ./5.execute_LeftEyeToRoot.sh&lt;br /&gt;
* Run arm inverse kinematics module (this &#039;&#039;must&#039;&#039; run on icubbrain2)&lt;br /&gt;
   iKinArmCtrl --onlyXYZ&lt;br /&gt;
* Connect all ports. Careful: the robot will start moving after this step!&lt;br /&gt;
   cd 13.FIL&lt;br /&gt;
   ./4.LEFT.iCub_connect_ports.sh&lt;br /&gt;
   ./6.connect_LeftEyeToRoot.sh&lt;br /&gt;
* [OPTIONAL, FOR DEBUG] Read the 3D position of the ball in the root reference frame (from any machine)&lt;br /&gt;
   yarp read ... /icub/LeftEyeToRoot/ballPositionOut&lt;br /&gt;
&lt;br /&gt;
== Ball tracking and reaching demo, not so old method ==&lt;br /&gt;
&lt;br /&gt;
This demo uses the left eye and the right arm of Chico. Assumption: left eye is running at a resolution of 320x240 pixels. Attention: make sure that the launcher uses &#039;&#039;&#039;icubbrain2&#039;&#039;&#039; (32bit) or any of the 32-bit Cortexes for the kinematics computation.&lt;br /&gt;
&lt;br /&gt;
These dependencies will be checked by the GUI:&lt;br /&gt;
* [[#Cameras | cameras]] are running&lt;br /&gt;
* [[#iCubInterface | iCubInterface]] is running&lt;br /&gt;
&lt;br /&gt;
You need to set the color parameters of the camera using the framegrabberGui (left eye) to the following. Be careful, though, that the first time that you move any slider the action typically does not work. You have to move the slider first to a random position and then to the desired one.&lt;br /&gt;
  brightness 0&lt;br /&gt;
  sharpness 0.5&lt;br /&gt;
  white balance red 0.474&lt;br /&gt;
  white balance blue 0.648 &lt;br /&gt;
  hue 0.482&lt;br /&gt;
  saturation 0.826&lt;br /&gt;
  gamma 0.400&lt;br /&gt;
  shutter 0.592&lt;br /&gt;
  gain 0.305&lt;br /&gt;
&lt;br /&gt;
On chico3 type:&lt;br /&gt;
   cd $ICUB_ROOT/app/default/scripts&lt;br /&gt;
   ./manager.py $ICUB_ROOT/app/demoReach_IIT_ISR/scripts/isr/demoReach_IIT_ISR_RightHand.xml&lt;br /&gt;
&lt;br /&gt;
Notes:&lt;br /&gt;
* the aforementioned XML file configures a system that moves the head and right arm of the robot. There exist also an XML file for moving juste the head and the left hand (&amp;lt;code&amp;gt;demoReach_IIT_ISR_LeftHand.xml&amp;lt;/code&amp;gt;), one which moves just the head (&amp;lt;code&amp;gt;demoReach_IIT_ISR_NoHand.xml&amp;lt;/code&amp;gt;) and one which only starts the tracker, so it moves nothing (&amp;lt;code&amp;gt;demoReach_IIT_ISR_JustTracker.xml&amp;lt;/code&amp;gt;).&lt;br /&gt;
* you still need to set the camera parameters using framegrabberGui, we&#039;re trying to make that automatic.&lt;br /&gt;
&lt;br /&gt;
=== Pausing the Ball Following demo ===&lt;br /&gt;
&lt;br /&gt;
You can do this by disconnecting two ports (and connecting them again when you want to resume the demo).&lt;br /&gt;
&lt;br /&gt;
Note that this will only stop the positions from being sent to the inverse kinematics module (and thus, almost always, it will stop the robot). The rest of the processes (e.g., the tracker) will keep running. &lt;br /&gt;
&lt;br /&gt;
* Pause (from any machine)&lt;br /&gt;
   yarp disconnect /icub/LeftEyeToRoot/ballPositionOut /iKinArmCtrl/right_arm/xd:i&lt;br /&gt;
&lt;br /&gt;
* Resume (from any machine)&lt;br /&gt;
   yarp connect /icub/LeftEyeToRoot/ballPositionOut /iKinArmCtrl/right_arm/xd:i&lt;br /&gt;
&lt;br /&gt;
=== Quitting the Ball Following demo ===&lt;br /&gt;
&lt;br /&gt;
* Disconnect all ports. Careful: this will stop the robot.&lt;br /&gt;
   cd 13.FIL&lt;br /&gt;
   ./7.disconnect_all.sh&lt;br /&gt;
* Quit/Kill the processes of the demo, in any order.&lt;br /&gt;
&lt;br /&gt;
== SIFT Object Detection and Tracking demo ==&lt;br /&gt;
&lt;br /&gt;
Ignore this for now, as some libraries are not compiling.&lt;br /&gt;
&#039;&#039;[controlGaze2 COMPILATION TO BE FIXED ON THE SERVERS - PROBLEMS WITH EGOSPHERELIB_LIBRARIES and PREDICTORS_LIBRARIES]&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Assumptions:&lt;br /&gt;
* [[#Cameras | cameras]] are running&lt;br /&gt;
* [[#iCubInterface | iCubInterface]] is running at /icub/head (in order to read encoder values)&lt;br /&gt;
&lt;br /&gt;
On any machine, run:&lt;br /&gt;
   $ICUB_ROOT/app/$ICUB_ROBOTNAME/scripts/controlGazeManual.sh&lt;br /&gt;
   $ICUB_ROOT/app/$ICUB_ROBOTNAME/scripts/attentionObjects/noEgoSetup/CalibBothStart.sh&lt;br /&gt;
&lt;br /&gt;
On any machine (preferably one of the icubbrains, at this task is computationally heavy) type:&lt;br /&gt;
   $ICUB_DIR/app/$ICUB_ROBOTNAME/scripts/attentionObjects/noEgoSetup/startSiftObjectRepresentation.sh&lt;br /&gt;
&lt;br /&gt;
If you want to change the configuration, do:&lt;br /&gt;
   nano -w $ICUB_DIR/app/$ICUB_ROBOTNAME/conf/icubEyes.ini&lt;br /&gt;
&lt;br /&gt;
== Attention system demo ==&lt;br /&gt;
&lt;br /&gt;
Assumptions:&lt;br /&gt;
* [[#Cameras | /icub/cam/right]] is running at 320x240 pixels&lt;br /&gt;
* [[#iCubInterface | iCubInterface]] is running at /icub/head&lt;br /&gt;
&lt;br /&gt;
Please note: we will run all the modules of this demo on &#039;&#039;&#039;icubbrain1&#039;&#039;&#039; (64bit), unless specified differently.&lt;br /&gt;
&lt;br /&gt;
Start the following module:&lt;br /&gt;
   cd $ICUB_ROOT/app/attentionDistributed/scripts&lt;br /&gt;
   ./camCalibRightManual.sh&lt;br /&gt;
&lt;br /&gt;
Then:&lt;br /&gt;
   cd $ICUB_ROOT/app/attentionDistributed/scripts/&lt;br /&gt;
   ./salienceRightManual.sh&lt;br /&gt;
&lt;br /&gt;
Then:&lt;br /&gt;
   cd $ICUB_ROOT/app/attentionDistributed/scripts&lt;br /&gt;
   ./egoSphereManual.sh&lt;br /&gt;
&lt;br /&gt;
Then:&lt;br /&gt;
   cd $ICUB_ROOT/app/attentionDistributed/scripts&lt;br /&gt;
   ./attentionSelectionManual.sh&lt;br /&gt;
&lt;br /&gt;
Then:&lt;br /&gt;
   cd $ICUB_ROOT/app/attentionDistributed/scripts/&lt;br /&gt;
   ./controlGazeManual.sh&lt;br /&gt;
&lt;br /&gt;
And finally, but this time on chico3:&lt;br /&gt;
   cd $ICUB_ROOT/app/attentionDistributed/scripts&lt;br /&gt;
   ./appGui.sh&lt;br /&gt;
&lt;br /&gt;
Press &#039;check all ports and connections&#039;, followed by pressing &#039;&amp;gt;&amp;gt;&#039; buttons (becoming green), in all the tabs of the GUI.&lt;br /&gt;
&lt;br /&gt;
Now, in the &#039;Salience Right&#039; tab of the GUI, press &#039;Initialize interface&#039; and move the thresholds a bit (e.g., the &#039;intensity&#039; one).&lt;/div&gt;</summary>
		<author><name>Giovanni Saponaro</name></author>
	</entry>
	<entry>
		<id>http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=ICub_instructions&amp;diff=7104</id>
		<title>ICub instructions</title>
		<link rel="alternate" type="text/html" href="http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=ICub_instructions&amp;diff=7104"/>
		<updated>2020-02-14T18:25:24Z</updated>

		<summary type="html">&lt;p&gt;Giovanni Saponaro: /* Starting YARP components */ update&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[File:ICubLisbonSept2015bright.png|thumb|400px|right|caption|Lisbon iCub robot.]]&lt;br /&gt;
&lt;br /&gt;
This article explains how to use the full-body Lisbon iCub robot (code-name: iCubLisboa01, nickname: Chico) for &#039;&#039;&#039;demos and experiments&#039;&#039;&#039; alike. We will describe the hardware setup that accompanies our iCub, how to turn things on and off, and how to run demos. For a generic description of the robot, refer to the [[Chico]] article.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;An older version of this article can be found at [[iCub instructions/Archive]].&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== Setup ==&lt;br /&gt;
&lt;br /&gt;
The inventory consists of:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  machine&lt;br /&gt;
!  notes&lt;br /&gt;
!  IP address, username&lt;br /&gt;
|-&lt;br /&gt;
|  &#039;&#039;&#039;Chico&#039;&#039;&#039; the robot (duh)&lt;br /&gt;
|  has a [[pc104]] CPU in its head&lt;br /&gt;
|  10.10.1.50, icub&lt;br /&gt;
|-&lt;br /&gt;
|  &#039;&#039;&#039;[[iCub laptop]]&#039;&#039;&#039;&lt;br /&gt;
|  used to control the robot; also, it exports shared volumes (directories) to other machines of the computational cluster&lt;br /&gt;
|  10.10.1.53, icub&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Below Chico&#039;s metal support, from top to bottom we have:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  what&lt;br /&gt;
!  notes&lt;br /&gt;
|-&lt;br /&gt;
|  Xantrex XFR 35-35&lt;br /&gt;
|  thin power supply unit, to power [[pc104]] and some motors. &#039;&#039;&#039;Voltage: 12.9&#039;&#039;&#039;, current: 05.0 or more&lt;br /&gt;
|-&lt;br /&gt;
|  Xantrex XFR 60-46&lt;br /&gt;
|  thick power supply unit, to power most motors. &#039;&#039;&#039;Voltage: 40.0&#039;&#039;&#039; (initially it is 0 - it changes when you turn the green motor switch), current: 10.0 or more&lt;br /&gt;
|-&lt;br /&gt;
|  APC UPS&lt;br /&gt;
|  uninterruptible power supply&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
In a separate room there are servers that make up the iCub computational cluster, to run the bulk of algorithms and programs (inverse kinematics, vision routines, etc.).&lt;br /&gt;
&lt;br /&gt;
== Switching on the robot ==&lt;br /&gt;
&lt;br /&gt;
=== Hardware side ===&lt;br /&gt;
&lt;br /&gt;
* Check that the UPS is on&lt;br /&gt;
* Check that the [[iCub laptop]] is on, if not switch it on&lt;br /&gt;
* Turn on the Xantrex power supply units; make sure the voltage values are correct (see [[iCub_instructions#Setup]])&lt;br /&gt;
* Check that the &#039;&#039;&#039;red emergency button is unlocked&#039;&#039;&#039;&lt;br /&gt;
* Turn on the green switches next to Chico&lt;br /&gt;
** Safety hint: first turn on the [[pc104]] CPU switch, wait for the CPU to be on, and only then switch the motors on&lt;br /&gt;
** Another safety hint, after turning on motors: wait for the four purple lights on each board to turn off and become two blue lights – at this point you can continue to the next steps&lt;br /&gt;
&lt;br /&gt;
=== Software side ===&lt;br /&gt;
&lt;br /&gt;
* Check that the YARP Module Manager (yarpmanager) window is shown, if not run &#039;&#039;&#039;yarpmanager.sh&#039;&#039;&#039; from the laptop desktop icon and [[#Starting YARP components|start the needed YARP components (click here for detailed instructions)]]. The summary is:&lt;br /&gt;
** First, launch &amp;lt;code&amp;gt;yarpserver&amp;lt;/code&amp;gt; with the &#039;Run&#039; button in the Cluster tab&lt;br /&gt;
** Then, if your application employs machines other than the laptop itself, launch the necessary &amp;lt;code&amp;gt;yarprun&amp;lt;/code&amp;gt; listeners in the Entities panel: &#039;&#039;&#039;icub-laptop, pc104, icubbrain1, icubbrain2, icub-cuda&#039;&#039;&#039;&lt;br /&gt;
* The Entities tab is a GUI that manages all the necessary iCub applications&lt;br /&gt;
** In the iCubStartup application, launch all modules, including yarprobotinterface which is the most important one that will calibrate the robot. Just in case, make sure that the iCub is vertical before launching this software, otherwise the robot will fall down (dangerous)&lt;br /&gt;
** Other applications: depending on the desired application or demo, you will need to start other necessary drivers such as [[#Cameras | cameras]] or [[#Facial expression driver |facial expressions]]&lt;br /&gt;
&lt;br /&gt;
== Shutting off the robot ==&lt;br /&gt;
&lt;br /&gt;
=== Software side ===&lt;br /&gt;
&lt;br /&gt;
* Stop your demo software and the cameras with the GUI; do not stop robotInterface (in the iCubStartup panel) nor &amp;lt;code&amp;gt;yarpserver&amp;lt;/code&amp;gt; (in the Cluster Manager window)&lt;br /&gt;
* In the iCubStartup panel of the GUI, stop all modules, including robotInterface. Chico will thus move its limbs and head to a &amp;quot;parking&amp;quot; position. (If things don&#039;t quit gracefully, stop or kill the process more times and be ready to hold Chico&#039;s chest since the head may fall to the front.)&lt;br /&gt;
* In the Cluster Manager window, stop the instances of &amp;lt;code&amp;gt;yarprun&amp;lt;/code&amp;gt; (lower panel). It is not necessary to stop &amp;lt;code&amp;gt;yarpserver&amp;lt;/code&amp;gt; (upper panel), we usually keep it on&lt;br /&gt;
&lt;br /&gt;
=== Hardware side ===&lt;br /&gt;
&lt;br /&gt;
* Shut down the [[pc104]] with this command in a terminal: &amp;lt;code&amp;gt;sudo halt&amp;lt;/code&amp;gt;&lt;br /&gt;
* Turn off the two green switches. Pay attention when turning off the &#039;Motors&#039; switch: if robotInterface was not stopped properly in the previous steps, then be ready to hold the robot when turning that switch&lt;br /&gt;
* Turn off the Xantrex power supply units&lt;br /&gt;
* Do not turn off the [[iCub laptop]], we usually keep it on&lt;br /&gt;
&lt;br /&gt;
== Stopping the robot with the red emergency button ==&lt;br /&gt;
&lt;br /&gt;
The emergency button, as the name suggests, is to be used for emergencies only. For example:&lt;br /&gt;
* When the robot is about to break something&lt;br /&gt;
* When some components make nasty noises that suggest they are going to break&lt;br /&gt;
Use this button with great care, as it cuts power to all motors and controllers abruptly! In particular, be ready to hold Chico, because the upper part of his body might fall upon losing power.&lt;br /&gt;
&lt;br /&gt;
To start using the robot again, it is convenient to quit and restart all the software components and interfaces; refer to [[#Switching on the robot]] for that. &#039;&#039;&#039;Don&#039;t forget to unlock the red emergency button&#039;&#039;&#039; after an emergency, otherwise the program [[#robotInterface]] will start but not move any joint.&lt;br /&gt;
&lt;br /&gt;
== Starting YARP components ==&lt;br /&gt;
&lt;br /&gt;
* Click on the &#039;&#039;&#039;yarpmanager.sh&#039;&#039;&#039; icon on the desktop and select &#039;Run in Terminal&#039; (or &#039;Run&#039; if you want to suppress the optional debug information terminal)&lt;br /&gt;
* You will see a window divided in two parts: Cluster Management and Nodes&lt;br /&gt;
* In the Cluster part, click on the green &#039;Run yarpserver&#039; play button. The light above the &#039;Stop&#039; button will become green.&lt;br /&gt;
* In the Nodes part, choose all the machines in the &#039;Select&#039; column, then click &#039;Run Selected&#039; and wait a bit so that all machines can turn on their green &#039;On&#039; light.&lt;br /&gt;
&lt;br /&gt;
== Other components ==&lt;br /&gt;
&lt;br /&gt;
Many demos and programs assume that components such as cameras, the robotInterface driver or the facial expression driver have been launched. To start them, first of all run the &#039;&#039;&#039;yarpmanager.sh&#039;&#039;&#039; icon. A GUI similar to this one will appear:&lt;br /&gt;
&lt;br /&gt;
[[Image:gyarpmanager.png]]&lt;br /&gt;
&lt;br /&gt;
When you have one or more applications running, each one will have its panel (tab) and the following toolbar will be visible. Here are the most important functions (which affect all modules of the currently selected application):&lt;br /&gt;
&lt;br /&gt;
[[Image:gyarpmanager_toolbar.png]]&lt;br /&gt;
&lt;br /&gt;
=== robotInterface ===&lt;br /&gt;
&lt;br /&gt;
This program controls the motors and reads the robot sensors (encoders, inertial sensor, skin, force/torque). It is needed by almost all demos.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;check that the red emergency button is unlocked&#039;&#039;&#039;&lt;br /&gt;
* open the &#039;&#039;&#039;iCubStartup&#039;&#039;&#039; panel in the yarpmanager GUI; click the Run Application button. This will start both kinematics (robotInterface, cartesian solvers and gaze control) and dynamics (wholeBodyDynamics and gravityCompensator)&lt;br /&gt;
&lt;br /&gt;
Wait for all boards to answer (which takes around 1 minute); after that, you are ready to move on. &lt;br /&gt;
&lt;br /&gt;
There is a GUI application to manually command robot joints. Just invoke it from the [[iCub laptop]] with:&lt;br /&gt;
 yarpmotorgui&lt;br /&gt;
&lt;br /&gt;
=== Cameras ===&lt;br /&gt;
&lt;br /&gt;
* Make sure that basic YARP components are running: [[#Switching on the robot|summarized Cluster Manager instructions are here]]; detailed instructions are in section [[#Starting YARP components]]&lt;br /&gt;
* open the &#039;&#039;&#039;Cameras_320x240_for_ball_tracking&#039;&#039;&#039; panel in the yarpmanager GUI; click the Run Application button; click the Connect Links button&lt;br /&gt;
&lt;br /&gt;
=== Facial expression driver ===&lt;br /&gt;
&lt;br /&gt;
* Make sure that basic YARP components are running: [[#Switching on the robot|summarized Cluster Manager instructions are here]]; detailed instructions are in section [[#Starting YARP components]]&lt;br /&gt;
* open the &#039;&#039;&#039;Face_Expressions&#039;&#039;&#039; panel in the yarpmanager GUI; click the Run Application button; click the Connect Links button&lt;br /&gt;
&lt;br /&gt;
Note that the actual expression device driver (the first module of the two listed) runs on the [[pc104]]. Sometimes, that process cannot be properly killed and restarted from the graphical interface; in the event of you needing to do that, you can either &amp;lt;code&amp;gt;kill -9&amp;lt;/code&amp;gt; its PID, or do a hard restart of the [[pc104]].&lt;br /&gt;
&lt;br /&gt;
=== iCubGui ===&lt;br /&gt;
&lt;br /&gt;
This component shows a real-time 3D model of the robot on the screen.&lt;br /&gt;
&lt;br /&gt;
* Make sure that basic YARP components are running: [[#Switching on the robot|summarized Cluster Manager instructions are here]]; detailed instructions are in section [[#Starting YARP components]]&lt;br /&gt;
* open the &#039;&#039;&#039;iCubGui&#039;&#039;&#039; panel in the yarpmanager GUI; click the Run Application button; click the Connect Links button&lt;br /&gt;
&lt;br /&gt;
=== Skin GUI ===&lt;br /&gt;
&lt;br /&gt;
* Make sure that basic YARP components are running: [[#Switching on the robot|summarized Cluster Manager instructions are here]]; detailed instructions are in section [[#Starting YARP components]]&lt;br /&gt;
* open the &#039;&#039;&#039;Skin_Gui_All&#039;&#039;&#039; panel in the yarpmanager GUI; click the Run Application button; click the Connect Links button&lt;br /&gt;
&lt;br /&gt;
== Specific demos ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Refer to [[iCub demos/Archive]] for older information such as starting demos from terminals&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
=== Ball tracking and grasping ===&lt;br /&gt;
&lt;br /&gt;
* Make sure that basic YARP components are running: [[#Switching on the robot|summarized Cluster Manager instructions are here]]; detailed instructions are in section [[#Starting YARP components]]&lt;br /&gt;
* Make sure that the applications iCubStartup, Cameras_320x240_for_Ball_Tracking have been started&lt;br /&gt;
* Optionally, Face_Expression and iCubGui can be started too&lt;br /&gt;
* open the &#039;&#039;&#039;Red-Ball_Demo&#039;&#039;&#039; panel in the yarpmanager GUI; click the Run Application button; click the Connect Links button&lt;br /&gt;
&lt;br /&gt;
Note that this demo launches the left eye camera with special parameter values:&lt;br /&gt;
  brightness 0&lt;br /&gt;
  sharpness 0.5&lt;br /&gt;
  white balance red 0.474      // you may need to lower this, depending on illumination&lt;br /&gt;
  white balance blue 0.648 &lt;br /&gt;
  hue 0.482&lt;br /&gt;
  saturation 0.826&lt;br /&gt;
  gamma 0.400&lt;br /&gt;
  shutter 0.592&lt;br /&gt;
  gain 0.305&lt;br /&gt;
&lt;br /&gt;
=== Facial expressions ===&lt;br /&gt;
&lt;br /&gt;
* Make sure that basic YARP components are running: [[#Switching on the robot|summarized Cluster Manager instructions are here]]; detailed instructions are in section [[#Starting YARP components]]&lt;br /&gt;
* Start the [[#Facial expression driver | facial expression driver]]&lt;br /&gt;
* Select the &#039;&#039;&#039;EMOTIONS2&#039;&#039;&#039; icon (Run in terminal); stop with ctrl+c&lt;br /&gt;
&lt;br /&gt;
=== Force Control ===&lt;br /&gt;
&lt;br /&gt;
* Make sure that basic YARP components are running: [[#Switching on the robot|summarized Cluster Manager instructions are here]]; detailed instructions are in section [[#Starting YARP components]]&lt;br /&gt;
* Make sure that the applications iCubStartup has been started&lt;br /&gt;
* Click on the &#039;&#039;&#039;Force_Control&#039;&#039;&#039; panel in the yarpmanager GUI, Run Application, Connect Links&lt;br /&gt;
* select the desired modality (screenshot below) and manually move the robot limbs:&lt;br /&gt;
[[Image:Force_control_gui.png]]&lt;br /&gt;
* More information available here: http://eris.liralab.it/wiki/Force_Control&lt;br /&gt;
&lt;br /&gt;
=== Interactive Objects Learning Behavior ===&lt;br /&gt;
&lt;br /&gt;
For this demo, you also need a Windows machine with a &amp;lt;code&amp;gt;yarprun&amp;lt;/code&amp;gt; listener (the speech recognition module will be launched on this machine).&lt;br /&gt;
&lt;br /&gt;
In yarpmanager, select the &amp;quot;Interactive Objects Learning Behavior with SCSPM&amp;quot; application: refresh, run, connect.&lt;br /&gt;
&lt;br /&gt;
The grammar of recognized spoken sentences is located at &lt;br /&gt;
https://github.com/robotology/iol/blob/master/app/lua/verbalInteraction.txt&lt;br /&gt;
&lt;br /&gt;
Notes: do the following commands for using IOL Object Recognition side by side with the POETICON++ demo.&lt;br /&gt;
  yarp rpc /actionsRenderingEngine/cmd:io&lt;br /&gt;
  home all&lt;br /&gt;
&lt;br /&gt;
  yarp rpc /iolStateMachineHandler/human:rpc&lt;br /&gt;
  attention stop&lt;br /&gt;
&lt;br /&gt;
=== Yoga ===&lt;br /&gt;
&lt;br /&gt;
* Make sure that basic YARP components are running: [[#Switching on the robot|summarized Cluster Manager instructions are here]]; detailed instructions are in section [[#Starting YARP components]]. For this demo we only need &amp;lt;code&amp;gt;yarpserver&amp;lt;/code&amp;gt; (&amp;lt;code&amp;gt;yarprun&amp;lt;/code&amp;gt;s are not necessary)&lt;br /&gt;
* Make sure that iCubStartup ([[#robotInterface|robotInterface]]) is running&lt;br /&gt;
* open the &#039;&#039;&#039;Yoga&#039;&#039;&#039; panel in the yarpmanager GUI; click the Run Application button&lt;br /&gt;
&lt;br /&gt;
[[Category:Vislab]]&lt;/div&gt;</summary>
		<author><name>Giovanni Saponaro</name></author>
	</entry>
	<entry>
		<id>http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=ICub_instructions&amp;diff=7103</id>
		<title>ICub instructions</title>
		<link rel="alternate" type="text/html" href="http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=ICub_instructions&amp;diff=7103"/>
		<updated>2020-02-14T17:50:30Z</updated>

		<summary type="html">&lt;p&gt;Giovanni Saponaro: /* Software side */ rephrase&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[File:ICubLisbonSept2015bright.png|thumb|400px|right|caption|Lisbon iCub robot.]]&lt;br /&gt;
&lt;br /&gt;
This article explains how to use the full-body Lisbon iCub robot (code-name: iCubLisboa01, nickname: Chico) for &#039;&#039;&#039;demos and experiments&#039;&#039;&#039; alike. We will describe the hardware setup that accompanies our iCub, how to turn things on and off, and how to run demos. For a generic description of the robot, refer to the [[Chico]] article.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;An older version of this article can be found at [[iCub instructions/Archive]].&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== Setup ==&lt;br /&gt;
&lt;br /&gt;
The inventory consists of:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  machine&lt;br /&gt;
!  notes&lt;br /&gt;
!  IP address, username&lt;br /&gt;
|-&lt;br /&gt;
|  &#039;&#039;&#039;Chico&#039;&#039;&#039; the robot (duh)&lt;br /&gt;
|  has a [[pc104]] CPU in its head&lt;br /&gt;
|  10.10.1.50, icub&lt;br /&gt;
|-&lt;br /&gt;
|  &#039;&#039;&#039;[[iCub laptop]]&#039;&#039;&#039;&lt;br /&gt;
|  used to control the robot; also, it exports shared volumes (directories) to other machines of the computational cluster&lt;br /&gt;
|  10.10.1.53, icub&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Below Chico&#039;s metal support, from top to bottom we have:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  what&lt;br /&gt;
!  notes&lt;br /&gt;
|-&lt;br /&gt;
|  Xantrex XFR 35-35&lt;br /&gt;
|  thin power supply unit, to power [[pc104]] and some motors. &#039;&#039;&#039;Voltage: 12.9&#039;&#039;&#039;, current: 05.0 or more&lt;br /&gt;
|-&lt;br /&gt;
|  Xantrex XFR 60-46&lt;br /&gt;
|  thick power supply unit, to power most motors. &#039;&#039;&#039;Voltage: 40.0&#039;&#039;&#039; (initially it is 0 - it changes when you turn the green motor switch), current: 10.0 or more&lt;br /&gt;
|-&lt;br /&gt;
|  APC UPS&lt;br /&gt;
|  uninterruptible power supply&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
In a separate room there are servers that make up the iCub computational cluster, to run the bulk of algorithms and programs (inverse kinematics, vision routines, etc.).&lt;br /&gt;
&lt;br /&gt;
== Switching on the robot ==&lt;br /&gt;
&lt;br /&gt;
=== Hardware side ===&lt;br /&gt;
&lt;br /&gt;
* Check that the UPS is on&lt;br /&gt;
* Check that the [[iCub laptop]] is on, if not switch it on&lt;br /&gt;
* Turn on the Xantrex power supply units; make sure the voltage values are correct (see [[iCub_instructions#Setup]])&lt;br /&gt;
* Check that the &#039;&#039;&#039;red emergency button is unlocked&#039;&#039;&#039;&lt;br /&gt;
* Turn on the green switches next to Chico&lt;br /&gt;
** Safety hint: first turn on the [[pc104]] CPU switch, wait for the CPU to be on, and only then switch the motors on&lt;br /&gt;
** Another safety hint, after turning on motors: wait for the four purple lights on each board to turn off and become two blue lights – at this point you can continue to the next steps&lt;br /&gt;
&lt;br /&gt;
=== Software side ===&lt;br /&gt;
&lt;br /&gt;
* Check that the YARP Module Manager (yarpmanager) window is shown, if not run &#039;&#039;&#039;yarpmanager.sh&#039;&#039;&#039; from the laptop desktop icon and [[#Starting YARP components|start the needed YARP components (click here for detailed instructions)]]. The summary is:&lt;br /&gt;
** First, launch &amp;lt;code&amp;gt;yarpserver&amp;lt;/code&amp;gt; with the &#039;Run&#039; button in the Cluster tab&lt;br /&gt;
** Then, if your application employs machines other than the laptop itself, launch the necessary &amp;lt;code&amp;gt;yarprun&amp;lt;/code&amp;gt; listeners in the Entities panel: &#039;&#039;&#039;icub-laptop, pc104, icubbrain1, icubbrain2, icub-cuda&#039;&#039;&#039;&lt;br /&gt;
* The Entities tab is a GUI that manages all the necessary iCub applications&lt;br /&gt;
** In the iCubStartup application, launch all modules, including yarprobotinterface which is the most important one that will calibrate the robot. Just in case, make sure that the iCub is vertical before launching this software, otherwise the robot will fall down (dangerous)&lt;br /&gt;
** Other applications: depending on the desired application or demo, you will need to start other necessary drivers such as [[#Cameras | cameras]] or [[#Facial expression driver |facial expressions]]&lt;br /&gt;
&lt;br /&gt;
== Shutting off the robot ==&lt;br /&gt;
&lt;br /&gt;
=== Software side ===&lt;br /&gt;
&lt;br /&gt;
* Stop your demo software and the cameras with the GUI; do not stop robotInterface (in the iCubStartup panel) nor &amp;lt;code&amp;gt;yarpserver&amp;lt;/code&amp;gt; (in the Cluster Manager window)&lt;br /&gt;
* In the iCubStartup panel of the GUI, stop all modules, including robotInterface. Chico will thus move its limbs and head to a &amp;quot;parking&amp;quot; position. (If things don&#039;t quit gracefully, stop or kill the process more times and be ready to hold Chico&#039;s chest since the head may fall to the front.)&lt;br /&gt;
* In the Cluster Manager window, stop the instances of &amp;lt;code&amp;gt;yarprun&amp;lt;/code&amp;gt; (lower panel). It is not necessary to stop &amp;lt;code&amp;gt;yarpserver&amp;lt;/code&amp;gt; (upper panel), we usually keep it on&lt;br /&gt;
&lt;br /&gt;
=== Hardware side ===&lt;br /&gt;
&lt;br /&gt;
* Shut down the [[pc104]] with this command in a terminal: &amp;lt;code&amp;gt;sudo halt&amp;lt;/code&amp;gt;&lt;br /&gt;
* Turn off the two green switches. Pay attention when turning off the &#039;Motors&#039; switch: if robotInterface was not stopped properly in the previous steps, then be ready to hold the robot when turning that switch&lt;br /&gt;
* Turn off the Xantrex power supply units&lt;br /&gt;
* Do not turn off the [[iCub laptop]], we usually keep it on&lt;br /&gt;
&lt;br /&gt;
== Stopping the robot with the red emergency button ==&lt;br /&gt;
&lt;br /&gt;
The emergency button, as the name suggests, is to be used for emergencies only. For example:&lt;br /&gt;
* When the robot is about to break something&lt;br /&gt;
* When some components make nasty noises that suggest they are going to break&lt;br /&gt;
Use this button with great care, as it cuts power to all motors and controllers abruptly! In particular, be ready to hold Chico, because the upper part of his body might fall upon losing power.&lt;br /&gt;
&lt;br /&gt;
To start using the robot again, it is convenient to quit and restart all the software components and interfaces; refer to [[#Switching on the robot]] for that. &#039;&#039;&#039;Don&#039;t forget to unlock the red emergency button&#039;&#039;&#039; after an emergency, otherwise the program [[#robotInterface]] will start but not move any joint.&lt;br /&gt;
&lt;br /&gt;
== Starting YARP components ==&lt;br /&gt;
&lt;br /&gt;
* Click on the &#039;&#039;&#039;cluster_manager.sh&#039;&#039;&#039; icon on the desktop and select &#039;Run in Terminal&#039; (or &#039;Run&#039; if you want to suppress the optional debug information terminal)&lt;br /&gt;
[[Image:Cluster_mgr-run_in_terminal.png]]&lt;br /&gt;
* You will see the following window, divided in two main components: &amp;lt;code&amp;gt;yarpserver&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;yarprun&amp;lt;/code&amp;gt;s (the former is a global, single-instance nameserver; the latter are various instances of network command listeners, one per each machine involved in the demos)&lt;br /&gt;
[[Image:Cluster_mgr.png]]&lt;br /&gt;
* In the yarpserver panel, click on the &#039;Run&#039; button. The light above the &#039;Stop&#039; button will become green.&lt;br /&gt;
* In the yarprun panel, choose all the machines in the &#039;Select&#039; column, then click &#039;Run Selected&#039; and wait a bit so that all machines can turn on their green &#039;On&#039; light.&lt;br /&gt;
&lt;br /&gt;
== Other components ==&lt;br /&gt;
&lt;br /&gt;
Many demos and programs assume that components such as cameras, the robotInterface driver or the facial expression driver have been launched. To start them, first of all run the &#039;&#039;&#039;yarpmanager.sh&#039;&#039;&#039; icon. A GUI similar to this one will appear:&lt;br /&gt;
&lt;br /&gt;
[[Image:gyarpmanager.png]]&lt;br /&gt;
&lt;br /&gt;
When you have one or more applications running, each one will have its panel (tab) and the following toolbar will be visible. Here are the most important functions (which affect all modules of the currently selected application):&lt;br /&gt;
&lt;br /&gt;
[[Image:gyarpmanager_toolbar.png]]&lt;br /&gt;
&lt;br /&gt;
=== robotInterface ===&lt;br /&gt;
&lt;br /&gt;
This program controls the motors and reads the robot sensors (encoders, inertial sensor, skin, force/torque). It is needed by almost all demos.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;check that the red emergency button is unlocked&#039;&#039;&#039;&lt;br /&gt;
* open the &#039;&#039;&#039;iCubStartup&#039;&#039;&#039; panel in the yarpmanager GUI; click the Run Application button. This will start both kinematics (robotInterface, cartesian solvers and gaze control) and dynamics (wholeBodyDynamics and gravityCompensator)&lt;br /&gt;
&lt;br /&gt;
Wait for all boards to answer (which takes around 1 minute); after that, you are ready to move on. &lt;br /&gt;
&lt;br /&gt;
There is a GUI application to manually command robot joints. Just invoke it from the [[iCub laptop]] with:&lt;br /&gt;
 yarpmotorgui&lt;br /&gt;
&lt;br /&gt;
=== Cameras ===&lt;br /&gt;
&lt;br /&gt;
* Make sure that basic YARP components are running: [[#Switching on the robot|summarized Cluster Manager instructions are here]]; detailed instructions are in section [[#Starting YARP components]]&lt;br /&gt;
* open the &#039;&#039;&#039;Cameras_320x240_for_ball_tracking&#039;&#039;&#039; panel in the yarpmanager GUI; click the Run Application button; click the Connect Links button&lt;br /&gt;
&lt;br /&gt;
=== Facial expression driver ===&lt;br /&gt;
&lt;br /&gt;
* Make sure that basic YARP components are running: [[#Switching on the robot|summarized Cluster Manager instructions are here]]; detailed instructions are in section [[#Starting YARP components]]&lt;br /&gt;
* open the &#039;&#039;&#039;Face_Expressions&#039;&#039;&#039; panel in the yarpmanager GUI; click the Run Application button; click the Connect Links button&lt;br /&gt;
&lt;br /&gt;
Note that the actual expression device driver (the first module of the two listed) runs on the [[pc104]]. Sometimes, that process cannot be properly killed and restarted from the graphical interface; in the event of you needing to do that, you can either &amp;lt;code&amp;gt;kill -9&amp;lt;/code&amp;gt; its PID, or do a hard restart of the [[pc104]].&lt;br /&gt;
&lt;br /&gt;
=== iCubGui ===&lt;br /&gt;
&lt;br /&gt;
This component shows a real-time 3D model of the robot on the screen.&lt;br /&gt;
&lt;br /&gt;
* Make sure that basic YARP components are running: [[#Switching on the robot|summarized Cluster Manager instructions are here]]; detailed instructions are in section [[#Starting YARP components]]&lt;br /&gt;
* open the &#039;&#039;&#039;iCubGui&#039;&#039;&#039; panel in the yarpmanager GUI; click the Run Application button; click the Connect Links button&lt;br /&gt;
&lt;br /&gt;
=== Skin GUI ===&lt;br /&gt;
&lt;br /&gt;
* Make sure that basic YARP components are running: [[#Switching on the robot|summarized Cluster Manager instructions are here]]; detailed instructions are in section [[#Starting YARP components]]&lt;br /&gt;
* open the &#039;&#039;&#039;Skin_Gui_All&#039;&#039;&#039; panel in the yarpmanager GUI; click the Run Application button; click the Connect Links button&lt;br /&gt;
&lt;br /&gt;
== Specific demos ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Refer to [[iCub demos/Archive]] for older information such as starting demos from terminals&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
=== Ball tracking and grasping ===&lt;br /&gt;
&lt;br /&gt;
* Make sure that basic YARP components are running: [[#Switching on the robot|summarized Cluster Manager instructions are here]]; detailed instructions are in section [[#Starting YARP components]]&lt;br /&gt;
* Make sure that the applications iCubStartup, Cameras_320x240_for_Ball_Tracking have been started&lt;br /&gt;
* Optionally, Face_Expression and iCubGui can be started too&lt;br /&gt;
* open the &#039;&#039;&#039;Red-Ball_Demo&#039;&#039;&#039; panel in the yarpmanager GUI; click the Run Application button; click the Connect Links button&lt;br /&gt;
&lt;br /&gt;
Note that this demo launches the left eye camera with special parameter values:&lt;br /&gt;
  brightness 0&lt;br /&gt;
  sharpness 0.5&lt;br /&gt;
  white balance red 0.474      // you may need to lower this, depending on illumination&lt;br /&gt;
  white balance blue 0.648 &lt;br /&gt;
  hue 0.482&lt;br /&gt;
  saturation 0.826&lt;br /&gt;
  gamma 0.400&lt;br /&gt;
  shutter 0.592&lt;br /&gt;
  gain 0.305&lt;br /&gt;
&lt;br /&gt;
=== Facial expressions ===&lt;br /&gt;
&lt;br /&gt;
* Make sure that basic YARP components are running: [[#Switching on the robot|summarized Cluster Manager instructions are here]]; detailed instructions are in section [[#Starting YARP components]]&lt;br /&gt;
* Start the [[#Facial expression driver | facial expression driver]]&lt;br /&gt;
* Select the &#039;&#039;&#039;EMOTIONS2&#039;&#039;&#039; icon (Run in terminal); stop with ctrl+c&lt;br /&gt;
&lt;br /&gt;
=== Force Control ===&lt;br /&gt;
&lt;br /&gt;
* Make sure that basic YARP components are running: [[#Switching on the robot|summarized Cluster Manager instructions are here]]; detailed instructions are in section [[#Starting YARP components]]&lt;br /&gt;
* Make sure that the applications iCubStartup has been started&lt;br /&gt;
* Click on the &#039;&#039;&#039;Force_Control&#039;&#039;&#039; panel in the yarpmanager GUI, Run Application, Connect Links&lt;br /&gt;
* select the desired modality (screenshot below) and manually move the robot limbs:&lt;br /&gt;
[[Image:Force_control_gui.png]]&lt;br /&gt;
* More information available here: http://eris.liralab.it/wiki/Force_Control&lt;br /&gt;
&lt;br /&gt;
=== Interactive Objects Learning Behavior ===&lt;br /&gt;
&lt;br /&gt;
For this demo, you also need a Windows machine with a &amp;lt;code&amp;gt;yarprun&amp;lt;/code&amp;gt; listener (the speech recognition module will be launched on this machine).&lt;br /&gt;
&lt;br /&gt;
In yarpmanager, select the &amp;quot;Interactive Objects Learning Behavior with SCSPM&amp;quot; application: refresh, run, connect.&lt;br /&gt;
&lt;br /&gt;
The grammar of recognized spoken sentences is located at &lt;br /&gt;
https://github.com/robotology/iol/blob/master/app/lua/verbalInteraction.txt&lt;br /&gt;
&lt;br /&gt;
Notes: do the following commands for using IOL Object Recognition side by side with the POETICON++ demo.&lt;br /&gt;
  yarp rpc /actionsRenderingEngine/cmd:io&lt;br /&gt;
  home all&lt;br /&gt;
&lt;br /&gt;
  yarp rpc /iolStateMachineHandler/human:rpc&lt;br /&gt;
  attention stop&lt;br /&gt;
&lt;br /&gt;
=== Yoga ===&lt;br /&gt;
&lt;br /&gt;
* Make sure that basic YARP components are running: [[#Switching on the robot|summarized Cluster Manager instructions are here]]; detailed instructions are in section [[#Starting YARP components]]. For this demo we only need &amp;lt;code&amp;gt;yarpserver&amp;lt;/code&amp;gt; (&amp;lt;code&amp;gt;yarprun&amp;lt;/code&amp;gt;s are not necessary)&lt;br /&gt;
* Make sure that iCubStartup ([[#robotInterface|robotInterface]]) is running&lt;br /&gt;
* open the &#039;&#039;&#039;Yoga&#039;&#039;&#039; panel in the yarpmanager GUI; click the Run Application button&lt;br /&gt;
&lt;br /&gt;
[[Category:Vislab]]&lt;/div&gt;</summary>
		<author><name>Giovanni Saponaro</name></author>
	</entry>
	<entry>
		<id>http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=ICub_instructions&amp;diff=7102</id>
		<title>ICub instructions</title>
		<link rel="alternate" type="text/html" href="http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=ICub_instructions&amp;diff=7102"/>
		<updated>2020-02-14T17:46:51Z</updated>

		<summary type="html">&lt;p&gt;Giovanni Saponaro: /* Hardware side */ minor rephrasing&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[File:ICubLisbonSept2015bright.png|thumb|400px|right|caption|Lisbon iCub robot.]]&lt;br /&gt;
&lt;br /&gt;
This article explains how to use the full-body Lisbon iCub robot (code-name: iCubLisboa01, nickname: Chico) for &#039;&#039;&#039;demos and experiments&#039;&#039;&#039; alike. We will describe the hardware setup that accompanies our iCub, how to turn things on and off, and how to run demos. For a generic description of the robot, refer to the [[Chico]] article.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;An older version of this article can be found at [[iCub instructions/Archive]].&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== Setup ==&lt;br /&gt;
&lt;br /&gt;
The inventory consists of:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  machine&lt;br /&gt;
!  notes&lt;br /&gt;
!  IP address, username&lt;br /&gt;
|-&lt;br /&gt;
|  &#039;&#039;&#039;Chico&#039;&#039;&#039; the robot (duh)&lt;br /&gt;
|  has a [[pc104]] CPU in its head&lt;br /&gt;
|  10.10.1.50, icub&lt;br /&gt;
|-&lt;br /&gt;
|  &#039;&#039;&#039;[[iCub laptop]]&#039;&#039;&#039;&lt;br /&gt;
|  used to control the robot; also, it exports shared volumes (directories) to other machines of the computational cluster&lt;br /&gt;
|  10.10.1.53, icub&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Below Chico&#039;s metal support, from top to bottom we have:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  what&lt;br /&gt;
!  notes&lt;br /&gt;
|-&lt;br /&gt;
|  Xantrex XFR 35-35&lt;br /&gt;
|  thin power supply unit, to power [[pc104]] and some motors. &#039;&#039;&#039;Voltage: 12.9&#039;&#039;&#039;, current: 05.0 or more&lt;br /&gt;
|-&lt;br /&gt;
|  Xantrex XFR 60-46&lt;br /&gt;
|  thick power supply unit, to power most motors. &#039;&#039;&#039;Voltage: 40.0&#039;&#039;&#039; (initially it is 0 - it changes when you turn the green motor switch), current: 10.0 or more&lt;br /&gt;
|-&lt;br /&gt;
|  APC UPS&lt;br /&gt;
|  uninterruptible power supply&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
In a separate room there are servers that make up the iCub computational cluster, to run the bulk of algorithms and programs (inverse kinematics, vision routines, etc.).&lt;br /&gt;
&lt;br /&gt;
== Switching on the robot ==&lt;br /&gt;
&lt;br /&gt;
=== Hardware side ===&lt;br /&gt;
&lt;br /&gt;
* Check that the UPS is on&lt;br /&gt;
* Check that the [[iCub laptop]] is on, if not switch it on&lt;br /&gt;
* Turn on the Xantrex power supply units; make sure the voltage values are correct (see [[iCub_instructions#Setup]])&lt;br /&gt;
* Check that the &#039;&#039;&#039;red emergency button is unlocked&#039;&#039;&#039;&lt;br /&gt;
* Turn on the green switches next to Chico&lt;br /&gt;
** Safety hint: first turn on the [[pc104]] CPU switch, wait for the CPU to be on, and only then switch the motors on&lt;br /&gt;
** Another safety hint, after turning on motors: wait for the four purple lights on each board to turn off and become two blue lights – at this point you can continue to the next steps&lt;br /&gt;
&lt;br /&gt;
=== Software side ===&lt;br /&gt;
&lt;br /&gt;
* Check that the Cluster Manager window is shown, if not run &#039;&#039;&#039;cluster_manager.sh&#039;&#039;&#039; from the laptop desktop icon and [[#Starting YARP components|start the needed YARP components (click here for detailed instructions)]]. The summary is:&lt;br /&gt;
** First, launch &amp;lt;code&amp;gt;yarpserver&amp;lt;/code&amp;gt; with the &#039;Run&#039; button in the upper Nameserver panel&lt;br /&gt;
** Then, if your application employs machines other than the laptop itself, launch the necessary &amp;lt;code&amp;gt;yarprun&amp;lt;/code&amp;gt; listeners in the lower panel: &#039;&#039;&#039;icub-laptop, pc104, icubbrain1, icubbrain2, icub-cuda&#039;&#039;&#039;&lt;br /&gt;
* Launch the &#039;&#039;&#039;yarpmanager.sh&#039;&#039;&#039; icon, which will open the manager GUI with all the necessary iCub applications&lt;br /&gt;
** In the iCubStartup panel, launch all modules, including robotInterface which is the most important one that will calibrate the robot. Just in case, make sure that the iCub is vertical before launching this software, otherwise the robot will fall down (dangerous)&lt;br /&gt;
** Other panels: depending on the desired application or demo, you will need to start other necessary drivers such as [[#Cameras | cameras]] or [[#Facial expression driver |facial expressions]]&lt;br /&gt;
&lt;br /&gt;
== Shutting off the robot ==&lt;br /&gt;
&lt;br /&gt;
=== Software side ===&lt;br /&gt;
&lt;br /&gt;
* Stop your demo software and the cameras with the GUI; do not stop robotInterface (in the iCubStartup panel) nor &amp;lt;code&amp;gt;yarpserver&amp;lt;/code&amp;gt; (in the Cluster Manager window)&lt;br /&gt;
* In the iCubStartup panel of the GUI, stop all modules, including robotInterface. Chico will thus move its limbs and head to a &amp;quot;parking&amp;quot; position. (If things don&#039;t quit gracefully, stop or kill the process more times and be ready to hold Chico&#039;s chest since the head may fall to the front.)&lt;br /&gt;
* In the Cluster Manager window, stop the instances of &amp;lt;code&amp;gt;yarprun&amp;lt;/code&amp;gt; (lower panel). It is not necessary to stop &amp;lt;code&amp;gt;yarpserver&amp;lt;/code&amp;gt; (upper panel), we usually keep it on&lt;br /&gt;
&lt;br /&gt;
=== Hardware side ===&lt;br /&gt;
&lt;br /&gt;
* Shut down the [[pc104]] with this command in a terminal: &amp;lt;code&amp;gt;sudo halt&amp;lt;/code&amp;gt;&lt;br /&gt;
* Turn off the two green switches. Pay attention when turning off the &#039;Motors&#039; switch: if robotInterface was not stopped properly in the previous steps, then be ready to hold the robot when turning that switch&lt;br /&gt;
* Turn off the Xantrex power supply units&lt;br /&gt;
* Do not turn off the [[iCub laptop]], we usually keep it on&lt;br /&gt;
&lt;br /&gt;
== Stopping the robot with the red emergency button ==&lt;br /&gt;
&lt;br /&gt;
The emergency button, as the name suggests, is to be used for emergencies only. For example:&lt;br /&gt;
* When the robot is about to break something&lt;br /&gt;
* When some components make nasty noises that suggest they are going to break&lt;br /&gt;
Use this button with great care, as it cuts power to all motors and controllers abruptly! In particular, be ready to hold Chico, because the upper part of his body might fall upon losing power.&lt;br /&gt;
&lt;br /&gt;
To start using the robot again, it is convenient to quit and restart all the software components and interfaces; refer to [[#Switching on the robot]] for that. &#039;&#039;&#039;Don&#039;t forget to unlock the red emergency button&#039;&#039;&#039; after an emergency, otherwise the program [[#robotInterface]] will start but not move any joint.&lt;br /&gt;
&lt;br /&gt;
== Starting YARP components ==&lt;br /&gt;
&lt;br /&gt;
* Click on the &#039;&#039;&#039;cluster_manager.sh&#039;&#039;&#039; icon on the desktop and select &#039;Run in Terminal&#039; (or &#039;Run&#039; if you want to suppress the optional debug information terminal)&lt;br /&gt;
[[Image:Cluster_mgr-run_in_terminal.png]]&lt;br /&gt;
* You will see the following window, divided in two main components: &amp;lt;code&amp;gt;yarpserver&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;yarprun&amp;lt;/code&amp;gt;s (the former is a global, single-instance nameserver; the latter are various instances of network command listeners, one per each machine involved in the demos)&lt;br /&gt;
[[Image:Cluster_mgr.png]]&lt;br /&gt;
* In the yarpserver panel, click on the &#039;Run&#039; button. The light above the &#039;Stop&#039; button will become green.&lt;br /&gt;
* In the yarprun panel, choose all the machines in the &#039;Select&#039; column, then click &#039;Run Selected&#039; and wait a bit so that all machines can turn on their green &#039;On&#039; light.&lt;br /&gt;
&lt;br /&gt;
== Other components ==&lt;br /&gt;
&lt;br /&gt;
Many demos and programs assume that components such as cameras, the robotInterface driver or the facial expression driver have been launched. To start them, first of all run the &#039;&#039;&#039;yarpmanager.sh&#039;&#039;&#039; icon. A GUI similar to this one will appear:&lt;br /&gt;
&lt;br /&gt;
[[Image:gyarpmanager.png]]&lt;br /&gt;
&lt;br /&gt;
When you have one or more applications running, each one will have its panel (tab) and the following toolbar will be visible. Here are the most important functions (which affect all modules of the currently selected application):&lt;br /&gt;
&lt;br /&gt;
[[Image:gyarpmanager_toolbar.png]]&lt;br /&gt;
&lt;br /&gt;
=== robotInterface ===&lt;br /&gt;
&lt;br /&gt;
This program controls the motors and reads the robot sensors (encoders, inertial sensor, skin, force/torque). It is needed by almost all demos.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;check that the red emergency button is unlocked&#039;&#039;&#039;&lt;br /&gt;
* open the &#039;&#039;&#039;iCubStartup&#039;&#039;&#039; panel in the yarpmanager GUI; click the Run Application button. This will start both kinematics (robotInterface, cartesian solvers and gaze control) and dynamics (wholeBodyDynamics and gravityCompensator)&lt;br /&gt;
&lt;br /&gt;
Wait for all boards to answer (which takes around 1 minute); after that, you are ready to move on. &lt;br /&gt;
&lt;br /&gt;
There is a GUI application to manually command robot joints. Just invoke it from the [[iCub laptop]] with:&lt;br /&gt;
 yarpmotorgui&lt;br /&gt;
&lt;br /&gt;
=== Cameras ===&lt;br /&gt;
&lt;br /&gt;
* Make sure that basic YARP components are running: [[#Switching on the robot|summarized Cluster Manager instructions are here]]; detailed instructions are in section [[#Starting YARP components]]&lt;br /&gt;
* open the &#039;&#039;&#039;Cameras_320x240_for_ball_tracking&#039;&#039;&#039; panel in the yarpmanager GUI; click the Run Application button; click the Connect Links button&lt;br /&gt;
&lt;br /&gt;
=== Facial expression driver ===&lt;br /&gt;
&lt;br /&gt;
* Make sure that basic YARP components are running: [[#Switching on the robot|summarized Cluster Manager instructions are here]]; detailed instructions are in section [[#Starting YARP components]]&lt;br /&gt;
* open the &#039;&#039;&#039;Face_Expressions&#039;&#039;&#039; panel in the yarpmanager GUI; click the Run Application button; click the Connect Links button&lt;br /&gt;
&lt;br /&gt;
Note that the actual expression device driver (the first module of the two listed) runs on the [[pc104]]. Sometimes, that process cannot be properly killed and restarted from the graphical interface; in the event of you needing to do that, you can either &amp;lt;code&amp;gt;kill -9&amp;lt;/code&amp;gt; its PID, or do a hard restart of the [[pc104]].&lt;br /&gt;
&lt;br /&gt;
=== iCubGui ===&lt;br /&gt;
&lt;br /&gt;
This component shows a real-time 3D model of the robot on the screen.&lt;br /&gt;
&lt;br /&gt;
* Make sure that basic YARP components are running: [[#Switching on the robot|summarized Cluster Manager instructions are here]]; detailed instructions are in section [[#Starting YARP components]]&lt;br /&gt;
* open the &#039;&#039;&#039;iCubGui&#039;&#039;&#039; panel in the yarpmanager GUI; click the Run Application button; click the Connect Links button&lt;br /&gt;
&lt;br /&gt;
=== Skin GUI ===&lt;br /&gt;
&lt;br /&gt;
* Make sure that basic YARP components are running: [[#Switching on the robot|summarized Cluster Manager instructions are here]]; detailed instructions are in section [[#Starting YARP components]]&lt;br /&gt;
* open the &#039;&#039;&#039;Skin_Gui_All&#039;&#039;&#039; panel in the yarpmanager GUI; click the Run Application button; click the Connect Links button&lt;br /&gt;
&lt;br /&gt;
== Specific demos ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Refer to [[iCub demos/Archive]] for older information such as starting demos from terminals&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
=== Ball tracking and grasping ===&lt;br /&gt;
&lt;br /&gt;
* Make sure that basic YARP components are running: [[#Switching on the robot|summarized Cluster Manager instructions are here]]; detailed instructions are in section [[#Starting YARP components]]&lt;br /&gt;
* Make sure that the applications iCubStartup, Cameras_320x240_for_Ball_Tracking have been started&lt;br /&gt;
* Optionally, Face_Expression and iCubGui can be started too&lt;br /&gt;
* open the &#039;&#039;&#039;Red-Ball_Demo&#039;&#039;&#039; panel in the yarpmanager GUI; click the Run Application button; click the Connect Links button&lt;br /&gt;
&lt;br /&gt;
Note that this demo launches the left eye camera with special parameter values:&lt;br /&gt;
  brightness 0&lt;br /&gt;
  sharpness 0.5&lt;br /&gt;
  white balance red 0.474      // you may need to lower this, depending on illumination&lt;br /&gt;
  white balance blue 0.648 &lt;br /&gt;
  hue 0.482&lt;br /&gt;
  saturation 0.826&lt;br /&gt;
  gamma 0.400&lt;br /&gt;
  shutter 0.592&lt;br /&gt;
  gain 0.305&lt;br /&gt;
&lt;br /&gt;
=== Facial expressions ===&lt;br /&gt;
&lt;br /&gt;
* Make sure that basic YARP components are running: [[#Switching on the robot|summarized Cluster Manager instructions are here]]; detailed instructions are in section [[#Starting YARP components]]&lt;br /&gt;
* Start the [[#Facial expression driver | facial expression driver]]&lt;br /&gt;
* Select the &#039;&#039;&#039;EMOTIONS2&#039;&#039;&#039; icon (Run in terminal); stop with ctrl+c&lt;br /&gt;
&lt;br /&gt;
=== Force Control ===&lt;br /&gt;
&lt;br /&gt;
* Make sure that basic YARP components are running: [[#Switching on the robot|summarized Cluster Manager instructions are here]]; detailed instructions are in section [[#Starting YARP components]]&lt;br /&gt;
* Make sure that the applications iCubStartup has been started&lt;br /&gt;
* Click on the &#039;&#039;&#039;Force_Control&#039;&#039;&#039; panel in the yarpmanager GUI, Run Application, Connect Links&lt;br /&gt;
* select the desired modality (screenshot below) and manually move the robot limbs:&lt;br /&gt;
[[Image:Force_control_gui.png]]&lt;br /&gt;
* More information available here: http://eris.liralab.it/wiki/Force_Control&lt;br /&gt;
&lt;br /&gt;
=== Interactive Objects Learning Behavior ===&lt;br /&gt;
&lt;br /&gt;
For this demo, you also need a Windows machine with a &amp;lt;code&amp;gt;yarprun&amp;lt;/code&amp;gt; listener (the speech recognition module will be launched on this machine).&lt;br /&gt;
&lt;br /&gt;
In yarpmanager, select the &amp;quot;Interactive Objects Learning Behavior with SCSPM&amp;quot; application: refresh, run, connect.&lt;br /&gt;
&lt;br /&gt;
The grammar of recognized spoken sentences is located at &lt;br /&gt;
https://github.com/robotology/iol/blob/master/app/lua/verbalInteraction.txt&lt;br /&gt;
&lt;br /&gt;
Notes: do the following commands for using IOL Object Recognition side by side with the POETICON++ demo.&lt;br /&gt;
  yarp rpc /actionsRenderingEngine/cmd:io&lt;br /&gt;
  home all&lt;br /&gt;
&lt;br /&gt;
  yarp rpc /iolStateMachineHandler/human:rpc&lt;br /&gt;
  attention stop&lt;br /&gt;
&lt;br /&gt;
=== Yoga ===&lt;br /&gt;
&lt;br /&gt;
* Make sure that basic YARP components are running: [[#Switching on the robot|summarized Cluster Manager instructions are here]]; detailed instructions are in section [[#Starting YARP components]]. For this demo we only need &amp;lt;code&amp;gt;yarpserver&amp;lt;/code&amp;gt; (&amp;lt;code&amp;gt;yarprun&amp;lt;/code&amp;gt;s are not necessary)&lt;br /&gt;
* Make sure that iCubStartup ([[#robotInterface|robotInterface]]) is running&lt;br /&gt;
* open the &#039;&#039;&#039;Yoga&#039;&#039;&#039; panel in the yarpmanager GUI; click the Run Application button&lt;br /&gt;
&lt;br /&gt;
[[Category:Vislab]]&lt;/div&gt;</summary>
		<author><name>Giovanni Saponaro</name></author>
	</entry>
	<entry>
		<id>http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=VisLab_network&amp;diff=7095</id>
		<title>VisLab network</title>
		<link rel="alternate" type="text/html" href="http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=VisLab_network&amp;diff=7095"/>
		<updated>2019-07-30T18:22:01Z</updated>

		<summary type="html">&lt;p&gt;Giovanni Saponaro: /* Summary */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;VisLab robotics network domain: &lt;br /&gt;
* Domain: visnet&lt;br /&gt;
* Subnet: 10.10.1.*&lt;br /&gt;
&lt;br /&gt;
= Robot network =&lt;br /&gt;
&lt;br /&gt;
Machines connected to the iCub robot have a direct Gbit connection to a Cisco Catalyst 2960 Switch (8-port version). See also: http://www.cisco.com/c/en/us/td/docs/switches/lan/catalyst2960/hardware/quick/guide/ol14970.html&lt;br /&gt;
&lt;br /&gt;
= Summary =&lt;br /&gt;
&lt;br /&gt;
Assigned IP addresses and domain names are:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
!description&lt;br /&gt;
!IP address&lt;br /&gt;
!domain name&lt;br /&gt;
|-&lt;br /&gt;
|gateway&lt;br /&gt;
|10.10.1.254&lt;br /&gt;
|gtisr.visnet&lt;br /&gt;
|-&lt;br /&gt;
|iCub/Chico pc104&lt;br /&gt;
|10.10.1.50&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|iCub/Chico clients&lt;br /&gt;
|10.10.1.51-59&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Chica net&lt;br /&gt;
|10.10.1.60-69&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Balta net&lt;br /&gt;
|10.10.1.70-79&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|Vizzy net&lt;br /&gt;
|10.10.1.80-89&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|vislab switch (7th floor)&lt;br /&gt;
|10.10.1.251&lt;br /&gt;
|swvislab.visnet&lt;br /&gt;
|-&lt;br /&gt;
|iCub switch (6th floor)&lt;br /&gt;
|10.10.1.252&lt;br /&gt;
|swcisco2960.visnet&lt;br /&gt;
|-&lt;br /&gt;
|cortex1&lt;br /&gt;
|10.10.1.1 &lt;br /&gt;
|cortex1.visnet&lt;br /&gt;
|-&lt;br /&gt;
|icubbrain1&lt;br /&gt;
|10.10.1.41&lt;br /&gt;
|icubbrain1.visnet&lt;br /&gt;
|-&lt;br /&gt;
|icubbrain2&lt;br /&gt;
|10.10.1.42&lt;br /&gt;
|icubbrain2.visnet&lt;br /&gt;
|-&lt;br /&gt;
|DHCP range&lt;br /&gt;
|10.10.1.100-199&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= DNS configuration =&lt;br /&gt;
&lt;br /&gt;
Name resolution in the visnet network is managed by a BIND system on the machine &amp;lt;code&amp;gt;server.visnet&amp;lt;/code&amp;gt;. To add or change the table of names and IPs, do &#039;&amp;lt;code&amp;gt;cd /etc/bind&amp;lt;/code&amp;gt;&#039;, edit and change the file &#039;&amp;lt;code&amp;gt;/visnet.src&amp;lt;/code&amp;gt;&#039; (need super user permission) and then run &#039;&amp;lt;code&amp;gt;make&amp;lt;/code&amp;gt;&#039;. After a while (the tables must be copied to ISR DNS server, which may take a few minutes) you can ping the new machines by name.&lt;br /&gt;
&lt;br /&gt;
The configuration file is similar to the following:&lt;br /&gt;
&lt;br /&gt;
 ## 10:45, 2 September 2009 (UTC)10:45, 2 September 2009 (UTC)10:45, 2 September 2009 (UTC)10:45, 2 September 2009 (UTC)[[User:Alex|Alex]]&lt;br /&gt;
 ## Tabela de DNS -- VisNet&lt;br /&gt;
 ## 10:45, 2 September 2009 (UTC)10:45, 2 September 2009 (UTC)10:45, 2 September 2009 (UTC)10:45, 2 September 2009 (UTC)[[User:Alex|Alex]]&lt;br /&gt;
 ##&lt;br /&gt;
 domain(&amp;quot;visnet&amp;quot;)&lt;br /&gt;
 prefix(&amp;quot;10.10.1&amp;quot;)&lt;br /&gt;
 soa(&amp;quot;server.isrnet&amp;quot;, &amp;quot;alex&amp;quot;, &amp;quot;isr.ist.utl.pt&amp;quot;)&lt;br /&gt;
 ns(&amp;quot;server.visnet&amp;quot;)&lt;br /&gt;
 ##&lt;br /&gt;
 ## Sintaxe:&lt;br /&gt;
 ## NOME ------- IP ---- COMENTARIO (entre aspas) ----------------------&lt;br /&gt;
 ##&lt;br /&gt;
 a(cortex1,	1,	&amp;quot;Compurack client 1&amp;quot;)&lt;br /&gt;
 a(cortex2,	2,	&amp;quot;Compurack client 2&amp;quot;)&lt;br /&gt;
 a(cortex3,	3,	&amp;quot;Compurack client 3&amp;quot;)&lt;br /&gt;
 a(cortex4,	4,	&amp;quot;Compurack client 4&amp;quot;)&lt;br /&gt;
 a(cortex5,	5,	&amp;quot;Compurack client 5&amp;quot;)&lt;br /&gt;
 a(cortex6,	6,	&amp;quot;Compurack client 6&amp;quot;)&lt;br /&gt;
 a(cortex7,	7,	&amp;quot;Compurack client 7&amp;quot;)&lt;br /&gt;
 a(icubbrain1, 	41,	&amp;quot;Supermicro 1&amp;quot;)&lt;br /&gt;
 a(icubbrain2,   42,     &amp;quot;Supermicro 2&amp;quot;)&lt;br /&gt;
 a(pc104,	50,	&amp;quot;Chico pc104&amp;quot;)&lt;br /&gt;
 a(icubsrv,	51,	&amp;quot;iCub chico&amp;quot;)&lt;br /&gt;
 a(chico2,	52,	&amp;quot;iCub chico&amp;quot;)&lt;br /&gt;
 a(chico3,	53,	&amp;quot;iCub chico&amp;quot;)&lt;br /&gt;
 a(chico4,	54,	&amp;quot;iCub chico&amp;quot;)&lt;br /&gt;
 a(chico5,	55,	&amp;quot;iCub chico&amp;quot;)&lt;br /&gt;
 a(chico6,	56,	&amp;quot;iCub chico&amp;quot;)&lt;br /&gt;
 a(chico7,	57,	&amp;quot;iCub chico&amp;quot;)&lt;br /&gt;
 a(chico8,	58,	&amp;quot;iCub chico&amp;quot;)&lt;br /&gt;
 a(chico9,	59,	&amp;quot;iCub chico&amp;quot;)&lt;br /&gt;
 a(chica,	60,	&amp;quot;iCub chica&amp;quot;)&lt;br /&gt;
 a(chica1,	61,	&amp;quot;iCub chica&amp;quot;)&lt;br /&gt;
 a(chica2,	62,	&amp;quot;iCub chica&amp;quot;)&lt;br /&gt;
 a(chica3,	63,	&amp;quot;iCub chica&amp;quot;)&lt;br /&gt;
 a(chica4,	64,	&amp;quot;iCub chica&amp;quot;)&lt;br /&gt;
 a(chica5,	65,	&amp;quot;iCub chica&amp;quot;)&lt;br /&gt;
 a(chica6,	66,	&amp;quot;iCub chica&amp;quot;)&lt;br /&gt;
 a(chica7,	67,	&amp;quot;iCub chica&amp;quot;)&lt;br /&gt;
 a(chica8,	68,	&amp;quot;iCub chica&amp;quot;)&lt;br /&gt;
 a(chica9,	69,	&amp;quot;iCub chica&amp;quot;)&lt;br /&gt;
 a(balta,	70,	&amp;quot;Baltazar&amp;quot;)&lt;br /&gt;
 a(balta1,	71,	&amp;quot;Baltazar&amp;quot;)&lt;br /&gt;
 a(balta2,	72,	&amp;quot;Baltazar&amp;quot;)&lt;br /&gt;
 a(balta3,	73,	&amp;quot;Baltazar&amp;quot;)&lt;br /&gt;
 a(balta4,	74,	&amp;quot;Baltazar&amp;quot;)&lt;br /&gt;
 a(balta5,	75,	&amp;quot;Baltazar&amp;quot;)&lt;br /&gt;
 a(balta6,	76,	&amp;quot;Baltazar&amp;quot;)&lt;br /&gt;
 a(balta7,	77,	&amp;quot;Baltazar&amp;quot;)&lt;br /&gt;
 a(balta8,	78,	&amp;quot;Baltazar&amp;quot;)&lt;br /&gt;
 a(balta9,	79,	&amp;quot;Baltazar&amp;quot;)&lt;br /&gt;
 range(dhcp-, 100, 199)&lt;br /&gt;
 a(server,	240,	&amp;quot;Compurack server&amp;quot;)&lt;br /&gt;
 a(swcompurack,	250,	&amp;quot;Compurack switch&amp;quot;)&lt;br /&gt;
 a(swvislab,	251,	&amp;quot;Vislab switch&amp;quot;)&lt;br /&gt;
 a(gtisr,	254,	&amp;quot;gateway&amp;quot;)&lt;br /&gt;
 ## -- EOF --&lt;br /&gt;
 ### Local Variables: ###&lt;br /&gt;
 ### gendns-keywords: (&amp;quot;^domain&amp;quot; &amp;quot;^prefix&amp;quot; &amp;quot;^soa&amp;quot; &amp;quot;^ns&amp;quot; &amp;quot;^mx&amp;quot; &amp;quot;^a&amp;quot; &amp;quot;^range&amp;quot; &amp;quot;^rangex&amp;quot; &amp;quot;^cname&amp;quot; (&amp;quot;\t&amp;quot; . highlight)) ###&lt;br /&gt;
 ### font-lock-defaults: (gendns-keywords nil t ((?# . &amp;quot;&amp;lt;&amp;quot;) (?\n . &amp;quot;&amp;gt;&amp;quot;)) nil) ###&lt;br /&gt;
 ### mode: font-lock ###&lt;br /&gt;
 ### End: ###&lt;br /&gt;
&lt;br /&gt;
= Traffic =&lt;br /&gt;
&lt;br /&gt;
Network traffic can be checked at:&lt;br /&gt;
* http://inode1.isrnet/cacti (user guest, pass guest)&lt;br /&gt;
&lt;br /&gt;
[[Category:Vislab]]&lt;/div&gt;</summary>
		<author><name>Giovanni Saponaro</name></author>
	</entry>
	<entry>
		<id>http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=Pc104&amp;diff=7094</id>
		<title>Pc104</title>
		<link rel="alternate" type="text/html" href="http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=Pc104&amp;diff=7094"/>
		<updated>2019-07-28T16:08:24Z</updated>

		<summary type="html">&lt;p&gt;Giovanni Saponaro: /* Software */ CREATE_LIB_MATH -&amp;gt; YARP_COMPILE_libYARP_MATH&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;See [[pc104/Archive]] for information about previous setups.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The &#039;&#039;&#039;pc104 CPU board&#039;&#039;&#039; is located into the iCub&#039;s head and it runs a full (read/write) Debian distribution that boots from a USB pen drive.&lt;br /&gt;
&lt;br /&gt;
= Booting and mounting =&lt;br /&gt;
&lt;br /&gt;
During boot, the pc104 does two things: 1) it loads a Debian Live USB Flash Drive with Persistence; 2) it mounts remote NFS shares from the [[iCub laptop]].&lt;br /&gt;
&lt;br /&gt;
== USB Flash Drive ==&lt;br /&gt;
&lt;br /&gt;
With respect to the standard image provided by the official iCub support, our configuration differs in the following files:&lt;br /&gt;
&lt;br /&gt;
 .bashrc_iCub&lt;br /&gt;
 /etc/network/interfaces&lt;br /&gt;
 /etc/hosts&lt;br /&gt;
 /etc/fstab&lt;br /&gt;
 /etc/rc.iCub.d/mounts.list&lt;br /&gt;
 /etc/rc.iCub.d/S90_mount-remote-fs.sh&lt;br /&gt;
 /etc/timezone&lt;br /&gt;
 /etc/resolv.conf&lt;br /&gt;
 /etc/udev/rules.d/70-persistent-net.rules&lt;br /&gt;
 /etc/default/ntpdate&lt;br /&gt;
&lt;br /&gt;
== NFS shares ==&lt;br /&gt;
&lt;br /&gt;
The mounted volume contains the yarp and iCub repositories (both code and binaries) and configuration files. The binaries are located in the respective &#039;&#039;&#039;build-pc104&#039;&#039;&#039; subdirectories.&lt;br /&gt;
&lt;br /&gt;
= Software =&lt;br /&gt;
&lt;br /&gt;
* Dependencies for 640x480@30Hz images with Bayer encoding&lt;br /&gt;
&lt;br /&gt;
 sudo apt install libraw1394-dev libdc1394-22-dev&lt;br /&gt;
&lt;br /&gt;
* yarp CMake configuration&lt;br /&gt;
&lt;br /&gt;
 CMAKE_BUILD_TYPE Release&lt;br /&gt;
 CREATE_DEVICE_LIBRARY_MODULES ON&lt;br /&gt;
 YARP_COMPILE_libYARP_MATH ON&lt;br /&gt;
 ENABLE_yarpmod_portaudio ON&lt;br /&gt;
 ENABLE_yarpmod_serialport ON&lt;br /&gt;
&lt;br /&gt;
 CREATE_OPTIONAL_CARRIERS&lt;br /&gt;
 ENABLE_yarpcar_bayer ON&lt;br /&gt;
 ENABLE_yarpcar_mjpeg ON&lt;br /&gt;
&lt;br /&gt;
* icub-main CMake configuration&lt;br /&gt;
&lt;br /&gt;
 CMAKE_BUILD_TYPE Release&lt;br /&gt;
 ENABLE_icubmod_canBusAnalogSensor ON&lt;br /&gt;
 ENABLE_icubmod_canBusSkin ON&lt;br /&gt;
 ENABLE_icubmod_canBusVirtualAnalogSensor ON&lt;br /&gt;
 ENABLE_icubmod_canmotioncontrol ON&lt;br /&gt;
 ENABLE_icubmod_cartesiancontrollerclient ON&lt;br /&gt;
 ENABLE_icubmod_cartesiancontrollerserver ON&lt;br /&gt;
 ENABLE_icubmod_cfw2can ON&lt;br /&gt;
 ENABLE_icubmod_dragonfly2 ON&lt;br /&gt;
 ENABLE_icubmod_gazecontrollerclient ON&lt;br /&gt;
 ENABLE_icubmod_parametricCalibrator ON&lt;br /&gt;
 ENABLE_icubmod_sharedcan ON&lt;br /&gt;
 ENABLE_icubmod_skinWrapper ON&lt;br /&gt;
 ENABLE_icubmod_xsensmtx ON&lt;br /&gt;
&lt;br /&gt;
* yarp configuration&lt;br /&gt;
&lt;br /&gt;
# &amp;lt;code&amp;gt;yarp namespace /icub&amp;lt;/code&amp;gt;&lt;br /&gt;
# &amp;lt;code&amp;gt;yarp conf 10.10.1.53 10000&amp;lt;/code&amp;gt; (yarpserver runs on [[iCub laptop]])&lt;br /&gt;
&lt;br /&gt;
The last command writes the information of the YARP server located on [[iCub laptop]] into the file specified by &amp;lt;code&amp;gt;yarp conf&amp;lt;/code&amp;gt;, which is typically &amp;lt;code&amp;gt;/home/icub/.config/yarp/_icub.conf&amp;lt;/code&amp;gt;. Warning: that command overwrites previous content.&lt;br /&gt;
&lt;br /&gt;
* tuning and optimization&lt;br /&gt;
&lt;br /&gt;
# make sure that &amp;lt;code&amp;gt;CMAKE_BUILD_TYPE=Release&amp;lt;/code&amp;gt; for both yarp and icub-main&lt;br /&gt;
# &amp;lt;code&amp;gt;cat /proc/sys/net/core/rmem_max&amp;lt;/code&amp;gt;  // should return 8388608&lt;br /&gt;
&lt;br /&gt;
= Updating =&lt;br /&gt;
&lt;br /&gt;
In addition to yarp and icub-main, &#039;&#039;&#039;icub-firmware-shared&#039;&#039;&#039; must also be updated (these are scripts, not the firmware itself).&lt;br /&gt;
In order to update the firmware, use the binaries in &#039;&#039;&#039;icub-firmware-build&#039;&#039;&#039; and follow the official iCub manual.&lt;br /&gt;
&lt;br /&gt;
= See also =&lt;br /&gt;
&lt;br /&gt;
* [http://wiki.icub.org/wiki/The_Linux_on_the_pc104 The Linux on the pc104]&lt;br /&gt;
* [http://wiki.icub.org/wiki/ICub_PC104_Linux_Image_-_Detailed_info ICub PC104 Linux Image - Detailed info]&lt;br /&gt;
* [http://wiki.icub.org/wiki/Compilation_on_the_pc104 Compilation on the pc104]&lt;br /&gt;
* [http://wiki.icub.org/wiki/Generic_iCub_machine_installation_instructions Generic iCub machine installation instructions]&lt;br /&gt;
* [http://wiki.icub.org/wiki/CFW002_PC104_linux_driver CFW002 PC104 linux driver]&lt;br /&gt;
&lt;br /&gt;
[[Category:Vislab]]&lt;/div&gt;</summary>
		<author><name>Giovanni Saponaro</name></author>
	</entry>
	<entry>
		<id>http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=ICub_machines_configuration&amp;diff=7093</id>
		<title>ICub machines configuration</title>
		<link rel="alternate" type="text/html" href="http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=ICub_machines_configuration&amp;diff=7093"/>
		<updated>2019-07-28T16:06:49Z</updated>

		<summary type="html">&lt;p&gt;Giovanni Saponaro: /* YARP and iCub */ CREATE_GUIS -&amp;gt; YARP_COMPILE_GUIS, CREATE_LIB_MATH -&amp;gt; YARP_COMPILE_libYARP_MATH&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;In this page we describe the setup of the computers connected to the iCub robot, which all share a common network disk and configuration.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;See [[iCub machines configuration/Archive]] for obsolete information.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
= Operating system installation =&lt;br /&gt;
&lt;br /&gt;
Ubuntu LTS, default settings and partitioning. The first user to be created must be called &#039;&#039;&#039;icub&#039;&#039;&#039;, to make the distributed setup possible: for NFS network mount, this user has to have uid 1000 and guid 1000.&lt;br /&gt;
&lt;br /&gt;
In order to add a user:&lt;br /&gt;
* either use the Ubuntu graphical frontends&lt;br /&gt;
* or use a Terminal:&lt;br /&gt;
 sudo adduser icub&lt;br /&gt;
 sudo usermod -aG sudo icub  # gives sudo privileges&lt;br /&gt;
&lt;br /&gt;
= Other operations =&lt;br /&gt;
&lt;br /&gt;
== Network configuration ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;See also: [[VisLab network]], [[ISR computing resources]]&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Configure a static IP as explained in one of the following subsections, depending if the machine is a desktop or a server one.&lt;br /&gt;
&lt;br /&gt;
Also, it is recommended to set up the &amp;lt;code&amp;gt;/etc/hosts&amp;lt;/code&amp;gt; file as follows:&lt;br /&gt;
&lt;br /&gt;
 10.10.1.41 icubbrain1&lt;br /&gt;
 10.10.1.42 icubbrain2&lt;br /&gt;
 10.10.1.50 pc104&lt;br /&gt;
 10.10.1.51 icub-cuda&lt;br /&gt;
 10.10.1.53 icub-laptop&lt;br /&gt;
&lt;br /&gt;
You should be able to do &amp;lt;code&amp;gt;ping icubbrain1&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Desktop machines ===&lt;br /&gt;
&lt;br /&gt;
With the graphical Network Manager (https://help.ubuntu.com/16.04/ubuntu-help/net-fixed-ip-address.html), configure the connection &amp;quot;Auto eth0&amp;quot; IPv4 as follows:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|+ &lt;br /&gt;
! Address !! Netmask !! Gateway !! DNS Servers !! notes&lt;br /&gt;
|-&lt;br /&gt;
|10.10.1.x || 255.255.255.0 || 10.10.1.254 || 10.0.0.1, 10.0.0.2 || visnet (iCub machines)&lt;br /&gt;
|-&lt;br /&gt;
|10.0.x.y || 255.255.0.0 || 10.0.0.254 || 10.0.0.1, 10.0.0.2 || isrnet (rest of ISR)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Servers ===&lt;br /&gt;
&lt;br /&gt;
Edit &amp;lt;code&amp;gt;/etc/network/interfaces&amp;lt;/code&amp;gt; like this:&lt;br /&gt;
 auto lo&lt;br /&gt;
 iface lo inet loopback&lt;br /&gt;
   &lt;br /&gt;
 auto eth0&lt;br /&gt;
 iface eth0 inet static&lt;br /&gt;
 address 10.x.y.z # put your IP here, see above table&lt;br /&gt;
 netmask 255.255.x.y # see above table&lt;br /&gt;
 network 10.10.1.0&lt;br /&gt;
 broadcast 10.10.1.255&lt;br /&gt;
 gateway 10.10.1.254&lt;br /&gt;
 dns-nameservers 10.0.0.1 10.0.0.2&lt;br /&gt;
&lt;br /&gt;
In some versions of Ubuntu, to configure DNS you also need to edit &amp;lt;code&amp;gt;/etc/resolvconf/resolv.conf.d/head&amp;lt;/code&amp;gt; like this:&lt;br /&gt;
 nameserver 10.0.0.1&lt;br /&gt;
 nameserver 10.0.0.2&lt;br /&gt;
&lt;br /&gt;
then run:&lt;br /&gt;
 sudo resolvconf -u&lt;br /&gt;
&lt;br /&gt;
== Dependencies ==&lt;br /&gt;
&lt;br /&gt;
Installing the &#039;&#039;&#039;icub-common&#039;&#039;&#039; metapackage is sufficient. It is a bundle of the following packages (for more details see [http://wiki.icub.org/wiki/Linux:Installation_from_sources here], [http://wiki.icub.org/wiki/Linux:_dependencies here] and [https://github.com/robotology/yarp/blob/master/.travis.yml here]):&lt;br /&gt;
 sudo apt install build-essential libace-dev libedit-dev libeigen3-dev libncurses5-dev gfortran libtinyxml-dev libgraphviz-dev&lt;br /&gt;
 sudo apt install git-core ssh gcc g++ make cmake-curses-gui freeglut3-dev libxmu-dev libswscale-dev libavformat-dev&lt;br /&gt;
&lt;br /&gt;
Qt5 graphics dependencies in Ubuntu 16.04 Xenial:&lt;br /&gt;
&lt;br /&gt;
 sudo apt install qttools5-dev qtdeclarative5-dev qtdeclarative5-controls-plugin qtdeclarative5-dialogs-plugin qtmultimedia5-dev qtdeclarative5-qtmultimedia-plugin qtquick1-5-dev libqt5opengl5-dev&lt;br /&gt;
&lt;br /&gt;
Qt5 graphics dependencies in Debian Stretch:&lt;br /&gt;
 sudo apt install qml-module-qt-labs-folderlistmodel qml-module-qt-labs-settings&lt;br /&gt;
&lt;br /&gt;
iCub Simulator dependencies: SDL and ODE.&lt;br /&gt;
&lt;br /&gt;
GTK graphical programs are obsolete and replaced by their Qt equivalents. If you still want the old GTK programs, install &amp;lt;code&amp;gt;libgtkmm-2.4-dev&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Environment variables ==&lt;br /&gt;
&lt;br /&gt;
* Create a file called ~/.bashrc_iCub like this one. Usually you do not need all of the following variables and settings, just a subset.&lt;br /&gt;
&lt;br /&gt;
  export ROBOT_CODE=/usr/local/src/robot&lt;br /&gt;
&lt;br /&gt;
  export YARP_ROOT=$ROBOT_CODE/yarp&lt;br /&gt;
  export YARP_DIR=$YARP_ROOT/build&lt;br /&gt;
  export ICUB_ROOT=$ROBOT_CODE/icub-main&lt;br /&gt;
  export ICUB_DIR=$ICUB_ROOT/build&lt;br /&gt;
&lt;br /&gt;
  export ICUBcontrib_DIR=$ROBOT_CODE/icub-contrib-common/build&lt;br /&gt;
  export YARP_DATA_DIRS=$YARP_DIR/share/yarp:$ICUB_DIR/share/iCub:$ICUBcontrib_DIR/share/ICUBcontrib:$ROBOT_CODE/speech/svox-speech/build/share/speech&lt;br /&gt;
  export PATH=$PATH:$YARP_DIR/bin:$ICUB_DIR/bin:$ICUBcontrib_DIR/bin&lt;br /&gt;
&lt;br /&gt;
  export ODE_DIR=$ROBOT_CODE/ode-0.13/build&lt;br /&gt;
&lt;br /&gt;
  # OpenCV: select one of the following&lt;br /&gt;
  #export OpenCV_DIR=$ROBOT_CODE/opencv2/build&lt;br /&gt;
  #export OpenCV_DIR=$ROBOT_CODE/opencv2/build-cuda&lt;br /&gt;
  export OpenCV_DIR=$ROBOT_CODE/opencv3/build&lt;br /&gt;
  #export OpenCV_DIR=$ROBOT_CODE/opencv3/build-cuda&lt;br /&gt;
&lt;br /&gt;
  # To enable tab completion on yarp port names&lt;br /&gt;
  if [ -f $YARP_ROOT/scripts/yarp_completion ]; then&lt;br /&gt;
    source $YARP_ROOT/scripts/yarp_completion&lt;br /&gt;
  fi&lt;br /&gt;
&lt;br /&gt;
  # Set the name of your robot here.&lt;br /&gt;
  export YARP_ROBOT_NAME=iCubLisboa01&lt;br /&gt;
&lt;br /&gt;
  # Set-up optimizations&lt;br /&gt;
  export CMAKE_BUILD_TYPE=Release&lt;br /&gt;
&lt;br /&gt;
  # DebugStream customization&lt;br /&gt;
  export YARP_VERBOSE_OUTPUT=0&lt;br /&gt;
  export YARP_COLORED_OUTPUT=1&lt;br /&gt;
  export YARP_TRACE_ENABLE=0&lt;br /&gt;
  export YARP_FORWARD_LOG_ENABLE=0&lt;br /&gt;
&lt;br /&gt;
  # Lua&lt;br /&gt;
  ### DO NOT REMOVE &#039;;;;&#039; ###&lt;br /&gt;
  export LUA_PATH=&amp;quot;;;;$ROBOT_CODE/rFSM/?.lua;$ICUBcontrib_DIR/share/ICUBcontrib/contexts/interactiveObjectsLearning/LUA/?.lua&amp;quot;&lt;br /&gt;
  export LUA_CPATH=&amp;quot;;;;$YARP_ROOT/bindings/build-lua/?.so&amp;quot;&lt;br /&gt;
  export PATH=$PATH:$ROBOT_CODE/rFSM/tools:$ICUBcontrib_DIR/share/ICUBcontrib/contexts/interactiveObjectsLearning/LUA&lt;br /&gt;
  export PATH=$PATH:$YARP_ROOT/bindings/build-lua&lt;br /&gt;
  export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$YARP_ROOT/bindings/build-lua&lt;br /&gt;
&lt;br /&gt;
* Then, before the following line of /etc/bash.bashrc&lt;br /&gt;
 [ -z &amp;quot;$PS1&amp;quot; ] &amp;amp;&amp;amp; return&lt;br /&gt;
add this:&lt;br /&gt;
 # per-user environment variables (non-interactive and interactive mode)&lt;br /&gt;
 source $HOME/.bashrc_iCub&lt;br /&gt;
&lt;br /&gt;
The reason why we use the above custom file (as opposed to the standard ~/.bashrc) is that we want to enforce the variables both during interactive and non-interactive sessions, such as commands launched via &amp;lt;code&amp;gt;yarprun&amp;lt;/code&amp;gt; from another machine.&lt;br /&gt;
&lt;br /&gt;
See also https://git.robotology.eu/mbrunettini/icub-environment for the variables and scripts employed at IIT.&lt;br /&gt;
&lt;br /&gt;
= Additional software =&lt;br /&gt;
&lt;br /&gt;
== OpenCV ==&lt;br /&gt;
&lt;br /&gt;
=== Ubuntu packages ===&lt;br /&gt;
&lt;br /&gt;
* this is the easiest way to install OpenCV, however the Ubuntu packages might be too old and/or missing some specific features (in that case proceed with a manual installation, see below)&lt;br /&gt;
&lt;br /&gt;
  sudo apt install libcv-dev libhighgui-dev libcvaux-dev libopencv-gpu-dev&lt;br /&gt;
&lt;br /&gt;
=== Manual compilation ===&lt;br /&gt;
&lt;br /&gt;
* on most machines: download OpenCV, create a build directory, CMake, set WITH_CUDA=OFF, compile, set OpenCV_DIR to the path of OpenCV-x.y.z/build, for example:&lt;br /&gt;
 export OpenCV_DIR=$code/OpenCV-x.y.z/build&lt;br /&gt;
&lt;br /&gt;
* on CUDA machines, in order to compile CUDA-enabled modules: create a build-cuda directory, CMake, set WITH_CUDA=ON, compile, set OpenCV_DIR to the path of OpenCV-x.y.z/build-cuda. You may need to disable &amp;lt;code&amp;gt;cudacodec&amp;lt;/code&amp;gt;, see also https://github.com/opencv/opencv_contrib/issues/1786&lt;br /&gt;
&lt;br /&gt;
== YARP and iCub ==&lt;br /&gt;
&lt;br /&gt;
* In general, when compiling this software, do &#039;&#039;&#039;not&#039;&#039;&#039; use &amp;lt;code&amp;gt;sudo make install&amp;lt;/code&amp;gt; but simply &amp;lt;code&amp;gt;make&amp;lt;/code&amp;gt; (and configure the PATH variable in such a way that it finds the binaries from the build directory).&lt;br /&gt;
&lt;br /&gt;
* If you work with the robot, use the volume shares exported from the NFS server.&lt;br /&gt;
&lt;br /&gt;
* In other cases, follow the instructions on the [[iCub software]] article. &lt;br /&gt;
&lt;br /&gt;
* yarp CMake configuration&lt;br /&gt;
 CMAKE_BUILD_TYPE Release&lt;br /&gt;
 YARP_COMPILE_GUIS&lt;br /&gt;
 YARP_COMPILE_libYARP_MATH&lt;br /&gt;
&lt;br /&gt;
 // to enable 640x480@30Hz images with Bayer encoding&lt;br /&gt;
 // install libraw1394-dev libdc1394-22-dev then enable&lt;br /&gt;
 CREATE_OPTIONAL_CARRIERS&lt;br /&gt;
 ENABLE_yarpcar_bayer ON&lt;br /&gt;
 ENABLE_yarpcar_mjpeg ON&lt;br /&gt;
&lt;br /&gt;
* icub-main CMake configuration&lt;br /&gt;
 CMAKE_BUILD_TYPE Release&lt;br /&gt;
 // on servers, do http://wiki.icub.org/wiki/Installing_IPOPT then enable&lt;br /&gt;
 ENABLE_icubmod_cartesiancontrollerclient ON&lt;br /&gt;
 ENABLE_icubmod_cartesiancontrollerserver ON&lt;br /&gt;
 ENABLE_icubmod_gazecontrollerclient ON&lt;br /&gt;
&lt;br /&gt;
* final configuration&lt;br /&gt;
# &amp;lt;code&amp;gt;yarp namespace /icub&amp;lt;/code&amp;gt;&lt;br /&gt;
# &amp;lt;code&amp;gt;yarp conf 10.10.1.53 10000&amp;lt;/code&amp;gt; (yarpserver runs on [[iCub laptop]])&lt;br /&gt;
&lt;br /&gt;
* special machines such as [[pc104]] need different flags&lt;br /&gt;
&lt;br /&gt;
== CUDA ==&lt;br /&gt;
&lt;br /&gt;
=== Prerequisites ===&lt;br /&gt;
&lt;br /&gt;
 sudo apt install freeglut3-dev libdevil-dev libglew-dev&lt;br /&gt;
 sudo apt purge libcudart*  // because we will manually install it&lt;br /&gt;
&lt;br /&gt;
Troubleshooting: http://askubuntu.com/questions/410604/installing-nvidia-drivers-with-pkg1-run-ends-with-no-version-h-found&lt;br /&gt;
&lt;br /&gt;
=== CUDA Toolkit, SDK and Examples ===&lt;br /&gt;
&lt;br /&gt;
* stop X servers: &amp;lt;code&amp;gt;sudo service lightdm stop&amp;lt;/code&amp;gt; (or &amp;lt;code&amp;gt;gdm stop&amp;lt;/code&amp;gt; depending on configuration)&lt;br /&gt;
* download and install NVIDIA CUDA Toolkit from https://developer.nvidia.com/cuda-downloads&lt;br /&gt;
* preferably, use Installer Type: runfile (local). Alternatively, deb (local)&lt;br /&gt;
* if you obtain the error &amp;quot;Toolkit:  Installation Failed. Using unsupported Compiler.&amp;quot;, use the override option, e.g., &amp;lt;code&amp;gt;./cuda_6.0.37_linux_64.run --override&amp;lt;/code&amp;gt;&lt;br /&gt;
* if you obtain the error &amp;quot;The driver installation is unable to locate the kernel source. Please make sure that the kernel source packages are installed and set up correctly&amp;quot;:&lt;br /&gt;
** read the CUDA log in /tmp and verify that the graphics card is currently supported -- if not, you might need to install a legacy NVIDIA driver. For example, the Quadro FX 580 card needs NVIDIA legacy drivers 340.xx: install them and then answer &#039;&#039;&#039;no&#039;&#039;&#039; when CUDA Toolkit installer asks &amp;quot;Install NVIDIA Accelerated Graphics Driver for Linux-x86_64 346.46?&amp;quot;&lt;br /&gt;
** &amp;lt;code&amp;gt;sudo apt install linux-generic linux-headers-$(uname -r) linux-headers-generic-lts-trusty&amp;lt;/code&amp;gt; (or other Ubuntu version codename)&lt;br /&gt;
** call the installer specifying the kernel source path, e.g., &amp;lt;code&amp;gt;./cuda_7.0.28_linux.run --kernel-source-path=/usr/src/linux-headers-3.13.0-52-generic/&amp;lt;/code&amp;gt;&lt;br /&gt;
* output of successful installation:&lt;br /&gt;
 Driver:   Installed&lt;br /&gt;
 Toolkit:  Installed in /usr/local/cuda-7.0&lt;br /&gt;
 Samples:  Not Selected&lt;br /&gt;
 Please make sure that&lt;br /&gt;
 -   PATH includes /usr/local/cuda-7.0/bin&lt;br /&gt;
 -   LD_LIBRARY_PATH includes /usr/local/cuda-7.0/lib64, or, add /usr/local/cuda-7.0/lib64 to /etc/ld.so.conf and run ldconfig as root&lt;br /&gt;
 To uninstall the CUDA Toolkit, run the uninstall script in /usr/local/cuda-7.0/bin&lt;br /&gt;
 To uninstall the NVIDIA Driver, run nvidia-uninstall&lt;br /&gt;
&lt;br /&gt;
* troubleshooting:&lt;br /&gt;
** http://askubuntu.com/questions/451672/installing-and-testing-cuda-in-ubuntu-14-04&lt;br /&gt;
** http://troylee2008.blogspot.pt/2012/05/linking-error-while-compiling-cuda-sdk.html&lt;br /&gt;
** https://devtalk.nvidia.com/default/topic/617414/-solved-cuda-driver-version-is-insufficient-for-cuda-runtime-version-fedora-18-rpmfusion-driver/&lt;br /&gt;
&lt;br /&gt;
=== SiftGPU ===&lt;br /&gt;
&lt;br /&gt;
* download it from http://cs.unc.edu/~ccwu/siftgpu/&lt;br /&gt;
* unzip it - typically in your home directory, not in the NFS shared folder&lt;br /&gt;
* compile with &amp;lt;code&amp;gt;make&amp;lt;/code&amp;gt;&lt;br /&gt;
* if you obtain &amp;quot;unspecified launch failure&amp;quot; and 0 sift features/matches, check that the X server is running: &amp;lt;code&amp;gt;sudo service lightdm start&amp;lt;/code&amp;gt;&lt;br /&gt;
* if you obtain the error &amp;quot;/usr/local/cuda/bin/nvcc: Command not found&amp;quot;, this can help: &amp;lt;code&amp;gt;sudo ln -s /usr/lib/nvidia-cuda-toolkit /usr/local/cuda&amp;lt;/code&amp;gt;. See also http://askubuntu.com/questions/231503/nvcc-compiler-setup-ubuntu-12-04&lt;br /&gt;
* run the test program &amp;lt;code&amp;gt;SimpleSIFT&amp;lt;/code&amp;gt; - it should work via ssh, as well as in a local session&lt;br /&gt;
* example of successful execution:&lt;br /&gt;
 $ ./SimpleSIFT &lt;br /&gt;
 Unable to create OpenGL Context!&lt;br /&gt;
 For nVidia cards, you can try change to CUDA mode in this case&lt;br /&gt;
 NOTE: changing maximum texture dimension to 32768&lt;br /&gt;
 [SiftGPU Language]:	CUDA&lt;br /&gt;
 Image size :	800x600&lt;br /&gt;
 Image loaded :	../data/800-1.jpg&lt;br /&gt;
 #Features:	3347&lt;br /&gt;
 #Features MO:	3910&lt;br /&gt;
 [RUN SIFT]:	0.339&lt;br /&gt;
 Image size :	640x480&lt;br /&gt;
 Image loaded :	../data/640-1.jpg&lt;br /&gt;
 #Features:	2372&lt;br /&gt;
 #Features MO:	2767&lt;br /&gt;
 [RUN SIFT]:	0.208&lt;br /&gt;
 NOTE: changing maximum texture dimension to 32768&lt;br /&gt;
 [SiftMatchGPU]: CUDA&lt;br /&gt;
 2247 sift matches were found;&lt;br /&gt;
&lt;br /&gt;
* define &amp;lt;code&amp;gt;export SIFTGPU_DIR=~/SiftGPU&amp;lt;/code&amp;gt; or similar in your iCub bashrc file, so that libsiftgpu.so is found by GPU accelerated modules&lt;br /&gt;
&lt;br /&gt;
== himrep ==&lt;br /&gt;
&lt;br /&gt;
Clone https://github.com/robotology/himrep, follow the instructions to compile &amp;lt;code&amp;gt;liblinear&amp;lt;/code&amp;gt;, CMake, make install&lt;br /&gt;
&lt;br /&gt;
To use the deep neural network object recognition, based on Caffe, follow the instructions at README_Caffe.md.&lt;br /&gt;
If you get &amp;quot;error: kernel launches from templates are not allowed in system files&amp;quot;, use an older GCC version like 4.6 (see also https://github.com/BVLC/caffe/issues/337). If you get &amp;quot;ImportError: No module named &#039;yaml&#039;&amp;quot;, do &amp;lt;code&amp;gt;sudo apt install python-yaml&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== IOL ==&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;sudo apt install lua5.1 liblua5.1-dev&amp;lt;/code&amp;gt;&lt;br /&gt;
* clone [https://github.com/kmarkus/rFSM rFSM] (no need to compile anything here)&lt;br /&gt;
&lt;br /&gt;
Clone https://github.com/robotology/iol, CMake, make install&lt;br /&gt;
&lt;br /&gt;
== stereo-vision ==&lt;br /&gt;
&lt;br /&gt;
Clone https://github.com/robotology/stereo-vision, CMake with USE_SIFT_GPU=ON, make install&lt;br /&gt;
&lt;br /&gt;
= Best practices =&lt;br /&gt;
&lt;br /&gt;
Below are some tips and tricks taken from:&lt;br /&gt;
&lt;br /&gt;
* http://wiki.icub.org/wiki/Yarp-config&lt;br /&gt;
* http://www.yarp.it/yarp-config.html&lt;br /&gt;
* [https://docs.google.com/document/d/1S9m4DbrV1AJWo_E1r3F8k3ZzmhaTOWRJ9WFjXPFqVos IIT - How to setup and start the iCub from scratch] (last updated December 2016)&lt;br /&gt;
&lt;br /&gt;
== XML files ==&lt;br /&gt;
&lt;br /&gt;
Edit XML files locally, in /home/icub/.local/share/yarp&lt;br /&gt;
&lt;br /&gt;
To install robot-specific XML files, compile icub-main (just &amp;lt;code&amp;gt;make&amp;lt;/code&amp;gt;) then use commands like &amp;lt;code&amp;gt;yarp-config robot --import-all&amp;lt;/code&amp;gt; (installs all files) or &amp;lt;code&amp;gt;yarp-config robot --import iCubLisboa01 affordancesExploration.xml&amp;lt;/code&amp;gt; (installs specific files)&lt;br /&gt;
&lt;br /&gt;
== ini files ==&lt;br /&gt;
&lt;br /&gt;
To install application conf/*.ini files, compile a project (e.g., icub-main, poeticon, iol) then use commands like &amp;lt;code&amp;gt;yarp-config context --import-all&amp;lt;/code&amp;gt; (installs all files) or &amp;lt;code&amp;gt;yarp-config context --import actionsRenderingEngine&amp;lt;/code&amp;gt; (installs the files of specific applications)&lt;br /&gt;
&lt;br /&gt;
== Disabling some robot parts ==&lt;br /&gt;
&lt;br /&gt;
If the robot is not complete (or some parts need to be disabled):&lt;br /&gt;
&lt;br /&gt;
* In a pc104 shell, type &amp;lt;code&amp;gt;yarp-config robot --list&amp;lt;/code&amp;gt; to look for the .ini files from where the configuration values are launched: these are local copies of the robots-configuration repository files&lt;br /&gt;
* Go to the &amp;lt;code&amp;gt;INSTALLED DATA&amp;lt;/code&amp;gt; directory path and then, within the corresponding robot folder (e.g., iCubLisboa01), look for the file yarprobotinterface.ini, which points to a .xml file which contains the configuration paths for all the robot parts (e.g., icub_all.xml)&lt;br /&gt;
* If the local config file does not exist, there is only the canonical file in the build path: in that case, create a local one using &amp;lt;code&amp;gt;yarp-config --import&amp;lt;/code&amp;gt;&lt;br /&gt;
* Make a copy of the .xml file giving it a descriptive name (e.g., icub_no_legs.xml) and, in the copied file, comment or remove all lines that refer to .ini files of the part(s) that you want to disable&lt;br /&gt;
* Edit the contents of yarprobotinterface.ini so that it points to the new .xml file where the parts have been commented&lt;br /&gt;
* In the iCubStartup application GUI or xml, modify the way that gravityCompensator and wholeBodyDynamics are launched, so that they don&#039;t look for the configuration files of the parts that have been disabled: in the legs example, just add &amp;lt;code&amp;gt;--no_legs&amp;lt;/code&amp;gt; to the argument list&lt;br /&gt;
&lt;br /&gt;
= See also =&lt;br /&gt;
&lt;br /&gt;
* http://wiki.icub.org/wiki/Generic_iCub_machine_installation_instructions&lt;br /&gt;
&lt;br /&gt;
[[Category:Vislab]]&lt;/div&gt;</summary>
		<author><name>Giovanni Saponaro</name></author>
	</entry>
	<entry>
		<id>http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=ICub_machines_configuration&amp;diff=7076</id>
		<title>ICub machines configuration</title>
		<link rel="alternate" type="text/html" href="http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=ICub_machines_configuration&amp;diff=7076"/>
		<updated>2019-07-06T19:36:05Z</updated>

		<summary type="html">&lt;p&gt;Giovanni Saponaro: /* SiftGPU */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;In this page we describe the setup of the computers connected to the iCub robot, which all share a common network disk and configuration.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;See [[iCub machines configuration/Archive]] for obsolete information.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
= Operating system installation =&lt;br /&gt;
&lt;br /&gt;
Ubuntu LTS, default settings and partitioning. The first user to be created must be called &#039;&#039;&#039;icub&#039;&#039;&#039;, to make the distributed setup possible: for NFS network mount, this user has to have uid 1000 and guid 1000.&lt;br /&gt;
&lt;br /&gt;
In order to add a user:&lt;br /&gt;
* either use the Ubuntu graphical frontends&lt;br /&gt;
* or use a Terminal:&lt;br /&gt;
 sudo adduser icub&lt;br /&gt;
 sudo usermod -aG sudo icub  # gives sudo privileges&lt;br /&gt;
&lt;br /&gt;
= Other operations =&lt;br /&gt;
&lt;br /&gt;
== Network configuration ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;See also: [[VisLab network]], [[ISR computing resources]]&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Configure a static IP as explained in one of the following subsections, depending if the machine is a desktop or a server one.&lt;br /&gt;
&lt;br /&gt;
Also, it is recommended to set up the &amp;lt;code&amp;gt;/etc/hosts&amp;lt;/code&amp;gt; file as follows:&lt;br /&gt;
&lt;br /&gt;
 10.10.1.41 icubbrain1&lt;br /&gt;
 10.10.1.42 icubbrain2&lt;br /&gt;
 10.10.1.50 pc104&lt;br /&gt;
 10.10.1.51 icub-cuda&lt;br /&gt;
 10.10.1.53 icub-laptop&lt;br /&gt;
&lt;br /&gt;
You should be able to do &amp;lt;code&amp;gt;ping icubbrain1&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Desktop machines ===&lt;br /&gt;
&lt;br /&gt;
With the graphical Network Manager (https://help.ubuntu.com/16.04/ubuntu-help/net-fixed-ip-address.html), configure the connection &amp;quot;Auto eth0&amp;quot; IPv4 as follows:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|+ &lt;br /&gt;
! Address !! Netmask !! Gateway !! DNS Servers !! notes&lt;br /&gt;
|-&lt;br /&gt;
|10.10.1.x || 255.255.255.0 || 10.10.1.254 || 10.0.0.1, 10.0.0.2 || visnet (iCub machines)&lt;br /&gt;
|-&lt;br /&gt;
|10.0.x.y || 255.255.0.0 || 10.0.0.254 || 10.0.0.1, 10.0.0.2 || isrnet (rest of ISR)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Servers ===&lt;br /&gt;
&lt;br /&gt;
Edit &amp;lt;code&amp;gt;/etc/network/interfaces&amp;lt;/code&amp;gt; like this:&lt;br /&gt;
 auto lo&lt;br /&gt;
 iface lo inet loopback&lt;br /&gt;
   &lt;br /&gt;
 auto eth0&lt;br /&gt;
 iface eth0 inet static&lt;br /&gt;
 address 10.x.y.z # put your IP here, see above table&lt;br /&gt;
 netmask 255.255.x.y # see above table&lt;br /&gt;
 network 10.10.1.0&lt;br /&gt;
 broadcast 10.10.1.255&lt;br /&gt;
 gateway 10.10.1.254&lt;br /&gt;
 dns-nameservers 10.0.0.1 10.0.0.2&lt;br /&gt;
&lt;br /&gt;
In some versions of Ubuntu, to configure DNS you also need to edit &amp;lt;code&amp;gt;/etc/resolvconf/resolv.conf.d/head&amp;lt;/code&amp;gt; like this:&lt;br /&gt;
 nameserver 10.0.0.1&lt;br /&gt;
 nameserver 10.0.0.2&lt;br /&gt;
&lt;br /&gt;
then run:&lt;br /&gt;
 sudo resolvconf -u&lt;br /&gt;
&lt;br /&gt;
== Dependencies ==&lt;br /&gt;
&lt;br /&gt;
Installing the &#039;&#039;&#039;icub-common&#039;&#039;&#039; metapackage is sufficient. It is a bundle of the following packages (for more details see [http://wiki.icub.org/wiki/Linux:Installation_from_sources here], [http://wiki.icub.org/wiki/Linux:_dependencies here] and [https://github.com/robotology/yarp/blob/master/.travis.yml here]):&lt;br /&gt;
 sudo apt install build-essential libace-dev libedit-dev libeigen3-dev libncurses5-dev gfortran libtinyxml-dev libgraphviz-dev&lt;br /&gt;
 sudo apt install git-core ssh gcc g++ make cmake-curses-gui freeglut3-dev libxmu-dev libswscale-dev libavformat-dev&lt;br /&gt;
&lt;br /&gt;
Qt5 graphics dependencies in Ubuntu 16.04 Xenial:&lt;br /&gt;
&lt;br /&gt;
 sudo apt install qttools5-dev qtdeclarative5-dev qtdeclarative5-controls-plugin qtdeclarative5-dialogs-plugin qtmultimedia5-dev qtdeclarative5-qtmultimedia-plugin qtquick1-5-dev libqt5opengl5-dev&lt;br /&gt;
&lt;br /&gt;
Qt5 graphics dependencies in Debian Stretch:&lt;br /&gt;
 sudo apt install qml-module-qt-labs-folderlistmodel qml-module-qt-labs-settings&lt;br /&gt;
&lt;br /&gt;
iCub Simulator dependencies: SDL and ODE.&lt;br /&gt;
&lt;br /&gt;
GTK graphical programs are obsolete and replaced by their Qt equivalents. If you still want the old GTK programs, install &amp;lt;code&amp;gt;libgtkmm-2.4-dev&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Environment variables ==&lt;br /&gt;
&lt;br /&gt;
* Create a file called ~/.bashrc_iCub like this one. Usually you do not need all of the following variables and settings, just a subset.&lt;br /&gt;
&lt;br /&gt;
  export ROBOT_CODE=/usr/local/src/robot&lt;br /&gt;
&lt;br /&gt;
  export YARP_ROOT=$ROBOT_CODE/yarp&lt;br /&gt;
  export YARP_DIR=$YARP_ROOT/build&lt;br /&gt;
  export ICUB_ROOT=$ROBOT_CODE/icub-main&lt;br /&gt;
  export ICUB_DIR=$ICUB_ROOT/build&lt;br /&gt;
&lt;br /&gt;
  export ICUBcontrib_DIR=$ROBOT_CODE/icub-contrib-common/build&lt;br /&gt;
  export YARP_DATA_DIRS=$YARP_DIR/share/yarp:$ICUB_DIR/share/iCub:$ICUBcontrib_DIR/share/ICUBcontrib:$ROBOT_CODE/speech/svox-speech/build/share/speech&lt;br /&gt;
  export PATH=$PATH:$YARP_DIR/bin:$ICUB_DIR/bin:$ICUBcontrib_DIR/bin&lt;br /&gt;
&lt;br /&gt;
  export ODE_DIR=$ROBOT_CODE/ode-0.13/build&lt;br /&gt;
&lt;br /&gt;
  # OpenCV: select one of the following&lt;br /&gt;
  #export OpenCV_DIR=$ROBOT_CODE/opencv2/build&lt;br /&gt;
  #export OpenCV_DIR=$ROBOT_CODE/opencv2/build-cuda&lt;br /&gt;
  export OpenCV_DIR=$ROBOT_CODE/opencv3/build&lt;br /&gt;
  #export OpenCV_DIR=$ROBOT_CODE/opencv3/build-cuda&lt;br /&gt;
&lt;br /&gt;
  # To enable tab completion on yarp port names&lt;br /&gt;
  if [ -f $YARP_ROOT/scripts/yarp_completion ]; then&lt;br /&gt;
    source $YARP_ROOT/scripts/yarp_completion&lt;br /&gt;
  fi&lt;br /&gt;
&lt;br /&gt;
  # Set the name of your robot here.&lt;br /&gt;
  export YARP_ROBOT_NAME=iCubLisboa01&lt;br /&gt;
&lt;br /&gt;
  # Set-up optimizations&lt;br /&gt;
  export CMAKE_BUILD_TYPE=Release&lt;br /&gt;
&lt;br /&gt;
  # DebugStream customization&lt;br /&gt;
  export YARP_VERBOSE_OUTPUT=0&lt;br /&gt;
  export YARP_COLORED_OUTPUT=1&lt;br /&gt;
  export YARP_TRACE_ENABLE=0&lt;br /&gt;
  export YARP_FORWARD_LOG_ENABLE=0&lt;br /&gt;
&lt;br /&gt;
  # Lua&lt;br /&gt;
  ### DO NOT REMOVE &#039;;;;&#039; ###&lt;br /&gt;
  export LUA_PATH=&amp;quot;;;;$ROBOT_CODE/rFSM/?.lua;$ICUBcontrib_DIR/share/ICUBcontrib/contexts/interactiveObjectsLearning/LUA/?.lua&amp;quot;&lt;br /&gt;
  export LUA_CPATH=&amp;quot;;;;$YARP_ROOT/bindings/build-lua/?.so&amp;quot;&lt;br /&gt;
  export PATH=$PATH:$ROBOT_CODE/rFSM/tools:$ICUBcontrib_DIR/share/ICUBcontrib/contexts/interactiveObjectsLearning/LUA&lt;br /&gt;
  export PATH=$PATH:$YARP_ROOT/bindings/build-lua&lt;br /&gt;
  export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$YARP_ROOT/bindings/build-lua&lt;br /&gt;
&lt;br /&gt;
* Then, before the following line of /etc/bash.bashrc&lt;br /&gt;
 [ -z &amp;quot;$PS1&amp;quot; ] &amp;amp;&amp;amp; return&lt;br /&gt;
add this:&lt;br /&gt;
 # per-user environment variables (non-interactive and interactive mode)&lt;br /&gt;
 source $HOME/.bashrc_iCub&lt;br /&gt;
&lt;br /&gt;
The reason why we use the above custom file (as opposed to the standard ~/.bashrc) is that we want to enforce the variables both during interactive and non-interactive sessions, such as commands launched via &amp;lt;code&amp;gt;yarprun&amp;lt;/code&amp;gt; from another machine.&lt;br /&gt;
&lt;br /&gt;
See also https://git.robotology.eu/mbrunettini/icub-environment for the variables and scripts employed at IIT.&lt;br /&gt;
&lt;br /&gt;
= Additional software =&lt;br /&gt;
&lt;br /&gt;
== OpenCV ==&lt;br /&gt;
&lt;br /&gt;
=== Ubuntu packages ===&lt;br /&gt;
&lt;br /&gt;
* this is the easiest way to install OpenCV, however the Ubuntu packages might be too old and/or missing some specific features (in that case proceed with a manual installation, see below)&lt;br /&gt;
&lt;br /&gt;
  sudo apt install libcv-dev libhighgui-dev libcvaux-dev libopencv-gpu-dev&lt;br /&gt;
&lt;br /&gt;
=== Manual compilation ===&lt;br /&gt;
&lt;br /&gt;
* on most machines: download OpenCV, create a build directory, CMake, set WITH_CUDA=OFF, compile, set OpenCV_DIR to the path of OpenCV-x.y.z/build, for example:&lt;br /&gt;
 export OpenCV_DIR=$code/OpenCV-x.y.z/build&lt;br /&gt;
&lt;br /&gt;
* on CUDA machines, in order to compile CUDA-enabled modules: create a build-cuda directory, CMake, set WITH_CUDA=ON, compile, set OpenCV_DIR to the path of OpenCV-x.y.z/build-cuda. You may need to disable &amp;lt;code&amp;gt;cudacodec&amp;lt;/code&amp;gt;, see also https://github.com/opencv/opencv_contrib/issues/1786&lt;br /&gt;
&lt;br /&gt;
== YARP and iCub ==&lt;br /&gt;
&lt;br /&gt;
* In general, when compiling this software, do &#039;&#039;&#039;not&#039;&#039;&#039; use &amp;lt;code&amp;gt;sudo make install&amp;lt;/code&amp;gt; but simply &amp;lt;code&amp;gt;make&amp;lt;/code&amp;gt; (and configure the PATH variable in such a way that it finds the binaries from the build directory).&lt;br /&gt;
&lt;br /&gt;
* If you work with the robot, use the volume shares exported from the NFS server.&lt;br /&gt;
&lt;br /&gt;
* In other cases, follow the instructions on the [[iCub software]] article. &lt;br /&gt;
&lt;br /&gt;
* yarp CMake configuration&lt;br /&gt;
 CMAKE_BUILD_TYPE Release&lt;br /&gt;
 CREATE_GUIS&lt;br /&gt;
 CREATE_LIB_MATH&lt;br /&gt;
&lt;br /&gt;
 // to enable 640x480@30Hz images with Bayer encoding&lt;br /&gt;
 // install libraw1394-dev libdc1394-22-dev then enable&lt;br /&gt;
 CREATE_OPTIONAL_CARRIERS&lt;br /&gt;
 ENABLE_yarpcar_bayer ON&lt;br /&gt;
 ENABLE_yarpcar_mjpeg ON&lt;br /&gt;
&lt;br /&gt;
* icub-main CMake configuration&lt;br /&gt;
 CMAKE_BUILD_TYPE Release&lt;br /&gt;
 // on servers, do http://wiki.icub.org/wiki/Installing_IPOPT then enable&lt;br /&gt;
 ENABLE_icubmod_cartesiancontrollerclient ON&lt;br /&gt;
 ENABLE_icubmod_cartesiancontrollerserver ON&lt;br /&gt;
 ENABLE_icubmod_gazecontrollerclient ON&lt;br /&gt;
&lt;br /&gt;
* final configuration&lt;br /&gt;
# &amp;lt;code&amp;gt;yarp namespace /icub&amp;lt;/code&amp;gt;&lt;br /&gt;
# &amp;lt;code&amp;gt;yarp conf 10.10.1.53 10000&amp;lt;/code&amp;gt; (yarpserver runs on [[iCub laptop]])&lt;br /&gt;
&lt;br /&gt;
* special machines such as [[pc104]] need different flags&lt;br /&gt;
&lt;br /&gt;
== CUDA ==&lt;br /&gt;
&lt;br /&gt;
=== Prerequisites ===&lt;br /&gt;
&lt;br /&gt;
 sudo apt install freeglut3-dev libdevil-dev libglew-dev&lt;br /&gt;
 sudo apt purge libcudart*  // because we will manually install it&lt;br /&gt;
&lt;br /&gt;
Troubleshooting: http://askubuntu.com/questions/410604/installing-nvidia-drivers-with-pkg1-run-ends-with-no-version-h-found&lt;br /&gt;
&lt;br /&gt;
=== CUDA Toolkit, SDK and Examples ===&lt;br /&gt;
&lt;br /&gt;
* stop X servers: &amp;lt;code&amp;gt;sudo service lightdm stop&amp;lt;/code&amp;gt; (or &amp;lt;code&amp;gt;gdm stop&amp;lt;/code&amp;gt; depending on configuration)&lt;br /&gt;
* download and install NVIDIA CUDA Toolkit from https://developer.nvidia.com/cuda-downloads&lt;br /&gt;
* preferably, use Installer Type: runfile (local). Alternatively, deb (local)&lt;br /&gt;
* if you obtain the error &amp;quot;Toolkit:  Installation Failed. Using unsupported Compiler.&amp;quot;, use the override option, e.g., &amp;lt;code&amp;gt;./cuda_6.0.37_linux_64.run --override&amp;lt;/code&amp;gt;&lt;br /&gt;
* if you obtain the error &amp;quot;The driver installation is unable to locate the kernel source. Please make sure that the kernel source packages are installed and set up correctly&amp;quot;:&lt;br /&gt;
** read the CUDA log in /tmp and verify that the graphics card is currently supported -- if not, you might need to install a legacy NVIDIA driver. For example, the Quadro FX 580 card needs NVIDIA legacy drivers 340.xx: install them and then answer &#039;&#039;&#039;no&#039;&#039;&#039; when CUDA Toolkit installer asks &amp;quot;Install NVIDIA Accelerated Graphics Driver for Linux-x86_64 346.46?&amp;quot;&lt;br /&gt;
** &amp;lt;code&amp;gt;sudo apt install linux-generic linux-headers-$(uname -r) linux-headers-generic-lts-trusty&amp;lt;/code&amp;gt; (or other Ubuntu version codename)&lt;br /&gt;
** call the installer specifying the kernel source path, e.g., &amp;lt;code&amp;gt;./cuda_7.0.28_linux.run --kernel-source-path=/usr/src/linux-headers-3.13.0-52-generic/&amp;lt;/code&amp;gt;&lt;br /&gt;
* output of successful installation:&lt;br /&gt;
 Driver:   Installed&lt;br /&gt;
 Toolkit:  Installed in /usr/local/cuda-7.0&lt;br /&gt;
 Samples:  Not Selected&lt;br /&gt;
 Please make sure that&lt;br /&gt;
 -   PATH includes /usr/local/cuda-7.0/bin&lt;br /&gt;
 -   LD_LIBRARY_PATH includes /usr/local/cuda-7.0/lib64, or, add /usr/local/cuda-7.0/lib64 to /etc/ld.so.conf and run ldconfig as root&lt;br /&gt;
 To uninstall the CUDA Toolkit, run the uninstall script in /usr/local/cuda-7.0/bin&lt;br /&gt;
 To uninstall the NVIDIA Driver, run nvidia-uninstall&lt;br /&gt;
&lt;br /&gt;
* troubleshooting:&lt;br /&gt;
** http://askubuntu.com/questions/451672/installing-and-testing-cuda-in-ubuntu-14-04&lt;br /&gt;
** http://troylee2008.blogspot.pt/2012/05/linking-error-while-compiling-cuda-sdk.html&lt;br /&gt;
** https://devtalk.nvidia.com/default/topic/617414/-solved-cuda-driver-version-is-insufficient-for-cuda-runtime-version-fedora-18-rpmfusion-driver/&lt;br /&gt;
&lt;br /&gt;
=== SiftGPU ===&lt;br /&gt;
&lt;br /&gt;
* download it from http://cs.unc.edu/~ccwu/siftgpu/&lt;br /&gt;
* unzip it - typically in your home directory, not in the NFS shared folder&lt;br /&gt;
* compile with &amp;lt;code&amp;gt;make&amp;lt;/code&amp;gt;&lt;br /&gt;
* if you obtain &amp;quot;unspecified launch failure&amp;quot; and 0 sift features/matches, check that the X server is running: &amp;lt;code&amp;gt;sudo service lightdm start&amp;lt;/code&amp;gt;&lt;br /&gt;
* if you obtain the error &amp;quot;/usr/local/cuda/bin/nvcc: Command not found&amp;quot;, this can help: &amp;lt;code&amp;gt;sudo ln -s /usr/lib/nvidia-cuda-toolkit /usr/local/cuda&amp;lt;/code&amp;gt;. See also http://askubuntu.com/questions/231503/nvcc-compiler-setup-ubuntu-12-04&lt;br /&gt;
* run the test program &amp;lt;code&amp;gt;SimpleSIFT&amp;lt;/code&amp;gt; - it should work via ssh, as well as in a local session&lt;br /&gt;
* example of successful execution:&lt;br /&gt;
 $ ./SimpleSIFT &lt;br /&gt;
 Unable to create OpenGL Context!&lt;br /&gt;
 For nVidia cards, you can try change to CUDA mode in this case&lt;br /&gt;
 NOTE: changing maximum texture dimension to 32768&lt;br /&gt;
 [SiftGPU Language]:	CUDA&lt;br /&gt;
 Image size :	800x600&lt;br /&gt;
 Image loaded :	../data/800-1.jpg&lt;br /&gt;
 #Features:	3347&lt;br /&gt;
 #Features MO:	3910&lt;br /&gt;
 [RUN SIFT]:	0.339&lt;br /&gt;
 Image size :	640x480&lt;br /&gt;
 Image loaded :	../data/640-1.jpg&lt;br /&gt;
 #Features:	2372&lt;br /&gt;
 #Features MO:	2767&lt;br /&gt;
 [RUN SIFT]:	0.208&lt;br /&gt;
 NOTE: changing maximum texture dimension to 32768&lt;br /&gt;
 [SiftMatchGPU]: CUDA&lt;br /&gt;
 2247 sift matches were found;&lt;br /&gt;
&lt;br /&gt;
* define &amp;lt;code&amp;gt;export SIFTGPU_DIR=~/SiftGPU&amp;lt;/code&amp;gt; or similar in your iCub bashrc file, so that libsiftgpu.so is found by GPU accelerated modules&lt;br /&gt;
&lt;br /&gt;
== himrep ==&lt;br /&gt;
&lt;br /&gt;
Clone https://github.com/robotology/himrep, follow the instructions to compile &amp;lt;code&amp;gt;liblinear&amp;lt;/code&amp;gt;, CMake, make install&lt;br /&gt;
&lt;br /&gt;
To use the deep neural network object recognition, based on Caffe, follow the instructions at README_Caffe.md.&lt;br /&gt;
If you get &amp;quot;error: kernel launches from templates are not allowed in system files&amp;quot;, use an older GCC version like 4.6 (see also https://github.com/BVLC/caffe/issues/337). If you get &amp;quot;ImportError: No module named &#039;yaml&#039;&amp;quot;, do &amp;lt;code&amp;gt;sudo apt install python-yaml&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== IOL ==&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;sudo apt install lua5.1 liblua5.1-dev&amp;lt;/code&amp;gt;&lt;br /&gt;
* clone [https://github.com/kmarkus/rFSM rFSM] (no need to compile anything here)&lt;br /&gt;
&lt;br /&gt;
Clone https://github.com/robotology/iol, CMake, make install&lt;br /&gt;
&lt;br /&gt;
== stereo-vision ==&lt;br /&gt;
&lt;br /&gt;
Clone https://github.com/robotology/stereo-vision, CMake with USE_SIFT_GPU=ON, make install&lt;br /&gt;
&lt;br /&gt;
= Best practices =&lt;br /&gt;
&lt;br /&gt;
Below are some tips and tricks taken from:&lt;br /&gt;
&lt;br /&gt;
* http://wiki.icub.org/wiki/Yarp-config&lt;br /&gt;
* http://www.yarp.it/yarp-config.html&lt;br /&gt;
* [https://docs.google.com/document/d/1S9m4DbrV1AJWo_E1r3F8k3ZzmhaTOWRJ9WFjXPFqVos IIT - How to setup and start the iCub from scratch] (last updated December 2016)&lt;br /&gt;
&lt;br /&gt;
== XML files ==&lt;br /&gt;
&lt;br /&gt;
Edit XML files locally, in /home/icub/.local/share/yarp&lt;br /&gt;
&lt;br /&gt;
To install robot-specific XML files, compile icub-main (just &amp;lt;code&amp;gt;make&amp;lt;/code&amp;gt;) then use commands like &amp;lt;code&amp;gt;yarp-config robot --import-all&amp;lt;/code&amp;gt; (installs all files) or &amp;lt;code&amp;gt;yarp-config robot --import iCubLisboa01 affordancesExploration.xml&amp;lt;/code&amp;gt; (installs specific files)&lt;br /&gt;
&lt;br /&gt;
== ini files ==&lt;br /&gt;
&lt;br /&gt;
To install application conf/*.ini files, compile a project (e.g., icub-main, poeticon, iol) then use commands like &amp;lt;code&amp;gt;yarp-config context --import-all&amp;lt;/code&amp;gt; (installs all files) or &amp;lt;code&amp;gt;yarp-config context --import actionsRenderingEngine&amp;lt;/code&amp;gt; (installs the files of specific applications)&lt;br /&gt;
&lt;br /&gt;
== Disabling some robot parts ==&lt;br /&gt;
&lt;br /&gt;
If the robot is not complete (or some parts need to be disabled):&lt;br /&gt;
&lt;br /&gt;
* In a pc104 shell, type &amp;lt;code&amp;gt;yarp-config robot --list&amp;lt;/code&amp;gt; to look for the .ini files from where the configuration values are launched: these are local copies of the robots-configuration repository files&lt;br /&gt;
* Go to the &amp;lt;code&amp;gt;INSTALLED DATA&amp;lt;/code&amp;gt; directory path and then, within the corresponding robot folder (e.g., iCubLisboa01), look for the file yarprobotinterface.ini, which points to a .xml file which contains the configuration paths for all the robot parts (e.g., icub_all.xml)&lt;br /&gt;
* If the local config file does not exist, there is only the canonical file in the build path: in that case, create a local one using &amp;lt;code&amp;gt;yarp-config --import&amp;lt;/code&amp;gt;&lt;br /&gt;
* Make a copy of the .xml file giving it a descriptive name (e.g., icub_no_legs.xml) and, in the copied file, comment or remove all lines that refer to .ini files of the part(s) that you want to disable&lt;br /&gt;
* Edit the contents of yarprobotinterface.ini so that it points to the new .xml file where the parts have been commented&lt;br /&gt;
* In the iCubStartup application GUI or xml, modify the way that gravityCompensator and wholeBodyDynamics are launched, so that they don&#039;t look for the configuration files of the parts that have been disabled: in the legs example, just add &amp;lt;code&amp;gt;--no_legs&amp;lt;/code&amp;gt; to the argument list&lt;br /&gt;
&lt;br /&gt;
= See also =&lt;br /&gt;
&lt;br /&gt;
* http://wiki.icub.org/wiki/Generic_iCub_machine_installation_instructions&lt;br /&gt;
&lt;br /&gt;
[[Category:Vislab]]&lt;/div&gt;</summary>
		<author><name>Giovanni Saponaro</name></author>
	</entry>
	<entry>
		<id>http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=ICub_machines_configuration&amp;diff=7075</id>
		<title>ICub machines configuration</title>
		<link rel="alternate" type="text/html" href="http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=ICub_machines_configuration&amp;diff=7075"/>
		<updated>2019-06-30T21:12:52Z</updated>

		<summary type="html">&lt;p&gt;Giovanni Saponaro: /* CUDA Toolkit, SDK and Examples */ update CUDA instructions&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;In this page we describe the setup of the computers connected to the iCub robot, which all share a common network disk and configuration.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;See [[iCub machines configuration/Archive]] for obsolete information.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
= Operating system installation =&lt;br /&gt;
&lt;br /&gt;
Ubuntu LTS, default settings and partitioning. The first user to be created must be called &#039;&#039;&#039;icub&#039;&#039;&#039;, to make the distributed setup possible: for NFS network mount, this user has to have uid 1000 and guid 1000.&lt;br /&gt;
&lt;br /&gt;
In order to add a user:&lt;br /&gt;
* either use the Ubuntu graphical frontends&lt;br /&gt;
* or use a Terminal:&lt;br /&gt;
 sudo adduser icub&lt;br /&gt;
 sudo usermod -aG sudo icub  # gives sudo privileges&lt;br /&gt;
&lt;br /&gt;
= Other operations =&lt;br /&gt;
&lt;br /&gt;
== Network configuration ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;See also: [[VisLab network]], [[ISR computing resources]]&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Configure a static IP as explained in one of the following subsections, depending if the machine is a desktop or a server one.&lt;br /&gt;
&lt;br /&gt;
Also, it is recommended to set up the &amp;lt;code&amp;gt;/etc/hosts&amp;lt;/code&amp;gt; file as follows:&lt;br /&gt;
&lt;br /&gt;
 10.10.1.41 icubbrain1&lt;br /&gt;
 10.10.1.42 icubbrain2&lt;br /&gt;
 10.10.1.50 pc104&lt;br /&gt;
 10.10.1.51 icub-cuda&lt;br /&gt;
 10.10.1.53 icub-laptop&lt;br /&gt;
&lt;br /&gt;
You should be able to do &amp;lt;code&amp;gt;ping icubbrain1&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Desktop machines ===&lt;br /&gt;
&lt;br /&gt;
With the graphical Network Manager (https://help.ubuntu.com/16.04/ubuntu-help/net-fixed-ip-address.html), configure the connection &amp;quot;Auto eth0&amp;quot; IPv4 as follows:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|+ &lt;br /&gt;
! Address !! Netmask !! Gateway !! DNS Servers !! notes&lt;br /&gt;
|-&lt;br /&gt;
|10.10.1.x || 255.255.255.0 || 10.10.1.254 || 10.0.0.1, 10.0.0.2 || visnet (iCub machines)&lt;br /&gt;
|-&lt;br /&gt;
|10.0.x.y || 255.255.0.0 || 10.0.0.254 || 10.0.0.1, 10.0.0.2 || isrnet (rest of ISR)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Servers ===&lt;br /&gt;
&lt;br /&gt;
Edit &amp;lt;code&amp;gt;/etc/network/interfaces&amp;lt;/code&amp;gt; like this:&lt;br /&gt;
 auto lo&lt;br /&gt;
 iface lo inet loopback&lt;br /&gt;
   &lt;br /&gt;
 auto eth0&lt;br /&gt;
 iface eth0 inet static&lt;br /&gt;
 address 10.x.y.z # put your IP here, see above table&lt;br /&gt;
 netmask 255.255.x.y # see above table&lt;br /&gt;
 network 10.10.1.0&lt;br /&gt;
 broadcast 10.10.1.255&lt;br /&gt;
 gateway 10.10.1.254&lt;br /&gt;
 dns-nameservers 10.0.0.1 10.0.0.2&lt;br /&gt;
&lt;br /&gt;
In some versions of Ubuntu, to configure DNS you also need to edit &amp;lt;code&amp;gt;/etc/resolvconf/resolv.conf.d/head&amp;lt;/code&amp;gt; like this:&lt;br /&gt;
 nameserver 10.0.0.1&lt;br /&gt;
 nameserver 10.0.0.2&lt;br /&gt;
&lt;br /&gt;
then run:&lt;br /&gt;
 sudo resolvconf -u&lt;br /&gt;
&lt;br /&gt;
== Dependencies ==&lt;br /&gt;
&lt;br /&gt;
Installing the &#039;&#039;&#039;icub-common&#039;&#039;&#039; metapackage is sufficient. It is a bundle of the following packages (for more details see [http://wiki.icub.org/wiki/Linux:Installation_from_sources here], [http://wiki.icub.org/wiki/Linux:_dependencies here] and [https://github.com/robotology/yarp/blob/master/.travis.yml here]):&lt;br /&gt;
 sudo apt install build-essential libace-dev libedit-dev libeigen3-dev libncurses5-dev gfortran libtinyxml-dev libgraphviz-dev&lt;br /&gt;
 sudo apt install git-core ssh gcc g++ make cmake-curses-gui freeglut3-dev libxmu-dev libswscale-dev libavformat-dev&lt;br /&gt;
&lt;br /&gt;
Qt5 graphics dependencies in Ubuntu 16.04 Xenial:&lt;br /&gt;
&lt;br /&gt;
 sudo apt install qttools5-dev qtdeclarative5-dev qtdeclarative5-controls-plugin qtdeclarative5-dialogs-plugin qtmultimedia5-dev qtdeclarative5-qtmultimedia-plugin qtquick1-5-dev libqt5opengl5-dev&lt;br /&gt;
&lt;br /&gt;
Qt5 graphics dependencies in Debian Stretch:&lt;br /&gt;
 sudo apt install qml-module-qt-labs-folderlistmodel qml-module-qt-labs-settings&lt;br /&gt;
&lt;br /&gt;
iCub Simulator dependencies: SDL and ODE.&lt;br /&gt;
&lt;br /&gt;
GTK graphical programs are obsolete and replaced by their Qt equivalents. If you still want the old GTK programs, install &amp;lt;code&amp;gt;libgtkmm-2.4-dev&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Environment variables ==&lt;br /&gt;
&lt;br /&gt;
* Create a file called ~/.bashrc_iCub like this one. Usually you do not need all of the following variables and settings, just a subset.&lt;br /&gt;
&lt;br /&gt;
  export ROBOT_CODE=/usr/local/src/robot&lt;br /&gt;
&lt;br /&gt;
  export YARP_ROOT=$ROBOT_CODE/yarp&lt;br /&gt;
  export YARP_DIR=$YARP_ROOT/build&lt;br /&gt;
  export ICUB_ROOT=$ROBOT_CODE/icub-main&lt;br /&gt;
  export ICUB_DIR=$ICUB_ROOT/build&lt;br /&gt;
&lt;br /&gt;
  export ICUBcontrib_DIR=$ROBOT_CODE/icub-contrib-common/build&lt;br /&gt;
  export YARP_DATA_DIRS=$YARP_DIR/share/yarp:$ICUB_DIR/share/iCub:$ICUBcontrib_DIR/share/ICUBcontrib:$ROBOT_CODE/speech/svox-speech/build/share/speech&lt;br /&gt;
  export PATH=$PATH:$YARP_DIR/bin:$ICUB_DIR/bin:$ICUBcontrib_DIR/bin&lt;br /&gt;
&lt;br /&gt;
  export ODE_DIR=$ROBOT_CODE/ode-0.13/build&lt;br /&gt;
&lt;br /&gt;
  # OpenCV: select one of the following&lt;br /&gt;
  #export OpenCV_DIR=$ROBOT_CODE/opencv2/build&lt;br /&gt;
  #export OpenCV_DIR=$ROBOT_CODE/opencv2/build-cuda&lt;br /&gt;
  export OpenCV_DIR=$ROBOT_CODE/opencv3/build&lt;br /&gt;
  #export OpenCV_DIR=$ROBOT_CODE/opencv3/build-cuda&lt;br /&gt;
&lt;br /&gt;
  # To enable tab completion on yarp port names&lt;br /&gt;
  if [ -f $YARP_ROOT/scripts/yarp_completion ]; then&lt;br /&gt;
    source $YARP_ROOT/scripts/yarp_completion&lt;br /&gt;
  fi&lt;br /&gt;
&lt;br /&gt;
  # Set the name of your robot here.&lt;br /&gt;
  export YARP_ROBOT_NAME=iCubLisboa01&lt;br /&gt;
&lt;br /&gt;
  # Set-up optimizations&lt;br /&gt;
  export CMAKE_BUILD_TYPE=Release&lt;br /&gt;
&lt;br /&gt;
  # DebugStream customization&lt;br /&gt;
  export YARP_VERBOSE_OUTPUT=0&lt;br /&gt;
  export YARP_COLORED_OUTPUT=1&lt;br /&gt;
  export YARP_TRACE_ENABLE=0&lt;br /&gt;
  export YARP_FORWARD_LOG_ENABLE=0&lt;br /&gt;
&lt;br /&gt;
  # Lua&lt;br /&gt;
  ### DO NOT REMOVE &#039;;;;&#039; ###&lt;br /&gt;
  export LUA_PATH=&amp;quot;;;;$ROBOT_CODE/rFSM/?.lua;$ICUBcontrib_DIR/share/ICUBcontrib/contexts/interactiveObjectsLearning/LUA/?.lua&amp;quot;&lt;br /&gt;
  export LUA_CPATH=&amp;quot;;;;$YARP_ROOT/bindings/build-lua/?.so&amp;quot;&lt;br /&gt;
  export PATH=$PATH:$ROBOT_CODE/rFSM/tools:$ICUBcontrib_DIR/share/ICUBcontrib/contexts/interactiveObjectsLearning/LUA&lt;br /&gt;
  export PATH=$PATH:$YARP_ROOT/bindings/build-lua&lt;br /&gt;
  export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$YARP_ROOT/bindings/build-lua&lt;br /&gt;
&lt;br /&gt;
* Then, before the following line of /etc/bash.bashrc&lt;br /&gt;
 [ -z &amp;quot;$PS1&amp;quot; ] &amp;amp;&amp;amp; return&lt;br /&gt;
add this:&lt;br /&gt;
 # per-user environment variables (non-interactive and interactive mode)&lt;br /&gt;
 source $HOME/.bashrc_iCub&lt;br /&gt;
&lt;br /&gt;
The reason why we use the above custom file (as opposed to the standard ~/.bashrc) is that we want to enforce the variables both during interactive and non-interactive sessions, such as commands launched via &amp;lt;code&amp;gt;yarprun&amp;lt;/code&amp;gt; from another machine.&lt;br /&gt;
&lt;br /&gt;
See also https://git.robotology.eu/mbrunettini/icub-environment for the variables and scripts employed at IIT.&lt;br /&gt;
&lt;br /&gt;
= Additional software =&lt;br /&gt;
&lt;br /&gt;
== OpenCV ==&lt;br /&gt;
&lt;br /&gt;
=== Ubuntu packages ===&lt;br /&gt;
&lt;br /&gt;
* this is the easiest way to install OpenCV, however the Ubuntu packages might be too old and/or missing some specific features (in that case proceed with a manual installation, see below)&lt;br /&gt;
&lt;br /&gt;
  sudo apt install libcv-dev libhighgui-dev libcvaux-dev libopencv-gpu-dev&lt;br /&gt;
&lt;br /&gt;
=== Manual compilation ===&lt;br /&gt;
&lt;br /&gt;
* on most machines: download OpenCV, create a build directory, CMake, set WITH_CUDA=OFF, compile, set OpenCV_DIR to the path of OpenCV-x.y.z/build, for example:&lt;br /&gt;
 export OpenCV_DIR=$code/OpenCV-x.y.z/build&lt;br /&gt;
&lt;br /&gt;
* on CUDA machines, in order to compile CUDA-enabled modules: create a build-cuda directory, CMake, set WITH_CUDA=ON, compile, set OpenCV_DIR to the path of OpenCV-x.y.z/build-cuda. You may need to disable &amp;lt;code&amp;gt;cudacodec&amp;lt;/code&amp;gt;, see also https://github.com/opencv/opencv_contrib/issues/1786&lt;br /&gt;
&lt;br /&gt;
== YARP and iCub ==&lt;br /&gt;
&lt;br /&gt;
* In general, when compiling this software, do &#039;&#039;&#039;not&#039;&#039;&#039; use &amp;lt;code&amp;gt;sudo make install&amp;lt;/code&amp;gt; but simply &amp;lt;code&amp;gt;make&amp;lt;/code&amp;gt; (and configure the PATH variable in such a way that it finds the binaries from the build directory).&lt;br /&gt;
&lt;br /&gt;
* If you work with the robot, use the volume shares exported from the NFS server.&lt;br /&gt;
&lt;br /&gt;
* In other cases, follow the instructions on the [[iCub software]] article. &lt;br /&gt;
&lt;br /&gt;
* yarp CMake configuration&lt;br /&gt;
 CMAKE_BUILD_TYPE Release&lt;br /&gt;
 CREATE_GUIS&lt;br /&gt;
 CREATE_LIB_MATH&lt;br /&gt;
&lt;br /&gt;
 // to enable 640x480@30Hz images with Bayer encoding&lt;br /&gt;
 // install libraw1394-dev libdc1394-22-dev then enable&lt;br /&gt;
 CREATE_OPTIONAL_CARRIERS&lt;br /&gt;
 ENABLE_yarpcar_bayer ON&lt;br /&gt;
 ENABLE_yarpcar_mjpeg ON&lt;br /&gt;
&lt;br /&gt;
* icub-main CMake configuration&lt;br /&gt;
 CMAKE_BUILD_TYPE Release&lt;br /&gt;
 // on servers, do http://wiki.icub.org/wiki/Installing_IPOPT then enable&lt;br /&gt;
 ENABLE_icubmod_cartesiancontrollerclient ON&lt;br /&gt;
 ENABLE_icubmod_cartesiancontrollerserver ON&lt;br /&gt;
 ENABLE_icubmod_gazecontrollerclient ON&lt;br /&gt;
&lt;br /&gt;
* final configuration&lt;br /&gt;
# &amp;lt;code&amp;gt;yarp namespace /icub&amp;lt;/code&amp;gt;&lt;br /&gt;
# &amp;lt;code&amp;gt;yarp conf 10.10.1.53 10000&amp;lt;/code&amp;gt; (yarpserver runs on [[iCub laptop]])&lt;br /&gt;
&lt;br /&gt;
* special machines such as [[pc104]] need different flags&lt;br /&gt;
&lt;br /&gt;
== CUDA ==&lt;br /&gt;
&lt;br /&gt;
=== Prerequisites ===&lt;br /&gt;
&lt;br /&gt;
 sudo apt install freeglut3-dev libdevil-dev libglew-dev&lt;br /&gt;
 sudo apt purge libcudart*  // because we will manually install it&lt;br /&gt;
&lt;br /&gt;
Troubleshooting: http://askubuntu.com/questions/410604/installing-nvidia-drivers-with-pkg1-run-ends-with-no-version-h-found&lt;br /&gt;
&lt;br /&gt;
=== CUDA Toolkit, SDK and Examples ===&lt;br /&gt;
&lt;br /&gt;
* stop X servers: &amp;lt;code&amp;gt;sudo service lightdm stop&amp;lt;/code&amp;gt; (or &amp;lt;code&amp;gt;gdm stop&amp;lt;/code&amp;gt; depending on configuration)&lt;br /&gt;
* download and install NVIDIA CUDA Toolkit from https://developer.nvidia.com/cuda-downloads&lt;br /&gt;
* preferably, use Installer Type: runfile (local). Alternatively, deb (local)&lt;br /&gt;
* if you obtain the error &amp;quot;Toolkit:  Installation Failed. Using unsupported Compiler.&amp;quot;, use the override option, e.g., &amp;lt;code&amp;gt;./cuda_6.0.37_linux_64.run --override&amp;lt;/code&amp;gt;&lt;br /&gt;
* if you obtain the error &amp;quot;The driver installation is unable to locate the kernel source. Please make sure that the kernel source packages are installed and set up correctly&amp;quot;:&lt;br /&gt;
** read the CUDA log in /tmp and verify that the graphics card is currently supported -- if not, you might need to install a legacy NVIDIA driver. For example, the Quadro FX 580 card needs NVIDIA legacy drivers 340.xx: install them and then answer &#039;&#039;&#039;no&#039;&#039;&#039; when CUDA Toolkit installer asks &amp;quot;Install NVIDIA Accelerated Graphics Driver for Linux-x86_64 346.46?&amp;quot;&lt;br /&gt;
** &amp;lt;code&amp;gt;sudo apt install linux-generic linux-headers-$(uname -r) linux-headers-generic-lts-trusty&amp;lt;/code&amp;gt; (or other Ubuntu version codename)&lt;br /&gt;
** call the installer specifying the kernel source path, e.g., &amp;lt;code&amp;gt;./cuda_7.0.28_linux.run --kernel-source-path=/usr/src/linux-headers-3.13.0-52-generic/&amp;lt;/code&amp;gt;&lt;br /&gt;
* output of successful installation:&lt;br /&gt;
 Driver:   Installed&lt;br /&gt;
 Toolkit:  Installed in /usr/local/cuda-7.0&lt;br /&gt;
 Samples:  Not Selected&lt;br /&gt;
 Please make sure that&lt;br /&gt;
 -   PATH includes /usr/local/cuda-7.0/bin&lt;br /&gt;
 -   LD_LIBRARY_PATH includes /usr/local/cuda-7.0/lib64, or, add /usr/local/cuda-7.0/lib64 to /etc/ld.so.conf and run ldconfig as root&lt;br /&gt;
 To uninstall the CUDA Toolkit, run the uninstall script in /usr/local/cuda-7.0/bin&lt;br /&gt;
 To uninstall the NVIDIA Driver, run nvidia-uninstall&lt;br /&gt;
&lt;br /&gt;
* troubleshooting:&lt;br /&gt;
** http://askubuntu.com/questions/451672/installing-and-testing-cuda-in-ubuntu-14-04&lt;br /&gt;
** http://troylee2008.blogspot.pt/2012/05/linking-error-while-compiling-cuda-sdk.html&lt;br /&gt;
** https://devtalk.nvidia.com/default/topic/617414/-solved-cuda-driver-version-is-insufficient-for-cuda-runtime-version-fedora-18-rpmfusion-driver/&lt;br /&gt;
&lt;br /&gt;
=== SiftGPU ===&lt;br /&gt;
&lt;br /&gt;
* download it from http://cs.unc.edu/~ccwu/siftgpu/&lt;br /&gt;
* unzip it - typically in your home directory, not in the NFS shared folder&lt;br /&gt;
* compile with &amp;lt;code&amp;gt;make&amp;lt;/code&amp;gt;&lt;br /&gt;
* if you obtain &amp;quot;unspecified launch failure&amp;quot; and 0 sift features/matches, check that the X server is running: &amp;lt;code&amp;gt;sudo service lightdm start&amp;lt;/code&amp;gt;&lt;br /&gt;
* if you obtain the error &amp;quot;/usr/local/cuda/bin/nvcc: Command not found&amp;quot;, this can help: &amp;lt;code&amp;gt;sudo ln -s /usr/lib/nvidia-cuda-toolkit /usr/local/cuda&amp;lt;/code&amp;gt;. See also http://askubuntu.com/questions/231503/nvcc-compiler-setup-ubuntu-12-04&lt;br /&gt;
* run the test program &amp;lt;code&amp;gt;SimpleSIFT&amp;lt;/code&amp;gt; - it should work via ssh, as well as in a local session&lt;br /&gt;
* example of successful execution:&lt;br /&gt;
 $ ./SimpleSIFT &lt;br /&gt;
 Unable to create OpenGL Context!&lt;br /&gt;
 For nVidia cards, you can try change to CUDA mode in this case&lt;br /&gt;
 NOTE: changing maximum texture dimension to 32768&lt;br /&gt;
 [SiftGPU Language]:	CUDA&lt;br /&gt;
 Image size :	800x600&lt;br /&gt;
 Image loaded :	../data/800-1.jpg&lt;br /&gt;
 #Features:	3347&lt;br /&gt;
 #Features MO:	3910&lt;br /&gt;
 [RUN SIFT]:	0.339&lt;br /&gt;
 Image size :	640x480&lt;br /&gt;
 Image loaded :	../data/640-1.jpg&lt;br /&gt;
 #Features:	2372&lt;br /&gt;
 #Features MO:	2767&lt;br /&gt;
 [RUN SIFT]:	0.208&lt;br /&gt;
 NOTE: changing maximum texture dimension to 32768&lt;br /&gt;
 [SiftMatchGPU]: CUDA&lt;br /&gt;
 2247 sift matches were found;&lt;br /&gt;
&lt;br /&gt;
* define &amp;lt;code&amp;gt;export SIFTGPU_DIR=~/SiftGPU&amp;lt;/code&amp;gt; or similar in your iCub bashrc file, so that libsiftgpu.so is found by IOL modules&lt;br /&gt;
&lt;br /&gt;
== himrep ==&lt;br /&gt;
&lt;br /&gt;
Clone https://github.com/robotology/himrep, follow the instructions to compile &amp;lt;code&amp;gt;liblinear&amp;lt;/code&amp;gt;, CMake, make install&lt;br /&gt;
&lt;br /&gt;
To use the deep neural network object recognition, based on Caffe, follow the instructions at README_Caffe.md.&lt;br /&gt;
If you get &amp;quot;error: kernel launches from templates are not allowed in system files&amp;quot;, use an older GCC version like 4.6 (see also https://github.com/BVLC/caffe/issues/337). If you get &amp;quot;ImportError: No module named &#039;yaml&#039;&amp;quot;, do &amp;lt;code&amp;gt;sudo apt install python-yaml&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== IOL ==&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;sudo apt install lua5.1 liblua5.1-dev&amp;lt;/code&amp;gt;&lt;br /&gt;
* clone [https://github.com/kmarkus/rFSM rFSM] (no need to compile anything here)&lt;br /&gt;
&lt;br /&gt;
Clone https://github.com/robotology/iol, CMake, make install&lt;br /&gt;
&lt;br /&gt;
== stereo-vision ==&lt;br /&gt;
&lt;br /&gt;
Clone https://github.com/robotology/stereo-vision, CMake with USE_SIFT_GPU=ON, make install&lt;br /&gt;
&lt;br /&gt;
= Best practices =&lt;br /&gt;
&lt;br /&gt;
Below are some tips and tricks taken from:&lt;br /&gt;
&lt;br /&gt;
* http://wiki.icub.org/wiki/Yarp-config&lt;br /&gt;
* http://www.yarp.it/yarp-config.html&lt;br /&gt;
* [https://docs.google.com/document/d/1S9m4DbrV1AJWo_E1r3F8k3ZzmhaTOWRJ9WFjXPFqVos IIT - How to setup and start the iCub from scratch] (last updated December 2016)&lt;br /&gt;
&lt;br /&gt;
== XML files ==&lt;br /&gt;
&lt;br /&gt;
Edit XML files locally, in /home/icub/.local/share/yarp&lt;br /&gt;
&lt;br /&gt;
To install robot-specific XML files, compile icub-main (just &amp;lt;code&amp;gt;make&amp;lt;/code&amp;gt;) then use commands like &amp;lt;code&amp;gt;yarp-config robot --import-all&amp;lt;/code&amp;gt; (installs all files) or &amp;lt;code&amp;gt;yarp-config robot --import iCubLisboa01 affordancesExploration.xml&amp;lt;/code&amp;gt; (installs specific files)&lt;br /&gt;
&lt;br /&gt;
== ini files ==&lt;br /&gt;
&lt;br /&gt;
To install application conf/*.ini files, compile a project (e.g., icub-main, poeticon, iol) then use commands like &amp;lt;code&amp;gt;yarp-config context --import-all&amp;lt;/code&amp;gt; (installs all files) or &amp;lt;code&amp;gt;yarp-config context --import actionsRenderingEngine&amp;lt;/code&amp;gt; (installs the files of specific applications)&lt;br /&gt;
&lt;br /&gt;
== Disabling some robot parts ==&lt;br /&gt;
&lt;br /&gt;
If the robot is not complete (or some parts need to be disabled):&lt;br /&gt;
&lt;br /&gt;
* In a pc104 shell, type &amp;lt;code&amp;gt;yarp-config robot --list&amp;lt;/code&amp;gt; to look for the .ini files from where the configuration values are launched: these are local copies of the robots-configuration repository files&lt;br /&gt;
* Go to the &amp;lt;code&amp;gt;INSTALLED DATA&amp;lt;/code&amp;gt; directory path and then, within the corresponding robot folder (e.g., iCubLisboa01), look for the file yarprobotinterface.ini, which points to a .xml file which contains the configuration paths for all the robot parts (e.g., icub_all.xml)&lt;br /&gt;
* If the local config file does not exist, there is only the canonical file in the build path: in that case, create a local one using &amp;lt;code&amp;gt;yarp-config --import&amp;lt;/code&amp;gt;&lt;br /&gt;
* Make a copy of the .xml file giving it a descriptive name (e.g., icub_no_legs.xml) and, in the copied file, comment or remove all lines that refer to .ini files of the part(s) that you want to disable&lt;br /&gt;
* Edit the contents of yarprobotinterface.ini so that it points to the new .xml file where the parts have been commented&lt;br /&gt;
* In the iCubStartup application GUI or xml, modify the way that gravityCompensator and wholeBodyDynamics are launched, so that they don&#039;t look for the configuration files of the parts that have been disabled: in the legs example, just add &amp;lt;code&amp;gt;--no_legs&amp;lt;/code&amp;gt; to the argument list&lt;br /&gt;
&lt;br /&gt;
= See also =&lt;br /&gt;
&lt;br /&gt;
* http://wiki.icub.org/wiki/Generic_iCub_machine_installation_instructions&lt;br /&gt;
&lt;br /&gt;
[[Category:Vislab]]&lt;/div&gt;</summary>
		<author><name>Giovanni Saponaro</name></author>
	</entry>
	<entry>
		<id>http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=VisLab_book_wishlist&amp;diff=7073</id>
		<title>VisLab book wishlist</title>
		<link rel="alternate" type="text/html" href="http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=VisLab_book_wishlist&amp;diff=7073"/>
		<updated>2019-03-19T18:49:25Z</updated>

		<summary type="html">&lt;p&gt;Giovanni Saponaro: /* Autumn 2018 batch 2 */ add arrival date of Autumn 2018 batch 2&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;If you need a new book for your research, please add it to this list:&lt;br /&gt;
&lt;br /&gt;
* Title. Authors. Publisher, year. ISBN code.&lt;br /&gt;
* [https://www.amazon.co.uk/Human-Robot-Interaction-Social-Robotics-Takayuki/dp/1138071692/ Human-Robot Interaction in Social Robotics]. Takayuki Kanda, Hirosihi Ishiguro. CRC Press, 2017. ISBN 978-1138071698.&lt;br /&gt;
* [https://www.amazon.co.uk/Emotional-Design-Human-Robot-Interaction-Human-Computer/dp/3319967215 Emotional Design in Human-Robot Interaction: Theory, Methods and Applications]. Hande Ayanoglu, Emilia Duarte. Springer, 2019. ISBN 978-3319967219.&lt;br /&gt;
* Reinforcement Learning: An Introduction. Richard S. Sutton, Francis Bach. Latest edition&lt;br /&gt;
&lt;br /&gt;
= Already ordered =&lt;br /&gt;
&lt;br /&gt;
The following orders have already been dispatched.&lt;br /&gt;
&lt;br /&gt;
== Autumn 2018 batch 2 ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in &amp;lt;s&amp;gt;June 2018&amp;lt;/s&amp;gt; October 2018 and arrived in February 2019.&lt;br /&gt;
&lt;br /&gt;
* [https://www.amazon.co.uk/Design-Report-Experiments-Andy-Field/dp/0761973834 How to Design and Report Experiments]. Andy Field, Graham Hole. Sage, 2003. ISBN 978-0761973836.&lt;br /&gt;
* [https://www.amazon.co.uk/Non-verbal-Communication-Human-Interaction-International/dp/1285083512/ Nonverbal Communication in Human Interaction]. Mark Knapp, Terrence Horgan, Judith Hall. Cengage, 2014. ISBN 978-1285083513.&lt;br /&gt;
* [https://www.amazon.co.uk/3D-Printing-Handbook-Technologies-applications/dp/9082748509/ The 3D Printing Handbook: Technologies, design and applications]. Ben Redwood, Filemon Schöffer, Brian Garret. 3D Hubs B.V., 2017. ISBN 978-9082748505.&lt;br /&gt;
&lt;br /&gt;
== Autumn 2018 batch 1 ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in September 2018 for the AHA project and arrived in January 2019 (billed as 2018).&lt;br /&gt;
&lt;br /&gt;
* [https://www.amazon.co.uk/Book-Why-Science-Cause-Effect/dp/0241242630 The Book of Why: The New Science of Cause and Effect]. Judea Pearl, Dana Mackenzie. Allen Lane, 2018. ISBN 978-0241242636.&lt;br /&gt;
* [https://www.amazon.co.uk/Understanding-Vision-Theory-Models-Data/dp/0198829361 Understanding Vision: Theory, Models, and Data, Reprint Edition]. Li Zhaoping. Oxford University Press, 2018. ISBN 978-0198829362.&lt;br /&gt;
* [https://www.amazon.co.uk/Video-Influences-Aggression-Cognition-Attention/dp/3319954946 Video Game Influences on Aggression, Cognition, and Attention]. Christopher J. Ferguson. Springer, 2018. ISBN 978-3319954943.&lt;br /&gt;
&lt;br /&gt;
== Autumn 2017 batch ==&lt;br /&gt;
&lt;br /&gt;
This book was ordered in November 2017 and arrived in January 2018.&lt;br /&gt;
&lt;br /&gt;
* [https://www.amazon.co.uk/Theoretical-Neuroscience-Computational-Mathematical-Modeling/dp/0262541858 Theoretical Neuroscience: Computational and Mathematical Modeling of Neural Systems]. Peter Dayan, ‎L. F. Abbott. MIT Press, 2005. ISBN 978-0262541855.&lt;br /&gt;
&lt;br /&gt;
== Spring 2017 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in April 2017 and arrived in May 2017.&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.co.uk/Ecological-Approach-Visual-Perception-Psychology/dp/1848725787 The Ecological Approach to Visual Perception: Classic Edition]. James J. Gibson. Psychology Press, 2014. ISBN 978-1848725782.&lt;br /&gt;
* [https://www.amazon.co.uk/Effective-Modern-Specific-Ways-Improve/dp/1491903996 Effective Modern C++: 42 Specific Ways to Improve Your Use of C++11 and C++14]. Scott Meyers. O&#039;Reilly, 2014. ISBN 978-1491903995.&lt;br /&gt;
* [https://www.amazon.co.uk/Hand-Mind-Gestures-Reveal-Thought/dp/0226561348 Hand and Mind: What Gestures Reveal about Thought]. David McNeill. University Of Chicago Press, 1996. ISBN 978-0226561349.&lt;br /&gt;
* [https://www.amazon.co.uk/Principles-Neural-Science-Fifth-Kandel/dp/0071390111 Principles of Neural Science, Fifth Edition]. Eric R. Kandel, James H. Schwartz, Thomas M. Jessell, Steven A. Siegelbaum, A. J. Hudspeth. McGraw-Hill, 2012. ISBN 978-0071390118&lt;br /&gt;
&lt;br /&gt;
== Winter 2016 batch ==&lt;br /&gt;
&lt;br /&gt;
This book was ordered in November 2016 and arrived in April 2017.&lt;br /&gt;
&lt;br /&gt;
* [https://www.amazon.co.uk/Deep-Learning-Adaptive-Computation-Machine/dp/0262035618 Deep Learning]. Ian Goodfellow, Yoshua Bengio, Aaron Courville. MIT Press, 2016. ISBN 978-0262035613&lt;br /&gt;
&lt;br /&gt;
== Spring 2016 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in March 2016, and arrived between May 2016 and February 2017 (Learning OpenCV 3).&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.co.uk/gp/product/1491937998 Learning OpenCV 3: Computer Vision in C++ with the OpenCV Library]. Adrian Kaehler, Gary Bradski. O&#039;Reilly Media, 2016.&lt;br /&gt;
* [http://www.amazon.co.uk/Mastering-Robotics-Programming-Lentin-Joseph/dp/1783551798 Mastering ROS for Robotics Programming]. Lentin Joseph. Packt Publishing, 2015.&lt;br /&gt;
* [http://www.amazon.co.uk/Artificial-Cognitive-Systems-David-Vernon/dp/0262028387 Artificial Cognitive Systems: A Primer]. David Vernon. MIT Press, 2015.&lt;br /&gt;
* [http://www.amazon.co.uk/Developmental-Robotics-Babies-Intelligent-Autonomous/dp/0262028018 Developmental Robotics: From Babies to Robots]. Angelo Cangelosi, Matthew Schlesinger. MIT Press, 2015.&lt;br /&gt;
* [http://www.amazon.co.uk/Machine-Learning-Optimization-Perspective-Developers/dp/0128015225 Machine Learning: A Bayesian and Optimization Perspective]. Sergios Theodoridis. Academic Press, March 2015.&lt;br /&gt;
* [http://www.amazon.co.uk/Gaussian-Processes-Machine-Learning-Rasmussen/dp/026218253X Gaussian Processes for Machine Learning]. Carl Edward Rasmussen, Christopher K. I. Williams. MIT Press, 2006.&lt;br /&gt;
* [http://www.amazon.co.uk/Designing-Sociable-Intelligent-Robotics-Autonomous/dp/0262025108 Designing Sociable Robots], Cynthia Breazeal. MIT Press, 2002.&lt;br /&gt;
&lt;br /&gt;
== Autumn 2014 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in November 2014, and arrived between December 2014 and February 2015.&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.co.uk/Probabilistic-Graphical-Models-Principles-Computation/dp/0262013193 Probabilistic Graphical Models: Principles and Techniques]. Daphne Koller, Nir Friedman. MIT Press, 2009. ([http://mitpress.mit.edu/books/probabilistic-graphical-models publisher page] with 20% discount code DKPGM12)&lt;br /&gt;
* [http://www.amazon.co.uk/Understanding-Vision-Theory-Models-Data/dp/0199564663 Understanding Vision: theory, models, and data]. Li Zhaoping. Oxford University Press, 2014. ([http://ukcatalogue.oup.com/product/9780199564668.do publisher page])&lt;br /&gt;
* [http://www.amazon.co.uk/Dictionary-Computer-Vision-Image-Processing/dp/1119941865 Dictionary of Computer Vision and Image Processing, 2nd Edition]. Robert B. Fisher, Toby P. Breckon, Kenneth Dawson-Howe, Andrew Fitzgibbon, Craig Robertson, Emanuele Trucco, Christopher K. I. Williams. Wiley, 2013. ([http://eu.wiley.com/WileyCDA/WileyTitle/productCd-1119941865.html publisher page])&lt;br /&gt;
* [http://www.amazon.co.uk/Introduction-Game-Design-Prototyping-Development-ebook/dp/B00LIYS9F0 Introduction to Game Design, Prototyping, and Development: From Concept to Playable Game with Unity and C#]. Jeremy Gibson. Addison-Wesley Professional, 2014.&lt;br /&gt;
* [http://www.amazon.co.uk/Regularization-Optimization-Kernels-Support-Machines/dp/1482241390 Regularization, Optimization, Kernels, and Support Vector Machines]. Johan A.K. Suykens, Marco Signoretto, Andreas Argyriou. Chapman and Hall/CRC, 2014. ([http://www.crcpress.com/product/isbn/9781482241396 publisher page])&lt;br /&gt;
&lt;br /&gt;
== Autumn 2013 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in October 2013, and arrived between November 2013 and June 2014.&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.co.uk/Gesture-Speech-Sign-Lynn-Messing/dp/019852451X Gesture, Speech, and Sign]. Lynn Messing, Ruth Campbell. Oxford University Press, 1999.&lt;br /&gt;
* [http://www.amazon.co.uk/OpenCV-Computer-Application-Programming-Cookbook/dp/1849513244/ OpenCV 2 Computer Vision Application Programming Cookbook]. Robert Laganière. Pack Publishing, May 2011.&lt;br /&gt;
* [http://www.amazon.co.uk/Brave-NUI-World-Designing-Interfaces/dp/0123822319 Brave NUI World: Designing Natural User Interfaces for Touch and Gesture]. Daniel Wigdor, Dennis Wixon. Morgan Kaufmann, April 2011.&lt;br /&gt;
* [http://www.amazon.co.uk/Probabilistic-Robotics-Intelligent-Autonomous-Agents/dp/0262201623 Probabilistic Robotics]. Sebastian Thrun, Wolfram Burgard, Dieter Fox. MIT Press, 2005.&lt;br /&gt;
* [http://www.amazon.co.uk/Frontiers-Human-Robot-Interaction-Advances-Studies/dp/9027204551 New Frontiers in Human-Robot Interaction] ([http://homepages.feis.herts.ac.uk/~comqkd/NFHRI-AIS-2011.pdf link2]). Kerstin Dautenhahn and Joe Saunder. John Benjamins Publishing Company, 2011.&lt;br /&gt;
* [http://mitpress.mit.edu/catalog/item/default.asp?ttype=2&amp;amp;tid=12814&amp;amp;mode=toc An Interdisciplinary Introduction to Image Processing]. Steven L. Tanimoto. MIT Press, May 2012.&lt;br /&gt;
* [http://www.amazon.co.uk/Machine-Learning-Probabilistic-Perspective-Computation/dp/0262018020 Machine Learning: A Probabilistic Perspective]. Kevin Murphy. MIT Press, October 2012.&lt;br /&gt;
* [http://www.cambridge.org/us/knowledge/discountpromotion/?site_locale=en_US&amp;amp;code=L2BRML Bayesian Reasoning and Machine Learning] (this link provides a 20% discount, you can change currency at checkout) David Barber. Cambridge University Press, February 2012.&lt;br /&gt;
* [http://www.amazon.co.uk/Active-Learning-Burr-Settles/dp/1608457257/ Active Learning: Synthesis Lectures on Artificial Intelligence and Machine Learning]. Burr Settles. Morgan &amp;amp; Claypool, 2012.&lt;br /&gt;
&lt;br /&gt;
== Summer 2011 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in the summer of 2011, and arrived on 2011-11-28.&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.com/Plasticity-Visual-System-Genes-Circuits/dp/0387281894 Plasticity in the Visual System: From Genes to Circuits], Raphael Pinaud (Editor), Liisa A. Tremere (Editor), Peter de Weerd, Springer 2006.&lt;br /&gt;
* [http://www.springer.com/engineering/robotics/book/978-3-540-23957-4 Springer Handbook of Robotics]. Bruno Siciliano, Oussama Khatib (Editors). Springer, 2008.&lt;br /&gt;
* [http://www.amazon.com/Human-Motor-Control-Second-Rosenbaum/dp/0123742269 Human Motor Control], David Rosenbaum. Elsevier/Academic Press, 2009.&lt;br /&gt;
* [http://www.amazon.com/Computer-Vision-Approach-David-Forsyth/dp/0130851981 Computer vision, A modern approach], David Forsyth and Jean Ponce.  &lt;br /&gt;
* [http://www.amazon.fr/Pattern-Recognition-Machine-Learning-Christopher/dp/0387310738/sr=8-1/qid=1158928255/ref=sr_1_1/402-9555855-8053710?ie=UTF8&amp;amp;s=english-books Pattern recognition and machine learning ], Christopher M. Bishop&lt;br /&gt;
&lt;br /&gt;
= Misc =&lt;br /&gt;
&lt;br /&gt;
== Discarded ==&lt;br /&gt;
&lt;br /&gt;
Books that were considered for purchase but not ordered:&lt;br /&gt;
&lt;br /&gt;
* [https://www.amazon.co.uk/Exploring-Robotic-Minds-Consciousness-Self-Organizing/dp/0190281065 Exploring Robotic Minds: Actions, Symbols, and Consciousness as Self-Organizing Dynamic Phenomena]. Jun Tani. OUP USA, 2016. ISBN 978-0190281069.&lt;br /&gt;
* [http://www.amazon.co.uk/Sparse-Modeling-Algorithms-Applications-Recognition/dp/1439828695 Sparse Modeling: Theory, Algorithms, and Applications]. Irina Rish, Genady Grabarnik. CRC Press, 2014.&lt;br /&gt;
* [http://www.amazon.co.uk/Sociorobot-World-Intelligent-Automation-Engineering-ebook/dp/B011QM0BBS Sociorobot World: A Guided Tour for All]. Spyros Tzafestas. Springer, 2016.&lt;br /&gt;
* [https://www.amazon.co.uk/Understanding-Machine-Learning-Theory-Algorithms-ebook/dp/1107512824 Understanding Machine Learning: From Theory To Algorithms]. Shai Shalev-Shwartz, Shai Ben-David. Cambridge University Press, 2015. ISBN 978-1107512825&lt;br /&gt;
* [https://www.amazon.co.uk/Computational-Integrating-Language-Synthesis-Lectures/dp/1608451127 Computational Methods for Integrating Vision and Language]. Kobus Barnard. Morgan &amp;amp; Claypool, 2016. ISBN 978-1608451128.&lt;br /&gt;
* [http://www.amazon.co.uk/OpenCV-3-Blueprints-Joseph-Howse/dp/1784399752 OpenCV 3 Blueprints]. Joseph Howse, Steven Puttemans, Quan Hua, Utkarsh Sinha. Packt Publishing, 2015. ISBN 978-1784399757.&lt;br /&gt;
* [https://www.amazon.co.uk/Time-Modeling-Computation-Inference-Statistical/dp/1420093363 Time Series: Modeling, Computation, and Inference]. Raquel Prado, Mike West. Chapman and Hall/CRC, 2010. ISBN 978-1420093360&lt;br /&gt;
&lt;br /&gt;
== Not available ==&lt;br /&gt;
&lt;br /&gt;
Books that are likely not available (from previous purchase attempts):&lt;br /&gt;
&lt;br /&gt;
* [http://www.oreilly.com/data/free/real-world-active-learning.csp Real-World Active Learning: Applications and strategies for human-in-the-loop machine learning]. Ted Cuzzillo. O&#039;Reilly, March 2015.&lt;br /&gt;
&lt;br /&gt;
[[Category:Vislab]]&lt;/div&gt;</summary>
		<author><name>Giovanni Saponaro</name></author>
	</entry>
	<entry>
		<id>http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=VisLab_book_wishlist&amp;diff=7071</id>
		<title>VisLab book wishlist</title>
		<link rel="alternate" type="text/html" href="http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=VisLab_book_wishlist&amp;diff=7071"/>
		<updated>2019-01-14T17:17:27Z</updated>

		<summary type="html">&lt;p&gt;Giovanni Saponaro: /* Autumn 2018 batch 2 */ update arrival year&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;If you need a new book for your research, please add it to this list:&lt;br /&gt;
&lt;br /&gt;
* Title. Authors. Publisher, year. ISBN code.&lt;br /&gt;
* [https://www.amazon.co.uk/Human-Robot-Interaction-Social-Robotics-Takayuki/dp/1138071692/ Human-Robot Interaction in Social Robotics]. Takayuki Kanda, Hirosihi Ishiguro. CRC Press, 2017. ISBN 978-1138071698.&lt;br /&gt;
* [https://www.amazon.co.uk/Emotional-Design-Human-Robot-Interaction-Human-Computer/dp/3319967215 Emotional Design in Human-Robot Interaction: Theory, Methods and Applications]. Hande Ayanoglu, Emilia Duarte. Springer, 2019. ISBN 978-3319967219.&lt;br /&gt;
* Reinforcement Learning: An Introduction. Richard S. Sutton, Francis Bach. Latest edition&lt;br /&gt;
&lt;br /&gt;
= Already ordered =&lt;br /&gt;
&lt;br /&gt;
The following orders have already been dispatched.&lt;br /&gt;
&lt;br /&gt;
== Autumn 2018 batch 2 ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in &amp;lt;s&amp;gt;June 2018&amp;lt;/s&amp;gt; October 2018 and arrived in xxx 2019.&lt;br /&gt;
&lt;br /&gt;
* [https://www.amazon.co.uk/Design-Report-Experiments-Andy-Field/dp/0761973834 How to Design and Report Experiments]. Andy Field, Graham Hole. Sage, 2003. ISBN 978-0761973836.&lt;br /&gt;
* [https://www.amazon.co.uk/Non-verbal-Communication-Human-Interaction-International/dp/1285083512/ Nonverbal Communication in Human Interaction]. Mark Knapp, Terrence Horgan, Judith Hall. Cengage, 2014. ISBN 978-1285083513.&lt;br /&gt;
* [https://www.amazon.co.uk/3D-Printing-Handbook-Technologies-applications/dp/9082748509/ The 3D Printing Handbook: Technologies, design and applications]. Ben Redwood, Filemon Schöffer, Brian Garret. 3D Hubs B.V., 2017. ISBN 978-9082748505.&lt;br /&gt;
&lt;br /&gt;
== Autumn 2018 batch 1 ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in September 2018 for the AHA project and arrived in January 2019 (billed as 2018).&lt;br /&gt;
&lt;br /&gt;
* [https://www.amazon.co.uk/Book-Why-Science-Cause-Effect/dp/0241242630 The Book of Why: The New Science of Cause and Effect]. Judea Pearl, Dana Mackenzie. Allen Lane, 2018. ISBN 978-0241242636.&lt;br /&gt;
* [https://www.amazon.co.uk/Understanding-Vision-Theory-Models-Data/dp/0198829361 Understanding Vision: Theory, Models, and Data, Reprint Edition]. Li Zhaoping. Oxford University Press, 2018. ISBN 978-0198829362.&lt;br /&gt;
* [https://www.amazon.co.uk/Video-Influences-Aggression-Cognition-Attention/dp/3319954946 Video Game Influences on Aggression, Cognition, and Attention]. Christopher J. Ferguson. Springer, 2018. ISBN 978-3319954943.&lt;br /&gt;
&lt;br /&gt;
== Autumn 2017 batch ==&lt;br /&gt;
&lt;br /&gt;
This book was ordered in November 2017 and arrived in January 2018.&lt;br /&gt;
&lt;br /&gt;
* [https://www.amazon.co.uk/Theoretical-Neuroscience-Computational-Mathematical-Modeling/dp/0262541858 Theoretical Neuroscience: Computational and Mathematical Modeling of Neural Systems]. Peter Dayan, ‎L. F. Abbott. MIT Press, 2005. ISBN 978-0262541855.&lt;br /&gt;
&lt;br /&gt;
== Spring 2017 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in April 2017 and arrived in May 2017.&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.co.uk/Ecological-Approach-Visual-Perception-Psychology/dp/1848725787 The Ecological Approach to Visual Perception: Classic Edition]. James J. Gibson. Psychology Press, 2014. ISBN 978-1848725782.&lt;br /&gt;
* [https://www.amazon.co.uk/Effective-Modern-Specific-Ways-Improve/dp/1491903996 Effective Modern C++: 42 Specific Ways to Improve Your Use of C++11 and C++14]. Scott Meyers. O&#039;Reilly, 2014. ISBN 978-1491903995.&lt;br /&gt;
* [https://www.amazon.co.uk/Hand-Mind-Gestures-Reveal-Thought/dp/0226561348 Hand and Mind: What Gestures Reveal about Thought]. David McNeill. University Of Chicago Press, 1996. ISBN 978-0226561349.&lt;br /&gt;
* [https://www.amazon.co.uk/Principles-Neural-Science-Fifth-Kandel/dp/0071390111 Principles of Neural Science, Fifth Edition]. Eric R. Kandel, James H. Schwartz, Thomas M. Jessell, Steven A. Siegelbaum, A. J. Hudspeth. McGraw-Hill, 2012. ISBN 978-0071390118&lt;br /&gt;
&lt;br /&gt;
== Winter 2016 batch ==&lt;br /&gt;
&lt;br /&gt;
This book was ordered in November 2016 and arrived in April 2017.&lt;br /&gt;
&lt;br /&gt;
* [https://www.amazon.co.uk/Deep-Learning-Adaptive-Computation-Machine/dp/0262035618 Deep Learning]. Ian Goodfellow, Yoshua Bengio, Aaron Courville. MIT Press, 2016. ISBN 978-0262035613&lt;br /&gt;
&lt;br /&gt;
== Spring 2016 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in March 2016, and arrived between May 2016 and February 2017 (Learning OpenCV 3).&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.co.uk/gp/product/1491937998 Learning OpenCV 3: Computer Vision in C++ with the OpenCV Library]. Adrian Kaehler, Gary Bradski. O&#039;Reilly Media, 2016.&lt;br /&gt;
* [http://www.amazon.co.uk/Mastering-Robotics-Programming-Lentin-Joseph/dp/1783551798 Mastering ROS for Robotics Programming]. Lentin Joseph. Packt Publishing, 2015.&lt;br /&gt;
* [http://www.amazon.co.uk/Artificial-Cognitive-Systems-David-Vernon/dp/0262028387 Artificial Cognitive Systems: A Primer]. David Vernon. MIT Press, 2015.&lt;br /&gt;
* [http://www.amazon.co.uk/Developmental-Robotics-Babies-Intelligent-Autonomous/dp/0262028018 Developmental Robotics: From Babies to Robots]. Angelo Cangelosi, Matthew Schlesinger. MIT Press, 2015.&lt;br /&gt;
* [http://www.amazon.co.uk/Machine-Learning-Optimization-Perspective-Developers/dp/0128015225 Machine Learning: A Bayesian and Optimization Perspective]. Sergios Theodoridis. Academic Press, March 2015.&lt;br /&gt;
* [http://www.amazon.co.uk/Gaussian-Processes-Machine-Learning-Rasmussen/dp/026218253X Gaussian Processes for Machine Learning]. Carl Edward Rasmussen, Christopher K. I. Williams. MIT Press, 2006.&lt;br /&gt;
* [http://www.amazon.co.uk/Designing-Sociable-Intelligent-Robotics-Autonomous/dp/0262025108 Designing Sociable Robots], Cynthia Breazeal. MIT Press, 2002.&lt;br /&gt;
&lt;br /&gt;
== Autumn 2014 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in November 2014, and arrived between December 2014 and February 2015.&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.co.uk/Probabilistic-Graphical-Models-Principles-Computation/dp/0262013193 Probabilistic Graphical Models: Principles and Techniques]. Daphne Koller, Nir Friedman. MIT Press, 2009. ([http://mitpress.mit.edu/books/probabilistic-graphical-models publisher page] with 20% discount code DKPGM12)&lt;br /&gt;
* [http://www.amazon.co.uk/Understanding-Vision-Theory-Models-Data/dp/0199564663 Understanding Vision: theory, models, and data]. Li Zhaoping. Oxford University Press, 2014. ([http://ukcatalogue.oup.com/product/9780199564668.do publisher page])&lt;br /&gt;
* [http://www.amazon.co.uk/Dictionary-Computer-Vision-Image-Processing/dp/1119941865 Dictionary of Computer Vision and Image Processing, 2nd Edition]. Robert B. Fisher, Toby P. Breckon, Kenneth Dawson-Howe, Andrew Fitzgibbon, Craig Robertson, Emanuele Trucco, Christopher K. I. Williams. Wiley, 2013. ([http://eu.wiley.com/WileyCDA/WileyTitle/productCd-1119941865.html publisher page])&lt;br /&gt;
* [http://www.amazon.co.uk/Introduction-Game-Design-Prototyping-Development-ebook/dp/B00LIYS9F0 Introduction to Game Design, Prototyping, and Development: From Concept to Playable Game with Unity and C#]. Jeremy Gibson. Addison-Wesley Professional, 2014.&lt;br /&gt;
* [http://www.amazon.co.uk/Regularization-Optimization-Kernels-Support-Machines/dp/1482241390 Regularization, Optimization, Kernels, and Support Vector Machines]. Johan A.K. Suykens, Marco Signoretto, Andreas Argyriou. Chapman and Hall/CRC, 2014. ([http://www.crcpress.com/product/isbn/9781482241396 publisher page])&lt;br /&gt;
&lt;br /&gt;
== Autumn 2013 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in October 2013, and arrived between November 2013 and June 2014.&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.co.uk/Gesture-Speech-Sign-Lynn-Messing/dp/019852451X Gesture, Speech, and Sign]. Lynn Messing, Ruth Campbell. Oxford University Press, 1999.&lt;br /&gt;
* [http://www.amazon.co.uk/OpenCV-Computer-Application-Programming-Cookbook/dp/1849513244/ OpenCV 2 Computer Vision Application Programming Cookbook]. Robert Laganière. Pack Publishing, May 2011.&lt;br /&gt;
* [http://www.amazon.co.uk/Brave-NUI-World-Designing-Interfaces/dp/0123822319 Brave NUI World: Designing Natural User Interfaces for Touch and Gesture]. Daniel Wigdor, Dennis Wixon. Morgan Kaufmann, April 2011.&lt;br /&gt;
* [http://www.amazon.co.uk/Probabilistic-Robotics-Intelligent-Autonomous-Agents/dp/0262201623 Probabilistic Robotics]. Sebastian Thrun, Wolfram Burgard, Dieter Fox. MIT Press, 2005.&lt;br /&gt;
* [http://www.amazon.co.uk/Frontiers-Human-Robot-Interaction-Advances-Studies/dp/9027204551 New Frontiers in Human-Robot Interaction] ([http://homepages.feis.herts.ac.uk/~comqkd/NFHRI-AIS-2011.pdf link2]). Kerstin Dautenhahn and Joe Saunder. John Benjamins Publishing Company, 2011.&lt;br /&gt;
* [http://mitpress.mit.edu/catalog/item/default.asp?ttype=2&amp;amp;tid=12814&amp;amp;mode=toc An Interdisciplinary Introduction to Image Processing]. Steven L. Tanimoto. MIT Press, May 2012.&lt;br /&gt;
* [http://www.amazon.co.uk/Machine-Learning-Probabilistic-Perspective-Computation/dp/0262018020 Machine Learning: A Probabilistic Perspective]. Kevin Murphy. MIT Press, October 2012.&lt;br /&gt;
* [http://www.cambridge.org/us/knowledge/discountpromotion/?site_locale=en_US&amp;amp;code=L2BRML Bayesian Reasoning and Machine Learning] (this link provides a 20% discount, you can change currency at checkout) David Barber. Cambridge University Press, February 2012.&lt;br /&gt;
* [http://www.amazon.co.uk/Active-Learning-Burr-Settles/dp/1608457257/ Active Learning: Synthesis Lectures on Artificial Intelligence and Machine Learning]. Burr Settles. Morgan &amp;amp; Claypool, 2012.&lt;br /&gt;
&lt;br /&gt;
== Summer 2011 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in the summer of 2011, and arrived on 2011-11-28.&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.com/Plasticity-Visual-System-Genes-Circuits/dp/0387281894 Plasticity in the Visual System: From Genes to Circuits], Raphael Pinaud (Editor), Liisa A. Tremere (Editor), Peter de Weerd, Springer 2006.&lt;br /&gt;
* [http://www.springer.com/engineering/robotics/book/978-3-540-23957-4 Springer Handbook of Robotics]. Bruno Siciliano, Oussama Khatib (Editors). Springer, 2008.&lt;br /&gt;
* [http://www.amazon.com/Human-Motor-Control-Second-Rosenbaum/dp/0123742269 Human Motor Control], David Rosenbaum. Elsevier/Academic Press, 2009.&lt;br /&gt;
* [http://www.amazon.com/Computer-Vision-Approach-David-Forsyth/dp/0130851981 Computer vision, A modern approach], David Forsyth and Jean Ponce.  &lt;br /&gt;
* [http://www.amazon.fr/Pattern-Recognition-Machine-Learning-Christopher/dp/0387310738/sr=8-1/qid=1158928255/ref=sr_1_1/402-9555855-8053710?ie=UTF8&amp;amp;s=english-books Pattern recognition and machine learning ], Christopher M. Bishop&lt;br /&gt;
&lt;br /&gt;
= Misc =&lt;br /&gt;
&lt;br /&gt;
== Discarded ==&lt;br /&gt;
&lt;br /&gt;
Books that were considered for purchase but not ordered:&lt;br /&gt;
&lt;br /&gt;
* [https://www.amazon.co.uk/Exploring-Robotic-Minds-Consciousness-Self-Organizing/dp/0190281065 Exploring Robotic Minds: Actions, Symbols, and Consciousness as Self-Organizing Dynamic Phenomena]. Jun Tani. OUP USA, 2016. ISBN 978-0190281069.&lt;br /&gt;
* [http://www.amazon.co.uk/Sparse-Modeling-Algorithms-Applications-Recognition/dp/1439828695 Sparse Modeling: Theory, Algorithms, and Applications]. Irina Rish, Genady Grabarnik. CRC Press, 2014.&lt;br /&gt;
* [http://www.amazon.co.uk/Sociorobot-World-Intelligent-Automation-Engineering-ebook/dp/B011QM0BBS Sociorobot World: A Guided Tour for All]. Spyros Tzafestas. Springer, 2016.&lt;br /&gt;
* [https://www.amazon.co.uk/Understanding-Machine-Learning-Theory-Algorithms-ebook/dp/1107512824 Understanding Machine Learning: From Theory To Algorithms]. Shai Shalev-Shwartz, Shai Ben-David. Cambridge University Press, 2015. ISBN 978-1107512825&lt;br /&gt;
* [https://www.amazon.co.uk/Computational-Integrating-Language-Synthesis-Lectures/dp/1608451127 Computational Methods for Integrating Vision and Language]. Kobus Barnard. Morgan &amp;amp; Claypool, 2016. ISBN 978-1608451128.&lt;br /&gt;
* [http://www.amazon.co.uk/OpenCV-3-Blueprints-Joseph-Howse/dp/1784399752 OpenCV 3 Blueprints]. Joseph Howse, Steven Puttemans, Quan Hua, Utkarsh Sinha. Packt Publishing, 2015. ISBN 978-1784399757.&lt;br /&gt;
* [https://www.amazon.co.uk/Time-Modeling-Computation-Inference-Statistical/dp/1420093363 Time Series: Modeling, Computation, and Inference]. Raquel Prado, Mike West. Chapman and Hall/CRC, 2010. ISBN 978-1420093360&lt;br /&gt;
&lt;br /&gt;
== Not available ==&lt;br /&gt;
&lt;br /&gt;
Books that are likely not available (from previous purchase attempts):&lt;br /&gt;
&lt;br /&gt;
* [http://www.oreilly.com/data/free/real-world-active-learning.csp Real-World Active Learning: Applications and strategies for human-in-the-loop machine learning]. Ted Cuzzillo. O&#039;Reilly, March 2015.&lt;br /&gt;
&lt;br /&gt;
[[Category:Vislab]]&lt;/div&gt;</summary>
		<author><name>Giovanni Saponaro</name></author>
	</entry>
	<entry>
		<id>http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=VisLab_book_wishlist&amp;diff=7070</id>
		<title>VisLab book wishlist</title>
		<link rel="alternate" type="text/html" href="http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=VisLab_book_wishlist&amp;diff=7070"/>
		<updated>2019-01-14T17:17:02Z</updated>

		<summary type="html">&lt;p&gt;Giovanni Saponaro: /* Autumn 2018 batch 1 */ arrival date&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;If you need a new book for your research, please add it to this list:&lt;br /&gt;
&lt;br /&gt;
* Title. Authors. Publisher, year. ISBN code.&lt;br /&gt;
* [https://www.amazon.co.uk/Human-Robot-Interaction-Social-Robotics-Takayuki/dp/1138071692/ Human-Robot Interaction in Social Robotics]. Takayuki Kanda, Hirosihi Ishiguro. CRC Press, 2017. ISBN 978-1138071698.&lt;br /&gt;
* [https://www.amazon.co.uk/Emotional-Design-Human-Robot-Interaction-Human-Computer/dp/3319967215 Emotional Design in Human-Robot Interaction: Theory, Methods and Applications]. Hande Ayanoglu, Emilia Duarte. Springer, 2019. ISBN 978-3319967219.&lt;br /&gt;
* Reinforcement Learning: An Introduction. Richard S. Sutton, Francis Bach. Latest edition&lt;br /&gt;
&lt;br /&gt;
= Already ordered =&lt;br /&gt;
&lt;br /&gt;
The following orders have already been dispatched.&lt;br /&gt;
&lt;br /&gt;
== Autumn 2018 batch 2 ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in &amp;lt;s&amp;gt;June 2018&amp;lt;/s&amp;gt; October 2018 and arrived in xxx 2018.&lt;br /&gt;
&lt;br /&gt;
* [https://www.amazon.co.uk/Design-Report-Experiments-Andy-Field/dp/0761973834 How to Design and Report Experiments]. Andy Field, Graham Hole. Sage, 2003. ISBN 978-0761973836.&lt;br /&gt;
* [https://www.amazon.co.uk/Non-verbal-Communication-Human-Interaction-International/dp/1285083512/ Nonverbal Communication in Human Interaction]. Mark Knapp, Terrence Horgan, Judith Hall. Cengage, 2014. ISBN 978-1285083513.&lt;br /&gt;
* [https://www.amazon.co.uk/3D-Printing-Handbook-Technologies-applications/dp/9082748509/ The 3D Printing Handbook: Technologies, design and applications]. Ben Redwood, Filemon Schöffer, Brian Garret. 3D Hubs B.V., 2017. ISBN 978-9082748505.&lt;br /&gt;
&lt;br /&gt;
== Autumn 2018 batch 1 ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in September 2018 for the AHA project and arrived in January 2019 (billed as 2018).&lt;br /&gt;
&lt;br /&gt;
* [https://www.amazon.co.uk/Book-Why-Science-Cause-Effect/dp/0241242630 The Book of Why: The New Science of Cause and Effect]. Judea Pearl, Dana Mackenzie. Allen Lane, 2018. ISBN 978-0241242636.&lt;br /&gt;
* [https://www.amazon.co.uk/Understanding-Vision-Theory-Models-Data/dp/0198829361 Understanding Vision: Theory, Models, and Data, Reprint Edition]. Li Zhaoping. Oxford University Press, 2018. ISBN 978-0198829362.&lt;br /&gt;
* [https://www.amazon.co.uk/Video-Influences-Aggression-Cognition-Attention/dp/3319954946 Video Game Influences on Aggression, Cognition, and Attention]. Christopher J. Ferguson. Springer, 2018. ISBN 978-3319954943.&lt;br /&gt;
&lt;br /&gt;
== Autumn 2017 batch ==&lt;br /&gt;
&lt;br /&gt;
This book was ordered in November 2017 and arrived in January 2018.&lt;br /&gt;
&lt;br /&gt;
* [https://www.amazon.co.uk/Theoretical-Neuroscience-Computational-Mathematical-Modeling/dp/0262541858 Theoretical Neuroscience: Computational and Mathematical Modeling of Neural Systems]. Peter Dayan, ‎L. F. Abbott. MIT Press, 2005. ISBN 978-0262541855.&lt;br /&gt;
&lt;br /&gt;
== Spring 2017 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in April 2017 and arrived in May 2017.&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.co.uk/Ecological-Approach-Visual-Perception-Psychology/dp/1848725787 The Ecological Approach to Visual Perception: Classic Edition]. James J. Gibson. Psychology Press, 2014. ISBN 978-1848725782.&lt;br /&gt;
* [https://www.amazon.co.uk/Effective-Modern-Specific-Ways-Improve/dp/1491903996 Effective Modern C++: 42 Specific Ways to Improve Your Use of C++11 and C++14]. Scott Meyers. O&#039;Reilly, 2014. ISBN 978-1491903995.&lt;br /&gt;
* [https://www.amazon.co.uk/Hand-Mind-Gestures-Reveal-Thought/dp/0226561348 Hand and Mind: What Gestures Reveal about Thought]. David McNeill. University Of Chicago Press, 1996. ISBN 978-0226561349.&lt;br /&gt;
* [https://www.amazon.co.uk/Principles-Neural-Science-Fifth-Kandel/dp/0071390111 Principles of Neural Science, Fifth Edition]. Eric R. Kandel, James H. Schwartz, Thomas M. Jessell, Steven A. Siegelbaum, A. J. Hudspeth. McGraw-Hill, 2012. ISBN 978-0071390118&lt;br /&gt;
&lt;br /&gt;
== Winter 2016 batch ==&lt;br /&gt;
&lt;br /&gt;
This book was ordered in November 2016 and arrived in April 2017.&lt;br /&gt;
&lt;br /&gt;
* [https://www.amazon.co.uk/Deep-Learning-Adaptive-Computation-Machine/dp/0262035618 Deep Learning]. Ian Goodfellow, Yoshua Bengio, Aaron Courville. MIT Press, 2016. ISBN 978-0262035613&lt;br /&gt;
&lt;br /&gt;
== Spring 2016 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in March 2016, and arrived between May 2016 and February 2017 (Learning OpenCV 3).&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.co.uk/gp/product/1491937998 Learning OpenCV 3: Computer Vision in C++ with the OpenCV Library]. Adrian Kaehler, Gary Bradski. O&#039;Reilly Media, 2016.&lt;br /&gt;
* [http://www.amazon.co.uk/Mastering-Robotics-Programming-Lentin-Joseph/dp/1783551798 Mastering ROS for Robotics Programming]. Lentin Joseph. Packt Publishing, 2015.&lt;br /&gt;
* [http://www.amazon.co.uk/Artificial-Cognitive-Systems-David-Vernon/dp/0262028387 Artificial Cognitive Systems: A Primer]. David Vernon. MIT Press, 2015.&lt;br /&gt;
* [http://www.amazon.co.uk/Developmental-Robotics-Babies-Intelligent-Autonomous/dp/0262028018 Developmental Robotics: From Babies to Robots]. Angelo Cangelosi, Matthew Schlesinger. MIT Press, 2015.&lt;br /&gt;
* [http://www.amazon.co.uk/Machine-Learning-Optimization-Perspective-Developers/dp/0128015225 Machine Learning: A Bayesian and Optimization Perspective]. Sergios Theodoridis. Academic Press, March 2015.&lt;br /&gt;
* [http://www.amazon.co.uk/Gaussian-Processes-Machine-Learning-Rasmussen/dp/026218253X Gaussian Processes for Machine Learning]. Carl Edward Rasmussen, Christopher K. I. Williams. MIT Press, 2006.&lt;br /&gt;
* [http://www.amazon.co.uk/Designing-Sociable-Intelligent-Robotics-Autonomous/dp/0262025108 Designing Sociable Robots], Cynthia Breazeal. MIT Press, 2002.&lt;br /&gt;
&lt;br /&gt;
== Autumn 2014 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in November 2014, and arrived between December 2014 and February 2015.&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.co.uk/Probabilistic-Graphical-Models-Principles-Computation/dp/0262013193 Probabilistic Graphical Models: Principles and Techniques]. Daphne Koller, Nir Friedman. MIT Press, 2009. ([http://mitpress.mit.edu/books/probabilistic-graphical-models publisher page] with 20% discount code DKPGM12)&lt;br /&gt;
* [http://www.amazon.co.uk/Understanding-Vision-Theory-Models-Data/dp/0199564663 Understanding Vision: theory, models, and data]. Li Zhaoping. Oxford University Press, 2014. ([http://ukcatalogue.oup.com/product/9780199564668.do publisher page])&lt;br /&gt;
* [http://www.amazon.co.uk/Dictionary-Computer-Vision-Image-Processing/dp/1119941865 Dictionary of Computer Vision and Image Processing, 2nd Edition]. Robert B. Fisher, Toby P. Breckon, Kenneth Dawson-Howe, Andrew Fitzgibbon, Craig Robertson, Emanuele Trucco, Christopher K. I. Williams. Wiley, 2013. ([http://eu.wiley.com/WileyCDA/WileyTitle/productCd-1119941865.html publisher page])&lt;br /&gt;
* [http://www.amazon.co.uk/Introduction-Game-Design-Prototyping-Development-ebook/dp/B00LIYS9F0 Introduction to Game Design, Prototyping, and Development: From Concept to Playable Game with Unity and C#]. Jeremy Gibson. Addison-Wesley Professional, 2014.&lt;br /&gt;
* [http://www.amazon.co.uk/Regularization-Optimization-Kernels-Support-Machines/dp/1482241390 Regularization, Optimization, Kernels, and Support Vector Machines]. Johan A.K. Suykens, Marco Signoretto, Andreas Argyriou. Chapman and Hall/CRC, 2014. ([http://www.crcpress.com/product/isbn/9781482241396 publisher page])&lt;br /&gt;
&lt;br /&gt;
== Autumn 2013 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in October 2013, and arrived between November 2013 and June 2014.&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.co.uk/Gesture-Speech-Sign-Lynn-Messing/dp/019852451X Gesture, Speech, and Sign]. Lynn Messing, Ruth Campbell. Oxford University Press, 1999.&lt;br /&gt;
* [http://www.amazon.co.uk/OpenCV-Computer-Application-Programming-Cookbook/dp/1849513244/ OpenCV 2 Computer Vision Application Programming Cookbook]. Robert Laganière. Pack Publishing, May 2011.&lt;br /&gt;
* [http://www.amazon.co.uk/Brave-NUI-World-Designing-Interfaces/dp/0123822319 Brave NUI World: Designing Natural User Interfaces for Touch and Gesture]. Daniel Wigdor, Dennis Wixon. Morgan Kaufmann, April 2011.&lt;br /&gt;
* [http://www.amazon.co.uk/Probabilistic-Robotics-Intelligent-Autonomous-Agents/dp/0262201623 Probabilistic Robotics]. Sebastian Thrun, Wolfram Burgard, Dieter Fox. MIT Press, 2005.&lt;br /&gt;
* [http://www.amazon.co.uk/Frontiers-Human-Robot-Interaction-Advances-Studies/dp/9027204551 New Frontiers in Human-Robot Interaction] ([http://homepages.feis.herts.ac.uk/~comqkd/NFHRI-AIS-2011.pdf link2]). Kerstin Dautenhahn and Joe Saunder. John Benjamins Publishing Company, 2011.&lt;br /&gt;
* [http://mitpress.mit.edu/catalog/item/default.asp?ttype=2&amp;amp;tid=12814&amp;amp;mode=toc An Interdisciplinary Introduction to Image Processing]. Steven L. Tanimoto. MIT Press, May 2012.&lt;br /&gt;
* [http://www.amazon.co.uk/Machine-Learning-Probabilistic-Perspective-Computation/dp/0262018020 Machine Learning: A Probabilistic Perspective]. Kevin Murphy. MIT Press, October 2012.&lt;br /&gt;
* [http://www.cambridge.org/us/knowledge/discountpromotion/?site_locale=en_US&amp;amp;code=L2BRML Bayesian Reasoning and Machine Learning] (this link provides a 20% discount, you can change currency at checkout) David Barber. Cambridge University Press, February 2012.&lt;br /&gt;
* [http://www.amazon.co.uk/Active-Learning-Burr-Settles/dp/1608457257/ Active Learning: Synthesis Lectures on Artificial Intelligence and Machine Learning]. Burr Settles. Morgan &amp;amp; Claypool, 2012.&lt;br /&gt;
&lt;br /&gt;
== Summer 2011 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in the summer of 2011, and arrived on 2011-11-28.&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.com/Plasticity-Visual-System-Genes-Circuits/dp/0387281894 Plasticity in the Visual System: From Genes to Circuits], Raphael Pinaud (Editor), Liisa A. Tremere (Editor), Peter de Weerd, Springer 2006.&lt;br /&gt;
* [http://www.springer.com/engineering/robotics/book/978-3-540-23957-4 Springer Handbook of Robotics]. Bruno Siciliano, Oussama Khatib (Editors). Springer, 2008.&lt;br /&gt;
* [http://www.amazon.com/Human-Motor-Control-Second-Rosenbaum/dp/0123742269 Human Motor Control], David Rosenbaum. Elsevier/Academic Press, 2009.&lt;br /&gt;
* [http://www.amazon.com/Computer-Vision-Approach-David-Forsyth/dp/0130851981 Computer vision, A modern approach], David Forsyth and Jean Ponce.  &lt;br /&gt;
* [http://www.amazon.fr/Pattern-Recognition-Machine-Learning-Christopher/dp/0387310738/sr=8-1/qid=1158928255/ref=sr_1_1/402-9555855-8053710?ie=UTF8&amp;amp;s=english-books Pattern recognition and machine learning ], Christopher M. Bishop&lt;br /&gt;
&lt;br /&gt;
= Misc =&lt;br /&gt;
&lt;br /&gt;
== Discarded ==&lt;br /&gt;
&lt;br /&gt;
Books that were considered for purchase but not ordered:&lt;br /&gt;
&lt;br /&gt;
* [https://www.amazon.co.uk/Exploring-Robotic-Minds-Consciousness-Self-Organizing/dp/0190281065 Exploring Robotic Minds: Actions, Symbols, and Consciousness as Self-Organizing Dynamic Phenomena]. Jun Tani. OUP USA, 2016. ISBN 978-0190281069.&lt;br /&gt;
* [http://www.amazon.co.uk/Sparse-Modeling-Algorithms-Applications-Recognition/dp/1439828695 Sparse Modeling: Theory, Algorithms, and Applications]. Irina Rish, Genady Grabarnik. CRC Press, 2014.&lt;br /&gt;
* [http://www.amazon.co.uk/Sociorobot-World-Intelligent-Automation-Engineering-ebook/dp/B011QM0BBS Sociorobot World: A Guided Tour for All]. Spyros Tzafestas. Springer, 2016.&lt;br /&gt;
* [https://www.amazon.co.uk/Understanding-Machine-Learning-Theory-Algorithms-ebook/dp/1107512824 Understanding Machine Learning: From Theory To Algorithms]. Shai Shalev-Shwartz, Shai Ben-David. Cambridge University Press, 2015. ISBN 978-1107512825&lt;br /&gt;
* [https://www.amazon.co.uk/Computational-Integrating-Language-Synthesis-Lectures/dp/1608451127 Computational Methods for Integrating Vision and Language]. Kobus Barnard. Morgan &amp;amp; Claypool, 2016. ISBN 978-1608451128.&lt;br /&gt;
* [http://www.amazon.co.uk/OpenCV-3-Blueprints-Joseph-Howse/dp/1784399752 OpenCV 3 Blueprints]. Joseph Howse, Steven Puttemans, Quan Hua, Utkarsh Sinha. Packt Publishing, 2015. ISBN 978-1784399757.&lt;br /&gt;
* [https://www.amazon.co.uk/Time-Modeling-Computation-Inference-Statistical/dp/1420093363 Time Series: Modeling, Computation, and Inference]. Raquel Prado, Mike West. Chapman and Hall/CRC, 2010. ISBN 978-1420093360&lt;br /&gt;
&lt;br /&gt;
== Not available ==&lt;br /&gt;
&lt;br /&gt;
Books that are likely not available (from previous purchase attempts):&lt;br /&gt;
&lt;br /&gt;
* [http://www.oreilly.com/data/free/real-world-active-learning.csp Real-World Active Learning: Applications and strategies for human-in-the-loop machine learning]. Ted Cuzzillo. O&#039;Reilly, March 2015.&lt;br /&gt;
&lt;br /&gt;
[[Category:Vislab]]&lt;/div&gt;</summary>
		<author><name>Giovanni Saponaro</name></author>
	</entry>
	<entry>
		<id>http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=ICub_machines_configuration&amp;diff=7069</id>
		<title>ICub machines configuration</title>
		<link rel="alternate" type="text/html" href="http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=ICub_machines_configuration&amp;diff=7069"/>
		<updated>2018-12-12T12:42:22Z</updated>

		<summary type="html">&lt;p&gt;Giovanni Saponaro: /* Best practices */ add date of &amp;quot;IIT - How to setup and start the iCub from scratch&amp;quot; Google Doc&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;In this page we describe the setup of the computers connected to the iCub robot, which all share a common network disk and configuration.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;See [[iCub machines configuration/Archive]] for obsolete information.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
= Operating system installation =&lt;br /&gt;
&lt;br /&gt;
Ubuntu LTS, default settings and partitioning. The first user to be created must be called &#039;&#039;&#039;icub&#039;&#039;&#039;, to make the distributed setup possible: for NFS network mount, this user has to have uid 1000 and guid 1000.&lt;br /&gt;
&lt;br /&gt;
In order to add a user:&lt;br /&gt;
* either use the Ubuntu graphical frontends&lt;br /&gt;
* or use a Terminal:&lt;br /&gt;
 sudo adduser icub&lt;br /&gt;
 sudo usermod -aG sudo icub  # gives sudo privileges&lt;br /&gt;
&lt;br /&gt;
= Other operations =&lt;br /&gt;
&lt;br /&gt;
== Network configuration ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;See also: [[VisLab network]], [[ISR computing resources]]&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Configure a static IP as explained in one of the following subsections, depending if the machine is a desktop or a server one.&lt;br /&gt;
&lt;br /&gt;
Also, it is recommended to set up the &amp;lt;code&amp;gt;/etc/hosts&amp;lt;/code&amp;gt; file as follows:&lt;br /&gt;
&lt;br /&gt;
 10.10.1.41 icubbrain1&lt;br /&gt;
 10.10.1.42 icubbrain2&lt;br /&gt;
 10.10.1.50 pc104&lt;br /&gt;
 10.10.1.51 icub-cuda&lt;br /&gt;
 10.10.1.53 icub-laptop&lt;br /&gt;
&lt;br /&gt;
You should be able to do &amp;lt;code&amp;gt;ping icubbrain1&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Desktop machines ===&lt;br /&gt;
&lt;br /&gt;
With the graphical Network Manager (https://help.ubuntu.com/16.04/ubuntu-help/net-fixed-ip-address.html), configure the connection &amp;quot;Auto eth0&amp;quot; IPv4 as follows:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|+ &lt;br /&gt;
! Address !! Netmask !! Gateway !! DNS Servers !! notes&lt;br /&gt;
|-&lt;br /&gt;
|10.10.1.x || 255.255.255.0 || 10.10.1.254 || 10.0.0.1, 10.0.0.2 || visnet (iCub machines)&lt;br /&gt;
|-&lt;br /&gt;
|10.0.x.y || 255.255.0.0 || 10.0.0.254 || 10.0.0.1, 10.0.0.2 || isrnet (rest of ISR)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Servers ===&lt;br /&gt;
&lt;br /&gt;
Edit &amp;lt;code&amp;gt;/etc/network/interfaces&amp;lt;/code&amp;gt; like this:&lt;br /&gt;
 auto lo&lt;br /&gt;
 iface lo inet loopback&lt;br /&gt;
   &lt;br /&gt;
 auto eth0&lt;br /&gt;
 iface eth0 inet static&lt;br /&gt;
 address 10.x.y.z # put your IP here, see above table&lt;br /&gt;
 netmask 255.255.x.y # see above table&lt;br /&gt;
 network 10.10.1.0&lt;br /&gt;
 broadcast 10.10.1.255&lt;br /&gt;
 gateway 10.10.1.254&lt;br /&gt;
 dns-nameservers 10.0.0.1 10.0.0.2&lt;br /&gt;
&lt;br /&gt;
In some versions of Ubuntu, to configure DNS you also need to edit &amp;lt;code&amp;gt;/etc/resolvconf/resolv.conf.d/head&amp;lt;/code&amp;gt; like this:&lt;br /&gt;
 nameserver 10.0.0.1&lt;br /&gt;
 nameserver 10.0.0.2&lt;br /&gt;
&lt;br /&gt;
then run:&lt;br /&gt;
 sudo resolvconf -u&lt;br /&gt;
&lt;br /&gt;
== Dependencies ==&lt;br /&gt;
&lt;br /&gt;
Installing the &#039;&#039;&#039;icub-common&#039;&#039;&#039; metapackage is sufficient. It is a bundle of the following packages (for more details see [http://wiki.icub.org/wiki/Linux:Installation_from_sources here], [http://wiki.icub.org/wiki/Linux:_dependencies here] and [https://github.com/robotology/yarp/blob/master/.travis.yml here]):&lt;br /&gt;
 sudo apt install build-essential libace-dev libedit-dev libeigen3-dev libncurses5-dev gfortran libtinyxml-dev libgraphviz-dev&lt;br /&gt;
 sudo apt install git-core ssh gcc g++ make cmake-curses-gui freeglut3-dev libxmu-dev libswscale-dev libavformat-dev&lt;br /&gt;
&lt;br /&gt;
Qt5 graphics dependencies in Ubuntu 16.04 Xenial:&lt;br /&gt;
&lt;br /&gt;
 sudo apt install qttools5-dev qtdeclarative5-dev qtdeclarative5-controls-plugin qtdeclarative5-dialogs-plugin qtmultimedia5-dev qtdeclarative5-qtmultimedia-plugin qtquick1-5-dev libqt5opengl5-dev&lt;br /&gt;
&lt;br /&gt;
Qt5 graphics dependencies in Debian Stretch:&lt;br /&gt;
 sudo apt install qml-module-qt-labs-folderlistmodel qml-module-qt-labs-settings&lt;br /&gt;
&lt;br /&gt;
iCub Simulator dependencies: SDL and ODE.&lt;br /&gt;
&lt;br /&gt;
GTK graphical programs are obsolete and replaced by their Qt equivalents. If you still want the old GTK programs, install &amp;lt;code&amp;gt;libgtkmm-2.4-dev&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Environment variables ==&lt;br /&gt;
&lt;br /&gt;
* Create a file called ~/.bashrc_iCub like this one. Usually you do not need all of the following variables and settings, just a subset.&lt;br /&gt;
&lt;br /&gt;
  export ROBOT_CODE=/usr/local/src/robot&lt;br /&gt;
&lt;br /&gt;
  export YARP_ROOT=$ROBOT_CODE/yarp&lt;br /&gt;
  export YARP_DIR=$YARP_ROOT/build&lt;br /&gt;
  export ICUB_ROOT=$ROBOT_CODE/icub-main&lt;br /&gt;
  export ICUB_DIR=$ICUB_ROOT/build&lt;br /&gt;
&lt;br /&gt;
  export ICUBcontrib_DIR=$ROBOT_CODE/icub-contrib-common/build&lt;br /&gt;
  export YARP_DATA_DIRS=$YARP_DIR/share/yarp:$ICUB_DIR/share/iCub:$ICUBcontrib_DIR/share/ICUBcontrib:$ROBOT_CODE/speech/svox-speech/build/share/speech&lt;br /&gt;
  export PATH=$PATH:$YARP_DIR/bin:$ICUB_DIR/bin:$ICUBcontrib_DIR/bin&lt;br /&gt;
&lt;br /&gt;
  export ODE_DIR=$ROBOT_CODE/ode-0.13/build&lt;br /&gt;
&lt;br /&gt;
  # OpenCV: select one of the following&lt;br /&gt;
  #export OpenCV_DIR=$ROBOT_CODE/opencv2/build&lt;br /&gt;
  #export OpenCV_DIR=$ROBOT_CODE/opencv2/build-cuda&lt;br /&gt;
  export OpenCV_DIR=$ROBOT_CODE/opencv3/build&lt;br /&gt;
  #export OpenCV_DIR=$ROBOT_CODE/opencv3/build-cuda&lt;br /&gt;
&lt;br /&gt;
  # To enable tab completion on yarp port names&lt;br /&gt;
  if [ -f $YARP_ROOT/scripts/yarp_completion ]; then&lt;br /&gt;
    source $YARP_ROOT/scripts/yarp_completion&lt;br /&gt;
  fi&lt;br /&gt;
&lt;br /&gt;
  # Set the name of your robot here.&lt;br /&gt;
  export YARP_ROBOT_NAME=iCubLisboa01&lt;br /&gt;
&lt;br /&gt;
  # Set-up optimizations&lt;br /&gt;
  export CMAKE_BUILD_TYPE=Release&lt;br /&gt;
&lt;br /&gt;
  # DebugStream customization&lt;br /&gt;
  export YARP_VERBOSE_OUTPUT=0&lt;br /&gt;
  export YARP_COLORED_OUTPUT=1&lt;br /&gt;
  export YARP_TRACE_ENABLE=0&lt;br /&gt;
  export YARP_FORWARD_LOG_ENABLE=0&lt;br /&gt;
&lt;br /&gt;
  # Lua&lt;br /&gt;
  ### DO NOT REMOVE &#039;;;;&#039; ###&lt;br /&gt;
  export LUA_PATH=&amp;quot;;;;$ROBOT_CODE/rFSM/?.lua;$ICUBcontrib_DIR/share/ICUBcontrib/contexts/interactiveObjectsLearning/LUA/?.lua&amp;quot;&lt;br /&gt;
  export LUA_CPATH=&amp;quot;;;;$YARP_ROOT/bindings/build-lua/?.so&amp;quot;&lt;br /&gt;
  export PATH=$PATH:$ROBOT_CODE/rFSM/tools:$ICUBcontrib_DIR/share/ICUBcontrib/contexts/interactiveObjectsLearning/LUA&lt;br /&gt;
  export PATH=$PATH:$YARP_ROOT/bindings/build-lua&lt;br /&gt;
  export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$YARP_ROOT/bindings/build-lua&lt;br /&gt;
&lt;br /&gt;
* Then, before the following line of /etc/bash.bashrc&lt;br /&gt;
 [ -z &amp;quot;$PS1&amp;quot; ] &amp;amp;&amp;amp; return&lt;br /&gt;
add this:&lt;br /&gt;
 # per-user environment variables (non-interactive and interactive mode)&lt;br /&gt;
 source $HOME/.bashrc_iCub&lt;br /&gt;
&lt;br /&gt;
The reason why we use the above custom file (as opposed to the standard ~/.bashrc) is that we want to enforce the variables both during interactive and non-interactive sessions, such as commands launched via &amp;lt;code&amp;gt;yarprun&amp;lt;/code&amp;gt; from another machine.&lt;br /&gt;
&lt;br /&gt;
See also https://git.robotology.eu/mbrunettini/icub-environment for the variables and scripts employed at IIT.&lt;br /&gt;
&lt;br /&gt;
= Additional software =&lt;br /&gt;
&lt;br /&gt;
== OpenCV ==&lt;br /&gt;
&lt;br /&gt;
=== Ubuntu packages ===&lt;br /&gt;
&lt;br /&gt;
* this is the easiest way to install OpenCV, however the Ubuntu packages might be too old and/or missing some specific features (in that case proceed with a manual installation, see below)&lt;br /&gt;
&lt;br /&gt;
  sudo apt install libcv-dev libhighgui-dev libcvaux-dev libopencv-gpu-dev&lt;br /&gt;
&lt;br /&gt;
=== Manual compilation ===&lt;br /&gt;
&lt;br /&gt;
* on most machines: download OpenCV, create a build directory, CMake, set WITH_CUDA=OFF, compile, set OpenCV_DIR to the path of OpenCV-x.y.z/build, for example:&lt;br /&gt;
 export OpenCV_DIR=$code/OpenCV-x.y.z/build&lt;br /&gt;
&lt;br /&gt;
* on CUDA machines, in order to compile CUDA-enabled modules: create a build-cuda directory, CMake, set WITH_CUDA=ON, compile, set OpenCV_DIR to the path of OpenCV-x.y.z/build-cuda. You may need to disable &amp;lt;code&amp;gt;cudacodec&amp;lt;/code&amp;gt;, see also https://github.com/opencv/opencv_contrib/issues/1786&lt;br /&gt;
&lt;br /&gt;
== YARP and iCub ==&lt;br /&gt;
&lt;br /&gt;
* In general, when compiling this software, do &#039;&#039;&#039;not&#039;&#039;&#039; use &amp;lt;code&amp;gt;sudo make install&amp;lt;/code&amp;gt; but simply &amp;lt;code&amp;gt;make&amp;lt;/code&amp;gt; (and configure the PATH variable in such a way that it finds the binaries from the build directory).&lt;br /&gt;
&lt;br /&gt;
* If you work with the robot, use the volume shares exported from the NFS server.&lt;br /&gt;
&lt;br /&gt;
* In other cases, follow the instructions on the [[iCub software]] article. &lt;br /&gt;
&lt;br /&gt;
* yarp CMake configuration&lt;br /&gt;
 CMAKE_BUILD_TYPE Release&lt;br /&gt;
 CREATE_GUIS&lt;br /&gt;
 CREATE_LIB_MATH&lt;br /&gt;
&lt;br /&gt;
 // to enable 640x480@30Hz images with Bayer encoding&lt;br /&gt;
 // install libraw1394-dev libdc1394-22-dev then enable&lt;br /&gt;
 CREATE_OPTIONAL_CARRIERS&lt;br /&gt;
 ENABLE_yarpcar_bayer ON&lt;br /&gt;
 ENABLE_yarpcar_mjpeg ON&lt;br /&gt;
&lt;br /&gt;
* icub-main CMake configuration&lt;br /&gt;
 CMAKE_BUILD_TYPE Release&lt;br /&gt;
 // on servers, do http://wiki.icub.org/wiki/Installing_IPOPT then enable&lt;br /&gt;
 ENABLE_icubmod_cartesiancontrollerclient ON&lt;br /&gt;
 ENABLE_icubmod_cartesiancontrollerserver ON&lt;br /&gt;
 ENABLE_icubmod_gazecontrollerclient ON&lt;br /&gt;
&lt;br /&gt;
* final configuration&lt;br /&gt;
# &amp;lt;code&amp;gt;yarp namespace /icub&amp;lt;/code&amp;gt;&lt;br /&gt;
# &amp;lt;code&amp;gt;yarp conf 10.10.1.53 10000&amp;lt;/code&amp;gt; (yarpserver runs on [[iCub laptop]])&lt;br /&gt;
&lt;br /&gt;
* special machines such as [[pc104]] need different flags&lt;br /&gt;
&lt;br /&gt;
== CUDA ==&lt;br /&gt;
&lt;br /&gt;
=== Prerequisites ===&lt;br /&gt;
&lt;br /&gt;
 sudo apt install freeglut3-dev libdevil-dev libglew-dev&lt;br /&gt;
 sudo apt purge libcudart*  // because we will manually install it&lt;br /&gt;
&lt;br /&gt;
Troubleshooting: http://askubuntu.com/questions/410604/installing-nvidia-drivers-with-pkg1-run-ends-with-no-version-h-found&lt;br /&gt;
&lt;br /&gt;
=== CUDA Toolkit, SDK and Examples ===&lt;br /&gt;
&lt;br /&gt;
* stop X servers: &amp;lt;code&amp;gt;sudo service lightdm stop&amp;lt;/code&amp;gt; (or &amp;lt;code&amp;gt;gdm stop&amp;lt;/code&amp;gt; depending on configuration)&lt;br /&gt;
* download and install NVIDIA CUDA Toolkit from http://docs.nvidia.com/cuda (not from Ubuntu packages)&lt;br /&gt;
* if you obtain the error &amp;quot;Toolkit:  Installation Failed. Using unsupported Compiler.&amp;quot;, use the override option, e.g., &amp;lt;code&amp;gt;./cuda_6.0.37_linux_64.run --override&amp;lt;/code&amp;gt;&lt;br /&gt;
* if you obtain the error &amp;quot;The driver installation is unable to locate the kernel source. Please make sure that the kernel source packages are installed and set up correctly&amp;quot;:&lt;br /&gt;
** read the CUDA log in /tmp and verify that the graphics card is currently supported -- if not, you might need to install a legacy NVIDIA driver. For example, the Quadro FX 580 card needs NVIDIA legacy drivers 340.xx: install them and then answer &#039;&#039;&#039;no&#039;&#039;&#039; when CUDA Toolkit installer asks &amp;quot;Install NVIDIA Accelerated Graphics Driver for Linux-x86_64 346.46?&amp;quot;&lt;br /&gt;
** &amp;lt;code&amp;gt;sudo apt install linux-generic linux-headers-$(uname -r) linux-headers-generic-lts-trusty&amp;lt;/code&amp;gt; (or other Ubuntu version codename)&lt;br /&gt;
** call the installer specifying the kernel source path, e.g., &amp;lt;code&amp;gt;./cuda_7.0.28_linux.run --kernel-source-path=/usr/src/linux-headers-3.13.0-52-generic/&amp;lt;/code&amp;gt;&lt;br /&gt;
* output of successful installation:&lt;br /&gt;
 Driver:   Installed&lt;br /&gt;
 Toolkit:  Installed in /usr/local/cuda-7.0&lt;br /&gt;
 Samples:  Not Selected&lt;br /&gt;
 Please make sure that&lt;br /&gt;
 -   PATH includes /usr/local/cuda-7.0/bin&lt;br /&gt;
 -   LD_LIBRARY_PATH includes /usr/local/cuda-7.0/lib64, or, add /usr/local/cuda-7.0/lib64 to /etc/ld.so.conf and run ldconfig as root&lt;br /&gt;
 To uninstall the CUDA Toolkit, run the uninstall script in /usr/local/cuda-7.0/bin&lt;br /&gt;
 To uninstall the NVIDIA Driver, run nvidia-uninstall&lt;br /&gt;
&lt;br /&gt;
* troubleshooting:&lt;br /&gt;
** http://askubuntu.com/questions/451672/installing-and-testing-cuda-in-ubuntu-14-04&lt;br /&gt;
** http://troylee2008.blogspot.pt/2012/05/linking-error-while-compiling-cuda-sdk.html&lt;br /&gt;
** https://devtalk.nvidia.com/default/topic/617414/-solved-cuda-driver-version-is-insufficient-for-cuda-runtime-version-fedora-18-rpmfusion-driver/&lt;br /&gt;
&lt;br /&gt;
=== SiftGPU ===&lt;br /&gt;
&lt;br /&gt;
* download it from http://cs.unc.edu/~ccwu/siftgpu/&lt;br /&gt;
* unzip it - typically in your home directory, not in the NFS shared folder&lt;br /&gt;
* compile with &amp;lt;code&amp;gt;make&amp;lt;/code&amp;gt;&lt;br /&gt;
* if you obtain &amp;quot;unspecified launch failure&amp;quot; and 0 sift features/matches, check that the X server is running: &amp;lt;code&amp;gt;sudo service lightdm start&amp;lt;/code&amp;gt;&lt;br /&gt;
* if you obtain the error &amp;quot;/usr/local/cuda/bin/nvcc: Command not found&amp;quot;, this can help: &amp;lt;code&amp;gt;sudo ln -s /usr/lib/nvidia-cuda-toolkit /usr/local/cuda&amp;lt;/code&amp;gt;. See also http://askubuntu.com/questions/231503/nvcc-compiler-setup-ubuntu-12-04&lt;br /&gt;
* run the test program &amp;lt;code&amp;gt;SimpleSIFT&amp;lt;/code&amp;gt; - it should work via ssh, as well as in a local session&lt;br /&gt;
* example of successful execution:&lt;br /&gt;
 $ ./SimpleSIFT &lt;br /&gt;
 Unable to create OpenGL Context!&lt;br /&gt;
 For nVidia cards, you can try change to CUDA mode in this case&lt;br /&gt;
 NOTE: changing maximum texture dimension to 32768&lt;br /&gt;
 [SiftGPU Language]:	CUDA&lt;br /&gt;
 Image size :	800x600&lt;br /&gt;
 Image loaded :	../data/800-1.jpg&lt;br /&gt;
 #Features:	3347&lt;br /&gt;
 #Features MO:	3910&lt;br /&gt;
 [RUN SIFT]:	0.339&lt;br /&gt;
 Image size :	640x480&lt;br /&gt;
 Image loaded :	../data/640-1.jpg&lt;br /&gt;
 #Features:	2372&lt;br /&gt;
 #Features MO:	2767&lt;br /&gt;
 [RUN SIFT]:	0.208&lt;br /&gt;
 NOTE: changing maximum texture dimension to 32768&lt;br /&gt;
 [SiftMatchGPU]: CUDA&lt;br /&gt;
 2247 sift matches were found;&lt;br /&gt;
&lt;br /&gt;
* define &amp;lt;code&amp;gt;export SIFTGPU_DIR=~/SiftGPU&amp;lt;/code&amp;gt; or similar in your iCub bashrc file, so that libsiftgpu.so is found by IOL modules&lt;br /&gt;
&lt;br /&gt;
== himrep ==&lt;br /&gt;
&lt;br /&gt;
Clone https://github.com/robotology/himrep, follow the instructions to compile &amp;lt;code&amp;gt;liblinear&amp;lt;/code&amp;gt;, CMake, make install&lt;br /&gt;
&lt;br /&gt;
To use the deep neural network object recognition, based on Caffe, follow the instructions at README_Caffe.md.&lt;br /&gt;
If you get &amp;quot;error: kernel launches from templates are not allowed in system files&amp;quot;, use an older GCC version like 4.6 (see also https://github.com/BVLC/caffe/issues/337). If you get &amp;quot;ImportError: No module named &#039;yaml&#039;&amp;quot;, do &amp;lt;code&amp;gt;sudo apt install python-yaml&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== IOL ==&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;sudo apt install lua5.1 liblua5.1-dev&amp;lt;/code&amp;gt;&lt;br /&gt;
* clone [https://github.com/kmarkus/rFSM rFSM] (no need to compile anything here)&lt;br /&gt;
&lt;br /&gt;
Clone https://github.com/robotology/iol, CMake, make install&lt;br /&gt;
&lt;br /&gt;
== stereo-vision ==&lt;br /&gt;
&lt;br /&gt;
Clone https://github.com/robotology/stereo-vision, CMake with USE_SIFT_GPU=ON, make install&lt;br /&gt;
&lt;br /&gt;
= Best practices =&lt;br /&gt;
&lt;br /&gt;
Below are some tips and tricks taken from:&lt;br /&gt;
&lt;br /&gt;
* http://wiki.icub.org/wiki/Yarp-config&lt;br /&gt;
* http://www.yarp.it/yarp-config.html&lt;br /&gt;
* [https://docs.google.com/document/d/1S9m4DbrV1AJWo_E1r3F8k3ZzmhaTOWRJ9WFjXPFqVos IIT - How to setup and start the iCub from scratch] (last updated December 2016)&lt;br /&gt;
&lt;br /&gt;
== XML files ==&lt;br /&gt;
&lt;br /&gt;
Edit XML files locally, in /home/icub/.local/share/yarp&lt;br /&gt;
&lt;br /&gt;
To install robot-specific XML files, compile icub-main (just &amp;lt;code&amp;gt;make&amp;lt;/code&amp;gt;) then use commands like &amp;lt;code&amp;gt;yarp-config robot --import-all&amp;lt;/code&amp;gt; (installs all files) or &amp;lt;code&amp;gt;yarp-config robot --import iCubLisboa01 affordancesExploration.xml&amp;lt;/code&amp;gt; (installs specific files)&lt;br /&gt;
&lt;br /&gt;
== ini files ==&lt;br /&gt;
&lt;br /&gt;
To install application conf/*.ini files, compile a project (e.g., icub-main, poeticon, iol) then use commands like &amp;lt;code&amp;gt;yarp-config context --import-all&amp;lt;/code&amp;gt; (installs all files) or &amp;lt;code&amp;gt;yarp-config context --import actionsRenderingEngine&amp;lt;/code&amp;gt; (installs the files of specific applications)&lt;br /&gt;
&lt;br /&gt;
== Disabling some robot parts ==&lt;br /&gt;
&lt;br /&gt;
If the robot is not complete (or some parts need to be disabled):&lt;br /&gt;
&lt;br /&gt;
* In a pc104 shell, type &amp;lt;code&amp;gt;yarp-config robot --list&amp;lt;/code&amp;gt; to look for the .ini files from where the configuration values are launched: these are local copies of the robots-configuration repository files&lt;br /&gt;
* Go to the &amp;lt;code&amp;gt;INSTALLED DATA&amp;lt;/code&amp;gt; directory path and then, within the corresponding robot folder (e.g., iCubLisboa01), look for the file yarprobotinterface.ini, which points to a .xml file which contains the configuration paths for all the robot parts (e.g., icub_all.xml)&lt;br /&gt;
* If the local config file does not exist, there is only the canonical file in the build path: in that case, create a local one using &amp;lt;code&amp;gt;yarp-config --import&amp;lt;/code&amp;gt;&lt;br /&gt;
* Make a copy of the .xml file giving it a descriptive name (e.g., icub_no_legs.xml) and, in the copied file, comment or remove all lines that refer to .ini files of the part(s) that you want to disable&lt;br /&gt;
* Edit the contents of yarprobotinterface.ini so that it points to the new .xml file where the parts have been commented&lt;br /&gt;
* In the iCubStartup application GUI or xml, modify the way that gravityCompensator and wholeBodyDynamics are launched, so that they don&#039;t look for the configuration files of the parts that have been disabled: in the legs example, just add &amp;lt;code&amp;gt;--no_legs&amp;lt;/code&amp;gt; to the argument list&lt;br /&gt;
&lt;br /&gt;
= See also =&lt;br /&gt;
&lt;br /&gt;
* http://wiki.icub.org/wiki/Generic_iCub_machine_installation_instructions&lt;br /&gt;
&lt;br /&gt;
[[Category:Vislab]]&lt;/div&gt;</summary>
		<author><name>Giovanni Saponaro</name></author>
	</entry>
	<entry>
		<id>http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=ICub_machines_configuration&amp;diff=7068</id>
		<title>ICub machines configuration</title>
		<link rel="alternate" type="text/html" href="http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=ICub_machines_configuration&amp;diff=7068"/>
		<updated>2018-12-12T12:41:32Z</updated>

		<summary type="html">&lt;p&gt;Giovanni Saponaro: /* Disabling some robot parts */ minor rewrite&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;In this page we describe the setup of the computers connected to the iCub robot, which all share a common network disk and configuration.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;See [[iCub machines configuration/Archive]] for obsolete information.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
= Operating system installation =&lt;br /&gt;
&lt;br /&gt;
Ubuntu LTS, default settings and partitioning. The first user to be created must be called &#039;&#039;&#039;icub&#039;&#039;&#039;, to make the distributed setup possible: for NFS network mount, this user has to have uid 1000 and guid 1000.&lt;br /&gt;
&lt;br /&gt;
In order to add a user:&lt;br /&gt;
* either use the Ubuntu graphical frontends&lt;br /&gt;
* or use a Terminal:&lt;br /&gt;
 sudo adduser icub&lt;br /&gt;
 sudo usermod -aG sudo icub  # gives sudo privileges&lt;br /&gt;
&lt;br /&gt;
= Other operations =&lt;br /&gt;
&lt;br /&gt;
== Network configuration ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;See also: [[VisLab network]], [[ISR computing resources]]&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Configure a static IP as explained in one of the following subsections, depending if the machine is a desktop or a server one.&lt;br /&gt;
&lt;br /&gt;
Also, it is recommended to set up the &amp;lt;code&amp;gt;/etc/hosts&amp;lt;/code&amp;gt; file as follows:&lt;br /&gt;
&lt;br /&gt;
 10.10.1.41 icubbrain1&lt;br /&gt;
 10.10.1.42 icubbrain2&lt;br /&gt;
 10.10.1.50 pc104&lt;br /&gt;
 10.10.1.51 icub-cuda&lt;br /&gt;
 10.10.1.53 icub-laptop&lt;br /&gt;
&lt;br /&gt;
You should be able to do &amp;lt;code&amp;gt;ping icubbrain1&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Desktop machines ===&lt;br /&gt;
&lt;br /&gt;
With the graphical Network Manager (https://help.ubuntu.com/16.04/ubuntu-help/net-fixed-ip-address.html), configure the connection &amp;quot;Auto eth0&amp;quot; IPv4 as follows:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|+ &lt;br /&gt;
! Address !! Netmask !! Gateway !! DNS Servers !! notes&lt;br /&gt;
|-&lt;br /&gt;
|10.10.1.x || 255.255.255.0 || 10.10.1.254 || 10.0.0.1, 10.0.0.2 || visnet (iCub machines)&lt;br /&gt;
|-&lt;br /&gt;
|10.0.x.y || 255.255.0.0 || 10.0.0.254 || 10.0.0.1, 10.0.0.2 || isrnet (rest of ISR)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Servers ===&lt;br /&gt;
&lt;br /&gt;
Edit &amp;lt;code&amp;gt;/etc/network/interfaces&amp;lt;/code&amp;gt; like this:&lt;br /&gt;
 auto lo&lt;br /&gt;
 iface lo inet loopback&lt;br /&gt;
   &lt;br /&gt;
 auto eth0&lt;br /&gt;
 iface eth0 inet static&lt;br /&gt;
 address 10.x.y.z # put your IP here, see above table&lt;br /&gt;
 netmask 255.255.x.y # see above table&lt;br /&gt;
 network 10.10.1.0&lt;br /&gt;
 broadcast 10.10.1.255&lt;br /&gt;
 gateway 10.10.1.254&lt;br /&gt;
 dns-nameservers 10.0.0.1 10.0.0.2&lt;br /&gt;
&lt;br /&gt;
In some versions of Ubuntu, to configure DNS you also need to edit &amp;lt;code&amp;gt;/etc/resolvconf/resolv.conf.d/head&amp;lt;/code&amp;gt; like this:&lt;br /&gt;
 nameserver 10.0.0.1&lt;br /&gt;
 nameserver 10.0.0.2&lt;br /&gt;
&lt;br /&gt;
then run:&lt;br /&gt;
 sudo resolvconf -u&lt;br /&gt;
&lt;br /&gt;
== Dependencies ==&lt;br /&gt;
&lt;br /&gt;
Installing the &#039;&#039;&#039;icub-common&#039;&#039;&#039; metapackage is sufficient. It is a bundle of the following packages (for more details see [http://wiki.icub.org/wiki/Linux:Installation_from_sources here], [http://wiki.icub.org/wiki/Linux:_dependencies here] and [https://github.com/robotology/yarp/blob/master/.travis.yml here]):&lt;br /&gt;
 sudo apt install build-essential libace-dev libedit-dev libeigen3-dev libncurses5-dev gfortran libtinyxml-dev libgraphviz-dev&lt;br /&gt;
 sudo apt install git-core ssh gcc g++ make cmake-curses-gui freeglut3-dev libxmu-dev libswscale-dev libavformat-dev&lt;br /&gt;
&lt;br /&gt;
Qt5 graphics dependencies in Ubuntu 16.04 Xenial:&lt;br /&gt;
&lt;br /&gt;
 sudo apt install qttools5-dev qtdeclarative5-dev qtdeclarative5-controls-plugin qtdeclarative5-dialogs-plugin qtmultimedia5-dev qtdeclarative5-qtmultimedia-plugin qtquick1-5-dev libqt5opengl5-dev&lt;br /&gt;
&lt;br /&gt;
Qt5 graphics dependencies in Debian Stretch:&lt;br /&gt;
 sudo apt install qml-module-qt-labs-folderlistmodel qml-module-qt-labs-settings&lt;br /&gt;
&lt;br /&gt;
iCub Simulator dependencies: SDL and ODE.&lt;br /&gt;
&lt;br /&gt;
GTK graphical programs are obsolete and replaced by their Qt equivalents. If you still want the old GTK programs, install &amp;lt;code&amp;gt;libgtkmm-2.4-dev&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Environment variables ==&lt;br /&gt;
&lt;br /&gt;
* Create a file called ~/.bashrc_iCub like this one. Usually you do not need all of the following variables and settings, just a subset.&lt;br /&gt;
&lt;br /&gt;
  export ROBOT_CODE=/usr/local/src/robot&lt;br /&gt;
&lt;br /&gt;
  export YARP_ROOT=$ROBOT_CODE/yarp&lt;br /&gt;
  export YARP_DIR=$YARP_ROOT/build&lt;br /&gt;
  export ICUB_ROOT=$ROBOT_CODE/icub-main&lt;br /&gt;
  export ICUB_DIR=$ICUB_ROOT/build&lt;br /&gt;
&lt;br /&gt;
  export ICUBcontrib_DIR=$ROBOT_CODE/icub-contrib-common/build&lt;br /&gt;
  export YARP_DATA_DIRS=$YARP_DIR/share/yarp:$ICUB_DIR/share/iCub:$ICUBcontrib_DIR/share/ICUBcontrib:$ROBOT_CODE/speech/svox-speech/build/share/speech&lt;br /&gt;
  export PATH=$PATH:$YARP_DIR/bin:$ICUB_DIR/bin:$ICUBcontrib_DIR/bin&lt;br /&gt;
&lt;br /&gt;
  export ODE_DIR=$ROBOT_CODE/ode-0.13/build&lt;br /&gt;
&lt;br /&gt;
  # OpenCV: select one of the following&lt;br /&gt;
  #export OpenCV_DIR=$ROBOT_CODE/opencv2/build&lt;br /&gt;
  #export OpenCV_DIR=$ROBOT_CODE/opencv2/build-cuda&lt;br /&gt;
  export OpenCV_DIR=$ROBOT_CODE/opencv3/build&lt;br /&gt;
  #export OpenCV_DIR=$ROBOT_CODE/opencv3/build-cuda&lt;br /&gt;
&lt;br /&gt;
  # To enable tab completion on yarp port names&lt;br /&gt;
  if [ -f $YARP_ROOT/scripts/yarp_completion ]; then&lt;br /&gt;
    source $YARP_ROOT/scripts/yarp_completion&lt;br /&gt;
  fi&lt;br /&gt;
&lt;br /&gt;
  # Set the name of your robot here.&lt;br /&gt;
  export YARP_ROBOT_NAME=iCubLisboa01&lt;br /&gt;
&lt;br /&gt;
  # Set-up optimizations&lt;br /&gt;
  export CMAKE_BUILD_TYPE=Release&lt;br /&gt;
&lt;br /&gt;
  # DebugStream customization&lt;br /&gt;
  export YARP_VERBOSE_OUTPUT=0&lt;br /&gt;
  export YARP_COLORED_OUTPUT=1&lt;br /&gt;
  export YARP_TRACE_ENABLE=0&lt;br /&gt;
  export YARP_FORWARD_LOG_ENABLE=0&lt;br /&gt;
&lt;br /&gt;
  # Lua&lt;br /&gt;
  ### DO NOT REMOVE &#039;;;;&#039; ###&lt;br /&gt;
  export LUA_PATH=&amp;quot;;;;$ROBOT_CODE/rFSM/?.lua;$ICUBcontrib_DIR/share/ICUBcontrib/contexts/interactiveObjectsLearning/LUA/?.lua&amp;quot;&lt;br /&gt;
  export LUA_CPATH=&amp;quot;;;;$YARP_ROOT/bindings/build-lua/?.so&amp;quot;&lt;br /&gt;
  export PATH=$PATH:$ROBOT_CODE/rFSM/tools:$ICUBcontrib_DIR/share/ICUBcontrib/contexts/interactiveObjectsLearning/LUA&lt;br /&gt;
  export PATH=$PATH:$YARP_ROOT/bindings/build-lua&lt;br /&gt;
  export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$YARP_ROOT/bindings/build-lua&lt;br /&gt;
&lt;br /&gt;
* Then, before the following line of /etc/bash.bashrc&lt;br /&gt;
 [ -z &amp;quot;$PS1&amp;quot; ] &amp;amp;&amp;amp; return&lt;br /&gt;
add this:&lt;br /&gt;
 # per-user environment variables (non-interactive and interactive mode)&lt;br /&gt;
 source $HOME/.bashrc_iCub&lt;br /&gt;
&lt;br /&gt;
The reason why we use the above custom file (as opposed to the standard ~/.bashrc) is that we want to enforce the variables both during interactive and non-interactive sessions, such as commands launched via &amp;lt;code&amp;gt;yarprun&amp;lt;/code&amp;gt; from another machine.&lt;br /&gt;
&lt;br /&gt;
See also https://git.robotology.eu/mbrunettini/icub-environment for the variables and scripts employed at IIT.&lt;br /&gt;
&lt;br /&gt;
= Additional software =&lt;br /&gt;
&lt;br /&gt;
== OpenCV ==&lt;br /&gt;
&lt;br /&gt;
=== Ubuntu packages ===&lt;br /&gt;
&lt;br /&gt;
* this is the easiest way to install OpenCV, however the Ubuntu packages might be too old and/or missing some specific features (in that case proceed with a manual installation, see below)&lt;br /&gt;
&lt;br /&gt;
  sudo apt install libcv-dev libhighgui-dev libcvaux-dev libopencv-gpu-dev&lt;br /&gt;
&lt;br /&gt;
=== Manual compilation ===&lt;br /&gt;
&lt;br /&gt;
* on most machines: download OpenCV, create a build directory, CMake, set WITH_CUDA=OFF, compile, set OpenCV_DIR to the path of OpenCV-x.y.z/build, for example:&lt;br /&gt;
 export OpenCV_DIR=$code/OpenCV-x.y.z/build&lt;br /&gt;
&lt;br /&gt;
* on CUDA machines, in order to compile CUDA-enabled modules: create a build-cuda directory, CMake, set WITH_CUDA=ON, compile, set OpenCV_DIR to the path of OpenCV-x.y.z/build-cuda. You may need to disable &amp;lt;code&amp;gt;cudacodec&amp;lt;/code&amp;gt;, see also https://github.com/opencv/opencv_contrib/issues/1786&lt;br /&gt;
&lt;br /&gt;
== YARP and iCub ==&lt;br /&gt;
&lt;br /&gt;
* In general, when compiling this software, do &#039;&#039;&#039;not&#039;&#039;&#039; use &amp;lt;code&amp;gt;sudo make install&amp;lt;/code&amp;gt; but simply &amp;lt;code&amp;gt;make&amp;lt;/code&amp;gt; (and configure the PATH variable in such a way that it finds the binaries from the build directory).&lt;br /&gt;
&lt;br /&gt;
* If you work with the robot, use the volume shares exported from the NFS server.&lt;br /&gt;
&lt;br /&gt;
* In other cases, follow the instructions on the [[iCub software]] article. &lt;br /&gt;
&lt;br /&gt;
* yarp CMake configuration&lt;br /&gt;
 CMAKE_BUILD_TYPE Release&lt;br /&gt;
 CREATE_GUIS&lt;br /&gt;
 CREATE_LIB_MATH&lt;br /&gt;
&lt;br /&gt;
 // to enable 640x480@30Hz images with Bayer encoding&lt;br /&gt;
 // install libraw1394-dev libdc1394-22-dev then enable&lt;br /&gt;
 CREATE_OPTIONAL_CARRIERS&lt;br /&gt;
 ENABLE_yarpcar_bayer ON&lt;br /&gt;
 ENABLE_yarpcar_mjpeg ON&lt;br /&gt;
&lt;br /&gt;
* icub-main CMake configuration&lt;br /&gt;
 CMAKE_BUILD_TYPE Release&lt;br /&gt;
 // on servers, do http://wiki.icub.org/wiki/Installing_IPOPT then enable&lt;br /&gt;
 ENABLE_icubmod_cartesiancontrollerclient ON&lt;br /&gt;
 ENABLE_icubmod_cartesiancontrollerserver ON&lt;br /&gt;
 ENABLE_icubmod_gazecontrollerclient ON&lt;br /&gt;
&lt;br /&gt;
* final configuration&lt;br /&gt;
# &amp;lt;code&amp;gt;yarp namespace /icub&amp;lt;/code&amp;gt;&lt;br /&gt;
# &amp;lt;code&amp;gt;yarp conf 10.10.1.53 10000&amp;lt;/code&amp;gt; (yarpserver runs on [[iCub laptop]])&lt;br /&gt;
&lt;br /&gt;
* special machines such as [[pc104]] need different flags&lt;br /&gt;
&lt;br /&gt;
== CUDA ==&lt;br /&gt;
&lt;br /&gt;
=== Prerequisites ===&lt;br /&gt;
&lt;br /&gt;
 sudo apt install freeglut3-dev libdevil-dev libglew-dev&lt;br /&gt;
 sudo apt purge libcudart*  // because we will manually install it&lt;br /&gt;
&lt;br /&gt;
Troubleshooting: http://askubuntu.com/questions/410604/installing-nvidia-drivers-with-pkg1-run-ends-with-no-version-h-found&lt;br /&gt;
&lt;br /&gt;
=== CUDA Toolkit, SDK and Examples ===&lt;br /&gt;
&lt;br /&gt;
* stop X servers: &amp;lt;code&amp;gt;sudo service lightdm stop&amp;lt;/code&amp;gt; (or &amp;lt;code&amp;gt;gdm stop&amp;lt;/code&amp;gt; depending on configuration)&lt;br /&gt;
* download and install NVIDIA CUDA Toolkit from http://docs.nvidia.com/cuda (not from Ubuntu packages)&lt;br /&gt;
* if you obtain the error &amp;quot;Toolkit:  Installation Failed. Using unsupported Compiler.&amp;quot;, use the override option, e.g., &amp;lt;code&amp;gt;./cuda_6.0.37_linux_64.run --override&amp;lt;/code&amp;gt;&lt;br /&gt;
* if you obtain the error &amp;quot;The driver installation is unable to locate the kernel source. Please make sure that the kernel source packages are installed and set up correctly&amp;quot;:&lt;br /&gt;
** read the CUDA log in /tmp and verify that the graphics card is currently supported -- if not, you might need to install a legacy NVIDIA driver. For example, the Quadro FX 580 card needs NVIDIA legacy drivers 340.xx: install them and then answer &#039;&#039;&#039;no&#039;&#039;&#039; when CUDA Toolkit installer asks &amp;quot;Install NVIDIA Accelerated Graphics Driver for Linux-x86_64 346.46?&amp;quot;&lt;br /&gt;
** &amp;lt;code&amp;gt;sudo apt install linux-generic linux-headers-$(uname -r) linux-headers-generic-lts-trusty&amp;lt;/code&amp;gt; (or other Ubuntu version codename)&lt;br /&gt;
** call the installer specifying the kernel source path, e.g., &amp;lt;code&amp;gt;./cuda_7.0.28_linux.run --kernel-source-path=/usr/src/linux-headers-3.13.0-52-generic/&amp;lt;/code&amp;gt;&lt;br /&gt;
* output of successful installation:&lt;br /&gt;
 Driver:   Installed&lt;br /&gt;
 Toolkit:  Installed in /usr/local/cuda-7.0&lt;br /&gt;
 Samples:  Not Selected&lt;br /&gt;
 Please make sure that&lt;br /&gt;
 -   PATH includes /usr/local/cuda-7.0/bin&lt;br /&gt;
 -   LD_LIBRARY_PATH includes /usr/local/cuda-7.0/lib64, or, add /usr/local/cuda-7.0/lib64 to /etc/ld.so.conf and run ldconfig as root&lt;br /&gt;
 To uninstall the CUDA Toolkit, run the uninstall script in /usr/local/cuda-7.0/bin&lt;br /&gt;
 To uninstall the NVIDIA Driver, run nvidia-uninstall&lt;br /&gt;
&lt;br /&gt;
* troubleshooting:&lt;br /&gt;
** http://askubuntu.com/questions/451672/installing-and-testing-cuda-in-ubuntu-14-04&lt;br /&gt;
** http://troylee2008.blogspot.pt/2012/05/linking-error-while-compiling-cuda-sdk.html&lt;br /&gt;
** https://devtalk.nvidia.com/default/topic/617414/-solved-cuda-driver-version-is-insufficient-for-cuda-runtime-version-fedora-18-rpmfusion-driver/&lt;br /&gt;
&lt;br /&gt;
=== SiftGPU ===&lt;br /&gt;
&lt;br /&gt;
* download it from http://cs.unc.edu/~ccwu/siftgpu/&lt;br /&gt;
* unzip it - typically in your home directory, not in the NFS shared folder&lt;br /&gt;
* compile with &amp;lt;code&amp;gt;make&amp;lt;/code&amp;gt;&lt;br /&gt;
* if you obtain &amp;quot;unspecified launch failure&amp;quot; and 0 sift features/matches, check that the X server is running: &amp;lt;code&amp;gt;sudo service lightdm start&amp;lt;/code&amp;gt;&lt;br /&gt;
* if you obtain the error &amp;quot;/usr/local/cuda/bin/nvcc: Command not found&amp;quot;, this can help: &amp;lt;code&amp;gt;sudo ln -s /usr/lib/nvidia-cuda-toolkit /usr/local/cuda&amp;lt;/code&amp;gt;. See also http://askubuntu.com/questions/231503/nvcc-compiler-setup-ubuntu-12-04&lt;br /&gt;
* run the test program &amp;lt;code&amp;gt;SimpleSIFT&amp;lt;/code&amp;gt; - it should work via ssh, as well as in a local session&lt;br /&gt;
* example of successful execution:&lt;br /&gt;
 $ ./SimpleSIFT &lt;br /&gt;
 Unable to create OpenGL Context!&lt;br /&gt;
 For nVidia cards, you can try change to CUDA mode in this case&lt;br /&gt;
 NOTE: changing maximum texture dimension to 32768&lt;br /&gt;
 [SiftGPU Language]:	CUDA&lt;br /&gt;
 Image size :	800x600&lt;br /&gt;
 Image loaded :	../data/800-1.jpg&lt;br /&gt;
 #Features:	3347&lt;br /&gt;
 #Features MO:	3910&lt;br /&gt;
 [RUN SIFT]:	0.339&lt;br /&gt;
 Image size :	640x480&lt;br /&gt;
 Image loaded :	../data/640-1.jpg&lt;br /&gt;
 #Features:	2372&lt;br /&gt;
 #Features MO:	2767&lt;br /&gt;
 [RUN SIFT]:	0.208&lt;br /&gt;
 NOTE: changing maximum texture dimension to 32768&lt;br /&gt;
 [SiftMatchGPU]: CUDA&lt;br /&gt;
 2247 sift matches were found;&lt;br /&gt;
&lt;br /&gt;
* define &amp;lt;code&amp;gt;export SIFTGPU_DIR=~/SiftGPU&amp;lt;/code&amp;gt; or similar in your iCub bashrc file, so that libsiftgpu.so is found by IOL modules&lt;br /&gt;
&lt;br /&gt;
== himrep ==&lt;br /&gt;
&lt;br /&gt;
Clone https://github.com/robotology/himrep, follow the instructions to compile &amp;lt;code&amp;gt;liblinear&amp;lt;/code&amp;gt;, CMake, make install&lt;br /&gt;
&lt;br /&gt;
To use the deep neural network object recognition, based on Caffe, follow the instructions at README_Caffe.md.&lt;br /&gt;
If you get &amp;quot;error: kernel launches from templates are not allowed in system files&amp;quot;, use an older GCC version like 4.6 (see also https://github.com/BVLC/caffe/issues/337). If you get &amp;quot;ImportError: No module named &#039;yaml&#039;&amp;quot;, do &amp;lt;code&amp;gt;sudo apt install python-yaml&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== IOL ==&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;sudo apt install lua5.1 liblua5.1-dev&amp;lt;/code&amp;gt;&lt;br /&gt;
* clone [https://github.com/kmarkus/rFSM rFSM] (no need to compile anything here)&lt;br /&gt;
&lt;br /&gt;
Clone https://github.com/robotology/iol, CMake, make install&lt;br /&gt;
&lt;br /&gt;
== stereo-vision ==&lt;br /&gt;
&lt;br /&gt;
Clone https://github.com/robotology/stereo-vision, CMake with USE_SIFT_GPU=ON, make install&lt;br /&gt;
&lt;br /&gt;
= Best practices =&lt;br /&gt;
&lt;br /&gt;
Below are some tips and tricks taken from:&lt;br /&gt;
&lt;br /&gt;
* http://wiki.icub.org/wiki/Yarp-config&lt;br /&gt;
* http://www.yarp.it/yarp-config.html&lt;br /&gt;
* [https://docs.google.com/document/d/1S9m4DbrV1AJWo_E1r3F8k3ZzmhaTOWRJ9WFjXPFqVos IIT - How to setup and start the iCub from scratch]&lt;br /&gt;
&lt;br /&gt;
== XML files ==&lt;br /&gt;
&lt;br /&gt;
Edit XML files locally, in /home/icub/.local/share/yarp&lt;br /&gt;
&lt;br /&gt;
To install robot-specific XML files, compile icub-main (just &amp;lt;code&amp;gt;make&amp;lt;/code&amp;gt;) then use commands like &amp;lt;code&amp;gt;yarp-config robot --import-all&amp;lt;/code&amp;gt; (installs all files) or &amp;lt;code&amp;gt;yarp-config robot --import iCubLisboa01 affordancesExploration.xml&amp;lt;/code&amp;gt; (installs specific files)&lt;br /&gt;
&lt;br /&gt;
== ini files ==&lt;br /&gt;
&lt;br /&gt;
To install application conf/*.ini files, compile a project (e.g., icub-main, poeticon, iol) then use commands like &amp;lt;code&amp;gt;yarp-config context --import-all&amp;lt;/code&amp;gt; (installs all files) or &amp;lt;code&amp;gt;yarp-config context --import actionsRenderingEngine&amp;lt;/code&amp;gt; (installs the files of specific applications)&lt;br /&gt;
&lt;br /&gt;
== Disabling some robot parts ==&lt;br /&gt;
&lt;br /&gt;
If the robot is not complete (or some parts need to be disabled):&lt;br /&gt;
&lt;br /&gt;
* In a pc104 shell, type &amp;lt;code&amp;gt;yarp-config robot --list&amp;lt;/code&amp;gt; to look for the .ini files from where the configuration values are launched: these are local copies of the robots-configuration repository files&lt;br /&gt;
* Go to the &amp;lt;code&amp;gt;INSTALLED DATA&amp;lt;/code&amp;gt; directory path and then, within the corresponding robot folder (e.g., iCubLisboa01), look for the file yarprobotinterface.ini, which points to a .xml file which contains the configuration paths for all the robot parts (e.g., icub_all.xml)&lt;br /&gt;
* If the local config file does not exist, there is only the canonical file in the build path: in that case, create a local one using &amp;lt;code&amp;gt;yarp-config --import&amp;lt;/code&amp;gt;&lt;br /&gt;
* Make a copy of the .xml file giving it a descriptive name (e.g., icub_no_legs.xml) and, in the copied file, comment or remove all lines that refer to .ini files of the part(s) that you want to disable&lt;br /&gt;
* Edit the contents of yarprobotinterface.ini so that it points to the new .xml file where the parts have been commented&lt;br /&gt;
* In the iCubStartup application GUI or xml, modify the way that gravityCompensator and wholeBodyDynamics are launched, so that they don&#039;t look for the configuration files of the parts that have been disabled: in the legs example, just add &amp;lt;code&amp;gt;--no_legs&amp;lt;/code&amp;gt; to the argument list&lt;br /&gt;
&lt;br /&gt;
= See also =&lt;br /&gt;
&lt;br /&gt;
* http://wiki.icub.org/wiki/Generic_iCub_machine_installation_instructions&lt;br /&gt;
&lt;br /&gt;
[[Category:Vislab]]&lt;/div&gt;</summary>
		<author><name>Giovanni Saponaro</name></author>
	</entry>
	<entry>
		<id>http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=ICub_machines_configuration&amp;diff=7067</id>
		<title>ICub machines configuration</title>
		<link rel="alternate" type="text/html" href="http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=ICub_machines_configuration&amp;diff=7067"/>
		<updated>2018-12-12T12:36:02Z</updated>

		<summary type="html">&lt;p&gt;Giovanni Saponaro: /* Disabling some robot parts */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;In this page we describe the setup of the computers connected to the iCub robot, which all share a common network disk and configuration.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;See [[iCub machines configuration/Archive]] for obsolete information.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
= Operating system installation =&lt;br /&gt;
&lt;br /&gt;
Ubuntu LTS, default settings and partitioning. The first user to be created must be called &#039;&#039;&#039;icub&#039;&#039;&#039;, to make the distributed setup possible: for NFS network mount, this user has to have uid 1000 and guid 1000.&lt;br /&gt;
&lt;br /&gt;
In order to add a user:&lt;br /&gt;
* either use the Ubuntu graphical frontends&lt;br /&gt;
* or use a Terminal:&lt;br /&gt;
 sudo adduser icub&lt;br /&gt;
 sudo usermod -aG sudo icub  # gives sudo privileges&lt;br /&gt;
&lt;br /&gt;
= Other operations =&lt;br /&gt;
&lt;br /&gt;
== Network configuration ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;See also: [[VisLab network]], [[ISR computing resources]]&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Configure a static IP as explained in one of the following subsections, depending if the machine is a desktop or a server one.&lt;br /&gt;
&lt;br /&gt;
Also, it is recommended to set up the &amp;lt;code&amp;gt;/etc/hosts&amp;lt;/code&amp;gt; file as follows:&lt;br /&gt;
&lt;br /&gt;
 10.10.1.41 icubbrain1&lt;br /&gt;
 10.10.1.42 icubbrain2&lt;br /&gt;
 10.10.1.50 pc104&lt;br /&gt;
 10.10.1.51 icub-cuda&lt;br /&gt;
 10.10.1.53 icub-laptop&lt;br /&gt;
&lt;br /&gt;
You should be able to do &amp;lt;code&amp;gt;ping icubbrain1&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Desktop machines ===&lt;br /&gt;
&lt;br /&gt;
With the graphical Network Manager (https://help.ubuntu.com/16.04/ubuntu-help/net-fixed-ip-address.html), configure the connection &amp;quot;Auto eth0&amp;quot; IPv4 as follows:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|+ &lt;br /&gt;
! Address !! Netmask !! Gateway !! DNS Servers !! notes&lt;br /&gt;
|-&lt;br /&gt;
|10.10.1.x || 255.255.255.0 || 10.10.1.254 || 10.0.0.1, 10.0.0.2 || visnet (iCub machines)&lt;br /&gt;
|-&lt;br /&gt;
|10.0.x.y || 255.255.0.0 || 10.0.0.254 || 10.0.0.1, 10.0.0.2 || isrnet (rest of ISR)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Servers ===&lt;br /&gt;
&lt;br /&gt;
Edit &amp;lt;code&amp;gt;/etc/network/interfaces&amp;lt;/code&amp;gt; like this:&lt;br /&gt;
 auto lo&lt;br /&gt;
 iface lo inet loopback&lt;br /&gt;
   &lt;br /&gt;
 auto eth0&lt;br /&gt;
 iface eth0 inet static&lt;br /&gt;
 address 10.x.y.z # put your IP here, see above table&lt;br /&gt;
 netmask 255.255.x.y # see above table&lt;br /&gt;
 network 10.10.1.0&lt;br /&gt;
 broadcast 10.10.1.255&lt;br /&gt;
 gateway 10.10.1.254&lt;br /&gt;
 dns-nameservers 10.0.0.1 10.0.0.2&lt;br /&gt;
&lt;br /&gt;
In some versions of Ubuntu, to configure DNS you also need to edit &amp;lt;code&amp;gt;/etc/resolvconf/resolv.conf.d/head&amp;lt;/code&amp;gt; like this:&lt;br /&gt;
 nameserver 10.0.0.1&lt;br /&gt;
 nameserver 10.0.0.2&lt;br /&gt;
&lt;br /&gt;
then run:&lt;br /&gt;
 sudo resolvconf -u&lt;br /&gt;
&lt;br /&gt;
== Dependencies ==&lt;br /&gt;
&lt;br /&gt;
Installing the &#039;&#039;&#039;icub-common&#039;&#039;&#039; metapackage is sufficient. It is a bundle of the following packages (for more details see [http://wiki.icub.org/wiki/Linux:Installation_from_sources here], [http://wiki.icub.org/wiki/Linux:_dependencies here] and [https://github.com/robotology/yarp/blob/master/.travis.yml here]):&lt;br /&gt;
 sudo apt install build-essential libace-dev libedit-dev libeigen3-dev libncurses5-dev gfortran libtinyxml-dev libgraphviz-dev&lt;br /&gt;
 sudo apt install git-core ssh gcc g++ make cmake-curses-gui freeglut3-dev libxmu-dev libswscale-dev libavformat-dev&lt;br /&gt;
&lt;br /&gt;
Qt5 graphics dependencies in Ubuntu 16.04 Xenial:&lt;br /&gt;
&lt;br /&gt;
 sudo apt install qttools5-dev qtdeclarative5-dev qtdeclarative5-controls-plugin qtdeclarative5-dialogs-plugin qtmultimedia5-dev qtdeclarative5-qtmultimedia-plugin qtquick1-5-dev libqt5opengl5-dev&lt;br /&gt;
&lt;br /&gt;
Qt5 graphics dependencies in Debian Stretch:&lt;br /&gt;
 sudo apt install qml-module-qt-labs-folderlistmodel qml-module-qt-labs-settings&lt;br /&gt;
&lt;br /&gt;
iCub Simulator dependencies: SDL and ODE.&lt;br /&gt;
&lt;br /&gt;
GTK graphical programs are obsolete and replaced by their Qt equivalents. If you still want the old GTK programs, install &amp;lt;code&amp;gt;libgtkmm-2.4-dev&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Environment variables ==&lt;br /&gt;
&lt;br /&gt;
* Create a file called ~/.bashrc_iCub like this one. Usually you do not need all of the following variables and settings, just a subset.&lt;br /&gt;
&lt;br /&gt;
  export ROBOT_CODE=/usr/local/src/robot&lt;br /&gt;
&lt;br /&gt;
  export YARP_ROOT=$ROBOT_CODE/yarp&lt;br /&gt;
  export YARP_DIR=$YARP_ROOT/build&lt;br /&gt;
  export ICUB_ROOT=$ROBOT_CODE/icub-main&lt;br /&gt;
  export ICUB_DIR=$ICUB_ROOT/build&lt;br /&gt;
&lt;br /&gt;
  export ICUBcontrib_DIR=$ROBOT_CODE/icub-contrib-common/build&lt;br /&gt;
  export YARP_DATA_DIRS=$YARP_DIR/share/yarp:$ICUB_DIR/share/iCub:$ICUBcontrib_DIR/share/ICUBcontrib:$ROBOT_CODE/speech/svox-speech/build/share/speech&lt;br /&gt;
  export PATH=$PATH:$YARP_DIR/bin:$ICUB_DIR/bin:$ICUBcontrib_DIR/bin&lt;br /&gt;
&lt;br /&gt;
  export ODE_DIR=$ROBOT_CODE/ode-0.13/build&lt;br /&gt;
&lt;br /&gt;
  # OpenCV: select one of the following&lt;br /&gt;
  #export OpenCV_DIR=$ROBOT_CODE/opencv2/build&lt;br /&gt;
  #export OpenCV_DIR=$ROBOT_CODE/opencv2/build-cuda&lt;br /&gt;
  export OpenCV_DIR=$ROBOT_CODE/opencv3/build&lt;br /&gt;
  #export OpenCV_DIR=$ROBOT_CODE/opencv3/build-cuda&lt;br /&gt;
&lt;br /&gt;
  # To enable tab completion on yarp port names&lt;br /&gt;
  if [ -f $YARP_ROOT/scripts/yarp_completion ]; then&lt;br /&gt;
    source $YARP_ROOT/scripts/yarp_completion&lt;br /&gt;
  fi&lt;br /&gt;
&lt;br /&gt;
  # Set the name of your robot here.&lt;br /&gt;
  export YARP_ROBOT_NAME=iCubLisboa01&lt;br /&gt;
&lt;br /&gt;
  # Set-up optimizations&lt;br /&gt;
  export CMAKE_BUILD_TYPE=Release&lt;br /&gt;
&lt;br /&gt;
  # DebugStream customization&lt;br /&gt;
  export YARP_VERBOSE_OUTPUT=0&lt;br /&gt;
  export YARP_COLORED_OUTPUT=1&lt;br /&gt;
  export YARP_TRACE_ENABLE=0&lt;br /&gt;
  export YARP_FORWARD_LOG_ENABLE=0&lt;br /&gt;
&lt;br /&gt;
  # Lua&lt;br /&gt;
  ### DO NOT REMOVE &#039;;;;&#039; ###&lt;br /&gt;
  export LUA_PATH=&amp;quot;;;;$ROBOT_CODE/rFSM/?.lua;$ICUBcontrib_DIR/share/ICUBcontrib/contexts/interactiveObjectsLearning/LUA/?.lua&amp;quot;&lt;br /&gt;
  export LUA_CPATH=&amp;quot;;;;$YARP_ROOT/bindings/build-lua/?.so&amp;quot;&lt;br /&gt;
  export PATH=$PATH:$ROBOT_CODE/rFSM/tools:$ICUBcontrib_DIR/share/ICUBcontrib/contexts/interactiveObjectsLearning/LUA&lt;br /&gt;
  export PATH=$PATH:$YARP_ROOT/bindings/build-lua&lt;br /&gt;
  export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$YARP_ROOT/bindings/build-lua&lt;br /&gt;
&lt;br /&gt;
* Then, before the following line of /etc/bash.bashrc&lt;br /&gt;
 [ -z &amp;quot;$PS1&amp;quot; ] &amp;amp;&amp;amp; return&lt;br /&gt;
add this:&lt;br /&gt;
 # per-user environment variables (non-interactive and interactive mode)&lt;br /&gt;
 source $HOME/.bashrc_iCub&lt;br /&gt;
&lt;br /&gt;
The reason why we use the above custom file (as opposed to the standard ~/.bashrc) is that we want to enforce the variables both during interactive and non-interactive sessions, such as commands launched via &amp;lt;code&amp;gt;yarprun&amp;lt;/code&amp;gt; from another machine.&lt;br /&gt;
&lt;br /&gt;
See also https://git.robotology.eu/mbrunettini/icub-environment for the variables and scripts employed at IIT.&lt;br /&gt;
&lt;br /&gt;
= Additional software =&lt;br /&gt;
&lt;br /&gt;
== OpenCV ==&lt;br /&gt;
&lt;br /&gt;
=== Ubuntu packages ===&lt;br /&gt;
&lt;br /&gt;
* this is the easiest way to install OpenCV, however the Ubuntu packages might be too old and/or missing some specific features (in that case proceed with a manual installation, see below)&lt;br /&gt;
&lt;br /&gt;
  sudo apt install libcv-dev libhighgui-dev libcvaux-dev libopencv-gpu-dev&lt;br /&gt;
&lt;br /&gt;
=== Manual compilation ===&lt;br /&gt;
&lt;br /&gt;
* on most machines: download OpenCV, create a build directory, CMake, set WITH_CUDA=OFF, compile, set OpenCV_DIR to the path of OpenCV-x.y.z/build, for example:&lt;br /&gt;
 export OpenCV_DIR=$code/OpenCV-x.y.z/build&lt;br /&gt;
&lt;br /&gt;
* on CUDA machines, in order to compile CUDA-enabled modules: create a build-cuda directory, CMake, set WITH_CUDA=ON, compile, set OpenCV_DIR to the path of OpenCV-x.y.z/build-cuda. You may need to disable &amp;lt;code&amp;gt;cudacodec&amp;lt;/code&amp;gt;, see also https://github.com/opencv/opencv_contrib/issues/1786&lt;br /&gt;
&lt;br /&gt;
== YARP and iCub ==&lt;br /&gt;
&lt;br /&gt;
* In general, when compiling this software, do &#039;&#039;&#039;not&#039;&#039;&#039; use &amp;lt;code&amp;gt;sudo make install&amp;lt;/code&amp;gt; but simply &amp;lt;code&amp;gt;make&amp;lt;/code&amp;gt; (and configure the PATH variable in such a way that it finds the binaries from the build directory).&lt;br /&gt;
&lt;br /&gt;
* If you work with the robot, use the volume shares exported from the NFS server.&lt;br /&gt;
&lt;br /&gt;
* In other cases, follow the instructions on the [[iCub software]] article. &lt;br /&gt;
&lt;br /&gt;
* yarp CMake configuration&lt;br /&gt;
 CMAKE_BUILD_TYPE Release&lt;br /&gt;
 CREATE_GUIS&lt;br /&gt;
 CREATE_LIB_MATH&lt;br /&gt;
&lt;br /&gt;
 // to enable 640x480@30Hz images with Bayer encoding&lt;br /&gt;
 // install libraw1394-dev libdc1394-22-dev then enable&lt;br /&gt;
 CREATE_OPTIONAL_CARRIERS&lt;br /&gt;
 ENABLE_yarpcar_bayer ON&lt;br /&gt;
 ENABLE_yarpcar_mjpeg ON&lt;br /&gt;
&lt;br /&gt;
* icub-main CMake configuration&lt;br /&gt;
 CMAKE_BUILD_TYPE Release&lt;br /&gt;
 // on servers, do http://wiki.icub.org/wiki/Installing_IPOPT then enable&lt;br /&gt;
 ENABLE_icubmod_cartesiancontrollerclient ON&lt;br /&gt;
 ENABLE_icubmod_cartesiancontrollerserver ON&lt;br /&gt;
 ENABLE_icubmod_gazecontrollerclient ON&lt;br /&gt;
&lt;br /&gt;
* final configuration&lt;br /&gt;
# &amp;lt;code&amp;gt;yarp namespace /icub&amp;lt;/code&amp;gt;&lt;br /&gt;
# &amp;lt;code&amp;gt;yarp conf 10.10.1.53 10000&amp;lt;/code&amp;gt; (yarpserver runs on [[iCub laptop]])&lt;br /&gt;
&lt;br /&gt;
* special machines such as [[pc104]] need different flags&lt;br /&gt;
&lt;br /&gt;
== CUDA ==&lt;br /&gt;
&lt;br /&gt;
=== Prerequisites ===&lt;br /&gt;
&lt;br /&gt;
 sudo apt install freeglut3-dev libdevil-dev libglew-dev&lt;br /&gt;
 sudo apt purge libcudart*  // because we will manually install it&lt;br /&gt;
&lt;br /&gt;
Troubleshooting: http://askubuntu.com/questions/410604/installing-nvidia-drivers-with-pkg1-run-ends-with-no-version-h-found&lt;br /&gt;
&lt;br /&gt;
=== CUDA Toolkit, SDK and Examples ===&lt;br /&gt;
&lt;br /&gt;
* stop X servers: &amp;lt;code&amp;gt;sudo service lightdm stop&amp;lt;/code&amp;gt; (or &amp;lt;code&amp;gt;gdm stop&amp;lt;/code&amp;gt; depending on configuration)&lt;br /&gt;
* download and install NVIDIA CUDA Toolkit from http://docs.nvidia.com/cuda (not from Ubuntu packages)&lt;br /&gt;
* if you obtain the error &amp;quot;Toolkit:  Installation Failed. Using unsupported Compiler.&amp;quot;, use the override option, e.g., &amp;lt;code&amp;gt;./cuda_6.0.37_linux_64.run --override&amp;lt;/code&amp;gt;&lt;br /&gt;
* if you obtain the error &amp;quot;The driver installation is unable to locate the kernel source. Please make sure that the kernel source packages are installed and set up correctly&amp;quot;:&lt;br /&gt;
** read the CUDA log in /tmp and verify that the graphics card is currently supported -- if not, you might need to install a legacy NVIDIA driver. For example, the Quadro FX 580 card needs NVIDIA legacy drivers 340.xx: install them and then answer &#039;&#039;&#039;no&#039;&#039;&#039; when CUDA Toolkit installer asks &amp;quot;Install NVIDIA Accelerated Graphics Driver for Linux-x86_64 346.46?&amp;quot;&lt;br /&gt;
** &amp;lt;code&amp;gt;sudo apt install linux-generic linux-headers-$(uname -r) linux-headers-generic-lts-trusty&amp;lt;/code&amp;gt; (or other Ubuntu version codename)&lt;br /&gt;
** call the installer specifying the kernel source path, e.g., &amp;lt;code&amp;gt;./cuda_7.0.28_linux.run --kernel-source-path=/usr/src/linux-headers-3.13.0-52-generic/&amp;lt;/code&amp;gt;&lt;br /&gt;
* output of successful installation:&lt;br /&gt;
 Driver:   Installed&lt;br /&gt;
 Toolkit:  Installed in /usr/local/cuda-7.0&lt;br /&gt;
 Samples:  Not Selected&lt;br /&gt;
 Please make sure that&lt;br /&gt;
 -   PATH includes /usr/local/cuda-7.0/bin&lt;br /&gt;
 -   LD_LIBRARY_PATH includes /usr/local/cuda-7.0/lib64, or, add /usr/local/cuda-7.0/lib64 to /etc/ld.so.conf and run ldconfig as root&lt;br /&gt;
 To uninstall the CUDA Toolkit, run the uninstall script in /usr/local/cuda-7.0/bin&lt;br /&gt;
 To uninstall the NVIDIA Driver, run nvidia-uninstall&lt;br /&gt;
&lt;br /&gt;
* troubleshooting:&lt;br /&gt;
** http://askubuntu.com/questions/451672/installing-and-testing-cuda-in-ubuntu-14-04&lt;br /&gt;
** http://troylee2008.blogspot.pt/2012/05/linking-error-while-compiling-cuda-sdk.html&lt;br /&gt;
** https://devtalk.nvidia.com/default/topic/617414/-solved-cuda-driver-version-is-insufficient-for-cuda-runtime-version-fedora-18-rpmfusion-driver/&lt;br /&gt;
&lt;br /&gt;
=== SiftGPU ===&lt;br /&gt;
&lt;br /&gt;
* download it from http://cs.unc.edu/~ccwu/siftgpu/&lt;br /&gt;
* unzip it - typically in your home directory, not in the NFS shared folder&lt;br /&gt;
* compile with &amp;lt;code&amp;gt;make&amp;lt;/code&amp;gt;&lt;br /&gt;
* if you obtain &amp;quot;unspecified launch failure&amp;quot; and 0 sift features/matches, check that the X server is running: &amp;lt;code&amp;gt;sudo service lightdm start&amp;lt;/code&amp;gt;&lt;br /&gt;
* if you obtain the error &amp;quot;/usr/local/cuda/bin/nvcc: Command not found&amp;quot;, this can help: &amp;lt;code&amp;gt;sudo ln -s /usr/lib/nvidia-cuda-toolkit /usr/local/cuda&amp;lt;/code&amp;gt;. See also http://askubuntu.com/questions/231503/nvcc-compiler-setup-ubuntu-12-04&lt;br /&gt;
* run the test program &amp;lt;code&amp;gt;SimpleSIFT&amp;lt;/code&amp;gt; - it should work via ssh, as well as in a local session&lt;br /&gt;
* example of successful execution:&lt;br /&gt;
 $ ./SimpleSIFT &lt;br /&gt;
 Unable to create OpenGL Context!&lt;br /&gt;
 For nVidia cards, you can try change to CUDA mode in this case&lt;br /&gt;
 NOTE: changing maximum texture dimension to 32768&lt;br /&gt;
 [SiftGPU Language]:	CUDA&lt;br /&gt;
 Image size :	800x600&lt;br /&gt;
 Image loaded :	../data/800-1.jpg&lt;br /&gt;
 #Features:	3347&lt;br /&gt;
 #Features MO:	3910&lt;br /&gt;
 [RUN SIFT]:	0.339&lt;br /&gt;
 Image size :	640x480&lt;br /&gt;
 Image loaded :	../data/640-1.jpg&lt;br /&gt;
 #Features:	2372&lt;br /&gt;
 #Features MO:	2767&lt;br /&gt;
 [RUN SIFT]:	0.208&lt;br /&gt;
 NOTE: changing maximum texture dimension to 32768&lt;br /&gt;
 [SiftMatchGPU]: CUDA&lt;br /&gt;
 2247 sift matches were found;&lt;br /&gt;
&lt;br /&gt;
* define &amp;lt;code&amp;gt;export SIFTGPU_DIR=~/SiftGPU&amp;lt;/code&amp;gt; or similar in your iCub bashrc file, so that libsiftgpu.so is found by IOL modules&lt;br /&gt;
&lt;br /&gt;
== himrep ==&lt;br /&gt;
&lt;br /&gt;
Clone https://github.com/robotology/himrep, follow the instructions to compile &amp;lt;code&amp;gt;liblinear&amp;lt;/code&amp;gt;, CMake, make install&lt;br /&gt;
&lt;br /&gt;
To use the deep neural network object recognition, based on Caffe, follow the instructions at README_Caffe.md.&lt;br /&gt;
If you get &amp;quot;error: kernel launches from templates are not allowed in system files&amp;quot;, use an older GCC version like 4.6 (see also https://github.com/BVLC/caffe/issues/337). If you get &amp;quot;ImportError: No module named &#039;yaml&#039;&amp;quot;, do &amp;lt;code&amp;gt;sudo apt install python-yaml&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== IOL ==&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;sudo apt install lua5.1 liblua5.1-dev&amp;lt;/code&amp;gt;&lt;br /&gt;
* clone [https://github.com/kmarkus/rFSM rFSM] (no need to compile anything here)&lt;br /&gt;
&lt;br /&gt;
Clone https://github.com/robotology/iol, CMake, make install&lt;br /&gt;
&lt;br /&gt;
== stereo-vision ==&lt;br /&gt;
&lt;br /&gt;
Clone https://github.com/robotology/stereo-vision, CMake with USE_SIFT_GPU=ON, make install&lt;br /&gt;
&lt;br /&gt;
= Best practices =&lt;br /&gt;
&lt;br /&gt;
Below are some tips and tricks taken from:&lt;br /&gt;
&lt;br /&gt;
* http://wiki.icub.org/wiki/Yarp-config&lt;br /&gt;
* http://www.yarp.it/yarp-config.html&lt;br /&gt;
* [https://docs.google.com/document/d/1S9m4DbrV1AJWo_E1r3F8k3ZzmhaTOWRJ9WFjXPFqVos IIT - How to setup and start the iCub from scratch]&lt;br /&gt;
&lt;br /&gt;
== XML files ==&lt;br /&gt;
&lt;br /&gt;
Edit XML files locally, in /home/icub/.local/share/yarp&lt;br /&gt;
&lt;br /&gt;
To install robot-specific XML files, compile icub-main (just &amp;lt;code&amp;gt;make&amp;lt;/code&amp;gt;) then use commands like &amp;lt;code&amp;gt;yarp-config robot --import-all&amp;lt;/code&amp;gt; (installs all files) or &amp;lt;code&amp;gt;yarp-config robot --import iCubLisboa01 affordancesExploration.xml&amp;lt;/code&amp;gt; (installs specific files)&lt;br /&gt;
&lt;br /&gt;
== ini files ==&lt;br /&gt;
&lt;br /&gt;
To install application conf/*.ini files, compile a project (e.g., icub-main, poeticon, iol) then use commands like &amp;lt;code&amp;gt;yarp-config context --import-all&amp;lt;/code&amp;gt; (installs all files) or &amp;lt;code&amp;gt;yarp-config context --import actionsRenderingEngine&amp;lt;/code&amp;gt; (installs the files of specific applications)&lt;br /&gt;
&lt;br /&gt;
== Disabling some robot parts ==&lt;br /&gt;
&lt;br /&gt;
If the robot is not complete (or some parts need to be disabled):&lt;br /&gt;
&lt;br /&gt;
* On the pc104, type &amp;lt;code&amp;gt;yarp-config robot --list&amp;lt;/code&amp;gt; to look for the .ini files from where the configuration values are launched. These are local copies of the robots-configuration repository files.&lt;br /&gt;
* Go to the &amp;lt;code&amp;gt;INSTALLED DATA&amp;lt;/code&amp;gt; directory path and then, within the corresponding robot folder (e.g., iCubGenova04), look for the file yarprobotinterface.ini, which points to a .xml file which contains the configuration paths for all the robot parts (e.g., icub_all.xml).&lt;br /&gt;
* If the local config file does not exist, there is only the canonical in the build path, then create a local one using yarp-config --import.&lt;br /&gt;
* Copy the .xml file with a descriptive name (e.g., icub_no_legs.xml) and on the copied file, comment or remove all lines that refer to .ini files of the part(s) that have to be disabled. &lt;br /&gt;
* Change yarprobotinterface.ini too, so that it will point to the new .xml file where the parts have been commented.&lt;br /&gt;
* On the robot/icub Startup application, modify the way that gravityCompensator and wholeBodyDynamics are launched, so that they don’t look for leg configuration files. For the legs case, add --no_legs to the argument list.&lt;br /&gt;
&lt;br /&gt;
= See also =&lt;br /&gt;
&lt;br /&gt;
* http://wiki.icub.org/wiki/Generic_iCub_machine_installation_instructions&lt;br /&gt;
&lt;br /&gt;
[[Category:Vislab]]&lt;/div&gt;</summary>
		<author><name>Giovanni Saponaro</name></author>
	</entry>
	<entry>
		<id>http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=ICub_machines_configuration&amp;diff=7066</id>
		<title>ICub machines configuration</title>
		<link rel="alternate" type="text/html" href="http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=ICub_machines_configuration&amp;diff=7066"/>
		<updated>2018-12-12T12:26:29Z</updated>

		<summary type="html">&lt;p&gt;Giovanni Saponaro: /* Dependencies */ add link to yarp .travis.yml which contains the list of Ubuntu dependencies for Continuous Integration&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;In this page we describe the setup of the computers connected to the iCub robot, which all share a common network disk and configuration.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;See [[iCub machines configuration/Archive]] for obsolete information.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
= Operating system installation =&lt;br /&gt;
&lt;br /&gt;
Ubuntu LTS, default settings and partitioning. The first user to be created must be called &#039;&#039;&#039;icub&#039;&#039;&#039;, to make the distributed setup possible: for NFS network mount, this user has to have uid 1000 and guid 1000.&lt;br /&gt;
&lt;br /&gt;
In order to add a user:&lt;br /&gt;
* either use the Ubuntu graphical frontends&lt;br /&gt;
* or use a Terminal:&lt;br /&gt;
 sudo adduser icub&lt;br /&gt;
 sudo usermod -aG sudo icub  # gives sudo privileges&lt;br /&gt;
&lt;br /&gt;
= Other operations =&lt;br /&gt;
&lt;br /&gt;
== Network configuration ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;See also: [[VisLab network]], [[ISR computing resources]]&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Configure a static IP as explained in one of the following subsections, depending if the machine is a desktop or a server one.&lt;br /&gt;
&lt;br /&gt;
Also, it is recommended to set up the &amp;lt;code&amp;gt;/etc/hosts&amp;lt;/code&amp;gt; file as follows:&lt;br /&gt;
&lt;br /&gt;
 10.10.1.41 icubbrain1&lt;br /&gt;
 10.10.1.42 icubbrain2&lt;br /&gt;
 10.10.1.50 pc104&lt;br /&gt;
 10.10.1.51 icub-cuda&lt;br /&gt;
 10.10.1.53 icub-laptop&lt;br /&gt;
&lt;br /&gt;
You should be able to do &amp;lt;code&amp;gt;ping icubbrain1&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Desktop machines ===&lt;br /&gt;
&lt;br /&gt;
With the graphical Network Manager (https://help.ubuntu.com/16.04/ubuntu-help/net-fixed-ip-address.html), configure the connection &amp;quot;Auto eth0&amp;quot; IPv4 as follows:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|+ &lt;br /&gt;
! Address !! Netmask !! Gateway !! DNS Servers !! notes&lt;br /&gt;
|-&lt;br /&gt;
|10.10.1.x || 255.255.255.0 || 10.10.1.254 || 10.0.0.1, 10.0.0.2 || visnet (iCub machines)&lt;br /&gt;
|-&lt;br /&gt;
|10.0.x.y || 255.255.0.0 || 10.0.0.254 || 10.0.0.1, 10.0.0.2 || isrnet (rest of ISR)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Servers ===&lt;br /&gt;
&lt;br /&gt;
Edit &amp;lt;code&amp;gt;/etc/network/interfaces&amp;lt;/code&amp;gt; like this:&lt;br /&gt;
 auto lo&lt;br /&gt;
 iface lo inet loopback&lt;br /&gt;
   &lt;br /&gt;
 auto eth0&lt;br /&gt;
 iface eth0 inet static&lt;br /&gt;
 address 10.x.y.z # put your IP here, see above table&lt;br /&gt;
 netmask 255.255.x.y # see above table&lt;br /&gt;
 network 10.10.1.0&lt;br /&gt;
 broadcast 10.10.1.255&lt;br /&gt;
 gateway 10.10.1.254&lt;br /&gt;
 dns-nameservers 10.0.0.1 10.0.0.2&lt;br /&gt;
&lt;br /&gt;
In some versions of Ubuntu, to configure DNS you also need to edit &amp;lt;code&amp;gt;/etc/resolvconf/resolv.conf.d/head&amp;lt;/code&amp;gt; like this:&lt;br /&gt;
 nameserver 10.0.0.1&lt;br /&gt;
 nameserver 10.0.0.2&lt;br /&gt;
&lt;br /&gt;
then run:&lt;br /&gt;
 sudo resolvconf -u&lt;br /&gt;
&lt;br /&gt;
== Dependencies ==&lt;br /&gt;
&lt;br /&gt;
Installing the &#039;&#039;&#039;icub-common&#039;&#039;&#039; metapackage is sufficient. It is a bundle of the following packages (for more details see [http://wiki.icub.org/wiki/Linux:Installation_from_sources here], [http://wiki.icub.org/wiki/Linux:_dependencies here] and [https://github.com/robotology/yarp/blob/master/.travis.yml here]):&lt;br /&gt;
 sudo apt install build-essential libace-dev libedit-dev libeigen3-dev libncurses5-dev gfortran libtinyxml-dev libgraphviz-dev&lt;br /&gt;
 sudo apt install git-core ssh gcc g++ make cmake-curses-gui freeglut3-dev libxmu-dev libswscale-dev libavformat-dev&lt;br /&gt;
&lt;br /&gt;
Qt5 graphics dependencies in Ubuntu 16.04 Xenial:&lt;br /&gt;
&lt;br /&gt;
 sudo apt install qttools5-dev qtdeclarative5-dev qtdeclarative5-controls-plugin qtdeclarative5-dialogs-plugin qtmultimedia5-dev qtdeclarative5-qtmultimedia-plugin qtquick1-5-dev libqt5opengl5-dev&lt;br /&gt;
&lt;br /&gt;
Qt5 graphics dependencies in Debian Stretch:&lt;br /&gt;
 sudo apt install qml-module-qt-labs-folderlistmodel qml-module-qt-labs-settings&lt;br /&gt;
&lt;br /&gt;
iCub Simulator dependencies: SDL and ODE.&lt;br /&gt;
&lt;br /&gt;
GTK graphical programs are obsolete and replaced by their Qt equivalents. If you still want the old GTK programs, install &amp;lt;code&amp;gt;libgtkmm-2.4-dev&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Environment variables ==&lt;br /&gt;
&lt;br /&gt;
* Create a file called ~/.bashrc_iCub like this one. Usually you do not need all of the following variables and settings, just a subset.&lt;br /&gt;
&lt;br /&gt;
  export ROBOT_CODE=/usr/local/src/robot&lt;br /&gt;
&lt;br /&gt;
  export YARP_ROOT=$ROBOT_CODE/yarp&lt;br /&gt;
  export YARP_DIR=$YARP_ROOT/build&lt;br /&gt;
  export ICUB_ROOT=$ROBOT_CODE/icub-main&lt;br /&gt;
  export ICUB_DIR=$ICUB_ROOT/build&lt;br /&gt;
&lt;br /&gt;
  export ICUBcontrib_DIR=$ROBOT_CODE/icub-contrib-common/build&lt;br /&gt;
  export YARP_DATA_DIRS=$YARP_DIR/share/yarp:$ICUB_DIR/share/iCub:$ICUBcontrib_DIR/share/ICUBcontrib:$ROBOT_CODE/speech/svox-speech/build/share/speech&lt;br /&gt;
  export PATH=$PATH:$YARP_DIR/bin:$ICUB_DIR/bin:$ICUBcontrib_DIR/bin&lt;br /&gt;
&lt;br /&gt;
  export ODE_DIR=$ROBOT_CODE/ode-0.13/build&lt;br /&gt;
&lt;br /&gt;
  # OpenCV: select one of the following&lt;br /&gt;
  #export OpenCV_DIR=$ROBOT_CODE/opencv2/build&lt;br /&gt;
  #export OpenCV_DIR=$ROBOT_CODE/opencv2/build-cuda&lt;br /&gt;
  export OpenCV_DIR=$ROBOT_CODE/opencv3/build&lt;br /&gt;
  #export OpenCV_DIR=$ROBOT_CODE/opencv3/build-cuda&lt;br /&gt;
&lt;br /&gt;
  # To enable tab completion on yarp port names&lt;br /&gt;
  if [ -f $YARP_ROOT/scripts/yarp_completion ]; then&lt;br /&gt;
    source $YARP_ROOT/scripts/yarp_completion&lt;br /&gt;
  fi&lt;br /&gt;
&lt;br /&gt;
  # Set the name of your robot here.&lt;br /&gt;
  export YARP_ROBOT_NAME=iCubLisboa01&lt;br /&gt;
&lt;br /&gt;
  # Set-up optimizations&lt;br /&gt;
  export CMAKE_BUILD_TYPE=Release&lt;br /&gt;
&lt;br /&gt;
  # DebugStream customization&lt;br /&gt;
  export YARP_VERBOSE_OUTPUT=0&lt;br /&gt;
  export YARP_COLORED_OUTPUT=1&lt;br /&gt;
  export YARP_TRACE_ENABLE=0&lt;br /&gt;
  export YARP_FORWARD_LOG_ENABLE=0&lt;br /&gt;
&lt;br /&gt;
  # Lua&lt;br /&gt;
  ### DO NOT REMOVE &#039;;;;&#039; ###&lt;br /&gt;
  export LUA_PATH=&amp;quot;;;;$ROBOT_CODE/rFSM/?.lua;$ICUBcontrib_DIR/share/ICUBcontrib/contexts/interactiveObjectsLearning/LUA/?.lua&amp;quot;&lt;br /&gt;
  export LUA_CPATH=&amp;quot;;;;$YARP_ROOT/bindings/build-lua/?.so&amp;quot;&lt;br /&gt;
  export PATH=$PATH:$ROBOT_CODE/rFSM/tools:$ICUBcontrib_DIR/share/ICUBcontrib/contexts/interactiveObjectsLearning/LUA&lt;br /&gt;
  export PATH=$PATH:$YARP_ROOT/bindings/build-lua&lt;br /&gt;
  export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$YARP_ROOT/bindings/build-lua&lt;br /&gt;
&lt;br /&gt;
* Then, before the following line of /etc/bash.bashrc&lt;br /&gt;
 [ -z &amp;quot;$PS1&amp;quot; ] &amp;amp;&amp;amp; return&lt;br /&gt;
add this:&lt;br /&gt;
 # per-user environment variables (non-interactive and interactive mode)&lt;br /&gt;
 source $HOME/.bashrc_iCub&lt;br /&gt;
&lt;br /&gt;
The reason why we use the above custom file (as opposed to the standard ~/.bashrc) is that we want to enforce the variables both during interactive and non-interactive sessions, such as commands launched via &amp;lt;code&amp;gt;yarprun&amp;lt;/code&amp;gt; from another machine.&lt;br /&gt;
&lt;br /&gt;
See also https://git.robotology.eu/mbrunettini/icub-environment for the variables and scripts employed at IIT.&lt;br /&gt;
&lt;br /&gt;
= Additional software =&lt;br /&gt;
&lt;br /&gt;
== OpenCV ==&lt;br /&gt;
&lt;br /&gt;
=== Ubuntu packages ===&lt;br /&gt;
&lt;br /&gt;
* this is the easiest way to install OpenCV, however the Ubuntu packages might be too old and/or missing some specific features (in that case proceed with a manual installation, see below)&lt;br /&gt;
&lt;br /&gt;
  sudo apt install libcv-dev libhighgui-dev libcvaux-dev libopencv-gpu-dev&lt;br /&gt;
&lt;br /&gt;
=== Manual compilation ===&lt;br /&gt;
&lt;br /&gt;
* on most machines: download OpenCV, create a build directory, CMake, set WITH_CUDA=OFF, compile, set OpenCV_DIR to the path of OpenCV-x.y.z/build, for example:&lt;br /&gt;
 export OpenCV_DIR=$code/OpenCV-x.y.z/build&lt;br /&gt;
&lt;br /&gt;
* on CUDA machines, in order to compile CUDA-enabled modules: create a build-cuda directory, CMake, set WITH_CUDA=ON, compile, set OpenCV_DIR to the path of OpenCV-x.y.z/build-cuda. You may need to disable &amp;lt;code&amp;gt;cudacodec&amp;lt;/code&amp;gt;, see also https://github.com/opencv/opencv_contrib/issues/1786&lt;br /&gt;
&lt;br /&gt;
== YARP and iCub ==&lt;br /&gt;
&lt;br /&gt;
* In general, when compiling this software, do &#039;&#039;&#039;not&#039;&#039;&#039; use &amp;lt;code&amp;gt;sudo make install&amp;lt;/code&amp;gt; but simply &amp;lt;code&amp;gt;make&amp;lt;/code&amp;gt; (and configure the PATH variable in such a way that it finds the binaries from the build directory).&lt;br /&gt;
&lt;br /&gt;
* If you work with the robot, use the volume shares exported from the NFS server.&lt;br /&gt;
&lt;br /&gt;
* In other cases, follow the instructions on the [[iCub software]] article. &lt;br /&gt;
&lt;br /&gt;
* yarp CMake configuration&lt;br /&gt;
 CMAKE_BUILD_TYPE Release&lt;br /&gt;
 CREATE_GUIS&lt;br /&gt;
 CREATE_LIB_MATH&lt;br /&gt;
&lt;br /&gt;
 // to enable 640x480@30Hz images with Bayer encoding&lt;br /&gt;
 // install libraw1394-dev libdc1394-22-dev then enable&lt;br /&gt;
 CREATE_OPTIONAL_CARRIERS&lt;br /&gt;
 ENABLE_yarpcar_bayer ON&lt;br /&gt;
 ENABLE_yarpcar_mjpeg ON&lt;br /&gt;
&lt;br /&gt;
* icub-main CMake configuration&lt;br /&gt;
 CMAKE_BUILD_TYPE Release&lt;br /&gt;
 // on servers, do http://wiki.icub.org/wiki/Installing_IPOPT then enable&lt;br /&gt;
 ENABLE_icubmod_cartesiancontrollerclient ON&lt;br /&gt;
 ENABLE_icubmod_cartesiancontrollerserver ON&lt;br /&gt;
 ENABLE_icubmod_gazecontrollerclient ON&lt;br /&gt;
&lt;br /&gt;
* final configuration&lt;br /&gt;
# &amp;lt;code&amp;gt;yarp namespace /icub&amp;lt;/code&amp;gt;&lt;br /&gt;
# &amp;lt;code&amp;gt;yarp conf 10.10.1.53 10000&amp;lt;/code&amp;gt; (yarpserver runs on [[iCub laptop]])&lt;br /&gt;
&lt;br /&gt;
* special machines such as [[pc104]] need different flags&lt;br /&gt;
&lt;br /&gt;
== CUDA ==&lt;br /&gt;
&lt;br /&gt;
=== Prerequisites ===&lt;br /&gt;
&lt;br /&gt;
 sudo apt install freeglut3-dev libdevil-dev libglew-dev&lt;br /&gt;
 sudo apt purge libcudart*  // because we will manually install it&lt;br /&gt;
&lt;br /&gt;
Troubleshooting: http://askubuntu.com/questions/410604/installing-nvidia-drivers-with-pkg1-run-ends-with-no-version-h-found&lt;br /&gt;
&lt;br /&gt;
=== CUDA Toolkit, SDK and Examples ===&lt;br /&gt;
&lt;br /&gt;
* stop X servers: &amp;lt;code&amp;gt;sudo service lightdm stop&amp;lt;/code&amp;gt; (or &amp;lt;code&amp;gt;gdm stop&amp;lt;/code&amp;gt; depending on configuration)&lt;br /&gt;
* download and install NVIDIA CUDA Toolkit from http://docs.nvidia.com/cuda (not from Ubuntu packages)&lt;br /&gt;
* if you obtain the error &amp;quot;Toolkit:  Installation Failed. Using unsupported Compiler.&amp;quot;, use the override option, e.g., &amp;lt;code&amp;gt;./cuda_6.0.37_linux_64.run --override&amp;lt;/code&amp;gt;&lt;br /&gt;
* if you obtain the error &amp;quot;The driver installation is unable to locate the kernel source. Please make sure that the kernel source packages are installed and set up correctly&amp;quot;:&lt;br /&gt;
** read the CUDA log in /tmp and verify that the graphics card is currently supported -- if not, you might need to install a legacy NVIDIA driver. For example, the Quadro FX 580 card needs NVIDIA legacy drivers 340.xx: install them and then answer &#039;&#039;&#039;no&#039;&#039;&#039; when CUDA Toolkit installer asks &amp;quot;Install NVIDIA Accelerated Graphics Driver for Linux-x86_64 346.46?&amp;quot;&lt;br /&gt;
** &amp;lt;code&amp;gt;sudo apt install linux-generic linux-headers-$(uname -r) linux-headers-generic-lts-trusty&amp;lt;/code&amp;gt; (or other Ubuntu version codename)&lt;br /&gt;
** call the installer specifying the kernel source path, e.g., &amp;lt;code&amp;gt;./cuda_7.0.28_linux.run --kernel-source-path=/usr/src/linux-headers-3.13.0-52-generic/&amp;lt;/code&amp;gt;&lt;br /&gt;
* output of successful installation:&lt;br /&gt;
 Driver:   Installed&lt;br /&gt;
 Toolkit:  Installed in /usr/local/cuda-7.0&lt;br /&gt;
 Samples:  Not Selected&lt;br /&gt;
 Please make sure that&lt;br /&gt;
 -   PATH includes /usr/local/cuda-7.0/bin&lt;br /&gt;
 -   LD_LIBRARY_PATH includes /usr/local/cuda-7.0/lib64, or, add /usr/local/cuda-7.0/lib64 to /etc/ld.so.conf and run ldconfig as root&lt;br /&gt;
 To uninstall the CUDA Toolkit, run the uninstall script in /usr/local/cuda-7.0/bin&lt;br /&gt;
 To uninstall the NVIDIA Driver, run nvidia-uninstall&lt;br /&gt;
&lt;br /&gt;
* troubleshooting:&lt;br /&gt;
** http://askubuntu.com/questions/451672/installing-and-testing-cuda-in-ubuntu-14-04&lt;br /&gt;
** http://troylee2008.blogspot.pt/2012/05/linking-error-while-compiling-cuda-sdk.html&lt;br /&gt;
** https://devtalk.nvidia.com/default/topic/617414/-solved-cuda-driver-version-is-insufficient-for-cuda-runtime-version-fedora-18-rpmfusion-driver/&lt;br /&gt;
&lt;br /&gt;
=== SiftGPU ===&lt;br /&gt;
&lt;br /&gt;
* download it from http://cs.unc.edu/~ccwu/siftgpu/&lt;br /&gt;
* unzip it - typically in your home directory, not in the NFS shared folder&lt;br /&gt;
* compile with &amp;lt;code&amp;gt;make&amp;lt;/code&amp;gt;&lt;br /&gt;
* if you obtain &amp;quot;unspecified launch failure&amp;quot; and 0 sift features/matches, check that the X server is running: &amp;lt;code&amp;gt;sudo service lightdm start&amp;lt;/code&amp;gt;&lt;br /&gt;
* if you obtain the error &amp;quot;/usr/local/cuda/bin/nvcc: Command not found&amp;quot;, this can help: &amp;lt;code&amp;gt;sudo ln -s /usr/lib/nvidia-cuda-toolkit /usr/local/cuda&amp;lt;/code&amp;gt;. See also http://askubuntu.com/questions/231503/nvcc-compiler-setup-ubuntu-12-04&lt;br /&gt;
* run the test program &amp;lt;code&amp;gt;SimpleSIFT&amp;lt;/code&amp;gt; - it should work via ssh, as well as in a local session&lt;br /&gt;
* example of successful execution:&lt;br /&gt;
 $ ./SimpleSIFT &lt;br /&gt;
 Unable to create OpenGL Context!&lt;br /&gt;
 For nVidia cards, you can try change to CUDA mode in this case&lt;br /&gt;
 NOTE: changing maximum texture dimension to 32768&lt;br /&gt;
 [SiftGPU Language]:	CUDA&lt;br /&gt;
 Image size :	800x600&lt;br /&gt;
 Image loaded :	../data/800-1.jpg&lt;br /&gt;
 #Features:	3347&lt;br /&gt;
 #Features MO:	3910&lt;br /&gt;
 [RUN SIFT]:	0.339&lt;br /&gt;
 Image size :	640x480&lt;br /&gt;
 Image loaded :	../data/640-1.jpg&lt;br /&gt;
 #Features:	2372&lt;br /&gt;
 #Features MO:	2767&lt;br /&gt;
 [RUN SIFT]:	0.208&lt;br /&gt;
 NOTE: changing maximum texture dimension to 32768&lt;br /&gt;
 [SiftMatchGPU]: CUDA&lt;br /&gt;
 2247 sift matches were found;&lt;br /&gt;
&lt;br /&gt;
* define &amp;lt;code&amp;gt;export SIFTGPU_DIR=~/SiftGPU&amp;lt;/code&amp;gt; or similar in your iCub bashrc file, so that libsiftgpu.so is found by IOL modules&lt;br /&gt;
&lt;br /&gt;
== himrep ==&lt;br /&gt;
&lt;br /&gt;
Clone https://github.com/robotology/himrep, follow the instructions to compile &amp;lt;code&amp;gt;liblinear&amp;lt;/code&amp;gt;, CMake, make install&lt;br /&gt;
&lt;br /&gt;
To use the deep neural network object recognition, based on Caffe, follow the instructions at README_Caffe.md.&lt;br /&gt;
If you get &amp;quot;error: kernel launches from templates are not allowed in system files&amp;quot;, use an older GCC version like 4.6 (see also https://github.com/BVLC/caffe/issues/337). If you get &amp;quot;ImportError: No module named &#039;yaml&#039;&amp;quot;, do &amp;lt;code&amp;gt;sudo apt install python-yaml&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== IOL ==&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;sudo apt install lua5.1 liblua5.1-dev&amp;lt;/code&amp;gt;&lt;br /&gt;
* clone [https://github.com/kmarkus/rFSM rFSM] (no need to compile anything here)&lt;br /&gt;
&lt;br /&gt;
Clone https://github.com/robotology/iol, CMake, make install&lt;br /&gt;
&lt;br /&gt;
== stereo-vision ==&lt;br /&gt;
&lt;br /&gt;
Clone https://github.com/robotology/stereo-vision, CMake with USE_SIFT_GPU=ON, make install&lt;br /&gt;
&lt;br /&gt;
= Best practices =&lt;br /&gt;
&lt;br /&gt;
Below are some tips and tricks taken from:&lt;br /&gt;
&lt;br /&gt;
* http://wiki.icub.org/wiki/Yarp-config&lt;br /&gt;
* http://www.yarp.it/yarp-config.html&lt;br /&gt;
* [https://docs.google.com/document/d/1S9m4DbrV1AJWo_E1r3F8k3ZzmhaTOWRJ9WFjXPFqVos IIT - How to setup and start the iCub from scratch]&lt;br /&gt;
&lt;br /&gt;
== XML files ==&lt;br /&gt;
&lt;br /&gt;
Edit XML files locally, in /home/icub/.local/share/yarp&lt;br /&gt;
&lt;br /&gt;
To install robot-specific XML files, compile icub-main (just &amp;lt;code&amp;gt;make&amp;lt;/code&amp;gt;) then use commands like &amp;lt;code&amp;gt;yarp-config robot --import-all&amp;lt;/code&amp;gt; (installs all files) or &amp;lt;code&amp;gt;yarp-config robot --import iCubLisboa01 affordancesExploration.xml&amp;lt;/code&amp;gt; (installs specific files)&lt;br /&gt;
&lt;br /&gt;
== ini files ==&lt;br /&gt;
&lt;br /&gt;
To install application conf/*.ini files, compile a project (e.g., icub-main, poeticon, iol) then use commands like &amp;lt;code&amp;gt;yarp-config context --import-all&amp;lt;/code&amp;gt; (installs all files) or &amp;lt;code&amp;gt;yarp-config context --import actionsRenderingEngine&amp;lt;/code&amp;gt; (installs the files of specific applications)&lt;br /&gt;
&lt;br /&gt;
== Disabling some robot parts ==&lt;br /&gt;
&lt;br /&gt;
If the robot is not complete (or some parts need to be disabled):&lt;br /&gt;
&lt;br /&gt;
* On the pc104, type &amp;lt;code&amp;gt;yarp-config robot --list&amp;lt;/code&amp;gt; to look for the .ini files from where the configuration values are launched. These are local copies of the robots-configuration repository files.&lt;br /&gt;
* Go to the &amp;lt;code&amp;gt;INSTALLED DATA&amp;lt;/code&amp;gt; directory path and then, within the corresponding robot folder (e.g., iCubGenova04), look for the file yarprobotinterface.ini, which points to a .xml file which contains the configuration paths for all the robot parts (eg. icub_all.xml).&lt;br /&gt;
* If the local config file does not exist, there is only the canonical in the build path, then create a local one using yarp-config --import.&lt;br /&gt;
* Copy the .xml file with a descriptive name (eg icub_no_legs.xml) and on the copied file, comment or remove all lines that refer to .ini files of the part(s) that have to be disabled. &lt;br /&gt;
* Change yarprobotinterface.ini too, so that it will point to the new .xml file where the parts have been commented.&lt;br /&gt;
* On the robot/icub Startup application, modify the way that gravityCompensator and wholeBodyDynamics are launched, so that they don’t look for leg configuration files. For the legs case, add --no_legs to the argument list.&lt;br /&gt;
&lt;br /&gt;
= See also =&lt;br /&gt;
&lt;br /&gt;
* http://wiki.icub.org/wiki/Generic_iCub_machine_installation_instructions&lt;br /&gt;
&lt;br /&gt;
[[Category:Vislab]]&lt;/div&gt;</summary>
		<author><name>Giovanni Saponaro</name></author>
	</entry>
	<entry>
		<id>http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=ICub_machines_configuration&amp;diff=7063</id>
		<title>ICub machines configuration</title>
		<link rel="alternate" type="text/html" href="http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=ICub_machines_configuration&amp;diff=7063"/>
		<updated>2018-12-05T16:41:55Z</updated>

		<summary type="html">&lt;p&gt;Giovanni Saponaro: /* YARP and iCub */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;In this page we describe the setup of the computers connected to the iCub robot, which all share a common network disk and configuration.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;See [[iCub machines configuration/Archive]] for obsolete information.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
= Operating system installation =&lt;br /&gt;
&lt;br /&gt;
Ubuntu LTS, default settings and partitioning. The first user to be created must be called &#039;&#039;&#039;icub&#039;&#039;&#039;, to make the distributed setup possible: for NFS network mount, this user has to have uid 1000 and guid 1000.&lt;br /&gt;
&lt;br /&gt;
In order to add a user:&lt;br /&gt;
* either use the Ubuntu graphical frontends&lt;br /&gt;
* or use a Terminal:&lt;br /&gt;
 sudo adduser icub&lt;br /&gt;
 sudo usermod -aG sudo icub  # gives sudo privileges&lt;br /&gt;
&lt;br /&gt;
= Other operations =&lt;br /&gt;
&lt;br /&gt;
== Network configuration ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;See also: [[VisLab network]], [[ISR computing resources]]&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Configure a static IP as explained in one of the following subsections, depending if the machine is a desktop or a server one.&lt;br /&gt;
&lt;br /&gt;
Also, it is recommended to set up the &amp;lt;code&amp;gt;/etc/hosts&amp;lt;/code&amp;gt; file as follows:&lt;br /&gt;
&lt;br /&gt;
 10.10.1.41 icubbrain1&lt;br /&gt;
 10.10.1.42 icubbrain2&lt;br /&gt;
 10.10.1.50 pc104&lt;br /&gt;
 10.10.1.51 icub-cuda&lt;br /&gt;
 10.10.1.53 icub-laptop&lt;br /&gt;
&lt;br /&gt;
You should be able to do &amp;lt;code&amp;gt;ping icubbrain1&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Desktop machines ===&lt;br /&gt;
&lt;br /&gt;
With the graphical Network Manager (https://help.ubuntu.com/16.04/ubuntu-help/net-fixed-ip-address.html), configure the connection &amp;quot;Auto eth0&amp;quot; IPv4 as follows:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|+ &lt;br /&gt;
! Address !! Netmask !! Gateway !! DNS Servers !! notes&lt;br /&gt;
|-&lt;br /&gt;
|10.10.1.x || 255.255.255.0 || 10.10.1.254 || 10.0.0.1, 10.0.0.2 || visnet (iCub machines)&lt;br /&gt;
|-&lt;br /&gt;
|10.0.x.y || 255.255.0.0 || 10.0.0.254 || 10.0.0.1, 10.0.0.2 || isrnet (rest of ISR)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Servers ===&lt;br /&gt;
&lt;br /&gt;
Edit &amp;lt;code&amp;gt;/etc/network/interfaces&amp;lt;/code&amp;gt; like this:&lt;br /&gt;
 auto lo&lt;br /&gt;
 iface lo inet loopback&lt;br /&gt;
   &lt;br /&gt;
 auto eth0&lt;br /&gt;
 iface eth0 inet static&lt;br /&gt;
 address 10.x.y.z # put your IP here, see above table&lt;br /&gt;
 netmask 255.255.x.y # see above table&lt;br /&gt;
 network 10.10.1.0&lt;br /&gt;
 broadcast 10.10.1.255&lt;br /&gt;
 gateway 10.10.1.254&lt;br /&gt;
 dns-nameservers 10.0.0.1 10.0.0.2&lt;br /&gt;
&lt;br /&gt;
In some versions of Ubuntu, to configure DNS you also need to edit &amp;lt;code&amp;gt;/etc/resolvconf/resolv.conf.d/head&amp;lt;/code&amp;gt; like this:&lt;br /&gt;
 nameserver 10.0.0.1&lt;br /&gt;
 nameserver 10.0.0.2&lt;br /&gt;
&lt;br /&gt;
then run:&lt;br /&gt;
 sudo resolvconf -u&lt;br /&gt;
&lt;br /&gt;
== Dependencies ==&lt;br /&gt;
&lt;br /&gt;
Installing the &#039;&#039;&#039;icub-common&#039;&#039;&#039; metapackage is sufficient. It is a bundle of the following packages (for more details see [http://wiki.icub.org/wiki/Linux:Installation_from_sources here] and [http://wiki.icub.org/wiki/Linux:_dependencies here]):&lt;br /&gt;
 sudo apt install build-essential libace-dev libedit-dev libeigen3-dev libncurses5-dev gfortran libtinyxml-dev libgraphviz-dev&lt;br /&gt;
 sudo apt install git-core ssh gcc g++ make cmake-curses-gui freeglut3-dev libxmu-dev libswscale-dev libavformat-dev&lt;br /&gt;
&lt;br /&gt;
Qt5 graphics dependencies in Ubuntu 16.04 Xenial:&lt;br /&gt;
&lt;br /&gt;
 sudo apt install qttools5-dev qtdeclarative5-dev qtdeclarative5-controls-plugin qtdeclarative5-dialogs-plugin qtmultimedia5-dev qtdeclarative5-qtmultimedia-plugin qtquick1-5-dev libqt5opengl5-dev&lt;br /&gt;
&lt;br /&gt;
Qt5 graphics dependencies in Debian Stretch:&lt;br /&gt;
 sudo apt install qml-module-qt-labs-folderlistmodel qml-module-qt-labs-settings&lt;br /&gt;
&lt;br /&gt;
iCub Simulator dependencies: SDL and ODE.&lt;br /&gt;
&lt;br /&gt;
GTK graphical programs are obsolete and replaced by their Qt equivalents. If you still want the old GTK programs, install &amp;lt;code&amp;gt;libgtkmm-2.4-dev&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Environment variables ==&lt;br /&gt;
&lt;br /&gt;
* Create a file called ~/.bashrc_iCub like this one. Usually you do not need all of the following variables and settings, just a subset.&lt;br /&gt;
&lt;br /&gt;
  export ROBOT_CODE=/usr/local/src/robot&lt;br /&gt;
&lt;br /&gt;
  export YARP_ROOT=$ROBOT_CODE/yarp&lt;br /&gt;
  export YARP_DIR=$YARP_ROOT/build&lt;br /&gt;
  export ICUB_ROOT=$ROBOT_CODE/icub-main&lt;br /&gt;
  export ICUB_DIR=$ICUB_ROOT/build&lt;br /&gt;
&lt;br /&gt;
  export ICUBcontrib_DIR=$ROBOT_CODE/icub-contrib-common/build&lt;br /&gt;
  export YARP_DATA_DIRS=$YARP_DIR/share/yarp:$ICUB_DIR/share/iCub:$ICUBcontrib_DIR/share/ICUBcontrib:$ROBOT_CODE/speech/svox-speech/build/share/speech&lt;br /&gt;
  export PATH=$PATH:$YARP_DIR/bin:$ICUB_DIR/bin:$ICUBcontrib_DIR/bin&lt;br /&gt;
&lt;br /&gt;
  export ODE_DIR=$ROBOT_CODE/ode-0.13/build&lt;br /&gt;
&lt;br /&gt;
  # OpenCV: select one of the following&lt;br /&gt;
  #export OpenCV_DIR=$ROBOT_CODE/opencv2/build&lt;br /&gt;
  #export OpenCV_DIR=$ROBOT_CODE/opencv2/build-cuda&lt;br /&gt;
  export OpenCV_DIR=$ROBOT_CODE/opencv3/build&lt;br /&gt;
  #export OpenCV_DIR=$ROBOT_CODE/opencv3/build-cuda&lt;br /&gt;
&lt;br /&gt;
  # To enable tab completion on yarp port names&lt;br /&gt;
  if [ -f $YARP_ROOT/scripts/yarp_completion ]; then&lt;br /&gt;
    source $YARP_ROOT/scripts/yarp_completion&lt;br /&gt;
  fi&lt;br /&gt;
&lt;br /&gt;
  # Set the name of your robot here.&lt;br /&gt;
  export YARP_ROBOT_NAME=iCubLisboa01&lt;br /&gt;
&lt;br /&gt;
  # Set-up optimizations&lt;br /&gt;
  export CMAKE_BUILD_TYPE=Release&lt;br /&gt;
&lt;br /&gt;
  # DebugStream customization&lt;br /&gt;
  export YARP_VERBOSE_OUTPUT=0&lt;br /&gt;
  export YARP_COLORED_OUTPUT=1&lt;br /&gt;
  export YARP_TRACE_ENABLE=0&lt;br /&gt;
  export YARP_FORWARD_LOG_ENABLE=0&lt;br /&gt;
&lt;br /&gt;
  # Lua&lt;br /&gt;
  ### DO NOT REMOVE &#039;;;;&#039; ###&lt;br /&gt;
  export LUA_PATH=&amp;quot;;;;$ROBOT_CODE/rFSM/?.lua;$ICUBcontrib_DIR/share/ICUBcontrib/contexts/interactiveObjectsLearning/LUA/?.lua&amp;quot;&lt;br /&gt;
  export LUA_CPATH=&amp;quot;;;;$YARP_ROOT/bindings/build-lua/?.so&amp;quot;&lt;br /&gt;
  export PATH=$PATH:$ROBOT_CODE/rFSM/tools:$ICUBcontrib_DIR/share/ICUBcontrib/contexts/interactiveObjectsLearning/LUA&lt;br /&gt;
  export PATH=$PATH:$YARP_ROOT/bindings/build-lua&lt;br /&gt;
  export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$YARP_ROOT/bindings/build-lua&lt;br /&gt;
&lt;br /&gt;
* Then, before the following line of /etc/bash.bashrc&lt;br /&gt;
 [ -z &amp;quot;$PS1&amp;quot; ] &amp;amp;&amp;amp; return&lt;br /&gt;
add this:&lt;br /&gt;
 # per-user environment variables (non-interactive and interactive mode)&lt;br /&gt;
 source $HOME/.bashrc_iCub&lt;br /&gt;
&lt;br /&gt;
The reason why we use the above custom file (as opposed to the standard ~/.bashrc) is that we want to enforce the variables both during interactive and non-interactive sessions, such as commands launched via &amp;lt;code&amp;gt;yarprun&amp;lt;/code&amp;gt; from another machine.&lt;br /&gt;
&lt;br /&gt;
See also https://git.robotology.eu/mbrunettini/icub-environment for the variables and scripts employed at IIT.&lt;br /&gt;
&lt;br /&gt;
= Additional software =&lt;br /&gt;
&lt;br /&gt;
== OpenCV ==&lt;br /&gt;
&lt;br /&gt;
=== Ubuntu packages ===&lt;br /&gt;
&lt;br /&gt;
* this is the easiest way to install OpenCV, however the Ubuntu packages might be too old and/or missing some specific features (in that case proceed with a manual installation, see below)&lt;br /&gt;
&lt;br /&gt;
  sudo apt install libcv-dev libhighgui-dev libcvaux-dev libopencv-gpu-dev&lt;br /&gt;
&lt;br /&gt;
=== Manual compilation ===&lt;br /&gt;
&lt;br /&gt;
* on most machines: download OpenCV, create a build directory, CMake, set WITH_CUDA=OFF, compile, set OpenCV_DIR to the path of OpenCV-x.y.z/build, for example:&lt;br /&gt;
 export OpenCV_DIR=$code/OpenCV-x.y.z/build&lt;br /&gt;
&lt;br /&gt;
* on CUDA machines, in order to compile CUDA-enabled modules: create a build-cuda directory, CMake, set WITH_CUDA=ON, compile, set OpenCV_DIR to the path of OpenCV-x.y.z/build-cuda. You may need to disable &amp;lt;code&amp;gt;cudacodec&amp;lt;/code&amp;gt;, see also https://github.com/opencv/opencv_contrib/issues/1786&lt;br /&gt;
&lt;br /&gt;
== YARP and iCub ==&lt;br /&gt;
&lt;br /&gt;
* In general, when compiling this software, do &#039;&#039;&#039;not&#039;&#039;&#039; use &amp;lt;code&amp;gt;sudo make install&amp;lt;/code&amp;gt; but simply &amp;lt;code&amp;gt;make&amp;lt;/code&amp;gt; (and configure the PATH variable in such a way that it finds the binaries from the build directory).&lt;br /&gt;
&lt;br /&gt;
* If you work with the robot, use the volume shares exported from the NFS server.&lt;br /&gt;
&lt;br /&gt;
* In other cases, follow the instructions on the [[iCub software]] article. &lt;br /&gt;
&lt;br /&gt;
* yarp CMake configuration&lt;br /&gt;
 CMAKE_BUILD_TYPE Release&lt;br /&gt;
 CREATE_GUIS&lt;br /&gt;
 CREATE_LIB_MATH&lt;br /&gt;
&lt;br /&gt;
 // to enable 640x480@30Hz images with Bayer encoding&lt;br /&gt;
 // install libraw1394-dev libdc1394-22-dev then enable&lt;br /&gt;
 CREATE_OPTIONAL_CARRIERS&lt;br /&gt;
 ENABLE_yarpcar_bayer ON&lt;br /&gt;
 ENABLE_yarpcar_mjpeg ON&lt;br /&gt;
&lt;br /&gt;
* icub-main CMake configuration&lt;br /&gt;
 CMAKE_BUILD_TYPE Release&lt;br /&gt;
 // on servers, do http://wiki.icub.org/wiki/Installing_IPOPT then enable&lt;br /&gt;
 ENABLE_icubmod_cartesiancontrollerclient ON&lt;br /&gt;
 ENABLE_icubmod_cartesiancontrollerserver ON&lt;br /&gt;
 ENABLE_icubmod_gazecontrollerclient ON&lt;br /&gt;
&lt;br /&gt;
* final configuration&lt;br /&gt;
# &amp;lt;code&amp;gt;yarp namespace /icub&amp;lt;/code&amp;gt;&lt;br /&gt;
# &amp;lt;code&amp;gt;yarp conf 10.10.1.53 10000&amp;lt;/code&amp;gt; (yarpserver runs on [[iCub laptop]])&lt;br /&gt;
&lt;br /&gt;
* special machines such as [[pc104]] need different flags&lt;br /&gt;
&lt;br /&gt;
== CUDA ==&lt;br /&gt;
&lt;br /&gt;
=== Prerequisites ===&lt;br /&gt;
&lt;br /&gt;
 sudo apt install freeglut3-dev libdevil-dev libglew-dev&lt;br /&gt;
 sudo apt purge libcudart*  // because we will manually install it&lt;br /&gt;
&lt;br /&gt;
Troubleshooting: http://askubuntu.com/questions/410604/installing-nvidia-drivers-with-pkg1-run-ends-with-no-version-h-found&lt;br /&gt;
&lt;br /&gt;
=== CUDA Toolkit, SDK and Examples ===&lt;br /&gt;
&lt;br /&gt;
* stop X servers: &amp;lt;code&amp;gt;sudo service lightdm stop&amp;lt;/code&amp;gt; (or &amp;lt;code&amp;gt;gdm stop&amp;lt;/code&amp;gt; depending on configuration)&lt;br /&gt;
* download and install NVIDIA CUDA Toolkit from http://docs.nvidia.com/cuda (not from Ubuntu packages)&lt;br /&gt;
* if you obtain the error &amp;quot;Toolkit:  Installation Failed. Using unsupported Compiler.&amp;quot;, use the override option, e.g., &amp;lt;code&amp;gt;./cuda_6.0.37_linux_64.run --override&amp;lt;/code&amp;gt;&lt;br /&gt;
* if you obtain the error &amp;quot;The driver installation is unable to locate the kernel source. Please make sure that the kernel source packages are installed and set up correctly&amp;quot;:&lt;br /&gt;
** read the CUDA log in /tmp and verify that the graphics card is currently supported -- if not, you might need to install a legacy NVIDIA driver. For example, the Quadro FX 580 card needs NVIDIA legacy drivers 340.xx: install them and then answer &#039;&#039;&#039;no&#039;&#039;&#039; when CUDA Toolkit installer asks &amp;quot;Install NVIDIA Accelerated Graphics Driver for Linux-x86_64 346.46?&amp;quot;&lt;br /&gt;
** &amp;lt;code&amp;gt;sudo apt install linux-generic linux-headers-$(uname -r) linux-headers-generic-lts-trusty&amp;lt;/code&amp;gt; (or other Ubuntu version codename)&lt;br /&gt;
** call the installer specifying the kernel source path, e.g., &amp;lt;code&amp;gt;./cuda_7.0.28_linux.run --kernel-source-path=/usr/src/linux-headers-3.13.0-52-generic/&amp;lt;/code&amp;gt;&lt;br /&gt;
* output of successful installation:&lt;br /&gt;
 Driver:   Installed&lt;br /&gt;
 Toolkit:  Installed in /usr/local/cuda-7.0&lt;br /&gt;
 Samples:  Not Selected&lt;br /&gt;
 Please make sure that&lt;br /&gt;
 -   PATH includes /usr/local/cuda-7.0/bin&lt;br /&gt;
 -   LD_LIBRARY_PATH includes /usr/local/cuda-7.0/lib64, or, add /usr/local/cuda-7.0/lib64 to /etc/ld.so.conf and run ldconfig as root&lt;br /&gt;
 To uninstall the CUDA Toolkit, run the uninstall script in /usr/local/cuda-7.0/bin&lt;br /&gt;
 To uninstall the NVIDIA Driver, run nvidia-uninstall&lt;br /&gt;
&lt;br /&gt;
* troubleshooting:&lt;br /&gt;
** http://askubuntu.com/questions/451672/installing-and-testing-cuda-in-ubuntu-14-04&lt;br /&gt;
** http://troylee2008.blogspot.pt/2012/05/linking-error-while-compiling-cuda-sdk.html&lt;br /&gt;
** https://devtalk.nvidia.com/default/topic/617414/-solved-cuda-driver-version-is-insufficient-for-cuda-runtime-version-fedora-18-rpmfusion-driver/&lt;br /&gt;
&lt;br /&gt;
=== SiftGPU ===&lt;br /&gt;
&lt;br /&gt;
* download it from http://cs.unc.edu/~ccwu/siftgpu/&lt;br /&gt;
* unzip it - typically in your home directory, not in the NFS shared folder&lt;br /&gt;
* compile with &amp;lt;code&amp;gt;make&amp;lt;/code&amp;gt;&lt;br /&gt;
* if you obtain &amp;quot;unspecified launch failure&amp;quot; and 0 sift features/matches, check that the X server is running: &amp;lt;code&amp;gt;sudo service lightdm start&amp;lt;/code&amp;gt;&lt;br /&gt;
* if you obtain the error &amp;quot;/usr/local/cuda/bin/nvcc: Command not found&amp;quot;, this can help: &amp;lt;code&amp;gt;sudo ln -s /usr/lib/nvidia-cuda-toolkit /usr/local/cuda&amp;lt;/code&amp;gt;. See also http://askubuntu.com/questions/231503/nvcc-compiler-setup-ubuntu-12-04&lt;br /&gt;
* run the test program &amp;lt;code&amp;gt;SimpleSIFT&amp;lt;/code&amp;gt; - it should work via ssh, as well as in a local session&lt;br /&gt;
* example of successful execution:&lt;br /&gt;
 $ ./SimpleSIFT &lt;br /&gt;
 Unable to create OpenGL Context!&lt;br /&gt;
 For nVidia cards, you can try change to CUDA mode in this case&lt;br /&gt;
 NOTE: changing maximum texture dimension to 32768&lt;br /&gt;
 [SiftGPU Language]:	CUDA&lt;br /&gt;
 Image size :	800x600&lt;br /&gt;
 Image loaded :	../data/800-1.jpg&lt;br /&gt;
 #Features:	3347&lt;br /&gt;
 #Features MO:	3910&lt;br /&gt;
 [RUN SIFT]:	0.339&lt;br /&gt;
 Image size :	640x480&lt;br /&gt;
 Image loaded :	../data/640-1.jpg&lt;br /&gt;
 #Features:	2372&lt;br /&gt;
 #Features MO:	2767&lt;br /&gt;
 [RUN SIFT]:	0.208&lt;br /&gt;
 NOTE: changing maximum texture dimension to 32768&lt;br /&gt;
 [SiftMatchGPU]: CUDA&lt;br /&gt;
 2247 sift matches were found;&lt;br /&gt;
&lt;br /&gt;
* define &amp;lt;code&amp;gt;export SIFTGPU_DIR=~/SiftGPU&amp;lt;/code&amp;gt; or similar in your iCub bashrc file, so that libsiftgpu.so is found by IOL modules&lt;br /&gt;
&lt;br /&gt;
== himrep ==&lt;br /&gt;
&lt;br /&gt;
Clone https://github.com/robotology/himrep, follow the instructions to compile &amp;lt;code&amp;gt;liblinear&amp;lt;/code&amp;gt;, CMake, make install&lt;br /&gt;
&lt;br /&gt;
To use the deep neural network object recognition, based on Caffe, follow the instructions at README_Caffe.md.&lt;br /&gt;
If you get &amp;quot;error: kernel launches from templates are not allowed in system files&amp;quot;, use an older GCC version like 4.6 (see also https://github.com/BVLC/caffe/issues/337). If you get &amp;quot;ImportError: No module named &#039;yaml&#039;&amp;quot;, do &amp;lt;code&amp;gt;sudo apt install python-yaml&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== IOL ==&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;sudo apt install lua5.1 liblua5.1-dev&amp;lt;/code&amp;gt;&lt;br /&gt;
* clone [https://github.com/kmarkus/rFSM rFSM] (no need to compile anything here)&lt;br /&gt;
&lt;br /&gt;
Clone https://github.com/robotology/iol, CMake, make install&lt;br /&gt;
&lt;br /&gt;
== stereo-vision ==&lt;br /&gt;
&lt;br /&gt;
Clone https://github.com/robotology/stereo-vision, CMake with USE_SIFT_GPU=ON, make install&lt;br /&gt;
&lt;br /&gt;
= Best practices =&lt;br /&gt;
&lt;br /&gt;
Below are some tips and tricks taken from:&lt;br /&gt;
&lt;br /&gt;
* http://wiki.icub.org/wiki/Yarp-config&lt;br /&gt;
* http://www.yarp.it/yarp-config.html&lt;br /&gt;
* [https://docs.google.com/document/d/1S9m4DbrV1AJWo_E1r3F8k3ZzmhaTOWRJ9WFjXPFqVos IIT - How to setup and start the iCub from scratch]&lt;br /&gt;
&lt;br /&gt;
== XML files ==&lt;br /&gt;
&lt;br /&gt;
Edit XML files locally, in /home/icub/.local/share/yarp&lt;br /&gt;
&lt;br /&gt;
To install robot-specific XML files, compile icub-main (just &amp;lt;code&amp;gt;make&amp;lt;/code&amp;gt;) then use commands like &amp;lt;code&amp;gt;yarp-config robot --import-all&amp;lt;/code&amp;gt; (installs all files) or &amp;lt;code&amp;gt;yarp-config robot --import iCubLisboa01 affordancesExploration.xml&amp;lt;/code&amp;gt; (installs specific files)&lt;br /&gt;
&lt;br /&gt;
== ini files ==&lt;br /&gt;
&lt;br /&gt;
To install application conf/*.ini files, compile a project (e.g., icub-main, poeticon, iol) then use commands like &amp;lt;code&amp;gt;yarp-config context --import-all&amp;lt;/code&amp;gt; (installs all files) or &amp;lt;code&amp;gt;yarp-config context --import actionsRenderingEngine&amp;lt;/code&amp;gt; (installs the files of specific applications)&lt;br /&gt;
&lt;br /&gt;
== Disabling some robot parts ==&lt;br /&gt;
&lt;br /&gt;
If the robot is not complete (or some parts need to be disabled):&lt;br /&gt;
&lt;br /&gt;
* On the pc104, type &amp;lt;code&amp;gt;yarp-config robot --list&amp;lt;/code&amp;gt; to look for the .ini files from where the configuration values are launched. These are local copies of the robots-configuration repository files.&lt;br /&gt;
* Go to the &amp;lt;code&amp;gt;INSTALLED DATA&amp;lt;/code&amp;gt; directory path and then, within the corresponding robot folder (e.g., iCubGenova04), look for the file yarprobotinterface.ini, which points to a .xml file which contains the configuration paths for all the robot parts (eg. icub_all.xml).&lt;br /&gt;
* If the local config file does not exist, there is only the canonical in the build path, then create a local one using yarp-config --import.&lt;br /&gt;
* Copy the .xml file with a descriptive name (eg icub_no_legs.xml) and on the copied file, comment or remove all lines that refer to .ini files of the part(s) that have to be disabled. &lt;br /&gt;
* Change yarprobotinterface.ini too, so that it will point to the new .xml file where the parts have been commented.&lt;br /&gt;
* On the robot/icub Startup application, modify the way that gravityCompensator and wholeBodyDynamics are launched, so that they don’t look for leg configuration files. For the legs case, add --no_legs to the argument list.&lt;br /&gt;
&lt;br /&gt;
= See also =&lt;br /&gt;
&lt;br /&gt;
* http://wiki.icub.org/wiki/Generic_iCub_machine_installation_instructions&lt;br /&gt;
&lt;br /&gt;
[[Category:Vislab]]&lt;/div&gt;</summary>
		<author><name>Giovanni Saponaro</name></author>
	</entry>
	<entry>
		<id>http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=Pc104&amp;diff=7062</id>
		<title>Pc104</title>
		<link rel="alternate" type="text/html" href="http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=Pc104&amp;diff=7062"/>
		<updated>2018-12-05T16:41:37Z</updated>

		<summary type="html">&lt;p&gt;Giovanni Saponaro: /* Software */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;See [[pc104/Archive]] for information about previous setups.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The &#039;&#039;&#039;pc104 CPU board&#039;&#039;&#039; is located into the iCub&#039;s head and it runs a full (read/write) Debian distribution that boots from a USB pen drive.&lt;br /&gt;
&lt;br /&gt;
= Booting and mounting =&lt;br /&gt;
&lt;br /&gt;
During boot, the pc104 does two things: 1) it loads a Debian Live USB Flash Drive with Persistence; 2) it mounts remote NFS shares from the [[iCub laptop]].&lt;br /&gt;
&lt;br /&gt;
== USB Flash Drive ==&lt;br /&gt;
&lt;br /&gt;
With respect to the standard image provided by the official iCub support, our configuration differs in the following files:&lt;br /&gt;
&lt;br /&gt;
 .bashrc_iCub&lt;br /&gt;
 /etc/network/interfaces&lt;br /&gt;
 /etc/hosts&lt;br /&gt;
 /etc/fstab&lt;br /&gt;
 /etc/rc.iCub.d/mounts.list&lt;br /&gt;
 /etc/rc.iCub.d/S90_mount-remote-fs.sh&lt;br /&gt;
 /etc/timezone&lt;br /&gt;
 /etc/resolv.conf&lt;br /&gt;
 /etc/udev/rules.d/70-persistent-net.rules&lt;br /&gt;
 /etc/default/ntpdate&lt;br /&gt;
&lt;br /&gt;
== NFS shares ==&lt;br /&gt;
&lt;br /&gt;
The mounted volume contains the yarp and iCub repositories (both code and binaries) and configuration files. The binaries are located in the respective &#039;&#039;&#039;build-pc104&#039;&#039;&#039; subdirectories.&lt;br /&gt;
&lt;br /&gt;
= Software =&lt;br /&gt;
&lt;br /&gt;
* Dependencies for 640x480@30Hz images with Bayer encoding&lt;br /&gt;
&lt;br /&gt;
 sudo apt install libraw1394-dev libdc1394-22-dev&lt;br /&gt;
&lt;br /&gt;
* yarp CMake configuration&lt;br /&gt;
&lt;br /&gt;
 CMAKE_BUILD_TYPE Release&lt;br /&gt;
 CREATE_DEVICE_LIBRARY_MODULES ON&lt;br /&gt;
 CREATE_LIB_MATH ON&lt;br /&gt;
 ENABLE_yarpmod_portaudio ON&lt;br /&gt;
 ENABLE_yarpmod_serialport ON&lt;br /&gt;
&lt;br /&gt;
 CREATE_OPTIONAL_CARRIERS&lt;br /&gt;
 ENABLE_yarpcar_bayer ON&lt;br /&gt;
 ENABLE_yarpcar_mjpeg ON&lt;br /&gt;
&lt;br /&gt;
* icub-main CMake configuration&lt;br /&gt;
&lt;br /&gt;
 CMAKE_BUILD_TYPE Release&lt;br /&gt;
 ENABLE_icubmod_canBusAnalogSensor ON&lt;br /&gt;
 ENABLE_icubmod_canBusSkin ON&lt;br /&gt;
 ENABLE_icubmod_canBusVirtualAnalogSensor ON&lt;br /&gt;
 ENABLE_icubmod_canmotioncontrol ON&lt;br /&gt;
 ENABLE_icubmod_cartesiancontrollerclient ON&lt;br /&gt;
 ENABLE_icubmod_cartesiancontrollerserver ON&lt;br /&gt;
 ENABLE_icubmod_cfw2can ON&lt;br /&gt;
 ENABLE_icubmod_dragonfly2 ON&lt;br /&gt;
 ENABLE_icubmod_gazecontrollerclient ON&lt;br /&gt;
 ENABLE_icubmod_parametricCalibrator ON&lt;br /&gt;
 ENABLE_icubmod_sharedcan ON&lt;br /&gt;
 ENABLE_icubmod_skinWrapper ON&lt;br /&gt;
 ENABLE_icubmod_xsensmtx ON&lt;br /&gt;
&lt;br /&gt;
* yarp configuration&lt;br /&gt;
&lt;br /&gt;
# &amp;lt;code&amp;gt;yarp namespace /icub&amp;lt;/code&amp;gt;&lt;br /&gt;
# &amp;lt;code&amp;gt;yarp conf 10.10.1.53 10000&amp;lt;/code&amp;gt; (yarpserver runs on [[iCub laptop]])&lt;br /&gt;
&lt;br /&gt;
The last command writes the information of the YARP server located on [[iCub laptop]] into the file specified by &amp;lt;code&amp;gt;yarp conf&amp;lt;/code&amp;gt;, which is typically &amp;lt;code&amp;gt;/home/icub/.config/yarp/_icub.conf&amp;lt;/code&amp;gt;. Warning: that command overwrites previous content.&lt;br /&gt;
&lt;br /&gt;
* tuning and optimization&lt;br /&gt;
&lt;br /&gt;
# make sure that &amp;lt;code&amp;gt;CMAKE_BUILD_TYPE=Release&amp;lt;/code&amp;gt; for both yarp and icub-main&lt;br /&gt;
# &amp;lt;code&amp;gt;cat /proc/sys/net/core/rmem_max&amp;lt;/code&amp;gt;  // should return 8388608&lt;br /&gt;
&lt;br /&gt;
= Updating =&lt;br /&gt;
&lt;br /&gt;
In addition to yarp and icub-main, &#039;&#039;&#039;icub-firmware-shared&#039;&#039;&#039; must also be updated (these are scripts, not the firmware itself).&lt;br /&gt;
In order to update the firmware, use the binaries in &#039;&#039;&#039;icub-firmware-build&#039;&#039;&#039; and follow the official iCub manual.&lt;br /&gt;
&lt;br /&gt;
= See also =&lt;br /&gt;
&lt;br /&gt;
* [http://wiki.icub.org/wiki/The_Linux_on_the_pc104 The Linux on the pc104]&lt;br /&gt;
* [http://wiki.icub.org/wiki/ICub_PC104_Linux_Image_-_Detailed_info ICub PC104 Linux Image - Detailed info]&lt;br /&gt;
* [http://wiki.icub.org/wiki/Compilation_on_the_pc104 Compilation on the pc104]&lt;br /&gt;
* [http://wiki.icub.org/wiki/Generic_iCub_machine_installation_instructions Generic iCub machine installation instructions]&lt;br /&gt;
* [http://wiki.icub.org/wiki/CFW002_PC104_linux_driver CFW002 PC104 linux driver]&lt;br /&gt;
&lt;br /&gt;
[[Category:Vislab]]&lt;/div&gt;</summary>
		<author><name>Giovanni Saponaro</name></author>
	</entry>
	<entry>
		<id>http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=ICub_logbook&amp;diff=7061</id>
		<title>ICub logbook</title>
		<link rel="alternate" type="text/html" href="http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=ICub_logbook&amp;diff=7061"/>
		<updated>2018-12-05T16:41:13Z</updated>

		<summary type="html">&lt;p&gt;Giovanni Saponaro: /* 2018 */ upgraded pc104&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page serves as a maintenance diary of the iCub humanoid robot in VisLab, Lisbon.&lt;br /&gt;
&lt;br /&gt;
See also the related RedMine project http://rm.isr.tecnico.ulisboa.pt/projects/icub-robot (private access).&lt;br /&gt;
&lt;br /&gt;
== 2018 ==&lt;br /&gt;
&lt;br /&gt;
* 2018-12-05: upgraded pc104 to iCub LIVE 7.9&lt;br /&gt;
* 2018-06-27: replaced the motor in the right wrist, thus fixing the r_wrist_pitch+r_wrist_yaw (j5+j6) motor problem (see also 2017-11-17 entry and https://github.com/robotology/icub-support/issues/567).&lt;br /&gt;
* 2018-02-27: left shoulder steel tendon broke during calibration.&lt;br /&gt;
* 2018-02-08: l_wrist_pitch+l_wrist_yaw (j5+j6) electrical problem fixed (wire close to the board, far from the wrist).&lt;br /&gt;
&lt;br /&gt;
== 2017 ==&lt;br /&gt;
&lt;br /&gt;
* 2017-11-23: right thumb middle phalanx broken due to collision with the torso during an experiment.&lt;br /&gt;
* 2017-11-17: r_wrist_pitch+r_wrist_yaw (j5+j6) motor problem, see also https://github.com/robotology/icub-support/issues/567&lt;br /&gt;
* 2017-10-16: repaired right shoulder steel tendon.&lt;br /&gt;
* 2017-10-15: broke right shoulder steel tendon.&lt;br /&gt;
* 2017-10-13: broke and repaired r_wrist_pitch+r_wrist_yaw (j5+j6) steel tendon.&lt;br /&gt;
* 2017-09-2x: broke and repaired l_shoulder_pitch (j0) steel tendon, see also https://github.com/robotology/icub-support/issues/541&lt;br /&gt;
* 2017-09-01: tightened right wrist cables.&lt;br /&gt;
* 2017-08-30: broke and repaired r_wrist_pitch+r_wrist_yaw (j5+j6) steel tendon.&lt;br /&gt;
* 2017-07-31: broke r_shoulder_yaw steel tendon.&lt;br /&gt;
* 2017-01-06: repaired r_thumb_oppose and l_index_proximal steel tendons.&lt;br /&gt;
&lt;br /&gt;
== 2016 ==&lt;br /&gt;
&lt;br /&gt;
* 2016-12-1x: right hand joint 8 (r_thumb_oppose) and left hand joint 11 (l_index_proximal) steel cables broken.&lt;br /&gt;
* 2016-10-21: new USB Flash Drive installed in the robot head (Debian 6, https://github.com/robotology/QA/issues/136).&lt;br /&gt;
* 2016-07-19: left thumb proximal encoder wire fixed.&lt;br /&gt;
* 2016-07-12: left thumb proximal encoder wire fixed.&lt;br /&gt;
* 2016-07-08: left thumb tendon broken and replaced.&lt;br /&gt;
* 2016-05-30: left hand thumb proximal encoder and wire fixed (https://github.com/robotology/icub-support/issues/218), right hand index distal spring replaced (https://github.com/robotology/icub-support/issues/241).&lt;br /&gt;
* 2016-03-xx: right hand steel cable and metal piece with magnet for thumb opposition replaced (https://github.com/robotology/icub-support/issues/195). Left hand steel cable replaced.&lt;br /&gt;
* 2016-01-xx: right hand CAN bus problem (CAN2). (i) Replaced the CAN bus splitter connected to 2B2 at the end of the line (closer to the hand), by installed a transparent instead of a black filter; transparent = closed filter i.e. terminator with resistor, black = no resistor. (ii) Installed a replacement MC4 board. More details at https://github.com/robotology/icub-support/issues/156&lt;br /&gt;
&lt;br /&gt;
== 2015 ==&lt;br /&gt;
&lt;br /&gt;
* 2015-12-02: left hand repaired.&lt;br /&gt;
* 2015-10-28: installed new icub-cuda server (10.10.1.51): 12 x i7-5820K, 16GB memory, NVIDIA GeForce GTX 980.&lt;br /&gt;
* 2015-08-31: set GRUB_RECORDFAIL_TIMEOUT=5 on icubbrain1, icubbrain2, in order to boot successfully after a power failure. See also http://www.phoronix.com/scan.php?page=news_item&amp;amp;px=Ubuntu-Common-GRUB2-Issue&lt;br /&gt;
* 2015-05-xx: right wrist problem, see https://github.com/robotology/icub-support/issues/23&lt;br /&gt;
* 2015-02-20: replacement waist cable arrived and installed.&lt;br /&gt;
* 2015-02-16: waist cable broken.&lt;br /&gt;
* 2015-02-12: new machine icub-cuda (10.10.1.51), for now a desktop, set up to run CUDA-enabled modules of stereo vision and IOL, replacing cortex1.&lt;br /&gt;
* 2015-01-15: new Toshiba Qosmio [[iCub laptop]] deployed to replace chico3. This machine also acts as the new NFS server for the cluster.&lt;br /&gt;
&lt;br /&gt;
== 2014 ==&lt;br /&gt;
&lt;br /&gt;
* 2014-11-12/13: Stefano Saliceti and Julien Jenvrin (IIT) at IST to repair both robot shoulders and the skin.&lt;br /&gt;
* 2014-11-03: left elbow broken.&lt;br /&gt;
* &#039;&#039;&#039;2014-09-25: upgraded robot arrived after 8 weeks.&#039;&#039;&#039;&lt;br /&gt;
* &#039;&#039;&#039;2014-07-31: iCubLisboa01 leaves the lab for hardware upgrades in Italy (skin).&#039;&#039;&#039;&lt;br /&gt;
* 2014-06-18: right camera image was going black from time to time. Replacing the flex cable fixed the problem.&lt;br /&gt;
* &#039;&#039;&#039;2014-06-18: repaired forearm arrived after 27 days.&#039;&#039;&#039;&lt;br /&gt;
* &#039;&#039;&#039;2014-05-22: left forearm sent to Italy for repair.&#039;&#039;&#039;&lt;br /&gt;
* 2014-05-08: backlash in left forearm wrist motor. [http://youtu.be/rBy0FV2bje8 Backlash video], [http://youtu.be/pMI6jaxmyoo Motor noise video], [http://youtu.be/pWFvw3dNiuU Wrist motion video]&lt;br /&gt;
* 2014-05-06: icub-main (git) installed on all machines, including pc104.&lt;br /&gt;
* 2014-02-21: pc104 clock was off by one hour. Fixed ntp service by issuing &amp;lt;code&amp;gt;sudo dpkg -i --force-overwrite /var/cache/apt/archives/ntp_1%3a4.2.6.p2+dfsg-1+b1_i386.deb&amp;lt;/code&amp;gt; and setting the timezone to Lisbon (&amp;lt;code&amp;gt;sudo dpkg-reconfigure tzdata&amp;lt;/code&amp;gt;). See also 2011-11-18.&lt;br /&gt;
* &#039;&#039;&#039;2014-02-06: repaired forearm arrived after three weeks.&#039;&#039;&#039;&lt;br /&gt;
* 2014-01-20: IIT technicians confirmed the problem at the encoder attached to the pronosupination motor.&lt;br /&gt;
* &#039;&#039;&#039;2014-01-16: right forearm sent to Italy for repair.&#039;&#039;&#039;&lt;br /&gt;
* 2014-01-09: right arm pronosupination problem (j4).&lt;br /&gt;
* 2014-01-07: head/torso (CAN0) problem solved by manually setting CAN0 ID14 instead of ID15 in canLoader.&lt;br /&gt;
&lt;br /&gt;
== 2013 ==&lt;br /&gt;
&lt;br /&gt;
* 2013-12-2x: head/torso (CAN0) problems, see [http://robotcub-hackers.2198711.n2.nabble.com/iCubLisboa01-head-torso-problem-tt7578621.html this thread] for details.&lt;br /&gt;
* 2013-11-xx: presently, chico3 acts as NFS server for chico3,icubbrains,cortex1, while icubsrv (to be retired in the future) still acts as NFS server for pc104.&lt;br /&gt;
* 2013-11-19: upgrading icubsrv (Dell XPS laptop) Ubuntu version, installing common repositories there, shared with NFS to the other machines.&lt;br /&gt;
* 2013-11-01: often experiencing a problem where the wholeBodyDynamics module does not start, due to force/torque sensors not being found at iCubInterface startup.&lt;br /&gt;
* 2013-07-03: CFW2 board problem (cfw2can error). Replacing the board solved it.&lt;br /&gt;
* 2013-06-25: following new requirements (see [http://robotcub-hackers.2198711.n2.nabble.com/CMake-2-8-7-Required-for-YARP-td7578216.html this email]), manually installed a new version of CMake on [[pc104]].&lt;br /&gt;
* 2013-06-2x: robot mounted on a new, lower metal base on the floor. Occasionally, iCubInterface does not start the motors. Possibly a loose contact after the transport.&lt;br /&gt;
* 2013-05-10: new setup where some machines (pc104, chico3, icubbrains, cortex1) are directly connected via a fast Cisco switch (http://10.10.1.252/, empty, qb...). Got 640x480@30Hz images with Bayer encoding working (see also 2012-08-15 entry).&lt;br /&gt;
* 2013-05-0x: new yarp and iCub repositories installed on all machines. Old configuration files are backed up.&lt;br /&gt;
* 2013-04-29/30: problems with arms (solved by swapping left/right flat cable), occasional Force/Torque sensor problem in impedance control (temporary solution: close and re-launch demoGrasp).&lt;br /&gt;
* 2013-04-26: replacement parts arrived from IIT (gearbox and pulley for hand, flat cable linking BLL and BLP for arm). After installing them, both arms and hands are working again.&lt;br /&gt;
* 2013-04-08: video conference with Italy (Julien Jenvrin) to analyze two ongoing issues: left fingers and right shoulder.&lt;br /&gt;
* &#039;&#039;&#039;2013-04-02: iCubLisboa01 arms and new CFW2 boards arrived after about 2 months.&#039;&#039;&#039;&lt;br /&gt;
* &#039;&#039;&#039;2013-01-24: iCubLisboa01 arms sent to Italy for repair (they reached their destination the next day).&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== 2012 ==&lt;br /&gt;
&lt;br /&gt;
* 2012-12-18: replacement BLP board and adhesive tape arrived and installed, robot operational again.&lt;br /&gt;
* 2012-12-05: robot left shoulder and neck repaired. Torso: one BLP board is faulty. We are going to swap it with a functioning BLP board in the right leg, thus having a working torso and a disabled right leg.&lt;br /&gt;
* 2012-11-30: robot left shoulder, neck and torso malfunctioning.&lt;br /&gt;
* 2012-10-26: robot right shoulder fixed.&lt;br /&gt;
* 2012-10-15: robot right shoulder broken, right arm temporarily disabled in iCubInterface and demoGrasp configuration.&lt;br /&gt;
* 2012-08-15: pc104 configured to support 640x480@30Hz images with Bayer encoding. Requires &amp;lt;code&amp;gt;libraw1394-dev libdc1394-22-dev&amp;lt;/code&amp;gt; packages. See also [http://robotcub-hackers.2198711.n2.nabble.com/announcing-640x480-images-td7577551.html this email] and [http://wiki.icub.org/wiki/Getting_640x480_images this guide] by Lorenzo Natale. Added the following line on chico3,pc104,icubbrains /etc/sysctl.conf: &amp;lt;code&amp;gt;net.core.rmem_max=8388608&amp;lt;/code&amp;gt;&lt;br /&gt;
* 2012-07-11: problem in the CFW2 board FireWire interface to the two cameras: sometimes FireWire devices are not listed as available, not even at OS level. A pc104 reboot may or may not fix the problem, depending on your luck.&lt;br /&gt;
* 2012-07-0x: firmware of robot parts upgraded again, following [http://robotcub-hackers.2198711.n2.nabble.com/iKinGazeCtrl-fast-saccades-new-FW-td7577441.html this message] by Ugo. CAN6, board #14 (MAIS) in the right hand sometimes is not responding, possibly a bad contact, however it was now upgraded too.&lt;br /&gt;
* 2012-05-2x: major reconfiguration from Ugo and Vadim (IIT). Environment variables and software (OpenCV, IPOPT) reconfigured on all machines. &#039;&#039;&#039;[[Chico#Firmware|Firmware]]&#039;&#039;&#039; of robot parts upgraded.&lt;br /&gt;
&lt;br /&gt;
== 2011 ==&lt;br /&gt;
* 2011-11-18: Configured icubsrv laptop so that it sees the internet (DNS servers in &amp;lt;code&amp;gt;/etc/resolv.conf&amp;lt;/code&amp;gt;). &amp;lt;strike&amp;gt;TODO: pc104 ntp&amp;lt;/strike&amp;gt;&lt;br /&gt;
* 2011-10-xx: ongoing software updates and tests; currently there is a major mechanical issue with the head tilt (j0)&lt;br /&gt;
* &#039;&#039;&#039;2011-10-12: upgraded iCubLisboa01 returns to the lab after about 3 months&#039;&#039;&#039;&lt;br /&gt;
* &#039;&#039;&#039;2011-07-04: iCubLisboa01 leaves the lab for hardware upgrades in Italy (headV2, force/torque sensors, touch sensors)&#039;&#039;&#039;&lt;br /&gt;
* 2011-03-07: iCubInterface is shutting down gracefully. Was due to zombie processes (iKinCartesianSolvers on the icubbrain2). [The problem was trivial but I am not deleting these posts as it might help in troubleshooting in the future --ashish]. By the way, there are still some Can Errors on Boards 1 and 6.&lt;br /&gt;
* 2011-03-07: iCubInterface has not been shutting down gracefully. This behavior was seen earlier as well when we were having troubles with the iCub head (Last time it was probably due to a cable being pulled around the neck).&lt;br /&gt;
 From the iCubInterface:-&lt;br /&gt;
 pcan [0] thread ran 596 times, req.dT:10[ms], av.dT:10.05[ms] av.loopT :0.03[ms]&lt;br /&gt;
  Can Errors --  Device Tx:1 Rx:0 TxOvf: 1 RxOvf BusOff: 0 -- Driver Fifo Tx:0 Rx:0&lt;br /&gt;
 pcan [0] printing boards errors:&lt;br /&gt;
 None&lt;br /&gt;
 pcan [2] thread ran 596 times, req.dT:10[ms], av.dT:10.05[ms] av.loopT :0.04[ms]&lt;br /&gt;
  Can Errors --  Device Tx:2 Rx:0 TxOvf: 2 RxOvf BusOff: 81 -- Driver Fifo Tx:0 Rx:81&lt;br /&gt;
 pcan [2] printing boards errors:&lt;br /&gt;
 None&lt;br /&gt;
&lt;br /&gt;
* 2011-03-07: Joint 15 of the right arm is making noises (Nuno suspects that there is something wrong with the gearbox. Only 1 gearbox left in stock. Should order more)&lt;br /&gt;
* 2011-03-07: iCubInterface no more board errors (appears to be random: probably some cable is loose)&lt;br /&gt;
* 2011-03-07: iCubInterface could not contact boards 6, 8, 9, 10&lt;br /&gt;
* 2011-03-07: iCubInterface behaving wierdly: Board 1, 2, 3, 5, 7 could not be contacted&lt;br /&gt;
* 2011-03-07: right arm fixed&lt;br /&gt;
* 2011-03-07: right arm broken (cable broken near the elbow)&lt;br /&gt;
* 2011-02-08: head not working properly. Fixed (some cables connecting head to neck were not working well)&lt;br /&gt;
* 2011-01-25: eyes calibrated&lt;br /&gt;
&lt;br /&gt;
== 2010 ==&lt;br /&gt;
* 2010-12-30: robot right arm fixed; problem with torso though&lt;br /&gt;
* 2010-12-27: robot right arm broken&lt;br /&gt;
* 2010-11-08: left arm fixed. Joint j15 of right arm does not work correctly, though. &amp;lt;code&amp;gt;iCubInterface&amp;lt;/code&amp;gt; can be executed safely with any config file.&lt;br /&gt;
* 2010-10-08: left arm broken. For the time being, disable it by running &amp;lt;code&amp;gt;iCubInterface --from iCubInterfaceSimpleLeftArmDisabled.ini&amp;lt;/code&amp;gt;&lt;br /&gt;
* 2010-09-02: changed two of the software zeros head tilt and eye tilt to set the optical axis parallel to the robot X,Y coordinate axes. This change was made in the following file: &amp;lt;code&amp;gt;$ICUB_ROOT/app/iCubLisboa01/conf/icub_head_safe.ini&amp;lt;/code&amp;gt;&lt;br /&gt;
* 2010-07-13: the problem with demoAffV2 was fixed: it is necessary to link to a specific version of &amp;lt;code&amp;gt;/usr/local/lib/libcxcore.a&amp;lt;/code&amp;gt; for PNL to work.&lt;br /&gt;
* 2010-06-02: added the following line in &amp;lt;code&amp;gt;$ICUB_ROOT/app/iCubLisboa01/conf/icubEyes.ini&amp;lt;/code&amp;gt;, under the groups &amp;lt;code&amp;gt;CAMERA_CALIBRATION_LEFT&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;_RIGHT&amp;lt;/code&amp;gt;. This change makes camCalib run again at 30 fps, thus improving other vision modules e.g. ball tracker as well:&lt;br /&gt;
  fps 30&lt;br /&gt;
* 2010-02-08: changed one of the software joint limits of the torso to reflect our real (hardware) limit: 70-&amp;gt;35 degrees. This change was made in the following files: &amp;lt;code&amp;gt;$ICUB_ROOT/app/iCubLisboa01/conf/{icub_head_safe,icub_head_torso,icub_head_torso_raw,icub_head_torso_safe,icub_torso_safe}.ini&amp;lt;/code&amp;gt;&lt;br /&gt;
* 2010-02-04: updated yarp and iCub on: chico3, icubsrv (for [[pc104]]), icubbrains. Fixed ntp (time) hook script, hopefully for good this time.&lt;br /&gt;
&lt;br /&gt;
== 2009 ==&lt;br /&gt;
&lt;br /&gt;
* 2009-12-21: right wrist is currently broken, left one is working. Please use &amp;lt;code&amp;gt;iCubInterface --from iCubInterfaceRightArmDisabled.ini&amp;lt;/code&amp;gt; for the time being&lt;br /&gt;
* 2009-12-09: updated YARP and iCub on chico3 (current issue: openvislab libraries, Christian is looking into it) and on [[Cortex | cortex1-5]] (there was an issue with iKinCartesianSolver; toggling USE_ICUB_MOD to off fixed it for now)&lt;br /&gt;
* 2009-09-23: both arms working. You can safely use &amp;lt;code&amp;gt;icubSafe.ini&amp;lt;/code&amp;gt; again.&lt;br /&gt;
* 2009-09-21: left wrist is currently broken, right one is working. Please use &amp;lt;code&amp;gt;iCubInterface --config $ICUB_ROOT/app/iCubLisboa01/icubSafeLeftArmDisabled.ini&amp;lt;/code&amp;gt;&lt;br /&gt;
* 2009-09-21: checked controllers firmware build numbers - they match the latest releases. (alex)&lt;br /&gt;
* 2009-09-18: updated controllers firmware. (alex)&lt;br /&gt;
* 2009-09-18: both the iCub wrists are currently broken&lt;br /&gt;
* 2009-09-16: upgraded [[pc104 | pc104, icubsrv and boot scripts]]. Still missing: ntp (time).&lt;br /&gt;
* 2009-09-16: installed [[RobotCub software | yarp and iCub]] on chico3. Custom, uncommited files that used to be in &amp;lt;code&amp;gt;/home/icub/iCub/app/{default,iCubLisboa01}/{conf,scripts}&amp;lt;/code&amp;gt; are backed up in &amp;lt;code&amp;gt;/home/icub/iCub_cvs&amp;lt;/code&amp;gt;.&lt;br /&gt;
* 2009-09-14: installed [[RobotCub software | yarp]] (2.2.5rc0, revision 7446) and [[RobotCub software | iCub]] (revision 727) on [[Cortex | cortex1-5]]. iKin was complaining about not finding &amp;lt;code&amp;gt;libipopt.so.0&amp;lt;/code&amp;gt;; this was fixed by setting the environment variable&lt;br /&gt;
  LD_LIBRARY_PATH=/opt/Ipopt-3.5.5-linux-x86_32-gcc4.2.4/lib/&lt;br /&gt;
into &amp;lt;code&amp;gt;/home/icub/.bash_env&amp;lt;/code&amp;gt;.&lt;br /&gt;
* 2009-09-11: installed [[RobotCub software | yarp2 and iCub SVN]] on [[Cortex | cortex6]].&lt;br /&gt;
[[Category:Vislab]]&lt;/div&gt;</summary>
		<author><name>Giovanni Saponaro</name></author>
	</entry>
	<entry>
		<id>http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=ICub_machines_configuration&amp;diff=7060</id>
		<title>ICub machines configuration</title>
		<link rel="alternate" type="text/html" href="http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=ICub_machines_configuration&amp;diff=7060"/>
		<updated>2018-12-05T16:24:42Z</updated>

		<summary type="html">&lt;p&gt;Giovanni Saponaro: /* YARP and iCub */ add mjpeg carrier&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;In this page we describe the setup of the computers connected to the iCub robot, which all share a common network disk and configuration.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;See [[iCub machines configuration/Archive]] for obsolete information.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
= Operating system installation =&lt;br /&gt;
&lt;br /&gt;
Ubuntu LTS, default settings and partitioning. The first user to be created must be called &#039;&#039;&#039;icub&#039;&#039;&#039;, to make the distributed setup possible: for NFS network mount, this user has to have uid 1000 and guid 1000.&lt;br /&gt;
&lt;br /&gt;
In order to add a user:&lt;br /&gt;
* either use the Ubuntu graphical frontends&lt;br /&gt;
* or use a Terminal:&lt;br /&gt;
 sudo adduser icub&lt;br /&gt;
 sudo usermod -aG sudo icub  # gives sudo privileges&lt;br /&gt;
&lt;br /&gt;
= Other operations =&lt;br /&gt;
&lt;br /&gt;
== Network configuration ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;See also: [[VisLab network]], [[ISR computing resources]]&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Configure a static IP as explained in one of the following subsections, depending if the machine is a desktop or a server one.&lt;br /&gt;
&lt;br /&gt;
Also, it is recommended to set up the &amp;lt;code&amp;gt;/etc/hosts&amp;lt;/code&amp;gt; file as follows:&lt;br /&gt;
&lt;br /&gt;
 10.10.1.41 icubbrain1&lt;br /&gt;
 10.10.1.42 icubbrain2&lt;br /&gt;
 10.10.1.50 pc104&lt;br /&gt;
 10.10.1.51 icub-cuda&lt;br /&gt;
 10.10.1.53 icub-laptop&lt;br /&gt;
&lt;br /&gt;
You should be able to do &amp;lt;code&amp;gt;ping icubbrain1&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Desktop machines ===&lt;br /&gt;
&lt;br /&gt;
With the graphical Network Manager (https://help.ubuntu.com/16.04/ubuntu-help/net-fixed-ip-address.html), configure the connection &amp;quot;Auto eth0&amp;quot; IPv4 as follows:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|+ &lt;br /&gt;
! Address !! Netmask !! Gateway !! DNS Servers !! notes&lt;br /&gt;
|-&lt;br /&gt;
|10.10.1.x || 255.255.255.0 || 10.10.1.254 || 10.0.0.1, 10.0.0.2 || visnet (iCub machines)&lt;br /&gt;
|-&lt;br /&gt;
|10.0.x.y || 255.255.0.0 || 10.0.0.254 || 10.0.0.1, 10.0.0.2 || isrnet (rest of ISR)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Servers ===&lt;br /&gt;
&lt;br /&gt;
Edit &amp;lt;code&amp;gt;/etc/network/interfaces&amp;lt;/code&amp;gt; like this:&lt;br /&gt;
 auto lo&lt;br /&gt;
 iface lo inet loopback&lt;br /&gt;
   &lt;br /&gt;
 auto eth0&lt;br /&gt;
 iface eth0 inet static&lt;br /&gt;
 address 10.x.y.z # put your IP here, see above table&lt;br /&gt;
 netmask 255.255.x.y # see above table&lt;br /&gt;
 network 10.10.1.0&lt;br /&gt;
 broadcast 10.10.1.255&lt;br /&gt;
 gateway 10.10.1.254&lt;br /&gt;
 dns-nameservers 10.0.0.1 10.0.0.2&lt;br /&gt;
&lt;br /&gt;
In some versions of Ubuntu, to configure DNS you also need to edit &amp;lt;code&amp;gt;/etc/resolvconf/resolv.conf.d/head&amp;lt;/code&amp;gt; like this:&lt;br /&gt;
 nameserver 10.0.0.1&lt;br /&gt;
 nameserver 10.0.0.2&lt;br /&gt;
&lt;br /&gt;
then run:&lt;br /&gt;
 sudo resolvconf -u&lt;br /&gt;
&lt;br /&gt;
== Dependencies ==&lt;br /&gt;
&lt;br /&gt;
Installing the &#039;&#039;&#039;icub-common&#039;&#039;&#039; metapackage is sufficient. It is a bundle of the following packages (for more details see [http://wiki.icub.org/wiki/Linux:Installation_from_sources here] and [http://wiki.icub.org/wiki/Linux:_dependencies here]):&lt;br /&gt;
 sudo apt install build-essential libace-dev libedit-dev libeigen3-dev libncurses5-dev gfortran libtinyxml-dev libgraphviz-dev&lt;br /&gt;
 sudo apt install git-core ssh gcc g++ make cmake-curses-gui freeglut3-dev libxmu-dev libswscale-dev libavformat-dev&lt;br /&gt;
&lt;br /&gt;
Qt5 graphics dependencies in Ubuntu 16.04 Xenial:&lt;br /&gt;
&lt;br /&gt;
 sudo apt install qttools5-dev qtdeclarative5-dev qtdeclarative5-controls-plugin qtdeclarative5-dialogs-plugin qtmultimedia5-dev qtdeclarative5-qtmultimedia-plugin qtquick1-5-dev libqt5opengl5-dev&lt;br /&gt;
&lt;br /&gt;
Qt5 graphics dependencies in Debian Stretch:&lt;br /&gt;
 sudo apt install qml-module-qt-labs-folderlistmodel qml-module-qt-labs-settings&lt;br /&gt;
&lt;br /&gt;
iCub Simulator dependencies: SDL and ODE.&lt;br /&gt;
&lt;br /&gt;
GTK graphical programs are obsolete and replaced by their Qt equivalents. If you still want the old GTK programs, install &amp;lt;code&amp;gt;libgtkmm-2.4-dev&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Environment variables ==&lt;br /&gt;
&lt;br /&gt;
* Create a file called ~/.bashrc_iCub like this one. Usually you do not need all of the following variables and settings, just a subset.&lt;br /&gt;
&lt;br /&gt;
  export ROBOT_CODE=/usr/local/src/robot&lt;br /&gt;
&lt;br /&gt;
  export YARP_ROOT=$ROBOT_CODE/yarp&lt;br /&gt;
  export YARP_DIR=$YARP_ROOT/build&lt;br /&gt;
  export ICUB_ROOT=$ROBOT_CODE/icub-main&lt;br /&gt;
  export ICUB_DIR=$ICUB_ROOT/build&lt;br /&gt;
&lt;br /&gt;
  export ICUBcontrib_DIR=$ROBOT_CODE/icub-contrib-common/build&lt;br /&gt;
  export YARP_DATA_DIRS=$YARP_DIR/share/yarp:$ICUB_DIR/share/iCub:$ICUBcontrib_DIR/share/ICUBcontrib:$ROBOT_CODE/speech/svox-speech/build/share/speech&lt;br /&gt;
  export PATH=$PATH:$YARP_DIR/bin:$ICUB_DIR/bin:$ICUBcontrib_DIR/bin&lt;br /&gt;
&lt;br /&gt;
  export ODE_DIR=$ROBOT_CODE/ode-0.13/build&lt;br /&gt;
&lt;br /&gt;
  # OpenCV: select one of the following&lt;br /&gt;
  #export OpenCV_DIR=$ROBOT_CODE/opencv2/build&lt;br /&gt;
  #export OpenCV_DIR=$ROBOT_CODE/opencv2/build-cuda&lt;br /&gt;
  export OpenCV_DIR=$ROBOT_CODE/opencv3/build&lt;br /&gt;
  #export OpenCV_DIR=$ROBOT_CODE/opencv3/build-cuda&lt;br /&gt;
&lt;br /&gt;
  # To enable tab completion on yarp port names&lt;br /&gt;
  if [ -f $YARP_ROOT/scripts/yarp_completion ]; then&lt;br /&gt;
    source $YARP_ROOT/scripts/yarp_completion&lt;br /&gt;
  fi&lt;br /&gt;
&lt;br /&gt;
  # Set the name of your robot here.&lt;br /&gt;
  export YARP_ROBOT_NAME=iCubLisboa01&lt;br /&gt;
&lt;br /&gt;
  # Set-up optimizations&lt;br /&gt;
  export CMAKE_BUILD_TYPE=Release&lt;br /&gt;
&lt;br /&gt;
  # DebugStream customization&lt;br /&gt;
  export YARP_VERBOSE_OUTPUT=0&lt;br /&gt;
  export YARP_COLORED_OUTPUT=1&lt;br /&gt;
  export YARP_TRACE_ENABLE=0&lt;br /&gt;
  export YARP_FORWARD_LOG_ENABLE=0&lt;br /&gt;
&lt;br /&gt;
  # Lua&lt;br /&gt;
  ### DO NOT REMOVE &#039;;;;&#039; ###&lt;br /&gt;
  export LUA_PATH=&amp;quot;;;;$ROBOT_CODE/rFSM/?.lua;$ICUBcontrib_DIR/share/ICUBcontrib/contexts/interactiveObjectsLearning/LUA/?.lua&amp;quot;&lt;br /&gt;
  export LUA_CPATH=&amp;quot;;;;$YARP_ROOT/bindings/build-lua/?.so&amp;quot;&lt;br /&gt;
  export PATH=$PATH:$ROBOT_CODE/rFSM/tools:$ICUBcontrib_DIR/share/ICUBcontrib/contexts/interactiveObjectsLearning/LUA&lt;br /&gt;
  export PATH=$PATH:$YARP_ROOT/bindings/build-lua&lt;br /&gt;
  export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$YARP_ROOT/bindings/build-lua&lt;br /&gt;
&lt;br /&gt;
* Then, before the following line of /etc/bash.bashrc&lt;br /&gt;
 [ -z &amp;quot;$PS1&amp;quot; ] &amp;amp;&amp;amp; return&lt;br /&gt;
add this:&lt;br /&gt;
 # per-user environment variables (non-interactive and interactive mode)&lt;br /&gt;
 source $HOME/.bashrc_iCub&lt;br /&gt;
&lt;br /&gt;
The reason why we use the above custom file (as opposed to the standard ~/.bashrc) is that we want to enforce the variables both during interactive and non-interactive sessions, such as commands launched via &amp;lt;code&amp;gt;yarprun&amp;lt;/code&amp;gt; from another machine.&lt;br /&gt;
&lt;br /&gt;
See also https://git.robotology.eu/mbrunettini/icub-environment for the variables and scripts employed at IIT.&lt;br /&gt;
&lt;br /&gt;
= Additional software =&lt;br /&gt;
&lt;br /&gt;
== OpenCV ==&lt;br /&gt;
&lt;br /&gt;
=== Ubuntu packages ===&lt;br /&gt;
&lt;br /&gt;
* this is the easiest way to install OpenCV, however the Ubuntu packages might be too old and/or missing some specific features (in that case proceed with a manual installation, see below)&lt;br /&gt;
&lt;br /&gt;
  sudo apt install libcv-dev libhighgui-dev libcvaux-dev libopencv-gpu-dev&lt;br /&gt;
&lt;br /&gt;
=== Manual compilation ===&lt;br /&gt;
&lt;br /&gt;
* on most machines: download OpenCV, create a build directory, CMake, set WITH_CUDA=OFF, compile, set OpenCV_DIR to the path of OpenCV-x.y.z/build, for example:&lt;br /&gt;
 export OpenCV_DIR=$code/OpenCV-x.y.z/build&lt;br /&gt;
&lt;br /&gt;
* on CUDA machines, in order to compile CUDA-enabled modules: create a build-cuda directory, CMake, set WITH_CUDA=ON, compile, set OpenCV_DIR to the path of OpenCV-x.y.z/build-cuda. You may need to disable &amp;lt;code&amp;gt;cudacodec&amp;lt;/code&amp;gt;, see also https://github.com/opencv/opencv_contrib/issues/1786&lt;br /&gt;
&lt;br /&gt;
== YARP and iCub ==&lt;br /&gt;
&lt;br /&gt;
* In general, when compiling this software, do &#039;&#039;&#039;not&#039;&#039;&#039; use &amp;lt;code&amp;gt;sudo make install&amp;lt;/code&amp;gt; but simply &amp;lt;code&amp;gt;make&amp;lt;/code&amp;gt; (and configure the PATH variable in such a way that it finds the binaries from the build directory).&lt;br /&gt;
&lt;br /&gt;
* If you work with the robot, use the volume shares exported from the NFS server.&lt;br /&gt;
&lt;br /&gt;
* In other cases, follow the instructions on the [[iCub software]] article. &lt;br /&gt;
&lt;br /&gt;
* yarp CMake configuration&lt;br /&gt;
 CMAKE_BUILD_TYPE Release&lt;br /&gt;
 CREATE_GUIS&lt;br /&gt;
 CREATE_LIB_MATH&lt;br /&gt;
&lt;br /&gt;
 // to enable 640x480@30Hz images with Bayer encoding&lt;br /&gt;
 // install libraw1394-dev libdc1394-22-dev then enable&lt;br /&gt;
 CREATE_OPTIONAL_CARRIERS&lt;br /&gt;
 ENABLE_yarpcar_bayer&lt;br /&gt;
 ENABLE_yarpcar_mjpeg&lt;br /&gt;
&lt;br /&gt;
* icub-main CMake configuration&lt;br /&gt;
 CMAKE_BUILD_TYPE Release&lt;br /&gt;
 // on servers, do http://wiki.icub.org/wiki/Installing_IPOPT then enable&lt;br /&gt;
 ENABLE_icubmod_cartesiancontrollerclient ON&lt;br /&gt;
 ENABLE_icubmod_cartesiancontrollerserver ON&lt;br /&gt;
 ENABLE_icubmod_gazecontrollerclient ON&lt;br /&gt;
&lt;br /&gt;
* final configuration&lt;br /&gt;
# &amp;lt;code&amp;gt;yarp namespace /icub&amp;lt;/code&amp;gt;&lt;br /&gt;
# &amp;lt;code&amp;gt;yarp conf 10.10.1.53 10000&amp;lt;/code&amp;gt; (yarpserver runs on [[iCub laptop]])&lt;br /&gt;
&lt;br /&gt;
* special machines such as [[pc104]] need different flags&lt;br /&gt;
&lt;br /&gt;
== CUDA ==&lt;br /&gt;
&lt;br /&gt;
=== Prerequisites ===&lt;br /&gt;
&lt;br /&gt;
 sudo apt install freeglut3-dev libdevil-dev libglew-dev&lt;br /&gt;
 sudo apt purge libcudart*  // because we will manually install it&lt;br /&gt;
&lt;br /&gt;
Troubleshooting: http://askubuntu.com/questions/410604/installing-nvidia-drivers-with-pkg1-run-ends-with-no-version-h-found&lt;br /&gt;
&lt;br /&gt;
=== CUDA Toolkit, SDK and Examples ===&lt;br /&gt;
&lt;br /&gt;
* stop X servers: &amp;lt;code&amp;gt;sudo service lightdm stop&amp;lt;/code&amp;gt; (or &amp;lt;code&amp;gt;gdm stop&amp;lt;/code&amp;gt; depending on configuration)&lt;br /&gt;
* download and install NVIDIA CUDA Toolkit from http://docs.nvidia.com/cuda (not from Ubuntu packages)&lt;br /&gt;
* if you obtain the error &amp;quot;Toolkit:  Installation Failed. Using unsupported Compiler.&amp;quot;, use the override option, e.g., &amp;lt;code&amp;gt;./cuda_6.0.37_linux_64.run --override&amp;lt;/code&amp;gt;&lt;br /&gt;
* if you obtain the error &amp;quot;The driver installation is unable to locate the kernel source. Please make sure that the kernel source packages are installed and set up correctly&amp;quot;:&lt;br /&gt;
** read the CUDA log in /tmp and verify that the graphics card is currently supported -- if not, you might need to install a legacy NVIDIA driver. For example, the Quadro FX 580 card needs NVIDIA legacy drivers 340.xx: install them and then answer &#039;&#039;&#039;no&#039;&#039;&#039; when CUDA Toolkit installer asks &amp;quot;Install NVIDIA Accelerated Graphics Driver for Linux-x86_64 346.46?&amp;quot;&lt;br /&gt;
** &amp;lt;code&amp;gt;sudo apt install linux-generic linux-headers-$(uname -r) linux-headers-generic-lts-trusty&amp;lt;/code&amp;gt; (or other Ubuntu version codename)&lt;br /&gt;
** call the installer specifying the kernel source path, e.g., &amp;lt;code&amp;gt;./cuda_7.0.28_linux.run --kernel-source-path=/usr/src/linux-headers-3.13.0-52-generic/&amp;lt;/code&amp;gt;&lt;br /&gt;
* output of successful installation:&lt;br /&gt;
 Driver:   Installed&lt;br /&gt;
 Toolkit:  Installed in /usr/local/cuda-7.0&lt;br /&gt;
 Samples:  Not Selected&lt;br /&gt;
 Please make sure that&lt;br /&gt;
 -   PATH includes /usr/local/cuda-7.0/bin&lt;br /&gt;
 -   LD_LIBRARY_PATH includes /usr/local/cuda-7.0/lib64, or, add /usr/local/cuda-7.0/lib64 to /etc/ld.so.conf and run ldconfig as root&lt;br /&gt;
 To uninstall the CUDA Toolkit, run the uninstall script in /usr/local/cuda-7.0/bin&lt;br /&gt;
 To uninstall the NVIDIA Driver, run nvidia-uninstall&lt;br /&gt;
&lt;br /&gt;
* troubleshooting:&lt;br /&gt;
** http://askubuntu.com/questions/451672/installing-and-testing-cuda-in-ubuntu-14-04&lt;br /&gt;
** http://troylee2008.blogspot.pt/2012/05/linking-error-while-compiling-cuda-sdk.html&lt;br /&gt;
** https://devtalk.nvidia.com/default/topic/617414/-solved-cuda-driver-version-is-insufficient-for-cuda-runtime-version-fedora-18-rpmfusion-driver/&lt;br /&gt;
&lt;br /&gt;
=== SiftGPU ===&lt;br /&gt;
&lt;br /&gt;
* download it from http://cs.unc.edu/~ccwu/siftgpu/&lt;br /&gt;
* unzip it - typically in your home directory, not in the NFS shared folder&lt;br /&gt;
* compile with &amp;lt;code&amp;gt;make&amp;lt;/code&amp;gt;&lt;br /&gt;
* if you obtain &amp;quot;unspecified launch failure&amp;quot; and 0 sift features/matches, check that the X server is running: &amp;lt;code&amp;gt;sudo service lightdm start&amp;lt;/code&amp;gt;&lt;br /&gt;
* if you obtain the error &amp;quot;/usr/local/cuda/bin/nvcc: Command not found&amp;quot;, this can help: &amp;lt;code&amp;gt;sudo ln -s /usr/lib/nvidia-cuda-toolkit /usr/local/cuda&amp;lt;/code&amp;gt;. See also http://askubuntu.com/questions/231503/nvcc-compiler-setup-ubuntu-12-04&lt;br /&gt;
* run the test program &amp;lt;code&amp;gt;SimpleSIFT&amp;lt;/code&amp;gt; - it should work via ssh, as well as in a local session&lt;br /&gt;
* example of successful execution:&lt;br /&gt;
 $ ./SimpleSIFT &lt;br /&gt;
 Unable to create OpenGL Context!&lt;br /&gt;
 For nVidia cards, you can try change to CUDA mode in this case&lt;br /&gt;
 NOTE: changing maximum texture dimension to 32768&lt;br /&gt;
 [SiftGPU Language]:	CUDA&lt;br /&gt;
 Image size :	800x600&lt;br /&gt;
 Image loaded :	../data/800-1.jpg&lt;br /&gt;
 #Features:	3347&lt;br /&gt;
 #Features MO:	3910&lt;br /&gt;
 [RUN SIFT]:	0.339&lt;br /&gt;
 Image size :	640x480&lt;br /&gt;
 Image loaded :	../data/640-1.jpg&lt;br /&gt;
 #Features:	2372&lt;br /&gt;
 #Features MO:	2767&lt;br /&gt;
 [RUN SIFT]:	0.208&lt;br /&gt;
 NOTE: changing maximum texture dimension to 32768&lt;br /&gt;
 [SiftMatchGPU]: CUDA&lt;br /&gt;
 2247 sift matches were found;&lt;br /&gt;
&lt;br /&gt;
* define &amp;lt;code&amp;gt;export SIFTGPU_DIR=~/SiftGPU&amp;lt;/code&amp;gt; or similar in your iCub bashrc file, so that libsiftgpu.so is found by IOL modules&lt;br /&gt;
&lt;br /&gt;
== himrep ==&lt;br /&gt;
&lt;br /&gt;
Clone https://github.com/robotology/himrep, follow the instructions to compile &amp;lt;code&amp;gt;liblinear&amp;lt;/code&amp;gt;, CMake, make install&lt;br /&gt;
&lt;br /&gt;
To use the deep neural network object recognition, based on Caffe, follow the instructions at README_Caffe.md.&lt;br /&gt;
If you get &amp;quot;error: kernel launches from templates are not allowed in system files&amp;quot;, use an older GCC version like 4.6 (see also https://github.com/BVLC/caffe/issues/337). If you get &amp;quot;ImportError: No module named &#039;yaml&#039;&amp;quot;, do &amp;lt;code&amp;gt;sudo apt install python-yaml&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== IOL ==&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;sudo apt install lua5.1 liblua5.1-dev&amp;lt;/code&amp;gt;&lt;br /&gt;
* clone [https://github.com/kmarkus/rFSM rFSM] (no need to compile anything here)&lt;br /&gt;
&lt;br /&gt;
Clone https://github.com/robotology/iol, CMake, make install&lt;br /&gt;
&lt;br /&gt;
== stereo-vision ==&lt;br /&gt;
&lt;br /&gt;
Clone https://github.com/robotology/stereo-vision, CMake with USE_SIFT_GPU=ON, make install&lt;br /&gt;
&lt;br /&gt;
= Best practices =&lt;br /&gt;
&lt;br /&gt;
Below are some tips and tricks taken from:&lt;br /&gt;
&lt;br /&gt;
* http://wiki.icub.org/wiki/Yarp-config&lt;br /&gt;
* http://www.yarp.it/yarp-config.html&lt;br /&gt;
* [https://docs.google.com/document/d/1S9m4DbrV1AJWo_E1r3F8k3ZzmhaTOWRJ9WFjXPFqVos IIT - How to setup and start the iCub from scratch]&lt;br /&gt;
&lt;br /&gt;
== XML files ==&lt;br /&gt;
&lt;br /&gt;
Edit XML files locally, in /home/icub/.local/share/yarp&lt;br /&gt;
&lt;br /&gt;
To install robot-specific XML files, compile icub-main (just &amp;lt;code&amp;gt;make&amp;lt;/code&amp;gt;) then use commands like &amp;lt;code&amp;gt;yarp-config robot --import-all&amp;lt;/code&amp;gt; (installs all files) or &amp;lt;code&amp;gt;yarp-config robot --import iCubLisboa01 affordancesExploration.xml&amp;lt;/code&amp;gt; (installs specific files)&lt;br /&gt;
&lt;br /&gt;
== ini files ==&lt;br /&gt;
&lt;br /&gt;
To install application conf/*.ini files, compile a project (e.g., icub-main, poeticon, iol) then use commands like &amp;lt;code&amp;gt;yarp-config context --import-all&amp;lt;/code&amp;gt; (installs all files) or &amp;lt;code&amp;gt;yarp-config context --import actionsRenderingEngine&amp;lt;/code&amp;gt; (installs the files of specific applications)&lt;br /&gt;
&lt;br /&gt;
== Disabling some robot parts ==&lt;br /&gt;
&lt;br /&gt;
If the robot is not complete (or some parts need to be disabled):&lt;br /&gt;
&lt;br /&gt;
* On the pc104, type &amp;lt;code&amp;gt;yarp-config robot --list&amp;lt;/code&amp;gt; to look for the .ini files from where the configuration values are launched. These are local copies of the robots-configuration repository files.&lt;br /&gt;
* Go to the &amp;lt;code&amp;gt;INSTALLED DATA&amp;lt;/code&amp;gt; directory path and then, within the corresponding robot folder (e.g., iCubGenova04), look for the file yarprobotinterface.ini, which points to a .xml file which contains the configuration paths for all the robot parts (eg. icub_all.xml).&lt;br /&gt;
* If the local config file does not exist, there is only the canonical in the build path, then create a local one using yarp-config --import.&lt;br /&gt;
* Copy the .xml file with a descriptive name (eg icub_no_legs.xml) and on the copied file, comment or remove all lines that refer to .ini files of the part(s) that have to be disabled. &lt;br /&gt;
* Change yarprobotinterface.ini too, so that it will point to the new .xml file where the parts have been commented.&lt;br /&gt;
* On the robot/icub Startup application, modify the way that gravityCompensator and wholeBodyDynamics are launched, so that they don’t look for leg configuration files. For the legs case, add --no_legs to the argument list.&lt;br /&gt;
&lt;br /&gt;
= See also =&lt;br /&gt;
&lt;br /&gt;
* http://wiki.icub.org/wiki/Generic_iCub_machine_installation_instructions&lt;br /&gt;
&lt;br /&gt;
[[Category:Vislab]]&lt;/div&gt;</summary>
		<author><name>Giovanni Saponaro</name></author>
	</entry>
	<entry>
		<id>http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=Pc104&amp;diff=7059</id>
		<title>Pc104</title>
		<link rel="alternate" type="text/html" href="http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=Pc104&amp;diff=7059"/>
		<updated>2018-12-05T16:24:21Z</updated>

		<summary type="html">&lt;p&gt;Giovanni Saponaro: /* Software */ add mjpeg carrier&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;See [[pc104/Archive]] for information about previous setups.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The &#039;&#039;&#039;pc104 CPU board&#039;&#039;&#039; is located into the iCub&#039;s head and it runs a full (read/write) Debian distribution that boots from a USB pen drive.&lt;br /&gt;
&lt;br /&gt;
= Booting and mounting =&lt;br /&gt;
&lt;br /&gt;
During boot, the pc104 does two things: 1) it loads a Debian Live USB Flash Drive with Persistence; 2) it mounts remote NFS shares from the [[iCub laptop]].&lt;br /&gt;
&lt;br /&gt;
== USB Flash Drive ==&lt;br /&gt;
&lt;br /&gt;
With respect to the standard image provided by the official iCub support, our configuration differs in the following files:&lt;br /&gt;
&lt;br /&gt;
 .bashrc_iCub&lt;br /&gt;
 /etc/network/interfaces&lt;br /&gt;
 /etc/hosts&lt;br /&gt;
 /etc/fstab&lt;br /&gt;
 /etc/rc.iCub.d/mounts.list&lt;br /&gt;
 /etc/rc.iCub.d/S90_mount-remote-fs.sh&lt;br /&gt;
 /etc/timezone&lt;br /&gt;
 /etc/resolv.conf&lt;br /&gt;
 /etc/udev/rules.d/70-persistent-net.rules&lt;br /&gt;
 /etc/default/ntpdate&lt;br /&gt;
&lt;br /&gt;
== NFS shares ==&lt;br /&gt;
&lt;br /&gt;
The mounted volume contains the yarp and iCub repositories (both code and binaries) and configuration files. The binaries are located in the respective &#039;&#039;&#039;build-pc104&#039;&#039;&#039; subdirectories.&lt;br /&gt;
&lt;br /&gt;
= Software =&lt;br /&gt;
&lt;br /&gt;
* Dependencies for 640x480@30Hz images with Bayer encoding&lt;br /&gt;
&lt;br /&gt;
 sudo apt install libraw1394-dev libdc1394-22-dev&lt;br /&gt;
&lt;br /&gt;
* yarp CMake configuration&lt;br /&gt;
&lt;br /&gt;
 CMAKE_BUILD_TYPE Release&lt;br /&gt;
 CREATE_DEVICE_LIBRARY_MODULES ON&lt;br /&gt;
 CREATE_LIB_MATH ON&lt;br /&gt;
 ENABLE_yarpmod_portaudio ON&lt;br /&gt;
 ENABLE_yarpmod_serialport ON&lt;br /&gt;
&lt;br /&gt;
 CREATE_OPTIONAL_CARRIERS&lt;br /&gt;
 ENABLE_yarpcar_bayer&lt;br /&gt;
 ENABLE_yarpcar_mjpeg&lt;br /&gt;
&lt;br /&gt;
* icub-main CMake configuration&lt;br /&gt;
&lt;br /&gt;
 CMAKE_BUILD_TYPE Release&lt;br /&gt;
 ENABLE_icubmod_canBusAnalogSensor ON&lt;br /&gt;
 ENABLE_icubmod_canBusSkin ON&lt;br /&gt;
 ENABLE_icubmod_canBusVirtualAnalogSensor ON&lt;br /&gt;
 ENABLE_icubmod_canmotioncontrol ON&lt;br /&gt;
 ENABLE_icubmod_cartesiancontrollerclient ON&lt;br /&gt;
 ENABLE_icubmod_cartesiancontrollerserver ON&lt;br /&gt;
 ENABLE_icubmod_cfw2can ON&lt;br /&gt;
 ENABLE_icubmod_dragonfly2 ON&lt;br /&gt;
 ENABLE_icubmod_gazecontrollerclient ON&lt;br /&gt;
 ENABLE_icubmod_parametricCalibrator ON&lt;br /&gt;
 ENABLE_icubmod_sharedcan ON&lt;br /&gt;
 ENABLE_icubmod_skinWrapper ON&lt;br /&gt;
 ENABLE_icubmod_xsensmtx ON&lt;br /&gt;
&lt;br /&gt;
* yarp configuration&lt;br /&gt;
&lt;br /&gt;
# &amp;lt;code&amp;gt;yarp namespace /icub&amp;lt;/code&amp;gt;&lt;br /&gt;
# &amp;lt;code&amp;gt;yarp conf 10.10.1.53 10000&amp;lt;/code&amp;gt; (yarpserver runs on [[iCub laptop]])&lt;br /&gt;
&lt;br /&gt;
The last command writes the information of the YARP server located on [[iCub laptop]] into the file specified by &amp;lt;code&amp;gt;yarp conf&amp;lt;/code&amp;gt;, which is typically &amp;lt;code&amp;gt;/home/icub/.config/yarp/_icub.conf&amp;lt;/code&amp;gt;. Warning: that command overwrites previous content.&lt;br /&gt;
&lt;br /&gt;
* tuning and optimization&lt;br /&gt;
&lt;br /&gt;
# make sure that &amp;lt;code&amp;gt;CMAKE_BUILD_TYPE=Release&amp;lt;/code&amp;gt; for both yarp and icub-main&lt;br /&gt;
# &amp;lt;code&amp;gt;cat /proc/sys/net/core/rmem_max&amp;lt;/code&amp;gt;  // should return 8388608&lt;br /&gt;
&lt;br /&gt;
= Updating =&lt;br /&gt;
&lt;br /&gt;
In addition to yarp and icub-main, &#039;&#039;&#039;icub-firmware-shared&#039;&#039;&#039; must also be updated (these are scripts, not the firmware itself).&lt;br /&gt;
In order to update the firmware, use the binaries in &#039;&#039;&#039;icub-firmware-build&#039;&#039;&#039; and follow the official iCub manual.&lt;br /&gt;
&lt;br /&gt;
= See also =&lt;br /&gt;
&lt;br /&gt;
* [http://wiki.icub.org/wiki/The_Linux_on_the_pc104 The Linux on the pc104]&lt;br /&gt;
* [http://wiki.icub.org/wiki/ICub_PC104_Linux_Image_-_Detailed_info ICub PC104 Linux Image - Detailed info]&lt;br /&gt;
* [http://wiki.icub.org/wiki/Compilation_on_the_pc104 Compilation on the pc104]&lt;br /&gt;
* [http://wiki.icub.org/wiki/Generic_iCub_machine_installation_instructions Generic iCub machine installation instructions]&lt;br /&gt;
* [http://wiki.icub.org/wiki/CFW002_PC104_linux_driver CFW002 PC104 linux driver]&lt;br /&gt;
&lt;br /&gt;
[[Category:Vislab]]&lt;/div&gt;</summary>
		<author><name>Giovanni Saponaro</name></author>
	</entry>
	<entry>
		<id>http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=Pc104&amp;diff=7058</id>
		<title>Pc104</title>
		<link rel="alternate" type="text/html" href="http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=Pc104&amp;diff=7058"/>
		<updated>2018-12-05T15:27:14Z</updated>

		<summary type="html">&lt;p&gt;Giovanni Saponaro: /* USB Flash Drive */ update paths to reflect iCub LIVE image 7.9&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;See [[pc104/Archive]] for information about previous setups.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The &#039;&#039;&#039;pc104 CPU board&#039;&#039;&#039; is located into the iCub&#039;s head and it runs a full (read/write) Debian distribution that boots from a USB pen drive.&lt;br /&gt;
&lt;br /&gt;
= Booting and mounting =&lt;br /&gt;
&lt;br /&gt;
During boot, the pc104 does two things: 1) it loads a Debian Live USB Flash Drive with Persistence; 2) it mounts remote NFS shares from the [[iCub laptop]].&lt;br /&gt;
&lt;br /&gt;
== USB Flash Drive ==&lt;br /&gt;
&lt;br /&gt;
With respect to the standard image provided by the official iCub support, our configuration differs in the following files:&lt;br /&gt;
&lt;br /&gt;
 .bashrc_iCub&lt;br /&gt;
 /etc/network/interfaces&lt;br /&gt;
 /etc/hosts&lt;br /&gt;
 /etc/fstab&lt;br /&gt;
 /etc/rc.iCub.d/mounts.list&lt;br /&gt;
 /etc/rc.iCub.d/S90_mount-remote-fs.sh&lt;br /&gt;
 /etc/timezone&lt;br /&gt;
 /etc/resolv.conf&lt;br /&gt;
 /etc/udev/rules.d/70-persistent-net.rules&lt;br /&gt;
 /etc/default/ntpdate&lt;br /&gt;
&lt;br /&gt;
== NFS shares ==&lt;br /&gt;
&lt;br /&gt;
The mounted volume contains the yarp and iCub repositories (both code and binaries) and configuration files. The binaries are located in the respective &#039;&#039;&#039;build-pc104&#039;&#039;&#039; subdirectories.&lt;br /&gt;
&lt;br /&gt;
= Software =&lt;br /&gt;
&lt;br /&gt;
* Dependencies for 640x480@30Hz images with Bayer encoding&lt;br /&gt;
&lt;br /&gt;
 sudo apt install libraw1394-dev libdc1394-22-dev&lt;br /&gt;
&lt;br /&gt;
* yarp CMake configuration&lt;br /&gt;
&lt;br /&gt;
 CMAKE_BUILD_TYPE Release&lt;br /&gt;
 CREATE_DEVICE_LIBRARY_MODULES ON&lt;br /&gt;
 CREATE_LIB_MATH ON&lt;br /&gt;
 ENABLE_yarpmod_portaudio ON&lt;br /&gt;
 ENABLE_yarpmod_serialport ON&lt;br /&gt;
&lt;br /&gt;
 CREATE_OPTIONAL_CARRIERS&lt;br /&gt;
 ENABLE_yarpcar_bayer_carrier&lt;br /&gt;
&lt;br /&gt;
* icub-main CMake configuration&lt;br /&gt;
&lt;br /&gt;
 CMAKE_BUILD_TYPE Release&lt;br /&gt;
 ENABLE_icubmod_canBusAnalogSensor ON&lt;br /&gt;
 ENABLE_icubmod_canBusSkin ON&lt;br /&gt;
 ENABLE_icubmod_canBusVirtualAnalogSensor ON&lt;br /&gt;
 ENABLE_icubmod_canmotioncontrol ON&lt;br /&gt;
 ENABLE_icubmod_cartesiancontrollerclient ON&lt;br /&gt;
 ENABLE_icubmod_cartesiancontrollerserver ON&lt;br /&gt;
 ENABLE_icubmod_cfw2can ON&lt;br /&gt;
 ENABLE_icubmod_dragonfly2 ON&lt;br /&gt;
 ENABLE_icubmod_gazecontrollerclient ON&lt;br /&gt;
 ENABLE_icubmod_parametricCalibrator ON&lt;br /&gt;
 ENABLE_icubmod_sharedcan ON&lt;br /&gt;
 ENABLE_icubmod_skinWrapper ON&lt;br /&gt;
 ENABLE_icubmod_xsensmtx ON&lt;br /&gt;
&lt;br /&gt;
* yarp configuration&lt;br /&gt;
&lt;br /&gt;
# &amp;lt;code&amp;gt;yarp namespace /icub&amp;lt;/code&amp;gt;&lt;br /&gt;
# &amp;lt;code&amp;gt;yarp conf 10.10.1.53 10000&amp;lt;/code&amp;gt; (yarpserver runs on [[iCub laptop]])&lt;br /&gt;
&lt;br /&gt;
The last command writes the information of the YARP server located on [[iCub laptop]] into the file specified by &amp;lt;code&amp;gt;yarp conf&amp;lt;/code&amp;gt;, which is typically &amp;lt;code&amp;gt;/home/icub/.config/yarp/_icub.conf&amp;lt;/code&amp;gt;. Warning: that command overwrites previous content.&lt;br /&gt;
&lt;br /&gt;
* tuning and optimization&lt;br /&gt;
&lt;br /&gt;
# make sure that &amp;lt;code&amp;gt;CMAKE_BUILD_TYPE=Release&amp;lt;/code&amp;gt; for both yarp and icub-main&lt;br /&gt;
# &amp;lt;code&amp;gt;cat /proc/sys/net/core/rmem_max&amp;lt;/code&amp;gt;  // should return 8388608&lt;br /&gt;
&lt;br /&gt;
= Updating =&lt;br /&gt;
&lt;br /&gt;
In addition to yarp and icub-main, &#039;&#039;&#039;icub-firmware-shared&#039;&#039;&#039; must also be updated (these are scripts, not the firmware itself).&lt;br /&gt;
In order to update the firmware, use the binaries in &#039;&#039;&#039;icub-firmware-build&#039;&#039;&#039; and follow the official iCub manual.&lt;br /&gt;
&lt;br /&gt;
= See also =&lt;br /&gt;
&lt;br /&gt;
* [http://wiki.icub.org/wiki/The_Linux_on_the_pc104 The Linux on the pc104]&lt;br /&gt;
* [http://wiki.icub.org/wiki/ICub_PC104_Linux_Image_-_Detailed_info ICub PC104 Linux Image - Detailed info]&lt;br /&gt;
* [http://wiki.icub.org/wiki/Compilation_on_the_pc104 Compilation on the pc104]&lt;br /&gt;
* [http://wiki.icub.org/wiki/Generic_iCub_machine_installation_instructions Generic iCub machine installation instructions]&lt;br /&gt;
* [http://wiki.icub.org/wiki/CFW002_PC104_linux_driver CFW002 PC104 linux driver]&lt;br /&gt;
&lt;br /&gt;
[[Category:Vislab]]&lt;/div&gt;</summary>
		<author><name>Giovanni Saponaro</name></author>
	</entry>
	<entry>
		<id>http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=Pc104&amp;diff=7057</id>
		<title>Pc104</title>
		<link rel="alternate" type="text/html" href="http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=Pc104&amp;diff=7057"/>
		<updated>2018-12-05T15:26:42Z</updated>

		<summary type="html">&lt;p&gt;Giovanni Saponaro: apt-get -&amp;gt; apt&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;See [[pc104/Archive]] for information about previous setups.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The &#039;&#039;&#039;pc104 CPU board&#039;&#039;&#039; is located into the iCub&#039;s head and it runs a full (read/write) Debian distribution that boots from a USB pen drive.&lt;br /&gt;
&lt;br /&gt;
= Booting and mounting =&lt;br /&gt;
&lt;br /&gt;
During boot, the pc104 does two things: 1) it loads a Debian Live USB Flash Drive with Persistence; 2) it mounts remote NFS shares from the [[iCub laptop]].&lt;br /&gt;
&lt;br /&gt;
== USB Flash Drive ==&lt;br /&gt;
&lt;br /&gt;
With respect to the standard image provided by the official iCub support, our configuration differs in the following files:&lt;br /&gt;
&lt;br /&gt;
 .bashrc_iCub&lt;br /&gt;
 /etc/network/interfaces&lt;br /&gt;
 /etc/hosts&lt;br /&gt;
 /etc/fstab&lt;br /&gt;
 /etc/rciCub.d/mounts.list&lt;br /&gt;
 /etc/rciCub.d/S90_mount-remote-fs.sh&lt;br /&gt;
 /etc/timezone&lt;br /&gt;
 /etc/resolv.conf&lt;br /&gt;
 /etc/udev/rules.d/70-persistent-net.rules&lt;br /&gt;
 /etc/default/ntpdate&lt;br /&gt;
&lt;br /&gt;
== NFS shares ==&lt;br /&gt;
&lt;br /&gt;
The mounted volume contains the yarp and iCub repositories (both code and binaries) and configuration files. The binaries are located in the respective &#039;&#039;&#039;build-pc104&#039;&#039;&#039; subdirectories.&lt;br /&gt;
&lt;br /&gt;
= Software =&lt;br /&gt;
&lt;br /&gt;
* Dependencies for 640x480@30Hz images with Bayer encoding&lt;br /&gt;
&lt;br /&gt;
 sudo apt install libraw1394-dev libdc1394-22-dev&lt;br /&gt;
&lt;br /&gt;
* yarp CMake configuration&lt;br /&gt;
&lt;br /&gt;
 CMAKE_BUILD_TYPE Release&lt;br /&gt;
 CREATE_DEVICE_LIBRARY_MODULES ON&lt;br /&gt;
 CREATE_LIB_MATH ON&lt;br /&gt;
 ENABLE_yarpmod_portaudio ON&lt;br /&gt;
 ENABLE_yarpmod_serialport ON&lt;br /&gt;
&lt;br /&gt;
 CREATE_OPTIONAL_CARRIERS&lt;br /&gt;
 ENABLE_yarpcar_bayer_carrier&lt;br /&gt;
&lt;br /&gt;
* icub-main CMake configuration&lt;br /&gt;
&lt;br /&gt;
 CMAKE_BUILD_TYPE Release&lt;br /&gt;
 ENABLE_icubmod_canBusAnalogSensor ON&lt;br /&gt;
 ENABLE_icubmod_canBusSkin ON&lt;br /&gt;
 ENABLE_icubmod_canBusVirtualAnalogSensor ON&lt;br /&gt;
 ENABLE_icubmod_canmotioncontrol ON&lt;br /&gt;
 ENABLE_icubmod_cartesiancontrollerclient ON&lt;br /&gt;
 ENABLE_icubmod_cartesiancontrollerserver ON&lt;br /&gt;
 ENABLE_icubmod_cfw2can ON&lt;br /&gt;
 ENABLE_icubmod_dragonfly2 ON&lt;br /&gt;
 ENABLE_icubmod_gazecontrollerclient ON&lt;br /&gt;
 ENABLE_icubmod_parametricCalibrator ON&lt;br /&gt;
 ENABLE_icubmod_sharedcan ON&lt;br /&gt;
 ENABLE_icubmod_skinWrapper ON&lt;br /&gt;
 ENABLE_icubmod_xsensmtx ON&lt;br /&gt;
&lt;br /&gt;
* yarp configuration&lt;br /&gt;
&lt;br /&gt;
# &amp;lt;code&amp;gt;yarp namespace /icub&amp;lt;/code&amp;gt;&lt;br /&gt;
# &amp;lt;code&amp;gt;yarp conf 10.10.1.53 10000&amp;lt;/code&amp;gt; (yarpserver runs on [[iCub laptop]])&lt;br /&gt;
&lt;br /&gt;
The last command writes the information of the YARP server located on [[iCub laptop]] into the file specified by &amp;lt;code&amp;gt;yarp conf&amp;lt;/code&amp;gt;, which is typically &amp;lt;code&amp;gt;/home/icub/.config/yarp/_icub.conf&amp;lt;/code&amp;gt;. Warning: that command overwrites previous content.&lt;br /&gt;
&lt;br /&gt;
* tuning and optimization&lt;br /&gt;
&lt;br /&gt;
# make sure that &amp;lt;code&amp;gt;CMAKE_BUILD_TYPE=Release&amp;lt;/code&amp;gt; for both yarp and icub-main&lt;br /&gt;
# &amp;lt;code&amp;gt;cat /proc/sys/net/core/rmem_max&amp;lt;/code&amp;gt;  // should return 8388608&lt;br /&gt;
&lt;br /&gt;
= Updating =&lt;br /&gt;
&lt;br /&gt;
In addition to yarp and icub-main, &#039;&#039;&#039;icub-firmware-shared&#039;&#039;&#039; must also be updated (these are scripts, not the firmware itself).&lt;br /&gt;
In order to update the firmware, use the binaries in &#039;&#039;&#039;icub-firmware-build&#039;&#039;&#039; and follow the official iCub manual.&lt;br /&gt;
&lt;br /&gt;
= See also =&lt;br /&gt;
&lt;br /&gt;
* [http://wiki.icub.org/wiki/The_Linux_on_the_pc104 The Linux on the pc104]&lt;br /&gt;
* [http://wiki.icub.org/wiki/ICub_PC104_Linux_Image_-_Detailed_info ICub PC104 Linux Image - Detailed info]&lt;br /&gt;
* [http://wiki.icub.org/wiki/Compilation_on_the_pc104 Compilation on the pc104]&lt;br /&gt;
* [http://wiki.icub.org/wiki/Generic_iCub_machine_installation_instructions Generic iCub machine installation instructions]&lt;br /&gt;
* [http://wiki.icub.org/wiki/CFW002_PC104_linux_driver CFW002 PC104 linux driver]&lt;br /&gt;
&lt;br /&gt;
[[Category:Vislab]]&lt;/div&gt;</summary>
		<author><name>Giovanni Saponaro</name></author>
	</entry>
	<entry>
		<id>http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=Pc104&amp;diff=7056</id>
		<title>Pc104</title>
		<link rel="alternate" type="text/html" href="http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=Pc104&amp;diff=7056"/>
		<updated>2018-12-05T15:06:31Z</updated>

		<summary type="html">&lt;p&gt;Giovanni Saponaro: /* Software */ simplify yarp installation, yarpmod serial does not exist anymore&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;See [[pc104/Archive]] for information about previous setups.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The &#039;&#039;&#039;pc104 CPU board&#039;&#039;&#039; is located into the iCub&#039;s head and it runs a full (read/write) Debian distribution that boots from a USB pen drive.&lt;br /&gt;
&lt;br /&gt;
= Booting and mounting =&lt;br /&gt;
&lt;br /&gt;
During boot, the pc104 does two things: 1) it loads a Debian Live USB Flash Drive with Persistence; 2) it mounts remote NFS shares from the [[iCub laptop]].&lt;br /&gt;
&lt;br /&gt;
== USB Flash Drive ==&lt;br /&gt;
&lt;br /&gt;
With respect to the standard image provided by the official iCub support, our configuration differs in the following files:&lt;br /&gt;
&lt;br /&gt;
 .bashrc_iCub&lt;br /&gt;
 /etc/network/interfaces&lt;br /&gt;
 /etc/hosts&lt;br /&gt;
 /etc/fstab&lt;br /&gt;
 /etc/rciCub.d/mounts.list&lt;br /&gt;
 /etc/rciCub.d/S90_mount-remote-fs.sh&lt;br /&gt;
 /etc/timezone&lt;br /&gt;
 /etc/resolv.conf&lt;br /&gt;
 /etc/udev/rules.d/70-persistent-net.rules&lt;br /&gt;
 /etc/default/ntpdate&lt;br /&gt;
&lt;br /&gt;
== NFS shares ==&lt;br /&gt;
&lt;br /&gt;
The mounted volume contains the yarp and iCub repositories (both code and binaries) and configuration files. The binaries are located in the respective &#039;&#039;&#039;build-pc104&#039;&#039;&#039; subdirectories.&lt;br /&gt;
&lt;br /&gt;
= Software =&lt;br /&gt;
&lt;br /&gt;
* Dependencies for 640x480@30Hz images with Bayer encoding&lt;br /&gt;
&lt;br /&gt;
 sudo apt-get install libraw1394-dev libdc1394-22-dev&lt;br /&gt;
&lt;br /&gt;
* yarp CMake configuration&lt;br /&gt;
&lt;br /&gt;
 CMAKE_BUILD_TYPE Release&lt;br /&gt;
 CREATE_DEVICE_LIBRARY_MODULES ON&lt;br /&gt;
 CREATE_LIB_MATH ON&lt;br /&gt;
 ENABLE_yarpmod_portaudio ON&lt;br /&gt;
 ENABLE_yarpmod_serialport ON&lt;br /&gt;
&lt;br /&gt;
 CREATE_OPTIONAL_CARRIERS&lt;br /&gt;
 ENABLE_yarpcar_bayer_carrier&lt;br /&gt;
&lt;br /&gt;
* icub-main CMake configuration&lt;br /&gt;
&lt;br /&gt;
 CMAKE_BUILD_TYPE Release&lt;br /&gt;
 ENABLE_icubmod_canBusAnalogSensor ON&lt;br /&gt;
 ENABLE_icubmod_canBusSkin ON&lt;br /&gt;
 ENABLE_icubmod_canBusVirtualAnalogSensor ON&lt;br /&gt;
 ENABLE_icubmod_canmotioncontrol ON&lt;br /&gt;
 ENABLE_icubmod_cartesiancontrollerclient ON&lt;br /&gt;
 ENABLE_icubmod_cartesiancontrollerserver ON&lt;br /&gt;
 ENABLE_icubmod_cfw2can ON&lt;br /&gt;
 ENABLE_icubmod_dragonfly2 ON&lt;br /&gt;
 ENABLE_icubmod_gazecontrollerclient ON&lt;br /&gt;
 ENABLE_icubmod_parametricCalibrator ON&lt;br /&gt;
 ENABLE_icubmod_sharedcan ON&lt;br /&gt;
 ENABLE_icubmod_skinWrapper ON&lt;br /&gt;
 ENABLE_icubmod_xsensmtx ON&lt;br /&gt;
&lt;br /&gt;
* yarp configuration&lt;br /&gt;
&lt;br /&gt;
# &amp;lt;code&amp;gt;yarp namespace /icub&amp;lt;/code&amp;gt;&lt;br /&gt;
# &amp;lt;code&amp;gt;yarp conf 10.10.1.53 10000&amp;lt;/code&amp;gt; (yarpserver runs on [[iCub laptop]])&lt;br /&gt;
&lt;br /&gt;
The last command writes the information of the YARP server located on [[iCub laptop]] into the file specified by &amp;lt;code&amp;gt;yarp conf&amp;lt;/code&amp;gt;, which is typically &amp;lt;code&amp;gt;/home/icub/.config/yarp/_icub.conf&amp;lt;/code&amp;gt;. Warning: that command overwrites previous content.&lt;br /&gt;
&lt;br /&gt;
* tuning and optimization&lt;br /&gt;
&lt;br /&gt;
# make sure that &amp;lt;code&amp;gt;CMAKE_BUILD_TYPE=Release&amp;lt;/code&amp;gt; for both yarp and icub-main&lt;br /&gt;
# &amp;lt;code&amp;gt;cat /proc/sys/net/core/rmem_max&amp;lt;/code&amp;gt;  // should return 8388608&lt;br /&gt;
&lt;br /&gt;
= Updating =&lt;br /&gt;
&lt;br /&gt;
In addition to yarp and icub-main, &#039;&#039;&#039;icub-firmware-shared&#039;&#039;&#039; must also be updated (these are scripts, not the firmware itself).&lt;br /&gt;
In order to update the firmware, use the binaries in &#039;&#039;&#039;icub-firmware-build&#039;&#039;&#039; and follow the official iCub manual.&lt;br /&gt;
&lt;br /&gt;
= See also =&lt;br /&gt;
&lt;br /&gt;
* [http://wiki.icub.org/wiki/The_Linux_on_the_pc104 The Linux on the pc104]&lt;br /&gt;
* [http://wiki.icub.org/wiki/ICub_PC104_Linux_Image_-_Detailed_info ICub PC104 Linux Image - Detailed info]&lt;br /&gt;
* [http://wiki.icub.org/wiki/Compilation_on_the_pc104 Compilation on the pc104]&lt;br /&gt;
* [http://wiki.icub.org/wiki/Generic_iCub_machine_installation_instructions Generic iCub machine installation instructions]&lt;br /&gt;
* [http://wiki.icub.org/wiki/CFW002_PC104_linux_driver CFW002 PC104 linux driver]&lt;br /&gt;
&lt;br /&gt;
[[Category:Vislab]]&lt;/div&gt;</summary>
		<author><name>Giovanni Saponaro</name></author>
	</entry>
	<entry>
		<id>http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=ICub_machines_configuration&amp;diff=7055</id>
		<title>ICub machines configuration</title>
		<link rel="alternate" type="text/html" href="http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=ICub_machines_configuration&amp;diff=7055"/>
		<updated>2018-12-05T15:05:17Z</updated>

		<summary type="html">&lt;p&gt;Giovanni Saponaro: /* Manual compilation */ OpenCV with CUDA support: disable cudacodec&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;In this page we describe the setup of the computers connected to the iCub robot, which all share a common network disk and configuration.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;See [[iCub machines configuration/Archive]] for obsolete information.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
= Operating system installation =&lt;br /&gt;
&lt;br /&gt;
Ubuntu LTS, default settings and partitioning. The first user to be created must be called &#039;&#039;&#039;icub&#039;&#039;&#039;, to make the distributed setup possible: for NFS network mount, this user has to have uid 1000 and guid 1000.&lt;br /&gt;
&lt;br /&gt;
In order to add a user:&lt;br /&gt;
* either use the Ubuntu graphical frontends&lt;br /&gt;
* or use a Terminal:&lt;br /&gt;
 sudo adduser icub&lt;br /&gt;
 sudo usermod -aG sudo icub  # gives sudo privileges&lt;br /&gt;
&lt;br /&gt;
= Other operations =&lt;br /&gt;
&lt;br /&gt;
== Network configuration ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;See also: [[VisLab network]], [[ISR computing resources]]&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Configure a static IP as explained in one of the following subsections, depending if the machine is a desktop or a server one.&lt;br /&gt;
&lt;br /&gt;
Also, it is recommended to set up the &amp;lt;code&amp;gt;/etc/hosts&amp;lt;/code&amp;gt; file as follows:&lt;br /&gt;
&lt;br /&gt;
 10.10.1.41 icubbrain1&lt;br /&gt;
 10.10.1.42 icubbrain2&lt;br /&gt;
 10.10.1.50 pc104&lt;br /&gt;
 10.10.1.51 icub-cuda&lt;br /&gt;
 10.10.1.53 icub-laptop&lt;br /&gt;
&lt;br /&gt;
You should be able to do &amp;lt;code&amp;gt;ping icubbrain1&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Desktop machines ===&lt;br /&gt;
&lt;br /&gt;
With the graphical Network Manager (https://help.ubuntu.com/16.04/ubuntu-help/net-fixed-ip-address.html), configure the connection &amp;quot;Auto eth0&amp;quot; IPv4 as follows:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|+ &lt;br /&gt;
! Address !! Netmask !! Gateway !! DNS Servers !! notes&lt;br /&gt;
|-&lt;br /&gt;
|10.10.1.x || 255.255.255.0 || 10.10.1.254 || 10.0.0.1, 10.0.0.2 || visnet (iCub machines)&lt;br /&gt;
|-&lt;br /&gt;
|10.0.x.y || 255.255.0.0 || 10.0.0.254 || 10.0.0.1, 10.0.0.2 || isrnet (rest of ISR)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Servers ===&lt;br /&gt;
&lt;br /&gt;
Edit &amp;lt;code&amp;gt;/etc/network/interfaces&amp;lt;/code&amp;gt; like this:&lt;br /&gt;
 auto lo&lt;br /&gt;
 iface lo inet loopback&lt;br /&gt;
   &lt;br /&gt;
 auto eth0&lt;br /&gt;
 iface eth0 inet static&lt;br /&gt;
 address 10.x.y.z # put your IP here, see above table&lt;br /&gt;
 netmask 255.255.x.y # see above table&lt;br /&gt;
 network 10.10.1.0&lt;br /&gt;
 broadcast 10.10.1.255&lt;br /&gt;
 gateway 10.10.1.254&lt;br /&gt;
 dns-nameservers 10.0.0.1 10.0.0.2&lt;br /&gt;
&lt;br /&gt;
In some versions of Ubuntu, to configure DNS you also need to edit &amp;lt;code&amp;gt;/etc/resolvconf/resolv.conf.d/head&amp;lt;/code&amp;gt; like this:&lt;br /&gt;
 nameserver 10.0.0.1&lt;br /&gt;
 nameserver 10.0.0.2&lt;br /&gt;
&lt;br /&gt;
then run:&lt;br /&gt;
 sudo resolvconf -u&lt;br /&gt;
&lt;br /&gt;
== Dependencies ==&lt;br /&gt;
&lt;br /&gt;
Installing the &#039;&#039;&#039;icub-common&#039;&#039;&#039; metapackage is sufficient. It is a bundle of the following packages (for more details see [http://wiki.icub.org/wiki/Linux:Installation_from_sources here] and [http://wiki.icub.org/wiki/Linux:_dependencies here]):&lt;br /&gt;
 sudo apt install build-essential libace-dev libedit-dev libeigen3-dev libncurses5-dev gfortran libtinyxml-dev libgraphviz-dev&lt;br /&gt;
 sudo apt install git-core ssh gcc g++ make cmake-curses-gui freeglut3-dev libxmu-dev libswscale-dev libavformat-dev&lt;br /&gt;
&lt;br /&gt;
Qt5 graphics dependencies in Ubuntu 16.04 Xenial:&lt;br /&gt;
&lt;br /&gt;
 sudo apt install qttools5-dev qtdeclarative5-dev qtdeclarative5-controls-plugin qtdeclarative5-dialogs-plugin qtmultimedia5-dev qtdeclarative5-qtmultimedia-plugin qtquick1-5-dev libqt5opengl5-dev&lt;br /&gt;
&lt;br /&gt;
Qt5 graphics dependencies in Debian Stretch:&lt;br /&gt;
 sudo apt install qml-module-qt-labs-folderlistmodel qml-module-qt-labs-settings&lt;br /&gt;
&lt;br /&gt;
iCub Simulator dependencies: SDL and ODE.&lt;br /&gt;
&lt;br /&gt;
GTK graphical programs are obsolete and replaced by their Qt equivalents. If you still want the old GTK programs, install &amp;lt;code&amp;gt;libgtkmm-2.4-dev&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Environment variables ==&lt;br /&gt;
&lt;br /&gt;
* Create a file called ~/.bashrc_iCub like this one. Usually you do not need all of the following variables and settings, just a subset.&lt;br /&gt;
&lt;br /&gt;
  export ROBOT_CODE=/usr/local/src/robot&lt;br /&gt;
&lt;br /&gt;
  export YARP_ROOT=$ROBOT_CODE/yarp&lt;br /&gt;
  export YARP_DIR=$YARP_ROOT/build&lt;br /&gt;
  export ICUB_ROOT=$ROBOT_CODE/icub-main&lt;br /&gt;
  export ICUB_DIR=$ICUB_ROOT/build&lt;br /&gt;
&lt;br /&gt;
  export ICUBcontrib_DIR=$ROBOT_CODE/icub-contrib-common/build&lt;br /&gt;
  export YARP_DATA_DIRS=$YARP_DIR/share/yarp:$ICUB_DIR/share/iCub:$ICUBcontrib_DIR/share/ICUBcontrib:$ROBOT_CODE/speech/svox-speech/build/share/speech&lt;br /&gt;
  export PATH=$PATH:$YARP_DIR/bin:$ICUB_DIR/bin:$ICUBcontrib_DIR/bin&lt;br /&gt;
&lt;br /&gt;
  export ODE_DIR=$ROBOT_CODE/ode-0.13/build&lt;br /&gt;
&lt;br /&gt;
  # OpenCV: select one of the following&lt;br /&gt;
  #export OpenCV_DIR=$ROBOT_CODE/opencv2/build&lt;br /&gt;
  #export OpenCV_DIR=$ROBOT_CODE/opencv2/build-cuda&lt;br /&gt;
  export OpenCV_DIR=$ROBOT_CODE/opencv3/build&lt;br /&gt;
  #export OpenCV_DIR=$ROBOT_CODE/opencv3/build-cuda&lt;br /&gt;
&lt;br /&gt;
  # To enable tab completion on yarp port names&lt;br /&gt;
  if [ -f $YARP_ROOT/scripts/yarp_completion ]; then&lt;br /&gt;
    source $YARP_ROOT/scripts/yarp_completion&lt;br /&gt;
  fi&lt;br /&gt;
&lt;br /&gt;
  # Set the name of your robot here.&lt;br /&gt;
  export YARP_ROBOT_NAME=iCubLisboa01&lt;br /&gt;
&lt;br /&gt;
  # Set-up optimizations&lt;br /&gt;
  export CMAKE_BUILD_TYPE=Release&lt;br /&gt;
&lt;br /&gt;
  # DebugStream customization&lt;br /&gt;
  export YARP_VERBOSE_OUTPUT=0&lt;br /&gt;
  export YARP_COLORED_OUTPUT=1&lt;br /&gt;
  export YARP_TRACE_ENABLE=0&lt;br /&gt;
  export YARP_FORWARD_LOG_ENABLE=0&lt;br /&gt;
&lt;br /&gt;
  # Lua&lt;br /&gt;
  ### DO NOT REMOVE &#039;;;;&#039; ###&lt;br /&gt;
  export LUA_PATH=&amp;quot;;;;$ROBOT_CODE/rFSM/?.lua;$ICUBcontrib_DIR/share/ICUBcontrib/contexts/interactiveObjectsLearning/LUA/?.lua&amp;quot;&lt;br /&gt;
  export LUA_CPATH=&amp;quot;;;;$YARP_ROOT/bindings/build-lua/?.so&amp;quot;&lt;br /&gt;
  export PATH=$PATH:$ROBOT_CODE/rFSM/tools:$ICUBcontrib_DIR/share/ICUBcontrib/contexts/interactiveObjectsLearning/LUA&lt;br /&gt;
  export PATH=$PATH:$YARP_ROOT/bindings/build-lua&lt;br /&gt;
  export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$YARP_ROOT/bindings/build-lua&lt;br /&gt;
&lt;br /&gt;
* Then, before the following line of /etc/bash.bashrc&lt;br /&gt;
 [ -z &amp;quot;$PS1&amp;quot; ] &amp;amp;&amp;amp; return&lt;br /&gt;
add this:&lt;br /&gt;
 # per-user environment variables (non-interactive and interactive mode)&lt;br /&gt;
 source $HOME/.bashrc_iCub&lt;br /&gt;
&lt;br /&gt;
The reason why we use the above custom file (as opposed to the standard ~/.bashrc) is that we want to enforce the variables both during interactive and non-interactive sessions, such as commands launched via &amp;lt;code&amp;gt;yarprun&amp;lt;/code&amp;gt; from another machine.&lt;br /&gt;
&lt;br /&gt;
See also https://git.robotology.eu/mbrunettini/icub-environment for the variables and scripts employed at IIT.&lt;br /&gt;
&lt;br /&gt;
= Additional software =&lt;br /&gt;
&lt;br /&gt;
== OpenCV ==&lt;br /&gt;
&lt;br /&gt;
=== Ubuntu packages ===&lt;br /&gt;
&lt;br /&gt;
* this is the easiest way to install OpenCV, however the Ubuntu packages might be too old and/or missing some specific features (in that case proceed with a manual installation, see below)&lt;br /&gt;
&lt;br /&gt;
  sudo apt install libcv-dev libhighgui-dev libcvaux-dev libopencv-gpu-dev&lt;br /&gt;
&lt;br /&gt;
=== Manual compilation ===&lt;br /&gt;
&lt;br /&gt;
* on most machines: download OpenCV, create a build directory, CMake, set WITH_CUDA=OFF, compile, set OpenCV_DIR to the path of OpenCV-x.y.z/build, for example:&lt;br /&gt;
 export OpenCV_DIR=$code/OpenCV-x.y.z/build&lt;br /&gt;
&lt;br /&gt;
* on CUDA machines, in order to compile CUDA-enabled modules: create a build-cuda directory, CMake, set WITH_CUDA=ON, compile, set OpenCV_DIR to the path of OpenCV-x.y.z/build-cuda. You may need to disable &amp;lt;code&amp;gt;cudacodec&amp;lt;/code&amp;gt;, see also https://github.com/opencv/opencv_contrib/issues/1786&lt;br /&gt;
&lt;br /&gt;
== YARP and iCub ==&lt;br /&gt;
&lt;br /&gt;
* In general, when compiling this software, do &#039;&#039;&#039;not&#039;&#039;&#039; use &amp;lt;code&amp;gt;sudo make install&amp;lt;/code&amp;gt; but simply &amp;lt;code&amp;gt;make&amp;lt;/code&amp;gt; (and configure the PATH variable in such a way that it finds the binaries from the build directory).&lt;br /&gt;
&lt;br /&gt;
* If you work with the robot, use the volume shares exported from the NFS server.&lt;br /&gt;
&lt;br /&gt;
* In other cases, follow the instructions on the [[iCub software]] article. &lt;br /&gt;
&lt;br /&gt;
* yarp CMake configuration&lt;br /&gt;
 CMAKE_BUILD_TYPE Release&lt;br /&gt;
 CREATE_GUIS&lt;br /&gt;
 CREATE_LIB_MATH&lt;br /&gt;
&lt;br /&gt;
 // to enable 640x480@30Hz images with Bayer encoding&lt;br /&gt;
 // install libraw1394-dev libdc1394-22-dev then enable&lt;br /&gt;
 CREATE_OPTIONAL_CARRIERS&lt;br /&gt;
 ENABLE_yarpcar_bayer_carrier&lt;br /&gt;
&lt;br /&gt;
* icub-main CMake configuration&lt;br /&gt;
 CMAKE_BUILD_TYPE Release&lt;br /&gt;
 // on servers, do http://wiki.icub.org/wiki/Installing_IPOPT then enable&lt;br /&gt;
 ENABLE_icubmod_cartesiancontrollerclient ON&lt;br /&gt;
 ENABLE_icubmod_cartesiancontrollerserver ON&lt;br /&gt;
 ENABLE_icubmod_gazecontrollerclient ON&lt;br /&gt;
&lt;br /&gt;
* final configuration&lt;br /&gt;
# &amp;lt;code&amp;gt;yarp namespace /icub&amp;lt;/code&amp;gt;&lt;br /&gt;
# &amp;lt;code&amp;gt;yarp conf 10.10.1.53 10000&amp;lt;/code&amp;gt; (yarpserver runs on [[iCub laptop]])&lt;br /&gt;
&lt;br /&gt;
* special machines such as [[pc104]] need different flags&lt;br /&gt;
&lt;br /&gt;
== CUDA ==&lt;br /&gt;
&lt;br /&gt;
=== Prerequisites ===&lt;br /&gt;
&lt;br /&gt;
 sudo apt install freeglut3-dev libdevil-dev libglew-dev&lt;br /&gt;
 sudo apt purge libcudart*  // because we will manually install it&lt;br /&gt;
&lt;br /&gt;
Troubleshooting: http://askubuntu.com/questions/410604/installing-nvidia-drivers-with-pkg1-run-ends-with-no-version-h-found&lt;br /&gt;
&lt;br /&gt;
=== CUDA Toolkit, SDK and Examples ===&lt;br /&gt;
&lt;br /&gt;
* stop X servers: &amp;lt;code&amp;gt;sudo service lightdm stop&amp;lt;/code&amp;gt; (or &amp;lt;code&amp;gt;gdm stop&amp;lt;/code&amp;gt; depending on configuration)&lt;br /&gt;
* download and install NVIDIA CUDA Toolkit from http://docs.nvidia.com/cuda (not from Ubuntu packages)&lt;br /&gt;
* if you obtain the error &amp;quot;Toolkit:  Installation Failed. Using unsupported Compiler.&amp;quot;, use the override option, e.g., &amp;lt;code&amp;gt;./cuda_6.0.37_linux_64.run --override&amp;lt;/code&amp;gt;&lt;br /&gt;
* if you obtain the error &amp;quot;The driver installation is unable to locate the kernel source. Please make sure that the kernel source packages are installed and set up correctly&amp;quot;:&lt;br /&gt;
** read the CUDA log in /tmp and verify that the graphics card is currently supported -- if not, you might need to install a legacy NVIDIA driver. For example, the Quadro FX 580 card needs NVIDIA legacy drivers 340.xx: install them and then answer &#039;&#039;&#039;no&#039;&#039;&#039; when CUDA Toolkit installer asks &amp;quot;Install NVIDIA Accelerated Graphics Driver for Linux-x86_64 346.46?&amp;quot;&lt;br /&gt;
** &amp;lt;code&amp;gt;sudo apt install linux-generic linux-headers-$(uname -r) linux-headers-generic-lts-trusty&amp;lt;/code&amp;gt; (or other Ubuntu version codename)&lt;br /&gt;
** call the installer specifying the kernel source path, e.g., &amp;lt;code&amp;gt;./cuda_7.0.28_linux.run --kernel-source-path=/usr/src/linux-headers-3.13.0-52-generic/&amp;lt;/code&amp;gt;&lt;br /&gt;
* output of successful installation:&lt;br /&gt;
 Driver:   Installed&lt;br /&gt;
 Toolkit:  Installed in /usr/local/cuda-7.0&lt;br /&gt;
 Samples:  Not Selected&lt;br /&gt;
 Please make sure that&lt;br /&gt;
 -   PATH includes /usr/local/cuda-7.0/bin&lt;br /&gt;
 -   LD_LIBRARY_PATH includes /usr/local/cuda-7.0/lib64, or, add /usr/local/cuda-7.0/lib64 to /etc/ld.so.conf and run ldconfig as root&lt;br /&gt;
 To uninstall the CUDA Toolkit, run the uninstall script in /usr/local/cuda-7.0/bin&lt;br /&gt;
 To uninstall the NVIDIA Driver, run nvidia-uninstall&lt;br /&gt;
&lt;br /&gt;
* troubleshooting:&lt;br /&gt;
** http://askubuntu.com/questions/451672/installing-and-testing-cuda-in-ubuntu-14-04&lt;br /&gt;
** http://troylee2008.blogspot.pt/2012/05/linking-error-while-compiling-cuda-sdk.html&lt;br /&gt;
** https://devtalk.nvidia.com/default/topic/617414/-solved-cuda-driver-version-is-insufficient-for-cuda-runtime-version-fedora-18-rpmfusion-driver/&lt;br /&gt;
&lt;br /&gt;
=== SiftGPU ===&lt;br /&gt;
&lt;br /&gt;
* download it from http://cs.unc.edu/~ccwu/siftgpu/&lt;br /&gt;
* unzip it - typically in your home directory, not in the NFS shared folder&lt;br /&gt;
* compile with &amp;lt;code&amp;gt;make&amp;lt;/code&amp;gt;&lt;br /&gt;
* if you obtain &amp;quot;unspecified launch failure&amp;quot; and 0 sift features/matches, check that the X server is running: &amp;lt;code&amp;gt;sudo service lightdm start&amp;lt;/code&amp;gt;&lt;br /&gt;
* if you obtain the error &amp;quot;/usr/local/cuda/bin/nvcc: Command not found&amp;quot;, this can help: &amp;lt;code&amp;gt;sudo ln -s /usr/lib/nvidia-cuda-toolkit /usr/local/cuda&amp;lt;/code&amp;gt;. See also http://askubuntu.com/questions/231503/nvcc-compiler-setup-ubuntu-12-04&lt;br /&gt;
* run the test program &amp;lt;code&amp;gt;SimpleSIFT&amp;lt;/code&amp;gt; - it should work via ssh, as well as in a local session&lt;br /&gt;
* example of successful execution:&lt;br /&gt;
 $ ./SimpleSIFT &lt;br /&gt;
 Unable to create OpenGL Context!&lt;br /&gt;
 For nVidia cards, you can try change to CUDA mode in this case&lt;br /&gt;
 NOTE: changing maximum texture dimension to 32768&lt;br /&gt;
 [SiftGPU Language]:	CUDA&lt;br /&gt;
 Image size :	800x600&lt;br /&gt;
 Image loaded :	../data/800-1.jpg&lt;br /&gt;
 #Features:	3347&lt;br /&gt;
 #Features MO:	3910&lt;br /&gt;
 [RUN SIFT]:	0.339&lt;br /&gt;
 Image size :	640x480&lt;br /&gt;
 Image loaded :	../data/640-1.jpg&lt;br /&gt;
 #Features:	2372&lt;br /&gt;
 #Features MO:	2767&lt;br /&gt;
 [RUN SIFT]:	0.208&lt;br /&gt;
 NOTE: changing maximum texture dimension to 32768&lt;br /&gt;
 [SiftMatchGPU]: CUDA&lt;br /&gt;
 2247 sift matches were found;&lt;br /&gt;
&lt;br /&gt;
* define &amp;lt;code&amp;gt;export SIFTGPU_DIR=~/SiftGPU&amp;lt;/code&amp;gt; or similar in your iCub bashrc file, so that libsiftgpu.so is found by IOL modules&lt;br /&gt;
&lt;br /&gt;
== himrep ==&lt;br /&gt;
&lt;br /&gt;
Clone https://github.com/robotology/himrep, follow the instructions to compile &amp;lt;code&amp;gt;liblinear&amp;lt;/code&amp;gt;, CMake, make install&lt;br /&gt;
&lt;br /&gt;
To use the deep neural network object recognition, based on Caffe, follow the instructions at README_Caffe.md.&lt;br /&gt;
If you get &amp;quot;error: kernel launches from templates are not allowed in system files&amp;quot;, use an older GCC version like 4.6 (see also https://github.com/BVLC/caffe/issues/337). If you get &amp;quot;ImportError: No module named &#039;yaml&#039;&amp;quot;, do &amp;lt;code&amp;gt;sudo apt install python-yaml&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== IOL ==&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;sudo apt install lua5.1 liblua5.1-dev&amp;lt;/code&amp;gt;&lt;br /&gt;
* clone [https://github.com/kmarkus/rFSM rFSM] (no need to compile anything here)&lt;br /&gt;
&lt;br /&gt;
Clone https://github.com/robotology/iol, CMake, make install&lt;br /&gt;
&lt;br /&gt;
== stereo-vision ==&lt;br /&gt;
&lt;br /&gt;
Clone https://github.com/robotology/stereo-vision, CMake with USE_SIFT_GPU=ON, make install&lt;br /&gt;
&lt;br /&gt;
= Best practices =&lt;br /&gt;
&lt;br /&gt;
Below are some tips and tricks taken from:&lt;br /&gt;
&lt;br /&gt;
* http://wiki.icub.org/wiki/Yarp-config&lt;br /&gt;
* http://www.yarp.it/yarp-config.html&lt;br /&gt;
* [https://docs.google.com/document/d/1S9m4DbrV1AJWo_E1r3F8k3ZzmhaTOWRJ9WFjXPFqVos IIT - How to setup and start the iCub from scratch]&lt;br /&gt;
&lt;br /&gt;
== XML files ==&lt;br /&gt;
&lt;br /&gt;
Edit XML files locally, in /home/icub/.local/share/yarp&lt;br /&gt;
&lt;br /&gt;
To install robot-specific XML files, compile icub-main (just &amp;lt;code&amp;gt;make&amp;lt;/code&amp;gt;) then use commands like &amp;lt;code&amp;gt;yarp-config robot --import-all&amp;lt;/code&amp;gt; (installs all files) or &amp;lt;code&amp;gt;yarp-config robot --import iCubLisboa01 affordancesExploration.xml&amp;lt;/code&amp;gt; (installs specific files)&lt;br /&gt;
&lt;br /&gt;
== ini files ==&lt;br /&gt;
&lt;br /&gt;
To install application conf/*.ini files, compile a project (e.g., icub-main, poeticon, iol) then use commands like &amp;lt;code&amp;gt;yarp-config context --import-all&amp;lt;/code&amp;gt; (installs all files) or &amp;lt;code&amp;gt;yarp-config context --import actionsRenderingEngine&amp;lt;/code&amp;gt; (installs the files of specific applications)&lt;br /&gt;
&lt;br /&gt;
== Disabling some robot parts ==&lt;br /&gt;
&lt;br /&gt;
If the robot is not complete (or some parts need to be disabled):&lt;br /&gt;
&lt;br /&gt;
* On the pc104, type &amp;lt;code&amp;gt;yarp-config robot --list&amp;lt;/code&amp;gt; to look for the .ini files from where the configuration values are launched. These are local copies of the robots-configuration repository files.&lt;br /&gt;
* Go to the &amp;lt;code&amp;gt;INSTALLED DATA&amp;lt;/code&amp;gt; directory path and then, within the corresponding robot folder (e.g., iCubGenova04), look for the file yarprobotinterface.ini, which points to a .xml file which contains the configuration paths for all the robot parts (eg. icub_all.xml).&lt;br /&gt;
* If the local config file does not exist, there is only the canonical in the build path, then create a local one using yarp-config --import.&lt;br /&gt;
* Copy the .xml file with a descriptive name (eg icub_no_legs.xml) and on the copied file, comment or remove all lines that refer to .ini files of the part(s) that have to be disabled. &lt;br /&gt;
* Change yarprobotinterface.ini too, so that it will point to the new .xml file where the parts have been commented.&lt;br /&gt;
* On the robot/icub Startup application, modify the way that gravityCompensator and wholeBodyDynamics are launched, so that they don’t look for leg configuration files. For the legs case, add --no_legs to the argument list.&lt;br /&gt;
&lt;br /&gt;
= See also =&lt;br /&gt;
&lt;br /&gt;
* http://wiki.icub.org/wiki/Generic_iCub_machine_installation_instructions&lt;br /&gt;
&lt;br /&gt;
[[Category:Vislab]]&lt;/div&gt;</summary>
		<author><name>Giovanni Saponaro</name></author>
	</entry>
	<entry>
		<id>http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=VisLab_book_wishlist&amp;diff=7051</id>
		<title>VisLab book wishlist</title>
		<link rel="alternate" type="text/html" href="http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=VisLab_book_wishlist&amp;diff=7051"/>
		<updated>2018-10-03T17:10:26Z</updated>

		<summary type="html">&lt;p&gt;Giovanni Saponaro: add Reinforcement Learning: An Introduction&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;If you need a new book for your research, please add it to this list:&lt;br /&gt;
&lt;br /&gt;
* Title. Authors. Publisher, year. ISBN code.&lt;br /&gt;
* [https://www.amazon.co.uk/Human-Robot-Interaction-Social-Robotics-Takayuki/dp/1138071692/ Human-Robot Interaction in Social Robotics]. Takayuki Kanda, Hirosihi Ishiguro. CRC Press, 2017. ISBN 978-1138071698.&lt;br /&gt;
* [https://www.amazon.co.uk/Emotional-Design-Human-Robot-Interaction-Human-Computer/dp/3319967215 Emotional Design in Human-Robot Interaction: Theory, Methods and Applications]. Hande Ayanoglu, Emilia Duarte. Springer, 2019. ISBN 978-3319967219.&lt;br /&gt;
* Reinforcement Learning: An Introduction. Richard S. Sutton, Francis Bach. Latest edition&lt;br /&gt;
&lt;br /&gt;
= Already ordered =&lt;br /&gt;
&lt;br /&gt;
The following orders have already been dispatched.&lt;br /&gt;
&lt;br /&gt;
== Autumn 2018 batch 2 ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in &amp;lt;s&amp;gt;June 2018&amp;lt;/s&amp;gt; October 2018 and arrived in xxx 2018.&lt;br /&gt;
&lt;br /&gt;
* [https://www.amazon.co.uk/Design-Report-Experiments-Andy-Field/dp/0761973834 How to Design and Report Experiments]. Andy Field, Graham Hole. Sage, 2003. ISBN 978-0761973836.&lt;br /&gt;
* [https://www.amazon.co.uk/Non-verbal-Communication-Human-Interaction-International/dp/1285083512/ Nonverbal Communication in Human Interaction]. Mark Knapp, Terrence Horgan, Judith Hall. Cengage, 2014. ISBN 978-1285083513.&lt;br /&gt;
* [https://www.amazon.co.uk/3D-Printing-Handbook-Technologies-applications/dp/9082748509/ The 3D Printing Handbook: Technologies, design and applications]. Ben Redwood, Filemon Schöffer, Brian Garret. 3D Hubs B.V., 2017. ISBN 978-9082748505.&lt;br /&gt;
&lt;br /&gt;
== Autumn 2018 batch 1 ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in September 2018 for the AHA project and arrived in xxx 2018.&lt;br /&gt;
&lt;br /&gt;
* [https://www.amazon.co.uk/Book-Why-Science-Cause-Effect/dp/0241242630 The Book of Why: The New Science of Cause and Effect]. Judea Pearl, Dana Mackenzie. Allen Lane, 2018. ISBN 978-0241242636.&lt;br /&gt;
* [https://www.amazon.co.uk/Understanding-Vision-Theory-Models-Data/dp/0198829361 Understanding Vision: Theory, Models, and Data, Reprint Edition]. Li Zhaoping. Oxford University Press, 2018. ISBN 978-0198829362.&lt;br /&gt;
* [https://www.amazon.co.uk/Video-Influences-Aggression-Cognition-Attention/dp/3319954946 Video Game Influences on Aggression, Cognition, and Attention]. Christopher J. Ferguson. Springer, 2018. ISBN 978-3319954943.&lt;br /&gt;
&lt;br /&gt;
== Autumn 2017 batch ==&lt;br /&gt;
&lt;br /&gt;
This book was ordered in November 2017 and arrived in January 2018.&lt;br /&gt;
&lt;br /&gt;
* [https://www.amazon.co.uk/Theoretical-Neuroscience-Computational-Mathematical-Modeling/dp/0262541858 Theoretical Neuroscience: Computational and Mathematical Modeling of Neural Systems]. Peter Dayan, ‎L. F. Abbott. MIT Press, 2005. ISBN 978-0262541855.&lt;br /&gt;
&lt;br /&gt;
== Spring 2017 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in April 2017 and arrived in May 2017.&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.co.uk/Ecological-Approach-Visual-Perception-Psychology/dp/1848725787 The Ecological Approach to Visual Perception: Classic Edition]. James J. Gibson. Psychology Press, 2014. ISBN 978-1848725782.&lt;br /&gt;
* [https://www.amazon.co.uk/Effective-Modern-Specific-Ways-Improve/dp/1491903996 Effective Modern C++: 42 Specific Ways to Improve Your Use of C++11 and C++14]. Scott Meyers. O&#039;Reilly, 2014. ISBN 978-1491903995.&lt;br /&gt;
* [https://www.amazon.co.uk/Hand-Mind-Gestures-Reveal-Thought/dp/0226561348 Hand and Mind: What Gestures Reveal about Thought]. David McNeill. University Of Chicago Press, 1996. ISBN 978-0226561349.&lt;br /&gt;
* [https://www.amazon.co.uk/Principles-Neural-Science-Fifth-Kandel/dp/0071390111 Principles of Neural Science, Fifth Edition]. Eric R. Kandel, James H. Schwartz, Thomas M. Jessell, Steven A. Siegelbaum, A. J. Hudspeth. McGraw-Hill, 2012. ISBN 978-0071390118&lt;br /&gt;
&lt;br /&gt;
== Winter 2016 batch ==&lt;br /&gt;
&lt;br /&gt;
This book was ordered in November 2016 and arrived in April 2017.&lt;br /&gt;
&lt;br /&gt;
* [https://www.amazon.co.uk/Deep-Learning-Adaptive-Computation-Machine/dp/0262035618 Deep Learning]. Ian Goodfellow, Yoshua Bengio, Aaron Courville. MIT Press, 2016. ISBN 978-0262035613&lt;br /&gt;
&lt;br /&gt;
== Spring 2016 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in March 2016, and arrived between May 2016 and February 2017 (Learning OpenCV 3).&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.co.uk/gp/product/1491937998 Learning OpenCV 3: Computer Vision in C++ with the OpenCV Library]. Adrian Kaehler, Gary Bradski. O&#039;Reilly Media, 2016.&lt;br /&gt;
* [http://www.amazon.co.uk/Mastering-Robotics-Programming-Lentin-Joseph/dp/1783551798 Mastering ROS for Robotics Programming]. Lentin Joseph. Packt Publishing, 2015.&lt;br /&gt;
* [http://www.amazon.co.uk/Artificial-Cognitive-Systems-David-Vernon/dp/0262028387 Artificial Cognitive Systems: A Primer]. David Vernon. MIT Press, 2015.&lt;br /&gt;
* [http://www.amazon.co.uk/Developmental-Robotics-Babies-Intelligent-Autonomous/dp/0262028018 Developmental Robotics: From Babies to Robots]. Angelo Cangelosi, Matthew Schlesinger. MIT Press, 2015.&lt;br /&gt;
* [http://www.amazon.co.uk/Machine-Learning-Optimization-Perspective-Developers/dp/0128015225 Machine Learning: A Bayesian and Optimization Perspective]. Sergios Theodoridis. Academic Press, March 2015.&lt;br /&gt;
* [http://www.amazon.co.uk/Gaussian-Processes-Machine-Learning-Rasmussen/dp/026218253X Gaussian Processes for Machine Learning]. Carl Edward Rasmussen, Christopher K. I. Williams. MIT Press, 2006.&lt;br /&gt;
* [http://www.amazon.co.uk/Designing-Sociable-Intelligent-Robotics-Autonomous/dp/0262025108 Designing Sociable Robots], Cynthia Breazeal. MIT Press, 2002.&lt;br /&gt;
&lt;br /&gt;
== Autumn 2014 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in November 2014, and arrived between December 2014 and February 2015.&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.co.uk/Probabilistic-Graphical-Models-Principles-Computation/dp/0262013193 Probabilistic Graphical Models: Principles and Techniques]. Daphne Koller, Nir Friedman. MIT Press, 2009. ([http://mitpress.mit.edu/books/probabilistic-graphical-models publisher page] with 20% discount code DKPGM12)&lt;br /&gt;
* [http://www.amazon.co.uk/Understanding-Vision-Theory-Models-Data/dp/0199564663 Understanding Vision: theory, models, and data]. Li Zhaoping. Oxford University Press, 2014. ([http://ukcatalogue.oup.com/product/9780199564668.do publisher page])&lt;br /&gt;
* [http://www.amazon.co.uk/Dictionary-Computer-Vision-Image-Processing/dp/1119941865 Dictionary of Computer Vision and Image Processing, 2nd Edition]. Robert B. Fisher, Toby P. Breckon, Kenneth Dawson-Howe, Andrew Fitzgibbon, Craig Robertson, Emanuele Trucco, Christopher K. I. Williams. Wiley, 2013. ([http://eu.wiley.com/WileyCDA/WileyTitle/productCd-1119941865.html publisher page])&lt;br /&gt;
* [http://www.amazon.co.uk/Introduction-Game-Design-Prototyping-Development-ebook/dp/B00LIYS9F0 Introduction to Game Design, Prototyping, and Development: From Concept to Playable Game with Unity and C#]. Jeremy Gibson. Addison-Wesley Professional, 2014.&lt;br /&gt;
* [http://www.amazon.co.uk/Regularization-Optimization-Kernels-Support-Machines/dp/1482241390 Regularization, Optimization, Kernels, and Support Vector Machines]. Johan A.K. Suykens, Marco Signoretto, Andreas Argyriou. Chapman and Hall/CRC, 2014. ([http://www.crcpress.com/product/isbn/9781482241396 publisher page])&lt;br /&gt;
&lt;br /&gt;
== Autumn 2013 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in October 2013, and arrived between November 2013 and June 2014.&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.co.uk/Gesture-Speech-Sign-Lynn-Messing/dp/019852451X Gesture, Speech, and Sign]. Lynn Messing, Ruth Campbell. Oxford University Press, 1999.&lt;br /&gt;
* [http://www.amazon.co.uk/OpenCV-Computer-Application-Programming-Cookbook/dp/1849513244/ OpenCV 2 Computer Vision Application Programming Cookbook]. Robert Laganière. Pack Publishing, May 2011.&lt;br /&gt;
* [http://www.amazon.co.uk/Brave-NUI-World-Designing-Interfaces/dp/0123822319 Brave NUI World: Designing Natural User Interfaces for Touch and Gesture]. Daniel Wigdor, Dennis Wixon. Morgan Kaufmann, April 2011.&lt;br /&gt;
* [http://www.amazon.co.uk/Probabilistic-Robotics-Intelligent-Autonomous-Agents/dp/0262201623 Probabilistic Robotics]. Sebastian Thrun, Wolfram Burgard, Dieter Fox. MIT Press, 2005.&lt;br /&gt;
* [http://www.amazon.co.uk/Frontiers-Human-Robot-Interaction-Advances-Studies/dp/9027204551 New Frontiers in Human-Robot Interaction] ([http://homepages.feis.herts.ac.uk/~comqkd/NFHRI-AIS-2011.pdf link2]). Kerstin Dautenhahn and Joe Saunder. John Benjamins Publishing Company, 2011.&lt;br /&gt;
* [http://mitpress.mit.edu/catalog/item/default.asp?ttype=2&amp;amp;tid=12814&amp;amp;mode=toc An Interdisciplinary Introduction to Image Processing]. Steven L. Tanimoto. MIT Press, May 2012.&lt;br /&gt;
* [http://www.amazon.co.uk/Machine-Learning-Probabilistic-Perspective-Computation/dp/0262018020 Machine Learning: A Probabilistic Perspective]. Kevin Murphy. MIT Press, October 2012.&lt;br /&gt;
* [http://www.cambridge.org/us/knowledge/discountpromotion/?site_locale=en_US&amp;amp;code=L2BRML Bayesian Reasoning and Machine Learning] (this link provides a 20% discount, you can change currency at checkout) David Barber. Cambridge University Press, February 2012.&lt;br /&gt;
* [http://www.amazon.co.uk/Active-Learning-Burr-Settles/dp/1608457257/ Active Learning: Synthesis Lectures on Artificial Intelligence and Machine Learning]. Burr Settles. Morgan &amp;amp; Claypool, 2012.&lt;br /&gt;
&lt;br /&gt;
== Summer 2011 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in the summer of 2011, and arrived on 2011-11-28.&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.com/Plasticity-Visual-System-Genes-Circuits/dp/0387281894 Plasticity in the Visual System: From Genes to Circuits], Raphael Pinaud (Editor), Liisa A. Tremere (Editor), Peter de Weerd, Springer 2006.&lt;br /&gt;
* [http://www.springer.com/engineering/robotics/book/978-3-540-23957-4 Springer Handbook of Robotics]. Bruno Siciliano, Oussama Khatib (Editors). Springer, 2008.&lt;br /&gt;
* [http://www.amazon.com/Human-Motor-Control-Second-Rosenbaum/dp/0123742269 Human Motor Control], David Rosenbaum. Elsevier/Academic Press, 2009.&lt;br /&gt;
* [http://www.amazon.com/Computer-Vision-Approach-David-Forsyth/dp/0130851981 Computer vision, A modern approach], David Forsyth and Jean Ponce.  &lt;br /&gt;
* [http://www.amazon.fr/Pattern-Recognition-Machine-Learning-Christopher/dp/0387310738/sr=8-1/qid=1158928255/ref=sr_1_1/402-9555855-8053710?ie=UTF8&amp;amp;s=english-books Pattern recognition and machine learning ], Christopher M. Bishop&lt;br /&gt;
&lt;br /&gt;
= Misc =&lt;br /&gt;
&lt;br /&gt;
== Discarded ==&lt;br /&gt;
&lt;br /&gt;
Books that were considered for purchase but not ordered:&lt;br /&gt;
&lt;br /&gt;
* [https://www.amazon.co.uk/Exploring-Robotic-Minds-Consciousness-Self-Organizing/dp/0190281065 Exploring Robotic Minds: Actions, Symbols, and Consciousness as Self-Organizing Dynamic Phenomena]. Jun Tani. OUP USA, 2016. ISBN 978-0190281069.&lt;br /&gt;
* [http://www.amazon.co.uk/Sparse-Modeling-Algorithms-Applications-Recognition/dp/1439828695 Sparse Modeling: Theory, Algorithms, and Applications]. Irina Rish, Genady Grabarnik. CRC Press, 2014.&lt;br /&gt;
* [http://www.amazon.co.uk/Sociorobot-World-Intelligent-Automation-Engineering-ebook/dp/B011QM0BBS Sociorobot World: A Guided Tour for All]. Spyros Tzafestas. Springer, 2016.&lt;br /&gt;
* [https://www.amazon.co.uk/Understanding-Machine-Learning-Theory-Algorithms-ebook/dp/1107512824 Understanding Machine Learning: From Theory To Algorithms]. Shai Shalev-Shwartz, Shai Ben-David. Cambridge University Press, 2015. ISBN 978-1107512825&lt;br /&gt;
* [https://www.amazon.co.uk/Computational-Integrating-Language-Synthesis-Lectures/dp/1608451127 Computational Methods for Integrating Vision and Language]. Kobus Barnard. Morgan &amp;amp; Claypool, 2016. ISBN 978-1608451128.&lt;br /&gt;
* [http://www.amazon.co.uk/OpenCV-3-Blueprints-Joseph-Howse/dp/1784399752 OpenCV 3 Blueprints]. Joseph Howse, Steven Puttemans, Quan Hua, Utkarsh Sinha. Packt Publishing, 2015. ISBN 978-1784399757.&lt;br /&gt;
* [https://www.amazon.co.uk/Time-Modeling-Computation-Inference-Statistical/dp/1420093363 Time Series: Modeling, Computation, and Inference]. Raquel Prado, Mike West. Chapman and Hall/CRC, 2010. ISBN 978-1420093360&lt;br /&gt;
&lt;br /&gt;
== Not available ==&lt;br /&gt;
&lt;br /&gt;
Books that are likely not available (from previous purchase attempts):&lt;br /&gt;
&lt;br /&gt;
* [http://www.oreilly.com/data/free/real-world-active-learning.csp Real-World Active Learning: Applications and strategies for human-in-the-loop machine learning]. Ted Cuzzillo. O&#039;Reilly, March 2015.&lt;br /&gt;
&lt;br /&gt;
[[Category:Vislab]]&lt;/div&gt;</summary>
		<author><name>Giovanni Saponaro</name></author>
	</entry>
	<entry>
		<id>http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=VisLab_book_wishlist&amp;diff=7050</id>
		<title>VisLab book wishlist</title>
		<link rel="alternate" type="text/html" href="http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=VisLab_book_wishlist&amp;diff=7050"/>
		<updated>2018-10-03T16:51:06Z</updated>

		<summary type="html">&lt;p&gt;Giovanni Saponaro: /* Already ordered */ Spring 2018 renamed to Autumn 2018 batch 2&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;If you need a new book for your research, please add it to this list:&lt;br /&gt;
&lt;br /&gt;
* Title. Authors. Publisher, year. ISBN code.&lt;br /&gt;
* [https://www.amazon.co.uk/Human-Robot-Interaction-Social-Robotics-Takayuki/dp/1138071692/ Human-Robot Interaction in Social Robotics]. Takayuki Kanda, Hirosihi Ishiguro. CRC Press, 2017. ISBN 978-1138071698.&lt;br /&gt;
* [https://www.amazon.co.uk/Emotional-Design-Human-Robot-Interaction-Human-Computer/dp/3319967215 Emotional Design in Human-Robot Interaction: Theory, Methods and Applications]. Hande Ayanoglu, Emilia Duarte. Springer, 2019. ISBN 978-3319967219.&lt;br /&gt;
&lt;br /&gt;
= Already ordered =&lt;br /&gt;
&lt;br /&gt;
The following orders have already been dispatched.&lt;br /&gt;
&lt;br /&gt;
== Autumn 2018 batch 2 ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in &amp;lt;s&amp;gt;June 2018&amp;lt;/s&amp;gt; October 2018 and arrived in xxx 2018.&lt;br /&gt;
&lt;br /&gt;
* [https://www.amazon.co.uk/Design-Report-Experiments-Andy-Field/dp/0761973834 How to Design and Report Experiments]. Andy Field, Graham Hole. Sage, 2003. ISBN 978-0761973836.&lt;br /&gt;
* [https://www.amazon.co.uk/Non-verbal-Communication-Human-Interaction-International/dp/1285083512/ Nonverbal Communication in Human Interaction]. Mark Knapp, Terrence Horgan, Judith Hall. Cengage, 2014. ISBN 978-1285083513.&lt;br /&gt;
* [https://www.amazon.co.uk/3D-Printing-Handbook-Technologies-applications/dp/9082748509/ The 3D Printing Handbook: Technologies, design and applications]. Ben Redwood, Filemon Schöffer, Brian Garret. 3D Hubs B.V., 2017. ISBN 978-9082748505.&lt;br /&gt;
&lt;br /&gt;
== Autumn 2018 batch 1 ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in September 2018 for the AHA project and arrived in xxx 2018.&lt;br /&gt;
&lt;br /&gt;
* [https://www.amazon.co.uk/Book-Why-Science-Cause-Effect/dp/0241242630 The Book of Why: The New Science of Cause and Effect]. Judea Pearl, Dana Mackenzie. Allen Lane, 2018. ISBN 978-0241242636.&lt;br /&gt;
* [https://www.amazon.co.uk/Understanding-Vision-Theory-Models-Data/dp/0198829361 Understanding Vision: Theory, Models, and Data, Reprint Edition]. Li Zhaoping. Oxford University Press, 2018. ISBN 978-0198829362.&lt;br /&gt;
* [https://www.amazon.co.uk/Video-Influences-Aggression-Cognition-Attention/dp/3319954946 Video Game Influences on Aggression, Cognition, and Attention]. Christopher J. Ferguson. Springer, 2018. ISBN 978-3319954943.&lt;br /&gt;
&lt;br /&gt;
== Autumn 2017 batch ==&lt;br /&gt;
&lt;br /&gt;
This book was ordered in November 2017 and arrived in January 2018.&lt;br /&gt;
&lt;br /&gt;
* [https://www.amazon.co.uk/Theoretical-Neuroscience-Computational-Mathematical-Modeling/dp/0262541858 Theoretical Neuroscience: Computational and Mathematical Modeling of Neural Systems]. Peter Dayan, ‎L. F. Abbott. MIT Press, 2005. ISBN 978-0262541855.&lt;br /&gt;
&lt;br /&gt;
== Spring 2017 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in April 2017 and arrived in May 2017.&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.co.uk/Ecological-Approach-Visual-Perception-Psychology/dp/1848725787 The Ecological Approach to Visual Perception: Classic Edition]. James J. Gibson. Psychology Press, 2014. ISBN 978-1848725782.&lt;br /&gt;
* [https://www.amazon.co.uk/Effective-Modern-Specific-Ways-Improve/dp/1491903996 Effective Modern C++: 42 Specific Ways to Improve Your Use of C++11 and C++14]. Scott Meyers. O&#039;Reilly, 2014. ISBN 978-1491903995.&lt;br /&gt;
* [https://www.amazon.co.uk/Hand-Mind-Gestures-Reveal-Thought/dp/0226561348 Hand and Mind: What Gestures Reveal about Thought]. David McNeill. University Of Chicago Press, 1996. ISBN 978-0226561349.&lt;br /&gt;
* [https://www.amazon.co.uk/Principles-Neural-Science-Fifth-Kandel/dp/0071390111 Principles of Neural Science, Fifth Edition]. Eric R. Kandel, James H. Schwartz, Thomas M. Jessell, Steven A. Siegelbaum, A. J. Hudspeth. McGraw-Hill, 2012. ISBN 978-0071390118&lt;br /&gt;
&lt;br /&gt;
== Winter 2016 batch ==&lt;br /&gt;
&lt;br /&gt;
This book was ordered in November 2016 and arrived in April 2017.&lt;br /&gt;
&lt;br /&gt;
* [https://www.amazon.co.uk/Deep-Learning-Adaptive-Computation-Machine/dp/0262035618 Deep Learning]. Ian Goodfellow, Yoshua Bengio, Aaron Courville. MIT Press, 2016. ISBN 978-0262035613&lt;br /&gt;
&lt;br /&gt;
== Spring 2016 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in March 2016, and arrived between May 2016 and February 2017 (Learning OpenCV 3).&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.co.uk/gp/product/1491937998 Learning OpenCV 3: Computer Vision in C++ with the OpenCV Library]. Adrian Kaehler, Gary Bradski. O&#039;Reilly Media, 2016.&lt;br /&gt;
* [http://www.amazon.co.uk/Mastering-Robotics-Programming-Lentin-Joseph/dp/1783551798 Mastering ROS for Robotics Programming]. Lentin Joseph. Packt Publishing, 2015.&lt;br /&gt;
* [http://www.amazon.co.uk/Artificial-Cognitive-Systems-David-Vernon/dp/0262028387 Artificial Cognitive Systems: A Primer]. David Vernon. MIT Press, 2015.&lt;br /&gt;
* [http://www.amazon.co.uk/Developmental-Robotics-Babies-Intelligent-Autonomous/dp/0262028018 Developmental Robotics: From Babies to Robots]. Angelo Cangelosi, Matthew Schlesinger. MIT Press, 2015.&lt;br /&gt;
* [http://www.amazon.co.uk/Machine-Learning-Optimization-Perspective-Developers/dp/0128015225 Machine Learning: A Bayesian and Optimization Perspective]. Sergios Theodoridis. Academic Press, March 2015.&lt;br /&gt;
* [http://www.amazon.co.uk/Gaussian-Processes-Machine-Learning-Rasmussen/dp/026218253X Gaussian Processes for Machine Learning]. Carl Edward Rasmussen, Christopher K. I. Williams. MIT Press, 2006.&lt;br /&gt;
* [http://www.amazon.co.uk/Designing-Sociable-Intelligent-Robotics-Autonomous/dp/0262025108 Designing Sociable Robots], Cynthia Breazeal. MIT Press, 2002.&lt;br /&gt;
&lt;br /&gt;
== Autumn 2014 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in November 2014, and arrived between December 2014 and February 2015.&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.co.uk/Probabilistic-Graphical-Models-Principles-Computation/dp/0262013193 Probabilistic Graphical Models: Principles and Techniques]. Daphne Koller, Nir Friedman. MIT Press, 2009. ([http://mitpress.mit.edu/books/probabilistic-graphical-models publisher page] with 20% discount code DKPGM12)&lt;br /&gt;
* [http://www.amazon.co.uk/Understanding-Vision-Theory-Models-Data/dp/0199564663 Understanding Vision: theory, models, and data]. Li Zhaoping. Oxford University Press, 2014. ([http://ukcatalogue.oup.com/product/9780199564668.do publisher page])&lt;br /&gt;
* [http://www.amazon.co.uk/Dictionary-Computer-Vision-Image-Processing/dp/1119941865 Dictionary of Computer Vision and Image Processing, 2nd Edition]. Robert B. Fisher, Toby P. Breckon, Kenneth Dawson-Howe, Andrew Fitzgibbon, Craig Robertson, Emanuele Trucco, Christopher K. I. Williams. Wiley, 2013. ([http://eu.wiley.com/WileyCDA/WileyTitle/productCd-1119941865.html publisher page])&lt;br /&gt;
* [http://www.amazon.co.uk/Introduction-Game-Design-Prototyping-Development-ebook/dp/B00LIYS9F0 Introduction to Game Design, Prototyping, and Development: From Concept to Playable Game with Unity and C#]. Jeremy Gibson. Addison-Wesley Professional, 2014.&lt;br /&gt;
* [http://www.amazon.co.uk/Regularization-Optimization-Kernels-Support-Machines/dp/1482241390 Regularization, Optimization, Kernels, and Support Vector Machines]. Johan A.K. Suykens, Marco Signoretto, Andreas Argyriou. Chapman and Hall/CRC, 2014. ([http://www.crcpress.com/product/isbn/9781482241396 publisher page])&lt;br /&gt;
&lt;br /&gt;
== Autumn 2013 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in October 2013, and arrived between November 2013 and June 2014.&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.co.uk/Gesture-Speech-Sign-Lynn-Messing/dp/019852451X Gesture, Speech, and Sign]. Lynn Messing, Ruth Campbell. Oxford University Press, 1999.&lt;br /&gt;
* [http://www.amazon.co.uk/OpenCV-Computer-Application-Programming-Cookbook/dp/1849513244/ OpenCV 2 Computer Vision Application Programming Cookbook]. Robert Laganière. Pack Publishing, May 2011.&lt;br /&gt;
* [http://www.amazon.co.uk/Brave-NUI-World-Designing-Interfaces/dp/0123822319 Brave NUI World: Designing Natural User Interfaces for Touch and Gesture]. Daniel Wigdor, Dennis Wixon. Morgan Kaufmann, April 2011.&lt;br /&gt;
* [http://www.amazon.co.uk/Probabilistic-Robotics-Intelligent-Autonomous-Agents/dp/0262201623 Probabilistic Robotics]. Sebastian Thrun, Wolfram Burgard, Dieter Fox. MIT Press, 2005.&lt;br /&gt;
* [http://www.amazon.co.uk/Frontiers-Human-Robot-Interaction-Advances-Studies/dp/9027204551 New Frontiers in Human-Robot Interaction] ([http://homepages.feis.herts.ac.uk/~comqkd/NFHRI-AIS-2011.pdf link2]). Kerstin Dautenhahn and Joe Saunder. John Benjamins Publishing Company, 2011.&lt;br /&gt;
* [http://mitpress.mit.edu/catalog/item/default.asp?ttype=2&amp;amp;tid=12814&amp;amp;mode=toc An Interdisciplinary Introduction to Image Processing]. Steven L. Tanimoto. MIT Press, May 2012.&lt;br /&gt;
* [http://www.amazon.co.uk/Machine-Learning-Probabilistic-Perspective-Computation/dp/0262018020 Machine Learning: A Probabilistic Perspective]. Kevin Murphy. MIT Press, October 2012.&lt;br /&gt;
* [http://www.cambridge.org/us/knowledge/discountpromotion/?site_locale=en_US&amp;amp;code=L2BRML Bayesian Reasoning and Machine Learning] (this link provides a 20% discount, you can change currency at checkout) David Barber. Cambridge University Press, February 2012.&lt;br /&gt;
* [http://www.amazon.co.uk/Active-Learning-Burr-Settles/dp/1608457257/ Active Learning: Synthesis Lectures on Artificial Intelligence and Machine Learning]. Burr Settles. Morgan &amp;amp; Claypool, 2012.&lt;br /&gt;
&lt;br /&gt;
== Summer 2011 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in the summer of 2011, and arrived on 2011-11-28.&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.com/Plasticity-Visual-System-Genes-Circuits/dp/0387281894 Plasticity in the Visual System: From Genes to Circuits], Raphael Pinaud (Editor), Liisa A. Tremere (Editor), Peter de Weerd, Springer 2006.&lt;br /&gt;
* [http://www.springer.com/engineering/robotics/book/978-3-540-23957-4 Springer Handbook of Robotics]. Bruno Siciliano, Oussama Khatib (Editors). Springer, 2008.&lt;br /&gt;
* [http://www.amazon.com/Human-Motor-Control-Second-Rosenbaum/dp/0123742269 Human Motor Control], David Rosenbaum. Elsevier/Academic Press, 2009.&lt;br /&gt;
* [http://www.amazon.com/Computer-Vision-Approach-David-Forsyth/dp/0130851981 Computer vision, A modern approach], David Forsyth and Jean Ponce.  &lt;br /&gt;
* [http://www.amazon.fr/Pattern-Recognition-Machine-Learning-Christopher/dp/0387310738/sr=8-1/qid=1158928255/ref=sr_1_1/402-9555855-8053710?ie=UTF8&amp;amp;s=english-books Pattern recognition and machine learning ], Christopher M. Bishop&lt;br /&gt;
&lt;br /&gt;
= Misc =&lt;br /&gt;
&lt;br /&gt;
== Discarded ==&lt;br /&gt;
&lt;br /&gt;
Books that were considered for purchase but not ordered:&lt;br /&gt;
&lt;br /&gt;
* [https://www.amazon.co.uk/Exploring-Robotic-Minds-Consciousness-Self-Organizing/dp/0190281065 Exploring Robotic Minds: Actions, Symbols, and Consciousness as Self-Organizing Dynamic Phenomena]. Jun Tani. OUP USA, 2016. ISBN 978-0190281069.&lt;br /&gt;
* [http://www.amazon.co.uk/Sparse-Modeling-Algorithms-Applications-Recognition/dp/1439828695 Sparse Modeling: Theory, Algorithms, and Applications]. Irina Rish, Genady Grabarnik. CRC Press, 2014.&lt;br /&gt;
* [http://www.amazon.co.uk/Sociorobot-World-Intelligent-Automation-Engineering-ebook/dp/B011QM0BBS Sociorobot World: A Guided Tour for All]. Spyros Tzafestas. Springer, 2016.&lt;br /&gt;
* [https://www.amazon.co.uk/Understanding-Machine-Learning-Theory-Algorithms-ebook/dp/1107512824 Understanding Machine Learning: From Theory To Algorithms]. Shai Shalev-Shwartz, Shai Ben-David. Cambridge University Press, 2015. ISBN 978-1107512825&lt;br /&gt;
* [https://www.amazon.co.uk/Computational-Integrating-Language-Synthesis-Lectures/dp/1608451127 Computational Methods for Integrating Vision and Language]. Kobus Barnard. Morgan &amp;amp; Claypool, 2016. ISBN 978-1608451128.&lt;br /&gt;
* [http://www.amazon.co.uk/OpenCV-3-Blueprints-Joseph-Howse/dp/1784399752 OpenCV 3 Blueprints]. Joseph Howse, Steven Puttemans, Quan Hua, Utkarsh Sinha. Packt Publishing, 2015. ISBN 978-1784399757.&lt;br /&gt;
* [https://www.amazon.co.uk/Time-Modeling-Computation-Inference-Statistical/dp/1420093363 Time Series: Modeling, Computation, and Inference]. Raquel Prado, Mike West. Chapman and Hall/CRC, 2010. ISBN 978-1420093360&lt;br /&gt;
&lt;br /&gt;
== Not available ==&lt;br /&gt;
&lt;br /&gt;
Books that are likely not available (from previous purchase attempts):&lt;br /&gt;
&lt;br /&gt;
* [http://www.oreilly.com/data/free/real-world-active-learning.csp Real-World Active Learning: Applications and strategies for human-in-the-loop machine learning]. Ted Cuzzillo. O&#039;Reilly, March 2015.&lt;br /&gt;
&lt;br /&gt;
[[Category:Vislab]]&lt;/div&gt;</summary>
		<author><name>Giovanni Saponaro</name></author>
	</entry>
	<entry>
		<id>http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=VisLab_book_wishlist&amp;diff=7049</id>
		<title>VisLab book wishlist</title>
		<link rel="alternate" type="text/html" href="http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=VisLab_book_wishlist&amp;diff=7049"/>
		<updated>2018-10-03T16:49:32Z</updated>

		<summary type="html">&lt;p&gt;Giovanni Saponaro: /* Autumn 2018 batch */ added extra info about this batch&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;If you need a new book for your research, please add it to this list:&lt;br /&gt;
&lt;br /&gt;
* Title. Authors. Publisher, year. ISBN code.&lt;br /&gt;
* [https://www.amazon.co.uk/Human-Robot-Interaction-Social-Robotics-Takayuki/dp/1138071692/ Human-Robot Interaction in Social Robotics]. Takayuki Kanda, Hirosihi Ishiguro. CRC Press, 2017. ISBN 978-1138071698.&lt;br /&gt;
* [https://www.amazon.co.uk/Emotional-Design-Human-Robot-Interaction-Human-Computer/dp/3319967215 Emotional Design in Human-Robot Interaction: Theory, Methods and Applications]. Hande Ayanoglu, Emilia Duarte. Springer, 2019. ISBN 978-3319967219.&lt;br /&gt;
&lt;br /&gt;
= Already ordered =&lt;br /&gt;
&lt;br /&gt;
The following orders have already been dispatched.&lt;br /&gt;
&lt;br /&gt;
== Autumn 2018 batch 1 ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in September 2018 for the AHA project and arrived in xxx 2018.&lt;br /&gt;
&lt;br /&gt;
* [https://www.amazon.co.uk/Book-Why-Science-Cause-Effect/dp/0241242630 The Book of Why: The New Science of Cause and Effect]. Judea Pearl, Dana Mackenzie. Allen Lane, 2018. ISBN 978-0241242636.&lt;br /&gt;
* [https://www.amazon.co.uk/Understanding-Vision-Theory-Models-Data/dp/0198829361 Understanding Vision: Theory, Models, and Data, Reprint Edition]. Li Zhaoping. Oxford University Press, 2018. ISBN 978-0198829362.&lt;br /&gt;
* [https://www.amazon.co.uk/Video-Influences-Aggression-Cognition-Attention/dp/3319954946 Video Game Influences on Aggression, Cognition, and Attention]. Christopher J. Ferguson. Springer, 2018. ISBN 978-3319954943.&lt;br /&gt;
&lt;br /&gt;
== Spring 2018 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in June 2018 and arrived in xxx 2018.&lt;br /&gt;
&lt;br /&gt;
* [https://www.amazon.co.uk/Design-Report-Experiments-Andy-Field/dp/0761973834 How to Design and Report Experiments]. Andy Field, Graham Hole. Sage, 2003. ISBN 978-0761973836.&lt;br /&gt;
* [https://www.amazon.co.uk/Non-verbal-Communication-Human-Interaction-International/dp/1285083512/ Nonverbal Communication in Human Interaction]. Mark Knapp, Terrence Horgan, Judith Hall. Cengage, 2014. ISBN 978-1285083513.&lt;br /&gt;
* [https://www.amazon.co.uk/3D-Printing-Handbook-Technologies-applications/dp/9082748509/ The 3D Printing Handbook: Technologies, design and applications]. Ben Redwood, Filemon Schöffer, Brian Garret. 3D Hubs B.V., 2017. ISBN 978-9082748505.&lt;br /&gt;
&lt;br /&gt;
== Autumn 2017 batch ==&lt;br /&gt;
&lt;br /&gt;
This book was ordered in November 2017 and arrived in January 2018.&lt;br /&gt;
&lt;br /&gt;
* [https://www.amazon.co.uk/Theoretical-Neuroscience-Computational-Mathematical-Modeling/dp/0262541858 Theoretical Neuroscience: Computational and Mathematical Modeling of Neural Systems]. Peter Dayan, ‎L. F. Abbott. MIT Press, 2005. ISBN 978-0262541855.&lt;br /&gt;
&lt;br /&gt;
== Spring 2017 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in April 2017 and arrived in May 2017.&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.co.uk/Ecological-Approach-Visual-Perception-Psychology/dp/1848725787 The Ecological Approach to Visual Perception: Classic Edition]. James J. Gibson. Psychology Press, 2014. ISBN 978-1848725782.&lt;br /&gt;
* [https://www.amazon.co.uk/Effective-Modern-Specific-Ways-Improve/dp/1491903996 Effective Modern C++: 42 Specific Ways to Improve Your Use of C++11 and C++14]. Scott Meyers. O&#039;Reilly, 2014. ISBN 978-1491903995.&lt;br /&gt;
* [https://www.amazon.co.uk/Hand-Mind-Gestures-Reveal-Thought/dp/0226561348 Hand and Mind: What Gestures Reveal about Thought]. David McNeill. University Of Chicago Press, 1996. ISBN 978-0226561349.&lt;br /&gt;
* [https://www.amazon.co.uk/Principles-Neural-Science-Fifth-Kandel/dp/0071390111 Principles of Neural Science, Fifth Edition]. Eric R. Kandel, James H. Schwartz, Thomas M. Jessell, Steven A. Siegelbaum, A. J. Hudspeth. McGraw-Hill, 2012. ISBN 978-0071390118&lt;br /&gt;
&lt;br /&gt;
== Winter 2016 batch ==&lt;br /&gt;
&lt;br /&gt;
This book was ordered in November 2016 and arrived in April 2017.&lt;br /&gt;
&lt;br /&gt;
* [https://www.amazon.co.uk/Deep-Learning-Adaptive-Computation-Machine/dp/0262035618 Deep Learning]. Ian Goodfellow, Yoshua Bengio, Aaron Courville. MIT Press, 2016. ISBN 978-0262035613&lt;br /&gt;
&lt;br /&gt;
== Spring 2016 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in March 2016, and arrived between May 2016 and February 2017 (Learning OpenCV 3).&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.co.uk/gp/product/1491937998 Learning OpenCV 3: Computer Vision in C++ with the OpenCV Library]. Adrian Kaehler, Gary Bradski. O&#039;Reilly Media, 2016.&lt;br /&gt;
* [http://www.amazon.co.uk/Mastering-Robotics-Programming-Lentin-Joseph/dp/1783551798 Mastering ROS for Robotics Programming]. Lentin Joseph. Packt Publishing, 2015.&lt;br /&gt;
* [http://www.amazon.co.uk/Artificial-Cognitive-Systems-David-Vernon/dp/0262028387 Artificial Cognitive Systems: A Primer]. David Vernon. MIT Press, 2015.&lt;br /&gt;
* [http://www.amazon.co.uk/Developmental-Robotics-Babies-Intelligent-Autonomous/dp/0262028018 Developmental Robotics: From Babies to Robots]. Angelo Cangelosi, Matthew Schlesinger. MIT Press, 2015.&lt;br /&gt;
* [http://www.amazon.co.uk/Machine-Learning-Optimization-Perspective-Developers/dp/0128015225 Machine Learning: A Bayesian and Optimization Perspective]. Sergios Theodoridis. Academic Press, March 2015.&lt;br /&gt;
* [http://www.amazon.co.uk/Gaussian-Processes-Machine-Learning-Rasmussen/dp/026218253X Gaussian Processes for Machine Learning]. Carl Edward Rasmussen, Christopher K. I. Williams. MIT Press, 2006.&lt;br /&gt;
* [http://www.amazon.co.uk/Designing-Sociable-Intelligent-Robotics-Autonomous/dp/0262025108 Designing Sociable Robots], Cynthia Breazeal. MIT Press, 2002.&lt;br /&gt;
&lt;br /&gt;
== Autumn 2014 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in November 2014, and arrived between December 2014 and February 2015.&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.co.uk/Probabilistic-Graphical-Models-Principles-Computation/dp/0262013193 Probabilistic Graphical Models: Principles and Techniques]. Daphne Koller, Nir Friedman. MIT Press, 2009. ([http://mitpress.mit.edu/books/probabilistic-graphical-models publisher page] with 20% discount code DKPGM12)&lt;br /&gt;
* [http://www.amazon.co.uk/Understanding-Vision-Theory-Models-Data/dp/0199564663 Understanding Vision: theory, models, and data]. Li Zhaoping. Oxford University Press, 2014. ([http://ukcatalogue.oup.com/product/9780199564668.do publisher page])&lt;br /&gt;
* [http://www.amazon.co.uk/Dictionary-Computer-Vision-Image-Processing/dp/1119941865 Dictionary of Computer Vision and Image Processing, 2nd Edition]. Robert B. Fisher, Toby P. Breckon, Kenneth Dawson-Howe, Andrew Fitzgibbon, Craig Robertson, Emanuele Trucco, Christopher K. I. Williams. Wiley, 2013. ([http://eu.wiley.com/WileyCDA/WileyTitle/productCd-1119941865.html publisher page])&lt;br /&gt;
* [http://www.amazon.co.uk/Introduction-Game-Design-Prototyping-Development-ebook/dp/B00LIYS9F0 Introduction to Game Design, Prototyping, and Development: From Concept to Playable Game with Unity and C#]. Jeremy Gibson. Addison-Wesley Professional, 2014.&lt;br /&gt;
* [http://www.amazon.co.uk/Regularization-Optimization-Kernels-Support-Machines/dp/1482241390 Regularization, Optimization, Kernels, and Support Vector Machines]. Johan A.K. Suykens, Marco Signoretto, Andreas Argyriou. Chapman and Hall/CRC, 2014. ([http://www.crcpress.com/product/isbn/9781482241396 publisher page])&lt;br /&gt;
&lt;br /&gt;
== Autumn 2013 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in October 2013, and arrived between November 2013 and June 2014.&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.co.uk/Gesture-Speech-Sign-Lynn-Messing/dp/019852451X Gesture, Speech, and Sign]. Lynn Messing, Ruth Campbell. Oxford University Press, 1999.&lt;br /&gt;
* [http://www.amazon.co.uk/OpenCV-Computer-Application-Programming-Cookbook/dp/1849513244/ OpenCV 2 Computer Vision Application Programming Cookbook]. Robert Laganière. Pack Publishing, May 2011.&lt;br /&gt;
* [http://www.amazon.co.uk/Brave-NUI-World-Designing-Interfaces/dp/0123822319 Brave NUI World: Designing Natural User Interfaces for Touch and Gesture]. Daniel Wigdor, Dennis Wixon. Morgan Kaufmann, April 2011.&lt;br /&gt;
* [http://www.amazon.co.uk/Probabilistic-Robotics-Intelligent-Autonomous-Agents/dp/0262201623 Probabilistic Robotics]. Sebastian Thrun, Wolfram Burgard, Dieter Fox. MIT Press, 2005.&lt;br /&gt;
* [http://www.amazon.co.uk/Frontiers-Human-Robot-Interaction-Advances-Studies/dp/9027204551 New Frontiers in Human-Robot Interaction] ([http://homepages.feis.herts.ac.uk/~comqkd/NFHRI-AIS-2011.pdf link2]). Kerstin Dautenhahn and Joe Saunder. John Benjamins Publishing Company, 2011.&lt;br /&gt;
* [http://mitpress.mit.edu/catalog/item/default.asp?ttype=2&amp;amp;tid=12814&amp;amp;mode=toc An Interdisciplinary Introduction to Image Processing]. Steven L. Tanimoto. MIT Press, May 2012.&lt;br /&gt;
* [http://www.amazon.co.uk/Machine-Learning-Probabilistic-Perspective-Computation/dp/0262018020 Machine Learning: A Probabilistic Perspective]. Kevin Murphy. MIT Press, October 2012.&lt;br /&gt;
* [http://www.cambridge.org/us/knowledge/discountpromotion/?site_locale=en_US&amp;amp;code=L2BRML Bayesian Reasoning and Machine Learning] (this link provides a 20% discount, you can change currency at checkout) David Barber. Cambridge University Press, February 2012.&lt;br /&gt;
* [http://www.amazon.co.uk/Active-Learning-Burr-Settles/dp/1608457257/ Active Learning: Synthesis Lectures on Artificial Intelligence and Machine Learning]. Burr Settles. Morgan &amp;amp; Claypool, 2012.&lt;br /&gt;
&lt;br /&gt;
== Summer 2011 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in the summer of 2011, and arrived on 2011-11-28.&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.com/Plasticity-Visual-System-Genes-Circuits/dp/0387281894 Plasticity in the Visual System: From Genes to Circuits], Raphael Pinaud (Editor), Liisa A. Tremere (Editor), Peter de Weerd, Springer 2006.&lt;br /&gt;
* [http://www.springer.com/engineering/robotics/book/978-3-540-23957-4 Springer Handbook of Robotics]. Bruno Siciliano, Oussama Khatib (Editors). Springer, 2008.&lt;br /&gt;
* [http://www.amazon.com/Human-Motor-Control-Second-Rosenbaum/dp/0123742269 Human Motor Control], David Rosenbaum. Elsevier/Academic Press, 2009.&lt;br /&gt;
* [http://www.amazon.com/Computer-Vision-Approach-David-Forsyth/dp/0130851981 Computer vision, A modern approach], David Forsyth and Jean Ponce.  &lt;br /&gt;
* [http://www.amazon.fr/Pattern-Recognition-Machine-Learning-Christopher/dp/0387310738/sr=8-1/qid=1158928255/ref=sr_1_1/402-9555855-8053710?ie=UTF8&amp;amp;s=english-books Pattern recognition and machine learning ], Christopher M. Bishop&lt;br /&gt;
&lt;br /&gt;
= Misc =&lt;br /&gt;
&lt;br /&gt;
== Discarded ==&lt;br /&gt;
&lt;br /&gt;
Books that were considered for purchase but not ordered:&lt;br /&gt;
&lt;br /&gt;
* [https://www.amazon.co.uk/Exploring-Robotic-Minds-Consciousness-Self-Organizing/dp/0190281065 Exploring Robotic Minds: Actions, Symbols, and Consciousness as Self-Organizing Dynamic Phenomena]. Jun Tani. OUP USA, 2016. ISBN 978-0190281069.&lt;br /&gt;
* [http://www.amazon.co.uk/Sparse-Modeling-Algorithms-Applications-Recognition/dp/1439828695 Sparse Modeling: Theory, Algorithms, and Applications]. Irina Rish, Genady Grabarnik. CRC Press, 2014.&lt;br /&gt;
* [http://www.amazon.co.uk/Sociorobot-World-Intelligent-Automation-Engineering-ebook/dp/B011QM0BBS Sociorobot World: A Guided Tour for All]. Spyros Tzafestas. Springer, 2016.&lt;br /&gt;
* [https://www.amazon.co.uk/Understanding-Machine-Learning-Theory-Algorithms-ebook/dp/1107512824 Understanding Machine Learning: From Theory To Algorithms]. Shai Shalev-Shwartz, Shai Ben-David. Cambridge University Press, 2015. ISBN 978-1107512825&lt;br /&gt;
* [https://www.amazon.co.uk/Computational-Integrating-Language-Synthesis-Lectures/dp/1608451127 Computational Methods for Integrating Vision and Language]. Kobus Barnard. Morgan &amp;amp; Claypool, 2016. ISBN 978-1608451128.&lt;br /&gt;
* [http://www.amazon.co.uk/OpenCV-3-Blueprints-Joseph-Howse/dp/1784399752 OpenCV 3 Blueprints]. Joseph Howse, Steven Puttemans, Quan Hua, Utkarsh Sinha. Packt Publishing, 2015. ISBN 978-1784399757.&lt;br /&gt;
* [https://www.amazon.co.uk/Time-Modeling-Computation-Inference-Statistical/dp/1420093363 Time Series: Modeling, Computation, and Inference]. Raquel Prado, Mike West. Chapman and Hall/CRC, 2010. ISBN 978-1420093360&lt;br /&gt;
&lt;br /&gt;
== Not available ==&lt;br /&gt;
&lt;br /&gt;
Books that are likely not available (from previous purchase attempts):&lt;br /&gt;
&lt;br /&gt;
* [http://www.oreilly.com/data/free/real-world-active-learning.csp Real-World Active Learning: Applications and strategies for human-in-the-loop machine learning]. Ted Cuzzillo. O&#039;Reilly, March 2015.&lt;br /&gt;
&lt;br /&gt;
[[Category:Vislab]]&lt;/div&gt;</summary>
		<author><name>Giovanni Saponaro</name></author>
	</entry>
	<entry>
		<id>http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=VisLab_book_wishlist&amp;diff=7048</id>
		<title>VisLab book wishlist</title>
		<link rel="alternate" type="text/html" href="http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=VisLab_book_wishlist&amp;diff=7048"/>
		<updated>2018-09-28T09:29:12Z</updated>

		<summary type="html">&lt;p&gt;Giovanni Saponaro: Autumn 2018 batch: add order date&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;If you need a new book for your research, please add it to this list:&lt;br /&gt;
&lt;br /&gt;
* Title. Authors. Publisher, year. ISBN code.&lt;br /&gt;
* [https://www.amazon.co.uk/Human-Robot-Interaction-Social-Robotics-Takayuki/dp/1138071692/ Human-Robot Interaction in Social Robotics]. Takayuki Kanda, Hirosihi Ishiguro. CRC Press, 2017. ISBN 978-1138071698.&lt;br /&gt;
* [https://www.amazon.co.uk/Emotional-Design-Human-Robot-Interaction-Human-Computer/dp/3319967215 Emotional Design in Human-Robot Interaction: Theory, Methods and Applications]. Hande Ayanoglu, Emilia Duarte. Springer, 2019. ISBN 978-3319967219.&lt;br /&gt;
&lt;br /&gt;
= Already ordered =&lt;br /&gt;
&lt;br /&gt;
The following orders have already been dispatched.&lt;br /&gt;
&lt;br /&gt;
== Autumn 2018 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in September 2018 and arrived in xxx 2018.&lt;br /&gt;
&lt;br /&gt;
* [https://www.amazon.co.uk/Book-Why-Science-Cause-Effect/dp/0241242630 The Book of Why: The New Science of Cause and Effect]. Judea Pearl, Dana Mackenzie. Allen Lane, 2018. ISBN 978-0241242636.&lt;br /&gt;
* [https://www.amazon.co.uk/Understanding-Vision-Theory-Models-Data/dp/0198829361 Understanding Vision: Theory, Models, and Data, Reprint Edition]. Li Zhaoping. Oxford University Press, 2018. ISBN 978-0198829362.&lt;br /&gt;
* [https://www.amazon.co.uk/Video-Influences-Aggression-Cognition-Attention/dp/3319954946 Video Game Influences on Aggression, Cognition, and Attention]. Christopher J. Ferguson. Springer, 2018. ISBN 978-3319954943.&lt;br /&gt;
&lt;br /&gt;
== Spring 2018 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in June 2018 and arrived in xxx 2018.&lt;br /&gt;
&lt;br /&gt;
* [https://www.amazon.co.uk/Design-Report-Experiments-Andy-Field/dp/0761973834 How to Design and Report Experiments]. Andy Field, Graham Hole. Sage, 2003. ISBN 978-0761973836.&lt;br /&gt;
* [https://www.amazon.co.uk/Non-verbal-Communication-Human-Interaction-International/dp/1285083512/ Nonverbal Communication in Human Interaction]. Mark Knapp, Terrence Horgan, Judith Hall. Cengage, 2014. ISBN 978-1285083513.&lt;br /&gt;
* [https://www.amazon.co.uk/3D-Printing-Handbook-Technologies-applications/dp/9082748509/ The 3D Printing Handbook: Technologies, design and applications]. Ben Redwood, Filemon Schöffer, Brian Garret. 3D Hubs B.V., 2017. ISBN 978-9082748505.&lt;br /&gt;
&lt;br /&gt;
== Autumn 2017 batch ==&lt;br /&gt;
&lt;br /&gt;
This book was ordered in November 2017 and arrived in January 2018.&lt;br /&gt;
&lt;br /&gt;
* [https://www.amazon.co.uk/Theoretical-Neuroscience-Computational-Mathematical-Modeling/dp/0262541858 Theoretical Neuroscience: Computational and Mathematical Modeling of Neural Systems]. Peter Dayan, ‎L. F. Abbott. MIT Press, 2005. ISBN 978-0262541855.&lt;br /&gt;
&lt;br /&gt;
== Spring 2017 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in April 2017 and arrived in May 2017.&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.co.uk/Ecological-Approach-Visual-Perception-Psychology/dp/1848725787 The Ecological Approach to Visual Perception: Classic Edition]. James J. Gibson. Psychology Press, 2014. ISBN 978-1848725782.&lt;br /&gt;
* [https://www.amazon.co.uk/Effective-Modern-Specific-Ways-Improve/dp/1491903996 Effective Modern C++: 42 Specific Ways to Improve Your Use of C++11 and C++14]. Scott Meyers. O&#039;Reilly, 2014. ISBN 978-1491903995.&lt;br /&gt;
* [https://www.amazon.co.uk/Hand-Mind-Gestures-Reveal-Thought/dp/0226561348 Hand and Mind: What Gestures Reveal about Thought]. David McNeill. University Of Chicago Press, 1996. ISBN 978-0226561349.&lt;br /&gt;
* [https://www.amazon.co.uk/Principles-Neural-Science-Fifth-Kandel/dp/0071390111 Principles of Neural Science, Fifth Edition]. Eric R. Kandel, James H. Schwartz, Thomas M. Jessell, Steven A. Siegelbaum, A. J. Hudspeth. McGraw-Hill, 2012. ISBN 978-0071390118&lt;br /&gt;
&lt;br /&gt;
== Winter 2016 batch ==&lt;br /&gt;
&lt;br /&gt;
This book was ordered in November 2016 and arrived in April 2017.&lt;br /&gt;
&lt;br /&gt;
* [https://www.amazon.co.uk/Deep-Learning-Adaptive-Computation-Machine/dp/0262035618 Deep Learning]. Ian Goodfellow, Yoshua Bengio, Aaron Courville. MIT Press, 2016. ISBN 978-0262035613&lt;br /&gt;
&lt;br /&gt;
== Spring 2016 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in March 2016, and arrived between May 2016 and February 2017 (Learning OpenCV 3).&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.co.uk/gp/product/1491937998 Learning OpenCV 3: Computer Vision in C++ with the OpenCV Library]. Adrian Kaehler, Gary Bradski. O&#039;Reilly Media, 2016.&lt;br /&gt;
* [http://www.amazon.co.uk/Mastering-Robotics-Programming-Lentin-Joseph/dp/1783551798 Mastering ROS for Robotics Programming]. Lentin Joseph. Packt Publishing, 2015.&lt;br /&gt;
* [http://www.amazon.co.uk/Artificial-Cognitive-Systems-David-Vernon/dp/0262028387 Artificial Cognitive Systems: A Primer]. David Vernon. MIT Press, 2015.&lt;br /&gt;
* [http://www.amazon.co.uk/Developmental-Robotics-Babies-Intelligent-Autonomous/dp/0262028018 Developmental Robotics: From Babies to Robots]. Angelo Cangelosi, Matthew Schlesinger. MIT Press, 2015.&lt;br /&gt;
* [http://www.amazon.co.uk/Machine-Learning-Optimization-Perspective-Developers/dp/0128015225 Machine Learning: A Bayesian and Optimization Perspective]. Sergios Theodoridis. Academic Press, March 2015.&lt;br /&gt;
* [http://www.amazon.co.uk/Gaussian-Processes-Machine-Learning-Rasmussen/dp/026218253X Gaussian Processes for Machine Learning]. Carl Edward Rasmussen, Christopher K. I. Williams. MIT Press, 2006.&lt;br /&gt;
* [http://www.amazon.co.uk/Designing-Sociable-Intelligent-Robotics-Autonomous/dp/0262025108 Designing Sociable Robots], Cynthia Breazeal. MIT Press, 2002.&lt;br /&gt;
&lt;br /&gt;
== Autumn 2014 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in November 2014, and arrived between December 2014 and February 2015.&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.co.uk/Probabilistic-Graphical-Models-Principles-Computation/dp/0262013193 Probabilistic Graphical Models: Principles and Techniques]. Daphne Koller, Nir Friedman. MIT Press, 2009. ([http://mitpress.mit.edu/books/probabilistic-graphical-models publisher page] with 20% discount code DKPGM12)&lt;br /&gt;
* [http://www.amazon.co.uk/Understanding-Vision-Theory-Models-Data/dp/0199564663 Understanding Vision: theory, models, and data]. Li Zhaoping. Oxford University Press, 2014. ([http://ukcatalogue.oup.com/product/9780199564668.do publisher page])&lt;br /&gt;
* [http://www.amazon.co.uk/Dictionary-Computer-Vision-Image-Processing/dp/1119941865 Dictionary of Computer Vision and Image Processing, 2nd Edition]. Robert B. Fisher, Toby P. Breckon, Kenneth Dawson-Howe, Andrew Fitzgibbon, Craig Robertson, Emanuele Trucco, Christopher K. I. Williams. Wiley, 2013. ([http://eu.wiley.com/WileyCDA/WileyTitle/productCd-1119941865.html publisher page])&lt;br /&gt;
* [http://www.amazon.co.uk/Introduction-Game-Design-Prototyping-Development-ebook/dp/B00LIYS9F0 Introduction to Game Design, Prototyping, and Development: From Concept to Playable Game with Unity and C#]. Jeremy Gibson. Addison-Wesley Professional, 2014.&lt;br /&gt;
* [http://www.amazon.co.uk/Regularization-Optimization-Kernels-Support-Machines/dp/1482241390 Regularization, Optimization, Kernels, and Support Vector Machines]. Johan A.K. Suykens, Marco Signoretto, Andreas Argyriou. Chapman and Hall/CRC, 2014. ([http://www.crcpress.com/product/isbn/9781482241396 publisher page])&lt;br /&gt;
&lt;br /&gt;
== Autumn 2013 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in October 2013, and arrived between November 2013 and June 2014.&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.co.uk/Gesture-Speech-Sign-Lynn-Messing/dp/019852451X Gesture, Speech, and Sign]. Lynn Messing, Ruth Campbell. Oxford University Press, 1999.&lt;br /&gt;
* [http://www.amazon.co.uk/OpenCV-Computer-Application-Programming-Cookbook/dp/1849513244/ OpenCV 2 Computer Vision Application Programming Cookbook]. Robert Laganière. Pack Publishing, May 2011.&lt;br /&gt;
* [http://www.amazon.co.uk/Brave-NUI-World-Designing-Interfaces/dp/0123822319 Brave NUI World: Designing Natural User Interfaces for Touch and Gesture]. Daniel Wigdor, Dennis Wixon. Morgan Kaufmann, April 2011.&lt;br /&gt;
* [http://www.amazon.co.uk/Probabilistic-Robotics-Intelligent-Autonomous-Agents/dp/0262201623 Probabilistic Robotics]. Sebastian Thrun, Wolfram Burgard, Dieter Fox. MIT Press, 2005.&lt;br /&gt;
* [http://www.amazon.co.uk/Frontiers-Human-Robot-Interaction-Advances-Studies/dp/9027204551 New Frontiers in Human-Robot Interaction] ([http://homepages.feis.herts.ac.uk/~comqkd/NFHRI-AIS-2011.pdf link2]). Kerstin Dautenhahn and Joe Saunder. John Benjamins Publishing Company, 2011.&lt;br /&gt;
* [http://mitpress.mit.edu/catalog/item/default.asp?ttype=2&amp;amp;tid=12814&amp;amp;mode=toc An Interdisciplinary Introduction to Image Processing]. Steven L. Tanimoto. MIT Press, May 2012.&lt;br /&gt;
* [http://www.amazon.co.uk/Machine-Learning-Probabilistic-Perspective-Computation/dp/0262018020 Machine Learning: A Probabilistic Perspective]. Kevin Murphy. MIT Press, October 2012.&lt;br /&gt;
* [http://www.cambridge.org/us/knowledge/discountpromotion/?site_locale=en_US&amp;amp;code=L2BRML Bayesian Reasoning and Machine Learning] (this link provides a 20% discount, you can change currency at checkout) David Barber. Cambridge University Press, February 2012.&lt;br /&gt;
* [http://www.amazon.co.uk/Active-Learning-Burr-Settles/dp/1608457257/ Active Learning: Synthesis Lectures on Artificial Intelligence and Machine Learning]. Burr Settles. Morgan &amp;amp; Claypool, 2012.&lt;br /&gt;
&lt;br /&gt;
== Summer 2011 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in the summer of 2011, and arrived on 2011-11-28.&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.com/Plasticity-Visual-System-Genes-Circuits/dp/0387281894 Plasticity in the Visual System: From Genes to Circuits], Raphael Pinaud (Editor), Liisa A. Tremere (Editor), Peter de Weerd, Springer 2006.&lt;br /&gt;
* [http://www.springer.com/engineering/robotics/book/978-3-540-23957-4 Springer Handbook of Robotics]. Bruno Siciliano, Oussama Khatib (Editors). Springer, 2008.&lt;br /&gt;
* [http://www.amazon.com/Human-Motor-Control-Second-Rosenbaum/dp/0123742269 Human Motor Control], David Rosenbaum. Elsevier/Academic Press, 2009.&lt;br /&gt;
* [http://www.amazon.com/Computer-Vision-Approach-David-Forsyth/dp/0130851981 Computer vision, A modern approach], David Forsyth and Jean Ponce.  &lt;br /&gt;
* [http://www.amazon.fr/Pattern-Recognition-Machine-Learning-Christopher/dp/0387310738/sr=8-1/qid=1158928255/ref=sr_1_1/402-9555855-8053710?ie=UTF8&amp;amp;s=english-books Pattern recognition and machine learning ], Christopher M. Bishop&lt;br /&gt;
&lt;br /&gt;
= Misc =&lt;br /&gt;
&lt;br /&gt;
== Discarded ==&lt;br /&gt;
&lt;br /&gt;
Books that were considered for purchase but not ordered:&lt;br /&gt;
&lt;br /&gt;
* [https://www.amazon.co.uk/Exploring-Robotic-Minds-Consciousness-Self-Organizing/dp/0190281065 Exploring Robotic Minds: Actions, Symbols, and Consciousness as Self-Organizing Dynamic Phenomena]. Jun Tani. OUP USA, 2016. ISBN 978-0190281069.&lt;br /&gt;
* [http://www.amazon.co.uk/Sparse-Modeling-Algorithms-Applications-Recognition/dp/1439828695 Sparse Modeling: Theory, Algorithms, and Applications]. Irina Rish, Genady Grabarnik. CRC Press, 2014.&lt;br /&gt;
* [http://www.amazon.co.uk/Sociorobot-World-Intelligent-Automation-Engineering-ebook/dp/B011QM0BBS Sociorobot World: A Guided Tour for All]. Spyros Tzafestas. Springer, 2016.&lt;br /&gt;
* [https://www.amazon.co.uk/Understanding-Machine-Learning-Theory-Algorithms-ebook/dp/1107512824 Understanding Machine Learning: From Theory To Algorithms]. Shai Shalev-Shwartz, Shai Ben-David. Cambridge University Press, 2015. ISBN 978-1107512825&lt;br /&gt;
* [https://www.amazon.co.uk/Computational-Integrating-Language-Synthesis-Lectures/dp/1608451127 Computational Methods for Integrating Vision and Language]. Kobus Barnard. Morgan &amp;amp; Claypool, 2016. ISBN 978-1608451128.&lt;br /&gt;
* [http://www.amazon.co.uk/OpenCV-3-Blueprints-Joseph-Howse/dp/1784399752 OpenCV 3 Blueprints]. Joseph Howse, Steven Puttemans, Quan Hua, Utkarsh Sinha. Packt Publishing, 2015. ISBN 978-1784399757.&lt;br /&gt;
* [https://www.amazon.co.uk/Time-Modeling-Computation-Inference-Statistical/dp/1420093363 Time Series: Modeling, Computation, and Inference]. Raquel Prado, Mike West. Chapman and Hall/CRC, 2010. ISBN 978-1420093360&lt;br /&gt;
&lt;br /&gt;
== Not available ==&lt;br /&gt;
&lt;br /&gt;
Books that are likely not available (from previous purchase attempts):&lt;br /&gt;
&lt;br /&gt;
* [http://www.oreilly.com/data/free/real-world-active-learning.csp Real-World Active Learning: Applications and strategies for human-in-the-loop machine learning]. Ted Cuzzillo. O&#039;Reilly, March 2015.&lt;br /&gt;
&lt;br /&gt;
[[Category:Vislab]]&lt;/div&gt;</summary>
		<author><name>Giovanni Saponaro</name></author>
	</entry>
	<entry>
		<id>http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=VisLab_book_wishlist&amp;diff=7047</id>
		<title>VisLab book wishlist</title>
		<link rel="alternate" type="text/html" href="http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=VisLab_book_wishlist&amp;diff=7047"/>
		<updated>2018-09-27T11:06:34Z</updated>

		<summary type="html">&lt;p&gt;Giovanni Saponaro: add two HRI books to wishlist&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;If you need a new book for your research, please add it to this list:&lt;br /&gt;
&lt;br /&gt;
* Title. Authors. Publisher, year. ISBN code.&lt;br /&gt;
* [https://www.amazon.co.uk/Human-Robot-Interaction-Social-Robotics-Takayuki/dp/1138071692/ Human-Robot Interaction in Social Robotics]. Takayuki Kanda, Hirosihi Ishiguro. CRC Press, 2017. ISBN 978-1138071698.&lt;br /&gt;
* [https://www.amazon.co.uk/Emotional-Design-Human-Robot-Interaction-Human-Computer/dp/3319967215 Emotional Design in Human-Robot Interaction: Theory, Methods and Applications]. Hande Ayanoglu, Emilia Duarte. Springer, 2019. ISBN 978-3319967219.&lt;br /&gt;
&lt;br /&gt;
= Already ordered =&lt;br /&gt;
&lt;br /&gt;
The following orders have already been dispatched.&lt;br /&gt;
&lt;br /&gt;
== Autumn 2018 batch ==&lt;br /&gt;
&lt;br /&gt;
* [https://www.amazon.co.uk/Book-Why-Science-Cause-Effect/dp/0241242630 The Book of Why: The New Science of Cause and Effect]. Judea Pearl, Dana Mackenzie. Allen Lane, 2018. ISBN 978-0241242636.&lt;br /&gt;
* [https://www.amazon.co.uk/Understanding-Vision-Theory-Models-Data/dp/0198829361 Understanding Vision: Theory, Models, and Data, Reprint Edition]. Li Zhaoping. Oxford University Press, 2018. ISBN 978-0198829362.&lt;br /&gt;
* [https://www.amazon.co.uk/Video-Influences-Aggression-Cognition-Attention/dp/3319954946 Video Game Influences on Aggression, Cognition, and Attention]. Christopher J. Ferguson. Springer, 2018. ISBN 978-3319954943.&lt;br /&gt;
&lt;br /&gt;
== Spring 2018 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in June 2018 and arrived in xxx 2018.&lt;br /&gt;
&lt;br /&gt;
* [https://www.amazon.co.uk/Design-Report-Experiments-Andy-Field/dp/0761973834 How to Design and Report Experiments]. Andy Field, Graham Hole. Sage, 2003. ISBN 978-0761973836.&lt;br /&gt;
* [https://www.amazon.co.uk/Non-verbal-Communication-Human-Interaction-International/dp/1285083512/ Nonverbal Communication in Human Interaction]. Mark Knapp, Terrence Horgan, Judith Hall. Cengage, 2014. ISBN 978-1285083513.&lt;br /&gt;
* [https://www.amazon.co.uk/3D-Printing-Handbook-Technologies-applications/dp/9082748509/ The 3D Printing Handbook: Technologies, design and applications]. Ben Redwood, Filemon Schöffer, Brian Garret. 3D Hubs B.V., 2017. ISBN 978-9082748505.&lt;br /&gt;
&lt;br /&gt;
== Autumn 2017 batch ==&lt;br /&gt;
&lt;br /&gt;
This book was ordered in November 2017 and arrived in January 2018.&lt;br /&gt;
&lt;br /&gt;
* [https://www.amazon.co.uk/Theoretical-Neuroscience-Computational-Mathematical-Modeling/dp/0262541858 Theoretical Neuroscience: Computational and Mathematical Modeling of Neural Systems]. Peter Dayan, ‎L. F. Abbott. MIT Press, 2005. ISBN 978-0262541855.&lt;br /&gt;
&lt;br /&gt;
== Spring 2017 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in April 2017 and arrived in May 2017.&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.co.uk/Ecological-Approach-Visual-Perception-Psychology/dp/1848725787 The Ecological Approach to Visual Perception: Classic Edition]. James J. Gibson. Psychology Press, 2014. ISBN 978-1848725782.&lt;br /&gt;
* [https://www.amazon.co.uk/Effective-Modern-Specific-Ways-Improve/dp/1491903996 Effective Modern C++: 42 Specific Ways to Improve Your Use of C++11 and C++14]. Scott Meyers. O&#039;Reilly, 2014. ISBN 978-1491903995.&lt;br /&gt;
* [https://www.amazon.co.uk/Hand-Mind-Gestures-Reveal-Thought/dp/0226561348 Hand and Mind: What Gestures Reveal about Thought]. David McNeill. University Of Chicago Press, 1996. ISBN 978-0226561349.&lt;br /&gt;
* [https://www.amazon.co.uk/Principles-Neural-Science-Fifth-Kandel/dp/0071390111 Principles of Neural Science, Fifth Edition]. Eric R. Kandel, James H. Schwartz, Thomas M. Jessell, Steven A. Siegelbaum, A. J. Hudspeth. McGraw-Hill, 2012. ISBN 978-0071390118&lt;br /&gt;
&lt;br /&gt;
== Winter 2016 batch ==&lt;br /&gt;
&lt;br /&gt;
This book was ordered in November 2016 and arrived in April 2017.&lt;br /&gt;
&lt;br /&gt;
* [https://www.amazon.co.uk/Deep-Learning-Adaptive-Computation-Machine/dp/0262035618 Deep Learning]. Ian Goodfellow, Yoshua Bengio, Aaron Courville. MIT Press, 2016. ISBN 978-0262035613&lt;br /&gt;
&lt;br /&gt;
== Spring 2016 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in March 2016, and arrived between May 2016 and February 2017 (Learning OpenCV 3).&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.co.uk/gp/product/1491937998 Learning OpenCV 3: Computer Vision in C++ with the OpenCV Library]. Adrian Kaehler, Gary Bradski. O&#039;Reilly Media, 2016.&lt;br /&gt;
* [http://www.amazon.co.uk/Mastering-Robotics-Programming-Lentin-Joseph/dp/1783551798 Mastering ROS for Robotics Programming]. Lentin Joseph. Packt Publishing, 2015.&lt;br /&gt;
* [http://www.amazon.co.uk/Artificial-Cognitive-Systems-David-Vernon/dp/0262028387 Artificial Cognitive Systems: A Primer]. David Vernon. MIT Press, 2015.&lt;br /&gt;
* [http://www.amazon.co.uk/Developmental-Robotics-Babies-Intelligent-Autonomous/dp/0262028018 Developmental Robotics: From Babies to Robots]. Angelo Cangelosi, Matthew Schlesinger. MIT Press, 2015.&lt;br /&gt;
* [http://www.amazon.co.uk/Machine-Learning-Optimization-Perspective-Developers/dp/0128015225 Machine Learning: A Bayesian and Optimization Perspective]. Sergios Theodoridis. Academic Press, March 2015.&lt;br /&gt;
* [http://www.amazon.co.uk/Gaussian-Processes-Machine-Learning-Rasmussen/dp/026218253X Gaussian Processes for Machine Learning]. Carl Edward Rasmussen, Christopher K. I. Williams. MIT Press, 2006.&lt;br /&gt;
* [http://www.amazon.co.uk/Designing-Sociable-Intelligent-Robotics-Autonomous/dp/0262025108 Designing Sociable Robots], Cynthia Breazeal. MIT Press, 2002.&lt;br /&gt;
&lt;br /&gt;
== Autumn 2014 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in November 2014, and arrived between December 2014 and February 2015.&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.co.uk/Probabilistic-Graphical-Models-Principles-Computation/dp/0262013193 Probabilistic Graphical Models: Principles and Techniques]. Daphne Koller, Nir Friedman. MIT Press, 2009. ([http://mitpress.mit.edu/books/probabilistic-graphical-models publisher page] with 20% discount code DKPGM12)&lt;br /&gt;
* [http://www.amazon.co.uk/Understanding-Vision-Theory-Models-Data/dp/0199564663 Understanding Vision: theory, models, and data]. Li Zhaoping. Oxford University Press, 2014. ([http://ukcatalogue.oup.com/product/9780199564668.do publisher page])&lt;br /&gt;
* [http://www.amazon.co.uk/Dictionary-Computer-Vision-Image-Processing/dp/1119941865 Dictionary of Computer Vision and Image Processing, 2nd Edition]. Robert B. Fisher, Toby P. Breckon, Kenneth Dawson-Howe, Andrew Fitzgibbon, Craig Robertson, Emanuele Trucco, Christopher K. I. Williams. Wiley, 2013. ([http://eu.wiley.com/WileyCDA/WileyTitle/productCd-1119941865.html publisher page])&lt;br /&gt;
* [http://www.amazon.co.uk/Introduction-Game-Design-Prototyping-Development-ebook/dp/B00LIYS9F0 Introduction to Game Design, Prototyping, and Development: From Concept to Playable Game with Unity and C#]. Jeremy Gibson. Addison-Wesley Professional, 2014.&lt;br /&gt;
* [http://www.amazon.co.uk/Regularization-Optimization-Kernels-Support-Machines/dp/1482241390 Regularization, Optimization, Kernels, and Support Vector Machines]. Johan A.K. Suykens, Marco Signoretto, Andreas Argyriou. Chapman and Hall/CRC, 2014. ([http://www.crcpress.com/product/isbn/9781482241396 publisher page])&lt;br /&gt;
&lt;br /&gt;
== Autumn 2013 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in October 2013, and arrived between November 2013 and June 2014.&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.co.uk/Gesture-Speech-Sign-Lynn-Messing/dp/019852451X Gesture, Speech, and Sign]. Lynn Messing, Ruth Campbell. Oxford University Press, 1999.&lt;br /&gt;
* [http://www.amazon.co.uk/OpenCV-Computer-Application-Programming-Cookbook/dp/1849513244/ OpenCV 2 Computer Vision Application Programming Cookbook]. Robert Laganière. Pack Publishing, May 2011.&lt;br /&gt;
* [http://www.amazon.co.uk/Brave-NUI-World-Designing-Interfaces/dp/0123822319 Brave NUI World: Designing Natural User Interfaces for Touch and Gesture]. Daniel Wigdor, Dennis Wixon. Morgan Kaufmann, April 2011.&lt;br /&gt;
* [http://www.amazon.co.uk/Probabilistic-Robotics-Intelligent-Autonomous-Agents/dp/0262201623 Probabilistic Robotics]. Sebastian Thrun, Wolfram Burgard, Dieter Fox. MIT Press, 2005.&lt;br /&gt;
* [http://www.amazon.co.uk/Frontiers-Human-Robot-Interaction-Advances-Studies/dp/9027204551 New Frontiers in Human-Robot Interaction] ([http://homepages.feis.herts.ac.uk/~comqkd/NFHRI-AIS-2011.pdf link2]). Kerstin Dautenhahn and Joe Saunder. John Benjamins Publishing Company, 2011.&lt;br /&gt;
* [http://mitpress.mit.edu/catalog/item/default.asp?ttype=2&amp;amp;tid=12814&amp;amp;mode=toc An Interdisciplinary Introduction to Image Processing]. Steven L. Tanimoto. MIT Press, May 2012.&lt;br /&gt;
* [http://www.amazon.co.uk/Machine-Learning-Probabilistic-Perspective-Computation/dp/0262018020 Machine Learning: A Probabilistic Perspective]. Kevin Murphy. MIT Press, October 2012.&lt;br /&gt;
* [http://www.cambridge.org/us/knowledge/discountpromotion/?site_locale=en_US&amp;amp;code=L2BRML Bayesian Reasoning and Machine Learning] (this link provides a 20% discount, you can change currency at checkout) David Barber. Cambridge University Press, February 2012.&lt;br /&gt;
* [http://www.amazon.co.uk/Active-Learning-Burr-Settles/dp/1608457257/ Active Learning: Synthesis Lectures on Artificial Intelligence and Machine Learning]. Burr Settles. Morgan &amp;amp; Claypool, 2012.&lt;br /&gt;
&lt;br /&gt;
== Summer 2011 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in the summer of 2011, and arrived on 2011-11-28.&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.com/Plasticity-Visual-System-Genes-Circuits/dp/0387281894 Plasticity in the Visual System: From Genes to Circuits], Raphael Pinaud (Editor), Liisa A. Tremere (Editor), Peter de Weerd, Springer 2006.&lt;br /&gt;
* [http://www.springer.com/engineering/robotics/book/978-3-540-23957-4 Springer Handbook of Robotics]. Bruno Siciliano, Oussama Khatib (Editors). Springer, 2008.&lt;br /&gt;
* [http://www.amazon.com/Human-Motor-Control-Second-Rosenbaum/dp/0123742269 Human Motor Control], David Rosenbaum. Elsevier/Academic Press, 2009.&lt;br /&gt;
* [http://www.amazon.com/Computer-Vision-Approach-David-Forsyth/dp/0130851981 Computer vision, A modern approach], David Forsyth and Jean Ponce.  &lt;br /&gt;
* [http://www.amazon.fr/Pattern-Recognition-Machine-Learning-Christopher/dp/0387310738/sr=8-1/qid=1158928255/ref=sr_1_1/402-9555855-8053710?ie=UTF8&amp;amp;s=english-books Pattern recognition and machine learning ], Christopher M. Bishop&lt;br /&gt;
&lt;br /&gt;
= Misc =&lt;br /&gt;
&lt;br /&gt;
== Discarded ==&lt;br /&gt;
&lt;br /&gt;
Books that were considered for purchase but not ordered:&lt;br /&gt;
&lt;br /&gt;
* [https://www.amazon.co.uk/Exploring-Robotic-Minds-Consciousness-Self-Organizing/dp/0190281065 Exploring Robotic Minds: Actions, Symbols, and Consciousness as Self-Organizing Dynamic Phenomena]. Jun Tani. OUP USA, 2016. ISBN 978-0190281069.&lt;br /&gt;
* [http://www.amazon.co.uk/Sparse-Modeling-Algorithms-Applications-Recognition/dp/1439828695 Sparse Modeling: Theory, Algorithms, and Applications]. Irina Rish, Genady Grabarnik. CRC Press, 2014.&lt;br /&gt;
* [http://www.amazon.co.uk/Sociorobot-World-Intelligent-Automation-Engineering-ebook/dp/B011QM0BBS Sociorobot World: A Guided Tour for All]. Spyros Tzafestas. Springer, 2016.&lt;br /&gt;
* [https://www.amazon.co.uk/Understanding-Machine-Learning-Theory-Algorithms-ebook/dp/1107512824 Understanding Machine Learning: From Theory To Algorithms]. Shai Shalev-Shwartz, Shai Ben-David. Cambridge University Press, 2015. ISBN 978-1107512825&lt;br /&gt;
* [https://www.amazon.co.uk/Computational-Integrating-Language-Synthesis-Lectures/dp/1608451127 Computational Methods for Integrating Vision and Language]. Kobus Barnard. Morgan &amp;amp; Claypool, 2016. ISBN 978-1608451128.&lt;br /&gt;
* [http://www.amazon.co.uk/OpenCV-3-Blueprints-Joseph-Howse/dp/1784399752 OpenCV 3 Blueprints]. Joseph Howse, Steven Puttemans, Quan Hua, Utkarsh Sinha. Packt Publishing, 2015. ISBN 978-1784399757.&lt;br /&gt;
* [https://www.amazon.co.uk/Time-Modeling-Computation-Inference-Statistical/dp/1420093363 Time Series: Modeling, Computation, and Inference]. Raquel Prado, Mike West. Chapman and Hall/CRC, 2010. ISBN 978-1420093360&lt;br /&gt;
&lt;br /&gt;
== Not available ==&lt;br /&gt;
&lt;br /&gt;
Books that are likely not available (from previous purchase attempts):&lt;br /&gt;
&lt;br /&gt;
* [http://www.oreilly.com/data/free/real-world-active-learning.csp Real-World Active Learning: Applications and strategies for human-in-the-loop machine learning]. Ted Cuzzillo. O&#039;Reilly, March 2015.&lt;br /&gt;
&lt;br /&gt;
[[Category:Vislab]]&lt;/div&gt;</summary>
		<author><name>Giovanni Saponaro</name></author>
	</entry>
	<entry>
		<id>http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=VisLab_book_wishlist&amp;diff=7046</id>
		<title>VisLab book wishlist</title>
		<link rel="alternate" type="text/html" href="http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=VisLab_book_wishlist&amp;diff=7046"/>
		<updated>2018-09-25T19:13:08Z</updated>

		<summary type="html">&lt;p&gt;Giovanni Saponaro: Autumn 2018 batch&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;If you need a new book for your research, please add it to this list:&lt;br /&gt;
&lt;br /&gt;
* Title. Authors. Publisher, year. ISBN code.&lt;br /&gt;
&lt;br /&gt;
= Already ordered =&lt;br /&gt;
&lt;br /&gt;
The following orders have already been dispatched.&lt;br /&gt;
&lt;br /&gt;
== Autumn 2018 batch ==&lt;br /&gt;
&lt;br /&gt;
* [https://www.amazon.co.uk/Book-Why-Science-Cause-Effect/dp/0241242630 The Book of Why: The New Science of Cause and Effect]. Judea Pearl, Dana Mackenzie. Allen Lane, 2018. ISBN 978-0241242636.&lt;br /&gt;
* [https://www.amazon.co.uk/Understanding-Vision-Theory-Models-Data/dp/0198829361 Understanding Vision: Theory, Models, and Data, Reprint Edition]. Li Zhaoping. Oxford University Press, 2018. ISBN 978-0198829362.&lt;br /&gt;
* [https://www.amazon.co.uk/Video-Influences-Aggression-Cognition-Attention/dp/3319954946 Video Game Influences on Aggression, Cognition, and Attention]. Christopher J. Ferguson. Springer, 2018. ISBN 978-3319954943.&lt;br /&gt;
&lt;br /&gt;
== Spring 2018 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in June 2018 and arrived in xxx 2018.&lt;br /&gt;
&lt;br /&gt;
* [https://www.amazon.co.uk/Design-Report-Experiments-Andy-Field/dp/0761973834 How to Design and Report Experiments]. Andy Field, Graham Hole. Sage, 2003. ISBN 978-0761973836.&lt;br /&gt;
* [https://www.amazon.co.uk/Non-verbal-Communication-Human-Interaction-International/dp/1285083512/ Nonverbal Communication in Human Interaction]. Mark Knapp, Terrence Horgan, Judith Hall. Cengage, 2014. ISBN 978-1285083513.&lt;br /&gt;
* [https://www.amazon.co.uk/3D-Printing-Handbook-Technologies-applications/dp/9082748509/ The 3D Printing Handbook: Technologies, design and applications]. Ben Redwood, Filemon Schöffer, Brian Garret. 3D Hubs B.V., 2017. ISBN 978-9082748505.&lt;br /&gt;
&lt;br /&gt;
== Autumn 2017 batch ==&lt;br /&gt;
&lt;br /&gt;
This book was ordered in November 2017 and arrived in January 2018.&lt;br /&gt;
&lt;br /&gt;
* [https://www.amazon.co.uk/Theoretical-Neuroscience-Computational-Mathematical-Modeling/dp/0262541858 Theoretical Neuroscience: Computational and Mathematical Modeling of Neural Systems]. Peter Dayan, ‎L. F. Abbott. MIT Press, 2005. ISBN 978-0262541855.&lt;br /&gt;
&lt;br /&gt;
== Spring 2017 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in April 2017 and arrived in May 2017.&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.co.uk/Ecological-Approach-Visual-Perception-Psychology/dp/1848725787 The Ecological Approach to Visual Perception: Classic Edition]. James J. Gibson. Psychology Press, 2014. ISBN 978-1848725782.&lt;br /&gt;
* [https://www.amazon.co.uk/Effective-Modern-Specific-Ways-Improve/dp/1491903996 Effective Modern C++: 42 Specific Ways to Improve Your Use of C++11 and C++14]. Scott Meyers. O&#039;Reilly, 2014. ISBN 978-1491903995.&lt;br /&gt;
* [https://www.amazon.co.uk/Hand-Mind-Gestures-Reveal-Thought/dp/0226561348 Hand and Mind: What Gestures Reveal about Thought]. David McNeill. University Of Chicago Press, 1996. ISBN 978-0226561349.&lt;br /&gt;
* [https://www.amazon.co.uk/Principles-Neural-Science-Fifth-Kandel/dp/0071390111 Principles of Neural Science, Fifth Edition]. Eric R. Kandel, James H. Schwartz, Thomas M. Jessell, Steven A. Siegelbaum, A. J. Hudspeth. McGraw-Hill, 2012. ISBN 978-0071390118&lt;br /&gt;
&lt;br /&gt;
== Winter 2016 batch ==&lt;br /&gt;
&lt;br /&gt;
This book was ordered in November 2016 and arrived in April 2017.&lt;br /&gt;
&lt;br /&gt;
* [https://www.amazon.co.uk/Deep-Learning-Adaptive-Computation-Machine/dp/0262035618 Deep Learning]. Ian Goodfellow, Yoshua Bengio, Aaron Courville. MIT Press, 2016. ISBN 978-0262035613&lt;br /&gt;
&lt;br /&gt;
== Spring 2016 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in March 2016, and arrived between May 2016 and February 2017 (Learning OpenCV 3).&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.co.uk/gp/product/1491937998 Learning OpenCV 3: Computer Vision in C++ with the OpenCV Library]. Adrian Kaehler, Gary Bradski. O&#039;Reilly Media, 2016.&lt;br /&gt;
* [http://www.amazon.co.uk/Mastering-Robotics-Programming-Lentin-Joseph/dp/1783551798 Mastering ROS for Robotics Programming]. Lentin Joseph. Packt Publishing, 2015.&lt;br /&gt;
* [http://www.amazon.co.uk/Artificial-Cognitive-Systems-David-Vernon/dp/0262028387 Artificial Cognitive Systems: A Primer]. David Vernon. MIT Press, 2015.&lt;br /&gt;
* [http://www.amazon.co.uk/Developmental-Robotics-Babies-Intelligent-Autonomous/dp/0262028018 Developmental Robotics: From Babies to Robots]. Angelo Cangelosi, Matthew Schlesinger. MIT Press, 2015.&lt;br /&gt;
* [http://www.amazon.co.uk/Machine-Learning-Optimization-Perspective-Developers/dp/0128015225 Machine Learning: A Bayesian and Optimization Perspective]. Sergios Theodoridis. Academic Press, March 2015.&lt;br /&gt;
* [http://www.amazon.co.uk/Gaussian-Processes-Machine-Learning-Rasmussen/dp/026218253X Gaussian Processes for Machine Learning]. Carl Edward Rasmussen, Christopher K. I. Williams. MIT Press, 2006.&lt;br /&gt;
* [http://www.amazon.co.uk/Designing-Sociable-Intelligent-Robotics-Autonomous/dp/0262025108 Designing Sociable Robots], Cynthia Breazeal. MIT Press, 2002.&lt;br /&gt;
&lt;br /&gt;
== Autumn 2014 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in November 2014, and arrived between December 2014 and February 2015.&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.co.uk/Probabilistic-Graphical-Models-Principles-Computation/dp/0262013193 Probabilistic Graphical Models: Principles and Techniques]. Daphne Koller, Nir Friedman. MIT Press, 2009. ([http://mitpress.mit.edu/books/probabilistic-graphical-models publisher page] with 20% discount code DKPGM12)&lt;br /&gt;
* [http://www.amazon.co.uk/Understanding-Vision-Theory-Models-Data/dp/0199564663 Understanding Vision: theory, models, and data]. Li Zhaoping. Oxford University Press, 2014. ([http://ukcatalogue.oup.com/product/9780199564668.do publisher page])&lt;br /&gt;
* [http://www.amazon.co.uk/Dictionary-Computer-Vision-Image-Processing/dp/1119941865 Dictionary of Computer Vision and Image Processing, 2nd Edition]. Robert B. Fisher, Toby P. Breckon, Kenneth Dawson-Howe, Andrew Fitzgibbon, Craig Robertson, Emanuele Trucco, Christopher K. I. Williams. Wiley, 2013. ([http://eu.wiley.com/WileyCDA/WileyTitle/productCd-1119941865.html publisher page])&lt;br /&gt;
* [http://www.amazon.co.uk/Introduction-Game-Design-Prototyping-Development-ebook/dp/B00LIYS9F0 Introduction to Game Design, Prototyping, and Development: From Concept to Playable Game with Unity and C#]. Jeremy Gibson. Addison-Wesley Professional, 2014.&lt;br /&gt;
* [http://www.amazon.co.uk/Regularization-Optimization-Kernels-Support-Machines/dp/1482241390 Regularization, Optimization, Kernels, and Support Vector Machines]. Johan A.K. Suykens, Marco Signoretto, Andreas Argyriou. Chapman and Hall/CRC, 2014. ([http://www.crcpress.com/product/isbn/9781482241396 publisher page])&lt;br /&gt;
&lt;br /&gt;
== Autumn 2013 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in October 2013, and arrived between November 2013 and June 2014.&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.co.uk/Gesture-Speech-Sign-Lynn-Messing/dp/019852451X Gesture, Speech, and Sign]. Lynn Messing, Ruth Campbell. Oxford University Press, 1999.&lt;br /&gt;
* [http://www.amazon.co.uk/OpenCV-Computer-Application-Programming-Cookbook/dp/1849513244/ OpenCV 2 Computer Vision Application Programming Cookbook]. Robert Laganière. Pack Publishing, May 2011.&lt;br /&gt;
* [http://www.amazon.co.uk/Brave-NUI-World-Designing-Interfaces/dp/0123822319 Brave NUI World: Designing Natural User Interfaces for Touch and Gesture]. Daniel Wigdor, Dennis Wixon. Morgan Kaufmann, April 2011.&lt;br /&gt;
* [http://www.amazon.co.uk/Probabilistic-Robotics-Intelligent-Autonomous-Agents/dp/0262201623 Probabilistic Robotics]. Sebastian Thrun, Wolfram Burgard, Dieter Fox. MIT Press, 2005.&lt;br /&gt;
* [http://www.amazon.co.uk/Frontiers-Human-Robot-Interaction-Advances-Studies/dp/9027204551 New Frontiers in Human-Robot Interaction] ([http://homepages.feis.herts.ac.uk/~comqkd/NFHRI-AIS-2011.pdf link2]). Kerstin Dautenhahn and Joe Saunder. John Benjamins Publishing Company, 2011.&lt;br /&gt;
* [http://mitpress.mit.edu/catalog/item/default.asp?ttype=2&amp;amp;tid=12814&amp;amp;mode=toc An Interdisciplinary Introduction to Image Processing]. Steven L. Tanimoto. MIT Press, May 2012.&lt;br /&gt;
* [http://www.amazon.co.uk/Machine-Learning-Probabilistic-Perspective-Computation/dp/0262018020 Machine Learning: A Probabilistic Perspective]. Kevin Murphy. MIT Press, October 2012.&lt;br /&gt;
* [http://www.cambridge.org/us/knowledge/discountpromotion/?site_locale=en_US&amp;amp;code=L2BRML Bayesian Reasoning and Machine Learning] (this link provides a 20% discount, you can change currency at checkout) David Barber. Cambridge University Press, February 2012.&lt;br /&gt;
* [http://www.amazon.co.uk/Active-Learning-Burr-Settles/dp/1608457257/ Active Learning: Synthesis Lectures on Artificial Intelligence and Machine Learning]. Burr Settles. Morgan &amp;amp; Claypool, 2012.&lt;br /&gt;
&lt;br /&gt;
== Summer 2011 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in the summer of 2011, and arrived on 2011-11-28.&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.com/Plasticity-Visual-System-Genes-Circuits/dp/0387281894 Plasticity in the Visual System: From Genes to Circuits], Raphael Pinaud (Editor), Liisa A. Tremere (Editor), Peter de Weerd, Springer 2006.&lt;br /&gt;
* [http://www.springer.com/engineering/robotics/book/978-3-540-23957-4 Springer Handbook of Robotics]. Bruno Siciliano, Oussama Khatib (Editors). Springer, 2008.&lt;br /&gt;
* [http://www.amazon.com/Human-Motor-Control-Second-Rosenbaum/dp/0123742269 Human Motor Control], David Rosenbaum. Elsevier/Academic Press, 2009.&lt;br /&gt;
* [http://www.amazon.com/Computer-Vision-Approach-David-Forsyth/dp/0130851981 Computer vision, A modern approach], David Forsyth and Jean Ponce.  &lt;br /&gt;
* [http://www.amazon.fr/Pattern-Recognition-Machine-Learning-Christopher/dp/0387310738/sr=8-1/qid=1158928255/ref=sr_1_1/402-9555855-8053710?ie=UTF8&amp;amp;s=english-books Pattern recognition and machine learning ], Christopher M. Bishop&lt;br /&gt;
&lt;br /&gt;
= Misc =&lt;br /&gt;
&lt;br /&gt;
== Discarded ==&lt;br /&gt;
&lt;br /&gt;
Books that were considered for purchase but not ordered:&lt;br /&gt;
&lt;br /&gt;
* [https://www.amazon.co.uk/Exploring-Robotic-Minds-Consciousness-Self-Organizing/dp/0190281065 Exploring Robotic Minds: Actions, Symbols, and Consciousness as Self-Organizing Dynamic Phenomena]. Jun Tani. OUP USA, 2016. ISBN 978-0190281069.&lt;br /&gt;
* [http://www.amazon.co.uk/Sparse-Modeling-Algorithms-Applications-Recognition/dp/1439828695 Sparse Modeling: Theory, Algorithms, and Applications]. Irina Rish, Genady Grabarnik. CRC Press, 2014.&lt;br /&gt;
* [http://www.amazon.co.uk/Sociorobot-World-Intelligent-Automation-Engineering-ebook/dp/B011QM0BBS Sociorobot World: A Guided Tour for All]. Spyros Tzafestas. Springer, 2016.&lt;br /&gt;
* [https://www.amazon.co.uk/Understanding-Machine-Learning-Theory-Algorithms-ebook/dp/1107512824 Understanding Machine Learning: From Theory To Algorithms]. Shai Shalev-Shwartz, Shai Ben-David. Cambridge University Press, 2015. ISBN 978-1107512825&lt;br /&gt;
* [https://www.amazon.co.uk/Computational-Integrating-Language-Synthesis-Lectures/dp/1608451127 Computational Methods for Integrating Vision and Language]. Kobus Barnard. Morgan &amp;amp; Claypool, 2016. ISBN 978-1608451128.&lt;br /&gt;
* [http://www.amazon.co.uk/OpenCV-3-Blueprints-Joseph-Howse/dp/1784399752 OpenCV 3 Blueprints]. Joseph Howse, Steven Puttemans, Quan Hua, Utkarsh Sinha. Packt Publishing, 2015. ISBN 978-1784399757.&lt;br /&gt;
* [https://www.amazon.co.uk/Time-Modeling-Computation-Inference-Statistical/dp/1420093363 Time Series: Modeling, Computation, and Inference]. Raquel Prado, Mike West. Chapman and Hall/CRC, 2010. ISBN 978-1420093360&lt;br /&gt;
&lt;br /&gt;
== Not available ==&lt;br /&gt;
&lt;br /&gt;
Books that are likely not available (from previous purchase attempts):&lt;br /&gt;
&lt;br /&gt;
* [http://www.oreilly.com/data/free/real-world-active-learning.csp Real-World Active Learning: Applications and strategies for human-in-the-loop machine learning]. Ted Cuzzillo. O&#039;Reilly, March 2015.&lt;br /&gt;
&lt;br /&gt;
[[Category:Vislab]]&lt;/div&gt;</summary>
		<author><name>Giovanni Saponaro</name></author>
	</entry>
	<entry>
		<id>http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=VisLab_book_wishlist&amp;diff=7045</id>
		<title>VisLab book wishlist</title>
		<link rel="alternate" type="text/html" href="http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=VisLab_book_wishlist&amp;diff=7045"/>
		<updated>2018-09-25T16:12:47Z</updated>

		<summary type="html">&lt;p&gt;Giovanni Saponaro: add Video Game Influences on Aggression, Cognition, and Attention&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;If you need a new book for your research, please add it to this list:&lt;br /&gt;
&lt;br /&gt;
* Title. Authors. Publisher, year. ISBN code.&lt;br /&gt;
&lt;br /&gt;
* [https://www.amazon.co.uk/Book-Why-Science-Cause-Effect/dp/0241242630 The Book of Why: The New Science of Cause and Effect]. Judea Pearl, Dana Mackenzie. Allen Lane, 2018. ISBN 978-0241242636.&lt;br /&gt;
* [https://www.amazon.co.uk/Understanding-Vision-Theory-Models-Data/dp/0198829361 Understanding Vision: Theory, Models, and Data, Reprint Edition]. Li Zhaoping. Oxford University Press, 2018. ISBN 978-0198829362.&lt;br /&gt;
* [https://www.amazon.co.uk/Video-Influences-Aggression-Cognition-Attention/dp/3319954946 Video Game Influences on Aggression, Cognition, and Attention]. Christopher J. Ferguson. Springer, 2018. ISBN 978-3319954943.&lt;br /&gt;
&lt;br /&gt;
= Already ordered =&lt;br /&gt;
&lt;br /&gt;
The following orders have already been dispatched.&lt;br /&gt;
&lt;br /&gt;
== Spring 2018 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in June 2018 and arrived in xxx 2018.&lt;br /&gt;
&lt;br /&gt;
* [https://www.amazon.co.uk/Design-Report-Experiments-Andy-Field/dp/0761973834 How to Design and Report Experiments]. Andy Field, Graham Hole. Sage, 2003. ISBN 978-0761973836.&lt;br /&gt;
* [https://www.amazon.co.uk/Non-verbal-Communication-Human-Interaction-International/dp/1285083512/ Nonverbal Communication in Human Interaction]. Mark Knapp, Terrence Horgan, Judith Hall. Cengage, 2014. ISBN 978-1285083513.&lt;br /&gt;
* [https://www.amazon.co.uk/3D-Printing-Handbook-Technologies-applications/dp/9082748509/ The 3D Printing Handbook: Technologies, design and applications]. Ben Redwood, Filemon Schöffer, Brian Garret. 3D Hubs B.V., 2017. ISBN 978-9082748505.&lt;br /&gt;
&lt;br /&gt;
== Autumn 2017 batch ==&lt;br /&gt;
&lt;br /&gt;
This book was ordered in November 2017 and arrived in January 2018.&lt;br /&gt;
&lt;br /&gt;
* [https://www.amazon.co.uk/Theoretical-Neuroscience-Computational-Mathematical-Modeling/dp/0262541858 Theoretical Neuroscience: Computational and Mathematical Modeling of Neural Systems]. Peter Dayan, ‎L. F. Abbott. MIT Press, 2005. ISBN 978-0262541855.&lt;br /&gt;
&lt;br /&gt;
== Spring 2017 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in April 2017 and arrived in May 2017.&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.co.uk/Ecological-Approach-Visual-Perception-Psychology/dp/1848725787 The Ecological Approach to Visual Perception: Classic Edition]. James J. Gibson. Psychology Press, 2014. ISBN 978-1848725782.&lt;br /&gt;
* [https://www.amazon.co.uk/Effective-Modern-Specific-Ways-Improve/dp/1491903996 Effective Modern C++: 42 Specific Ways to Improve Your Use of C++11 and C++14]. Scott Meyers. O&#039;Reilly, 2014. ISBN 978-1491903995.&lt;br /&gt;
* [https://www.amazon.co.uk/Hand-Mind-Gestures-Reveal-Thought/dp/0226561348 Hand and Mind: What Gestures Reveal about Thought]. David McNeill. University Of Chicago Press, 1996. ISBN 978-0226561349.&lt;br /&gt;
* [https://www.amazon.co.uk/Principles-Neural-Science-Fifth-Kandel/dp/0071390111 Principles of Neural Science, Fifth Edition]. Eric R. Kandel, James H. Schwartz, Thomas M. Jessell, Steven A. Siegelbaum, A. J. Hudspeth. McGraw-Hill, 2012. ISBN 978-0071390118&lt;br /&gt;
&lt;br /&gt;
== Winter 2016 batch ==&lt;br /&gt;
&lt;br /&gt;
This book was ordered in November 2016 and arrived in April 2017.&lt;br /&gt;
&lt;br /&gt;
* [https://www.amazon.co.uk/Deep-Learning-Adaptive-Computation-Machine/dp/0262035618 Deep Learning]. Ian Goodfellow, Yoshua Bengio, Aaron Courville. MIT Press, 2016. ISBN 978-0262035613&lt;br /&gt;
&lt;br /&gt;
== Spring 2016 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in March 2016, and arrived between May 2016 and February 2017 (Learning OpenCV 3).&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.co.uk/gp/product/1491937998 Learning OpenCV 3: Computer Vision in C++ with the OpenCV Library]. Adrian Kaehler, Gary Bradski. O&#039;Reilly Media, 2016.&lt;br /&gt;
* [http://www.amazon.co.uk/Mastering-Robotics-Programming-Lentin-Joseph/dp/1783551798 Mastering ROS for Robotics Programming]. Lentin Joseph. Packt Publishing, 2015.&lt;br /&gt;
* [http://www.amazon.co.uk/Artificial-Cognitive-Systems-David-Vernon/dp/0262028387 Artificial Cognitive Systems: A Primer]. David Vernon. MIT Press, 2015.&lt;br /&gt;
* [http://www.amazon.co.uk/Developmental-Robotics-Babies-Intelligent-Autonomous/dp/0262028018 Developmental Robotics: From Babies to Robots]. Angelo Cangelosi, Matthew Schlesinger. MIT Press, 2015.&lt;br /&gt;
* [http://www.amazon.co.uk/Machine-Learning-Optimization-Perspective-Developers/dp/0128015225 Machine Learning: A Bayesian and Optimization Perspective]. Sergios Theodoridis. Academic Press, March 2015.&lt;br /&gt;
* [http://www.amazon.co.uk/Gaussian-Processes-Machine-Learning-Rasmussen/dp/026218253X Gaussian Processes for Machine Learning]. Carl Edward Rasmussen, Christopher K. I. Williams. MIT Press, 2006.&lt;br /&gt;
* [http://www.amazon.co.uk/Designing-Sociable-Intelligent-Robotics-Autonomous/dp/0262025108 Designing Sociable Robots], Cynthia Breazeal. MIT Press, 2002.&lt;br /&gt;
&lt;br /&gt;
== Autumn 2014 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in November 2014, and arrived between December 2014 and February 2015.&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.co.uk/Probabilistic-Graphical-Models-Principles-Computation/dp/0262013193 Probabilistic Graphical Models: Principles and Techniques]. Daphne Koller, Nir Friedman. MIT Press, 2009. ([http://mitpress.mit.edu/books/probabilistic-graphical-models publisher page] with 20% discount code DKPGM12)&lt;br /&gt;
* [http://www.amazon.co.uk/Understanding-Vision-Theory-Models-Data/dp/0199564663 Understanding Vision: theory, models, and data]. Li Zhaoping. Oxford University Press, 2014. ([http://ukcatalogue.oup.com/product/9780199564668.do publisher page])&lt;br /&gt;
* [http://www.amazon.co.uk/Dictionary-Computer-Vision-Image-Processing/dp/1119941865 Dictionary of Computer Vision and Image Processing, 2nd Edition]. Robert B. Fisher, Toby P. Breckon, Kenneth Dawson-Howe, Andrew Fitzgibbon, Craig Robertson, Emanuele Trucco, Christopher K. I. Williams. Wiley, 2013. ([http://eu.wiley.com/WileyCDA/WileyTitle/productCd-1119941865.html publisher page])&lt;br /&gt;
* [http://www.amazon.co.uk/Introduction-Game-Design-Prototyping-Development-ebook/dp/B00LIYS9F0 Introduction to Game Design, Prototyping, and Development: From Concept to Playable Game with Unity and C#]. Jeremy Gibson. Addison-Wesley Professional, 2014.&lt;br /&gt;
* [http://www.amazon.co.uk/Regularization-Optimization-Kernels-Support-Machines/dp/1482241390 Regularization, Optimization, Kernels, and Support Vector Machines]. Johan A.K. Suykens, Marco Signoretto, Andreas Argyriou. Chapman and Hall/CRC, 2014. ([http://www.crcpress.com/product/isbn/9781482241396 publisher page])&lt;br /&gt;
&lt;br /&gt;
== Autumn 2013 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in October 2013, and arrived between November 2013 and June 2014.&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.co.uk/Gesture-Speech-Sign-Lynn-Messing/dp/019852451X Gesture, Speech, and Sign]. Lynn Messing, Ruth Campbell. Oxford University Press, 1999.&lt;br /&gt;
* [http://www.amazon.co.uk/OpenCV-Computer-Application-Programming-Cookbook/dp/1849513244/ OpenCV 2 Computer Vision Application Programming Cookbook]. Robert Laganière. Pack Publishing, May 2011.&lt;br /&gt;
* [http://www.amazon.co.uk/Brave-NUI-World-Designing-Interfaces/dp/0123822319 Brave NUI World: Designing Natural User Interfaces for Touch and Gesture]. Daniel Wigdor, Dennis Wixon. Morgan Kaufmann, April 2011.&lt;br /&gt;
* [http://www.amazon.co.uk/Probabilistic-Robotics-Intelligent-Autonomous-Agents/dp/0262201623 Probabilistic Robotics]. Sebastian Thrun, Wolfram Burgard, Dieter Fox. MIT Press, 2005.&lt;br /&gt;
* [http://www.amazon.co.uk/Frontiers-Human-Robot-Interaction-Advances-Studies/dp/9027204551 New Frontiers in Human-Robot Interaction] ([http://homepages.feis.herts.ac.uk/~comqkd/NFHRI-AIS-2011.pdf link2]). Kerstin Dautenhahn and Joe Saunder. John Benjamins Publishing Company, 2011.&lt;br /&gt;
* [http://mitpress.mit.edu/catalog/item/default.asp?ttype=2&amp;amp;tid=12814&amp;amp;mode=toc An Interdisciplinary Introduction to Image Processing]. Steven L. Tanimoto. MIT Press, May 2012.&lt;br /&gt;
* [http://www.amazon.co.uk/Machine-Learning-Probabilistic-Perspective-Computation/dp/0262018020 Machine Learning: A Probabilistic Perspective]. Kevin Murphy. MIT Press, October 2012.&lt;br /&gt;
* [http://www.cambridge.org/us/knowledge/discountpromotion/?site_locale=en_US&amp;amp;code=L2BRML Bayesian Reasoning and Machine Learning] (this link provides a 20% discount, you can change currency at checkout) David Barber. Cambridge University Press, February 2012.&lt;br /&gt;
* [http://www.amazon.co.uk/Active-Learning-Burr-Settles/dp/1608457257/ Active Learning: Synthesis Lectures on Artificial Intelligence and Machine Learning]. Burr Settles. Morgan &amp;amp; Claypool, 2012.&lt;br /&gt;
&lt;br /&gt;
== Summer 2011 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in the summer of 2011, and arrived on 2011-11-28.&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.com/Plasticity-Visual-System-Genes-Circuits/dp/0387281894 Plasticity in the Visual System: From Genes to Circuits], Raphael Pinaud (Editor), Liisa A. Tremere (Editor), Peter de Weerd, Springer 2006.&lt;br /&gt;
* [http://www.springer.com/engineering/robotics/book/978-3-540-23957-4 Springer Handbook of Robotics]. Bruno Siciliano, Oussama Khatib (Editors). Springer, 2008.&lt;br /&gt;
* [http://www.amazon.com/Human-Motor-Control-Second-Rosenbaum/dp/0123742269 Human Motor Control], David Rosenbaum. Elsevier/Academic Press, 2009.&lt;br /&gt;
* [http://www.amazon.com/Computer-Vision-Approach-David-Forsyth/dp/0130851981 Computer vision, A modern approach], David Forsyth and Jean Ponce.  &lt;br /&gt;
* [http://www.amazon.fr/Pattern-Recognition-Machine-Learning-Christopher/dp/0387310738/sr=8-1/qid=1158928255/ref=sr_1_1/402-9555855-8053710?ie=UTF8&amp;amp;s=english-books Pattern recognition and machine learning ], Christopher M. Bishop&lt;br /&gt;
&lt;br /&gt;
= Misc =&lt;br /&gt;
&lt;br /&gt;
== Discarded ==&lt;br /&gt;
&lt;br /&gt;
Books that were considered for purchase but not ordered:&lt;br /&gt;
&lt;br /&gt;
* [https://www.amazon.co.uk/Exploring-Robotic-Minds-Consciousness-Self-Organizing/dp/0190281065 Exploring Robotic Minds: Actions, Symbols, and Consciousness as Self-Organizing Dynamic Phenomena]. Jun Tani. OUP USA, 2016. ISBN 978-0190281069.&lt;br /&gt;
* [http://www.amazon.co.uk/Sparse-Modeling-Algorithms-Applications-Recognition/dp/1439828695 Sparse Modeling: Theory, Algorithms, and Applications]. Irina Rish, Genady Grabarnik. CRC Press, 2014.&lt;br /&gt;
* [http://www.amazon.co.uk/Sociorobot-World-Intelligent-Automation-Engineering-ebook/dp/B011QM0BBS Sociorobot World: A Guided Tour for All]. Spyros Tzafestas. Springer, 2016.&lt;br /&gt;
* [https://www.amazon.co.uk/Understanding-Machine-Learning-Theory-Algorithms-ebook/dp/1107512824 Understanding Machine Learning: From Theory To Algorithms]. Shai Shalev-Shwartz, Shai Ben-David. Cambridge University Press, 2015. ISBN 978-1107512825&lt;br /&gt;
* [https://www.amazon.co.uk/Computational-Integrating-Language-Synthesis-Lectures/dp/1608451127 Computational Methods for Integrating Vision and Language]. Kobus Barnard. Morgan &amp;amp; Claypool, 2016. ISBN 978-1608451128.&lt;br /&gt;
* [http://www.amazon.co.uk/OpenCV-3-Blueprints-Joseph-Howse/dp/1784399752 OpenCV 3 Blueprints]. Joseph Howse, Steven Puttemans, Quan Hua, Utkarsh Sinha. Packt Publishing, 2015. ISBN 978-1784399757.&lt;br /&gt;
* [https://www.amazon.co.uk/Time-Modeling-Computation-Inference-Statistical/dp/1420093363 Time Series: Modeling, Computation, and Inference]. Raquel Prado, Mike West. Chapman and Hall/CRC, 2010. ISBN 978-1420093360&lt;br /&gt;
&lt;br /&gt;
== Not available ==&lt;br /&gt;
&lt;br /&gt;
Books that are likely not available (from previous purchase attempts):&lt;br /&gt;
&lt;br /&gt;
* [http://www.oreilly.com/data/free/real-world-active-learning.csp Real-World Active Learning: Applications and strategies for human-in-the-loop machine learning]. Ted Cuzzillo. O&#039;Reilly, March 2015.&lt;br /&gt;
&lt;br /&gt;
[[Category:Vislab]]&lt;/div&gt;</summary>
		<author><name>Giovanni Saponaro</name></author>
	</entry>
	<entry>
		<id>http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=VisLab_book_wishlist&amp;diff=7044</id>
		<title>VisLab book wishlist</title>
		<link rel="alternate" type="text/html" href="http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=VisLab_book_wishlist&amp;diff=7044"/>
		<updated>2018-09-21T16:59:45Z</updated>

		<summary type="html">&lt;p&gt;Giovanni Saponaro: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;If you need a new book for your research, please add it to this list:&lt;br /&gt;
&lt;br /&gt;
* Title. Authors. Publisher, year. ISBN code.&lt;br /&gt;
&lt;br /&gt;
* [https://www.amazon.co.uk/Book-Why-Science-Cause-Effect/dp/0241242630 The Book of Why: The New Science of Cause and Effect]. Judea Pearl, Dana Mackenzie. Allen Lane, 2018. ISBN 978-0241242636.&lt;br /&gt;
* [https://www.amazon.co.uk/Understanding-Vision-Theory-Models-Data/dp/0198829361 Understanding Vision: Theory, Models, and Data, Reprint Edition]. Li Zhaoping. Oxford University Press, 2018. ISBN 978-0198829362.&lt;br /&gt;
&lt;br /&gt;
= Already ordered =&lt;br /&gt;
&lt;br /&gt;
The following orders have already been dispatched.&lt;br /&gt;
&lt;br /&gt;
== Spring 2018 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in June 2018 and arrived in xxx 2018.&lt;br /&gt;
&lt;br /&gt;
* [https://www.amazon.co.uk/Design-Report-Experiments-Andy-Field/dp/0761973834 How to Design and Report Experiments]. Andy Field, Graham Hole. Sage, 2003. ISBN 978-0761973836.&lt;br /&gt;
* [https://www.amazon.co.uk/Non-verbal-Communication-Human-Interaction-International/dp/1285083512/ Nonverbal Communication in Human Interaction]. Mark Knapp, Terrence Horgan, Judith Hall. Cengage, 2014. ISBN 978-1285083513.&lt;br /&gt;
* [https://www.amazon.co.uk/3D-Printing-Handbook-Technologies-applications/dp/9082748509/ The 3D Printing Handbook: Technologies, design and applications]. Ben Redwood, Filemon Schöffer, Brian Garret. 3D Hubs B.V., 2017. ISBN 978-9082748505.&lt;br /&gt;
&lt;br /&gt;
== Autumn 2017 batch ==&lt;br /&gt;
&lt;br /&gt;
This book was ordered in November 2017 and arrived in January 2018.&lt;br /&gt;
&lt;br /&gt;
* [https://www.amazon.co.uk/Theoretical-Neuroscience-Computational-Mathematical-Modeling/dp/0262541858 Theoretical Neuroscience: Computational and Mathematical Modeling of Neural Systems]. Peter Dayan, ‎L. F. Abbott. MIT Press, 2005. ISBN 978-0262541855.&lt;br /&gt;
&lt;br /&gt;
== Spring 2017 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in April 2017 and arrived in May 2017.&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.co.uk/Ecological-Approach-Visual-Perception-Psychology/dp/1848725787 The Ecological Approach to Visual Perception: Classic Edition]. James J. Gibson. Psychology Press, 2014. ISBN 978-1848725782.&lt;br /&gt;
* [https://www.amazon.co.uk/Effective-Modern-Specific-Ways-Improve/dp/1491903996 Effective Modern C++: 42 Specific Ways to Improve Your Use of C++11 and C++14]. Scott Meyers. O&#039;Reilly, 2014. ISBN 978-1491903995.&lt;br /&gt;
* [https://www.amazon.co.uk/Hand-Mind-Gestures-Reveal-Thought/dp/0226561348 Hand and Mind: What Gestures Reveal about Thought]. David McNeill. University Of Chicago Press, 1996. ISBN 978-0226561349.&lt;br /&gt;
* [https://www.amazon.co.uk/Principles-Neural-Science-Fifth-Kandel/dp/0071390111 Principles of Neural Science, Fifth Edition]. Eric R. Kandel, James H. Schwartz, Thomas M. Jessell, Steven A. Siegelbaum, A. J. Hudspeth. McGraw-Hill, 2012. ISBN 978-0071390118&lt;br /&gt;
&lt;br /&gt;
== Winter 2016 batch ==&lt;br /&gt;
&lt;br /&gt;
This book was ordered in November 2016 and arrived in April 2017.&lt;br /&gt;
&lt;br /&gt;
* [https://www.amazon.co.uk/Deep-Learning-Adaptive-Computation-Machine/dp/0262035618 Deep Learning]. Ian Goodfellow, Yoshua Bengio, Aaron Courville. MIT Press, 2016. ISBN 978-0262035613&lt;br /&gt;
&lt;br /&gt;
== Spring 2016 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in March 2016, and arrived between May 2016 and February 2017 (Learning OpenCV 3).&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.co.uk/gp/product/1491937998 Learning OpenCV 3: Computer Vision in C++ with the OpenCV Library]. Adrian Kaehler, Gary Bradski. O&#039;Reilly Media, 2016.&lt;br /&gt;
* [http://www.amazon.co.uk/Mastering-Robotics-Programming-Lentin-Joseph/dp/1783551798 Mastering ROS for Robotics Programming]. Lentin Joseph. Packt Publishing, 2015.&lt;br /&gt;
* [http://www.amazon.co.uk/Artificial-Cognitive-Systems-David-Vernon/dp/0262028387 Artificial Cognitive Systems: A Primer]. David Vernon. MIT Press, 2015.&lt;br /&gt;
* [http://www.amazon.co.uk/Developmental-Robotics-Babies-Intelligent-Autonomous/dp/0262028018 Developmental Robotics: From Babies to Robots]. Angelo Cangelosi, Matthew Schlesinger. MIT Press, 2015.&lt;br /&gt;
* [http://www.amazon.co.uk/Machine-Learning-Optimization-Perspective-Developers/dp/0128015225 Machine Learning: A Bayesian and Optimization Perspective]. Sergios Theodoridis. Academic Press, March 2015.&lt;br /&gt;
* [http://www.amazon.co.uk/Gaussian-Processes-Machine-Learning-Rasmussen/dp/026218253X Gaussian Processes for Machine Learning]. Carl Edward Rasmussen, Christopher K. I. Williams. MIT Press, 2006.&lt;br /&gt;
* [http://www.amazon.co.uk/Designing-Sociable-Intelligent-Robotics-Autonomous/dp/0262025108 Designing Sociable Robots], Cynthia Breazeal. MIT Press, 2002.&lt;br /&gt;
&lt;br /&gt;
== Autumn 2014 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in November 2014, and arrived between December 2014 and February 2015.&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.co.uk/Probabilistic-Graphical-Models-Principles-Computation/dp/0262013193 Probabilistic Graphical Models: Principles and Techniques]. Daphne Koller, Nir Friedman. MIT Press, 2009. ([http://mitpress.mit.edu/books/probabilistic-graphical-models publisher page] with 20% discount code DKPGM12)&lt;br /&gt;
* [http://www.amazon.co.uk/Understanding-Vision-Theory-Models-Data/dp/0199564663 Understanding Vision: theory, models, and data]. Li Zhaoping. Oxford University Press, 2014. ([http://ukcatalogue.oup.com/product/9780199564668.do publisher page])&lt;br /&gt;
* [http://www.amazon.co.uk/Dictionary-Computer-Vision-Image-Processing/dp/1119941865 Dictionary of Computer Vision and Image Processing, 2nd Edition]. Robert B. Fisher, Toby P. Breckon, Kenneth Dawson-Howe, Andrew Fitzgibbon, Craig Robertson, Emanuele Trucco, Christopher K. I. Williams. Wiley, 2013. ([http://eu.wiley.com/WileyCDA/WileyTitle/productCd-1119941865.html publisher page])&lt;br /&gt;
* [http://www.amazon.co.uk/Introduction-Game-Design-Prototyping-Development-ebook/dp/B00LIYS9F0 Introduction to Game Design, Prototyping, and Development: From Concept to Playable Game with Unity and C#]. Jeremy Gibson. Addison-Wesley Professional, 2014.&lt;br /&gt;
* [http://www.amazon.co.uk/Regularization-Optimization-Kernels-Support-Machines/dp/1482241390 Regularization, Optimization, Kernels, and Support Vector Machines]. Johan A.K. Suykens, Marco Signoretto, Andreas Argyriou. Chapman and Hall/CRC, 2014. ([http://www.crcpress.com/product/isbn/9781482241396 publisher page])&lt;br /&gt;
&lt;br /&gt;
== Autumn 2013 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in October 2013, and arrived between November 2013 and June 2014.&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.co.uk/Gesture-Speech-Sign-Lynn-Messing/dp/019852451X Gesture, Speech, and Sign]. Lynn Messing, Ruth Campbell. Oxford University Press, 1999.&lt;br /&gt;
* [http://www.amazon.co.uk/OpenCV-Computer-Application-Programming-Cookbook/dp/1849513244/ OpenCV 2 Computer Vision Application Programming Cookbook]. Robert Laganière. Pack Publishing, May 2011.&lt;br /&gt;
* [http://www.amazon.co.uk/Brave-NUI-World-Designing-Interfaces/dp/0123822319 Brave NUI World: Designing Natural User Interfaces for Touch and Gesture]. Daniel Wigdor, Dennis Wixon. Morgan Kaufmann, April 2011.&lt;br /&gt;
* [http://www.amazon.co.uk/Probabilistic-Robotics-Intelligent-Autonomous-Agents/dp/0262201623 Probabilistic Robotics]. Sebastian Thrun, Wolfram Burgard, Dieter Fox. MIT Press, 2005.&lt;br /&gt;
* [http://www.amazon.co.uk/Frontiers-Human-Robot-Interaction-Advances-Studies/dp/9027204551 New Frontiers in Human-Robot Interaction] ([http://homepages.feis.herts.ac.uk/~comqkd/NFHRI-AIS-2011.pdf link2]). Kerstin Dautenhahn and Joe Saunder. John Benjamins Publishing Company, 2011.&lt;br /&gt;
* [http://mitpress.mit.edu/catalog/item/default.asp?ttype=2&amp;amp;tid=12814&amp;amp;mode=toc An Interdisciplinary Introduction to Image Processing]. Steven L. Tanimoto. MIT Press, May 2012.&lt;br /&gt;
* [http://www.amazon.co.uk/Machine-Learning-Probabilistic-Perspective-Computation/dp/0262018020 Machine Learning: A Probabilistic Perspective]. Kevin Murphy. MIT Press, October 2012.&lt;br /&gt;
* [http://www.cambridge.org/us/knowledge/discountpromotion/?site_locale=en_US&amp;amp;code=L2BRML Bayesian Reasoning and Machine Learning] (this link provides a 20% discount, you can change currency at checkout) David Barber. Cambridge University Press, February 2012.&lt;br /&gt;
* [http://www.amazon.co.uk/Active-Learning-Burr-Settles/dp/1608457257/ Active Learning: Synthesis Lectures on Artificial Intelligence and Machine Learning]. Burr Settles. Morgan &amp;amp; Claypool, 2012.&lt;br /&gt;
&lt;br /&gt;
== Summer 2011 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in the summer of 2011, and arrived on 2011-11-28.&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.com/Plasticity-Visual-System-Genes-Circuits/dp/0387281894 Plasticity in the Visual System: From Genes to Circuits], Raphael Pinaud (Editor), Liisa A. Tremere (Editor), Peter de Weerd, Springer 2006.&lt;br /&gt;
* [http://www.springer.com/engineering/robotics/book/978-3-540-23957-4 Springer Handbook of Robotics]. Bruno Siciliano, Oussama Khatib (Editors). Springer, 2008.&lt;br /&gt;
* [http://www.amazon.com/Human-Motor-Control-Second-Rosenbaum/dp/0123742269 Human Motor Control], David Rosenbaum. Elsevier/Academic Press, 2009.&lt;br /&gt;
* [http://www.amazon.com/Computer-Vision-Approach-David-Forsyth/dp/0130851981 Computer vision, A modern approach], David Forsyth and Jean Ponce.  &lt;br /&gt;
* [http://www.amazon.fr/Pattern-Recognition-Machine-Learning-Christopher/dp/0387310738/sr=8-1/qid=1158928255/ref=sr_1_1/402-9555855-8053710?ie=UTF8&amp;amp;s=english-books Pattern recognition and machine learning ], Christopher M. Bishop&lt;br /&gt;
&lt;br /&gt;
= Misc =&lt;br /&gt;
&lt;br /&gt;
== Discarded ==&lt;br /&gt;
&lt;br /&gt;
Books that were considered for purchase but not ordered:&lt;br /&gt;
&lt;br /&gt;
* [https://www.amazon.co.uk/Exploring-Robotic-Minds-Consciousness-Self-Organizing/dp/0190281065 Exploring Robotic Minds: Actions, Symbols, and Consciousness as Self-Organizing Dynamic Phenomena]. Jun Tani. OUP USA, 2016. ISBN 978-0190281069.&lt;br /&gt;
* [http://www.amazon.co.uk/Sparse-Modeling-Algorithms-Applications-Recognition/dp/1439828695 Sparse Modeling: Theory, Algorithms, and Applications]. Irina Rish, Genady Grabarnik. CRC Press, 2014.&lt;br /&gt;
* [http://www.amazon.co.uk/Sociorobot-World-Intelligent-Automation-Engineering-ebook/dp/B011QM0BBS Sociorobot World: A Guided Tour for All]. Spyros Tzafestas. Springer, 2016.&lt;br /&gt;
* [https://www.amazon.co.uk/Understanding-Machine-Learning-Theory-Algorithms-ebook/dp/1107512824 Understanding Machine Learning: From Theory To Algorithms]. Shai Shalev-Shwartz, Shai Ben-David. Cambridge University Press, 2015. ISBN 978-1107512825&lt;br /&gt;
* [https://www.amazon.co.uk/Computational-Integrating-Language-Synthesis-Lectures/dp/1608451127 Computational Methods for Integrating Vision and Language]. Kobus Barnard. Morgan &amp;amp; Claypool, 2016. ISBN 978-1608451128.&lt;br /&gt;
* [http://www.amazon.co.uk/OpenCV-3-Blueprints-Joseph-Howse/dp/1784399752 OpenCV 3 Blueprints]. Joseph Howse, Steven Puttemans, Quan Hua, Utkarsh Sinha. Packt Publishing, 2015. ISBN 978-1784399757.&lt;br /&gt;
* [https://www.amazon.co.uk/Time-Modeling-Computation-Inference-Statistical/dp/1420093363 Time Series: Modeling, Computation, and Inference]. Raquel Prado, Mike West. Chapman and Hall/CRC, 2010. ISBN 978-1420093360&lt;br /&gt;
&lt;br /&gt;
== Not available ==&lt;br /&gt;
&lt;br /&gt;
Books that are likely not available (from previous purchase attempts):&lt;br /&gt;
&lt;br /&gt;
* [http://www.oreilly.com/data/free/real-world-active-learning.csp Real-World Active Learning: Applications and strategies for human-in-the-loop machine learning]. Ted Cuzzillo. O&#039;Reilly, March 2015.&lt;br /&gt;
&lt;br /&gt;
[[Category:Vislab]]&lt;/div&gt;</summary>
		<author><name>Giovanni Saponaro</name></author>
	</entry>
	<entry>
		<id>http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=VisLab_book_wishlist&amp;diff=7043</id>
		<title>VisLab book wishlist</title>
		<link rel="alternate" type="text/html" href="http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=VisLab_book_wishlist&amp;diff=7043"/>
		<updated>2018-09-21T16:59:28Z</updated>

		<summary type="html">&lt;p&gt;Giovanni Saponaro: The Book of Why: add publisher&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;If you need a new book for your research, please add it to this list:&lt;br /&gt;
&lt;br /&gt;
* Title. Authors. Publisher, year. ISBN code.&lt;br /&gt;
&lt;br /&gt;
* [https://www.amazon.co.uk/Book-Why-Science-Cause-Effect/dp/0241242630 The Book of Why: The New Science of Cause and Effect]. Judea Pearl, Dana Mackenzie. Allen Lane, 2018. ISBN 978-0241242636.&lt;br /&gt;
* [https://www.amazon.co.uk/Understanding-Vision-Theory-Models-Data/dp/0198829361 Understanding Vision: Theory, Models, and Data, Reprint Edition]. Li Zhaoping. Oxford University Press, 2018. ISBN 978-0198829362&lt;br /&gt;
&lt;br /&gt;
= Already ordered =&lt;br /&gt;
&lt;br /&gt;
The following orders have already been dispatched.&lt;br /&gt;
&lt;br /&gt;
== Spring 2018 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in June 2018 and arrived in xxx 2018.&lt;br /&gt;
&lt;br /&gt;
* [https://www.amazon.co.uk/Design-Report-Experiments-Andy-Field/dp/0761973834 How to Design and Report Experiments]. Andy Field, Graham Hole. Sage, 2003. ISBN 978-0761973836.&lt;br /&gt;
* [https://www.amazon.co.uk/Non-verbal-Communication-Human-Interaction-International/dp/1285083512/ Nonverbal Communication in Human Interaction]. Mark Knapp, Terrence Horgan, Judith Hall. Cengage, 2014. ISBN 978-1285083513.&lt;br /&gt;
* [https://www.amazon.co.uk/3D-Printing-Handbook-Technologies-applications/dp/9082748509/ The 3D Printing Handbook: Technologies, design and applications]. Ben Redwood, Filemon Schöffer, Brian Garret. 3D Hubs B.V., 2017. ISBN 978-9082748505.&lt;br /&gt;
&lt;br /&gt;
== Autumn 2017 batch ==&lt;br /&gt;
&lt;br /&gt;
This book was ordered in November 2017 and arrived in January 2018.&lt;br /&gt;
&lt;br /&gt;
* [https://www.amazon.co.uk/Theoretical-Neuroscience-Computational-Mathematical-Modeling/dp/0262541858 Theoretical Neuroscience: Computational and Mathematical Modeling of Neural Systems]. Peter Dayan, ‎L. F. Abbott. MIT Press, 2005. ISBN 978-0262541855.&lt;br /&gt;
&lt;br /&gt;
== Spring 2017 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in April 2017 and arrived in May 2017.&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.co.uk/Ecological-Approach-Visual-Perception-Psychology/dp/1848725787 The Ecological Approach to Visual Perception: Classic Edition]. James J. Gibson. Psychology Press, 2014. ISBN 978-1848725782.&lt;br /&gt;
* [https://www.amazon.co.uk/Effective-Modern-Specific-Ways-Improve/dp/1491903996 Effective Modern C++: 42 Specific Ways to Improve Your Use of C++11 and C++14]. Scott Meyers. O&#039;Reilly, 2014. ISBN 978-1491903995.&lt;br /&gt;
* [https://www.amazon.co.uk/Hand-Mind-Gestures-Reveal-Thought/dp/0226561348 Hand and Mind: What Gestures Reveal about Thought]. David McNeill. University Of Chicago Press, 1996. ISBN 978-0226561349.&lt;br /&gt;
* [https://www.amazon.co.uk/Principles-Neural-Science-Fifth-Kandel/dp/0071390111 Principles of Neural Science, Fifth Edition]. Eric R. Kandel, James H. Schwartz, Thomas M. Jessell, Steven A. Siegelbaum, A. J. Hudspeth. McGraw-Hill, 2012. ISBN 978-0071390118&lt;br /&gt;
&lt;br /&gt;
== Winter 2016 batch ==&lt;br /&gt;
&lt;br /&gt;
This book was ordered in November 2016 and arrived in April 2017.&lt;br /&gt;
&lt;br /&gt;
* [https://www.amazon.co.uk/Deep-Learning-Adaptive-Computation-Machine/dp/0262035618 Deep Learning]. Ian Goodfellow, Yoshua Bengio, Aaron Courville. MIT Press, 2016. ISBN 978-0262035613&lt;br /&gt;
&lt;br /&gt;
== Spring 2016 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in March 2016, and arrived between May 2016 and February 2017 (Learning OpenCV 3).&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.co.uk/gp/product/1491937998 Learning OpenCV 3: Computer Vision in C++ with the OpenCV Library]. Adrian Kaehler, Gary Bradski. O&#039;Reilly Media, 2016.&lt;br /&gt;
* [http://www.amazon.co.uk/Mastering-Robotics-Programming-Lentin-Joseph/dp/1783551798 Mastering ROS for Robotics Programming]. Lentin Joseph. Packt Publishing, 2015.&lt;br /&gt;
* [http://www.amazon.co.uk/Artificial-Cognitive-Systems-David-Vernon/dp/0262028387 Artificial Cognitive Systems: A Primer]. David Vernon. MIT Press, 2015.&lt;br /&gt;
* [http://www.amazon.co.uk/Developmental-Robotics-Babies-Intelligent-Autonomous/dp/0262028018 Developmental Robotics: From Babies to Robots]. Angelo Cangelosi, Matthew Schlesinger. MIT Press, 2015.&lt;br /&gt;
* [http://www.amazon.co.uk/Machine-Learning-Optimization-Perspective-Developers/dp/0128015225 Machine Learning: A Bayesian and Optimization Perspective]. Sergios Theodoridis. Academic Press, March 2015.&lt;br /&gt;
* [http://www.amazon.co.uk/Gaussian-Processes-Machine-Learning-Rasmussen/dp/026218253X Gaussian Processes for Machine Learning]. Carl Edward Rasmussen, Christopher K. I. Williams. MIT Press, 2006.&lt;br /&gt;
* [http://www.amazon.co.uk/Designing-Sociable-Intelligent-Robotics-Autonomous/dp/0262025108 Designing Sociable Robots], Cynthia Breazeal. MIT Press, 2002.&lt;br /&gt;
&lt;br /&gt;
== Autumn 2014 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in November 2014, and arrived between December 2014 and February 2015.&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.co.uk/Probabilistic-Graphical-Models-Principles-Computation/dp/0262013193 Probabilistic Graphical Models: Principles and Techniques]. Daphne Koller, Nir Friedman. MIT Press, 2009. ([http://mitpress.mit.edu/books/probabilistic-graphical-models publisher page] with 20% discount code DKPGM12)&lt;br /&gt;
* [http://www.amazon.co.uk/Understanding-Vision-Theory-Models-Data/dp/0199564663 Understanding Vision: theory, models, and data]. Li Zhaoping. Oxford University Press, 2014. ([http://ukcatalogue.oup.com/product/9780199564668.do publisher page])&lt;br /&gt;
* [http://www.amazon.co.uk/Dictionary-Computer-Vision-Image-Processing/dp/1119941865 Dictionary of Computer Vision and Image Processing, 2nd Edition]. Robert B. Fisher, Toby P. Breckon, Kenneth Dawson-Howe, Andrew Fitzgibbon, Craig Robertson, Emanuele Trucco, Christopher K. I. Williams. Wiley, 2013. ([http://eu.wiley.com/WileyCDA/WileyTitle/productCd-1119941865.html publisher page])&lt;br /&gt;
* [http://www.amazon.co.uk/Introduction-Game-Design-Prototyping-Development-ebook/dp/B00LIYS9F0 Introduction to Game Design, Prototyping, and Development: From Concept to Playable Game with Unity and C#]. Jeremy Gibson. Addison-Wesley Professional, 2014.&lt;br /&gt;
* [http://www.amazon.co.uk/Regularization-Optimization-Kernels-Support-Machines/dp/1482241390 Regularization, Optimization, Kernels, and Support Vector Machines]. Johan A.K. Suykens, Marco Signoretto, Andreas Argyriou. Chapman and Hall/CRC, 2014. ([http://www.crcpress.com/product/isbn/9781482241396 publisher page])&lt;br /&gt;
&lt;br /&gt;
== Autumn 2013 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in October 2013, and arrived between November 2013 and June 2014.&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.co.uk/Gesture-Speech-Sign-Lynn-Messing/dp/019852451X Gesture, Speech, and Sign]. Lynn Messing, Ruth Campbell. Oxford University Press, 1999.&lt;br /&gt;
* [http://www.amazon.co.uk/OpenCV-Computer-Application-Programming-Cookbook/dp/1849513244/ OpenCV 2 Computer Vision Application Programming Cookbook]. Robert Laganière. Pack Publishing, May 2011.&lt;br /&gt;
* [http://www.amazon.co.uk/Brave-NUI-World-Designing-Interfaces/dp/0123822319 Brave NUI World: Designing Natural User Interfaces for Touch and Gesture]. Daniel Wigdor, Dennis Wixon. Morgan Kaufmann, April 2011.&lt;br /&gt;
* [http://www.amazon.co.uk/Probabilistic-Robotics-Intelligent-Autonomous-Agents/dp/0262201623 Probabilistic Robotics]. Sebastian Thrun, Wolfram Burgard, Dieter Fox. MIT Press, 2005.&lt;br /&gt;
* [http://www.amazon.co.uk/Frontiers-Human-Robot-Interaction-Advances-Studies/dp/9027204551 New Frontiers in Human-Robot Interaction] ([http://homepages.feis.herts.ac.uk/~comqkd/NFHRI-AIS-2011.pdf link2]). Kerstin Dautenhahn and Joe Saunder. John Benjamins Publishing Company, 2011.&lt;br /&gt;
* [http://mitpress.mit.edu/catalog/item/default.asp?ttype=2&amp;amp;tid=12814&amp;amp;mode=toc An Interdisciplinary Introduction to Image Processing]. Steven L. Tanimoto. MIT Press, May 2012.&lt;br /&gt;
* [http://www.amazon.co.uk/Machine-Learning-Probabilistic-Perspective-Computation/dp/0262018020 Machine Learning: A Probabilistic Perspective]. Kevin Murphy. MIT Press, October 2012.&lt;br /&gt;
* [http://www.cambridge.org/us/knowledge/discountpromotion/?site_locale=en_US&amp;amp;code=L2BRML Bayesian Reasoning and Machine Learning] (this link provides a 20% discount, you can change currency at checkout) David Barber. Cambridge University Press, February 2012.&lt;br /&gt;
* [http://www.amazon.co.uk/Active-Learning-Burr-Settles/dp/1608457257/ Active Learning: Synthesis Lectures on Artificial Intelligence and Machine Learning]. Burr Settles. Morgan &amp;amp; Claypool, 2012.&lt;br /&gt;
&lt;br /&gt;
== Summer 2011 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in the summer of 2011, and arrived on 2011-11-28.&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.com/Plasticity-Visual-System-Genes-Circuits/dp/0387281894 Plasticity in the Visual System: From Genes to Circuits], Raphael Pinaud (Editor), Liisa A. Tremere (Editor), Peter de Weerd, Springer 2006.&lt;br /&gt;
* [http://www.springer.com/engineering/robotics/book/978-3-540-23957-4 Springer Handbook of Robotics]. Bruno Siciliano, Oussama Khatib (Editors). Springer, 2008.&lt;br /&gt;
* [http://www.amazon.com/Human-Motor-Control-Second-Rosenbaum/dp/0123742269 Human Motor Control], David Rosenbaum. Elsevier/Academic Press, 2009.&lt;br /&gt;
* [http://www.amazon.com/Computer-Vision-Approach-David-Forsyth/dp/0130851981 Computer vision, A modern approach], David Forsyth and Jean Ponce.  &lt;br /&gt;
* [http://www.amazon.fr/Pattern-Recognition-Machine-Learning-Christopher/dp/0387310738/sr=8-1/qid=1158928255/ref=sr_1_1/402-9555855-8053710?ie=UTF8&amp;amp;s=english-books Pattern recognition and machine learning ], Christopher M. Bishop&lt;br /&gt;
&lt;br /&gt;
= Misc =&lt;br /&gt;
&lt;br /&gt;
== Discarded ==&lt;br /&gt;
&lt;br /&gt;
Books that were considered for purchase but not ordered:&lt;br /&gt;
&lt;br /&gt;
* [https://www.amazon.co.uk/Exploring-Robotic-Minds-Consciousness-Self-Organizing/dp/0190281065 Exploring Robotic Minds: Actions, Symbols, and Consciousness as Self-Organizing Dynamic Phenomena]. Jun Tani. OUP USA, 2016. ISBN 978-0190281069.&lt;br /&gt;
* [http://www.amazon.co.uk/Sparse-Modeling-Algorithms-Applications-Recognition/dp/1439828695 Sparse Modeling: Theory, Algorithms, and Applications]. Irina Rish, Genady Grabarnik. CRC Press, 2014.&lt;br /&gt;
* [http://www.amazon.co.uk/Sociorobot-World-Intelligent-Automation-Engineering-ebook/dp/B011QM0BBS Sociorobot World: A Guided Tour for All]. Spyros Tzafestas. Springer, 2016.&lt;br /&gt;
* [https://www.amazon.co.uk/Understanding-Machine-Learning-Theory-Algorithms-ebook/dp/1107512824 Understanding Machine Learning: From Theory To Algorithms]. Shai Shalev-Shwartz, Shai Ben-David. Cambridge University Press, 2015. ISBN 978-1107512825&lt;br /&gt;
* [https://www.amazon.co.uk/Computational-Integrating-Language-Synthesis-Lectures/dp/1608451127 Computational Methods for Integrating Vision and Language]. Kobus Barnard. Morgan &amp;amp; Claypool, 2016. ISBN 978-1608451128.&lt;br /&gt;
* [http://www.amazon.co.uk/OpenCV-3-Blueprints-Joseph-Howse/dp/1784399752 OpenCV 3 Blueprints]. Joseph Howse, Steven Puttemans, Quan Hua, Utkarsh Sinha. Packt Publishing, 2015. ISBN 978-1784399757.&lt;br /&gt;
* [https://www.amazon.co.uk/Time-Modeling-Computation-Inference-Statistical/dp/1420093363 Time Series: Modeling, Computation, and Inference]. Raquel Prado, Mike West. Chapman and Hall/CRC, 2010. ISBN 978-1420093360&lt;br /&gt;
&lt;br /&gt;
== Not available ==&lt;br /&gt;
&lt;br /&gt;
Books that are likely not available (from previous purchase attempts):&lt;br /&gt;
&lt;br /&gt;
* [http://www.oreilly.com/data/free/real-world-active-learning.csp Real-World Active Learning: Applications and strategies for human-in-the-loop machine learning]. Ted Cuzzillo. O&#039;Reilly, March 2015.&lt;br /&gt;
&lt;br /&gt;
[[Category:Vislab]]&lt;/div&gt;</summary>
		<author><name>Giovanni Saponaro</name></author>
	</entry>
	<entry>
		<id>http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=VisLab_book_wishlist&amp;diff=7042</id>
		<title>VisLab book wishlist</title>
		<link rel="alternate" type="text/html" href="http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=VisLab_book_wishlist&amp;diff=7042"/>
		<updated>2018-09-21T16:58:36Z</updated>

		<summary type="html">&lt;p&gt;Giovanni Saponaro: add Understanding Vision: Theory, Models, and Data, Reprint Edition&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;If you need a new book for your research, please add it to this list:&lt;br /&gt;
&lt;br /&gt;
* Title. Authors. Publisher, year. ISBN code.&lt;br /&gt;
&lt;br /&gt;
* [https://www.amazon.co.uk/Book-Why-Science-Cause-Effect/dp/0241242630 The Book of Why: The New Science of Cause and Effect]. Judea Pearl, Dana Mackenzie, 2018. ISBN 978-0241242636.&lt;br /&gt;
* [https://www.amazon.co.uk/Understanding-Vision-Theory-Models-Data/dp/0198829361 Understanding Vision: Theory, Models, and Data, Reprint Edition]. Li Zhaoping. Oxford University Press, 2018. ISBN 978-0198829362&lt;br /&gt;
&lt;br /&gt;
= Already ordered =&lt;br /&gt;
&lt;br /&gt;
The following orders have already been dispatched.&lt;br /&gt;
&lt;br /&gt;
== Spring 2018 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in June 2018 and arrived in xxx 2018.&lt;br /&gt;
&lt;br /&gt;
* [https://www.amazon.co.uk/Design-Report-Experiments-Andy-Field/dp/0761973834 How to Design and Report Experiments]. Andy Field, Graham Hole. Sage, 2003. ISBN 978-0761973836.&lt;br /&gt;
* [https://www.amazon.co.uk/Non-verbal-Communication-Human-Interaction-International/dp/1285083512/ Nonverbal Communication in Human Interaction]. Mark Knapp, Terrence Horgan, Judith Hall. Cengage, 2014. ISBN 978-1285083513.&lt;br /&gt;
* [https://www.amazon.co.uk/3D-Printing-Handbook-Technologies-applications/dp/9082748509/ The 3D Printing Handbook: Technologies, design and applications]. Ben Redwood, Filemon Schöffer, Brian Garret. 3D Hubs B.V., 2017. ISBN 978-9082748505.&lt;br /&gt;
&lt;br /&gt;
== Autumn 2017 batch ==&lt;br /&gt;
&lt;br /&gt;
This book was ordered in November 2017 and arrived in January 2018.&lt;br /&gt;
&lt;br /&gt;
* [https://www.amazon.co.uk/Theoretical-Neuroscience-Computational-Mathematical-Modeling/dp/0262541858 Theoretical Neuroscience: Computational and Mathematical Modeling of Neural Systems]. Peter Dayan, ‎L. F. Abbott. MIT Press, 2005. ISBN 978-0262541855.&lt;br /&gt;
&lt;br /&gt;
== Spring 2017 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in April 2017 and arrived in May 2017.&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.co.uk/Ecological-Approach-Visual-Perception-Psychology/dp/1848725787 The Ecological Approach to Visual Perception: Classic Edition]. James J. Gibson. Psychology Press, 2014. ISBN 978-1848725782.&lt;br /&gt;
* [https://www.amazon.co.uk/Effective-Modern-Specific-Ways-Improve/dp/1491903996 Effective Modern C++: 42 Specific Ways to Improve Your Use of C++11 and C++14]. Scott Meyers. O&#039;Reilly, 2014. ISBN 978-1491903995.&lt;br /&gt;
* [https://www.amazon.co.uk/Hand-Mind-Gestures-Reveal-Thought/dp/0226561348 Hand and Mind: What Gestures Reveal about Thought]. David McNeill. University Of Chicago Press, 1996. ISBN 978-0226561349.&lt;br /&gt;
* [https://www.amazon.co.uk/Principles-Neural-Science-Fifth-Kandel/dp/0071390111 Principles of Neural Science, Fifth Edition]. Eric R. Kandel, James H. Schwartz, Thomas M. Jessell, Steven A. Siegelbaum, A. J. Hudspeth. McGraw-Hill, 2012. ISBN 978-0071390118&lt;br /&gt;
&lt;br /&gt;
== Winter 2016 batch ==&lt;br /&gt;
&lt;br /&gt;
This book was ordered in November 2016 and arrived in April 2017.&lt;br /&gt;
&lt;br /&gt;
* [https://www.amazon.co.uk/Deep-Learning-Adaptive-Computation-Machine/dp/0262035618 Deep Learning]. Ian Goodfellow, Yoshua Bengio, Aaron Courville. MIT Press, 2016. ISBN 978-0262035613&lt;br /&gt;
&lt;br /&gt;
== Spring 2016 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in March 2016, and arrived between May 2016 and February 2017 (Learning OpenCV 3).&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.co.uk/gp/product/1491937998 Learning OpenCV 3: Computer Vision in C++ with the OpenCV Library]. Adrian Kaehler, Gary Bradski. O&#039;Reilly Media, 2016.&lt;br /&gt;
* [http://www.amazon.co.uk/Mastering-Robotics-Programming-Lentin-Joseph/dp/1783551798 Mastering ROS for Robotics Programming]. Lentin Joseph. Packt Publishing, 2015.&lt;br /&gt;
* [http://www.amazon.co.uk/Artificial-Cognitive-Systems-David-Vernon/dp/0262028387 Artificial Cognitive Systems: A Primer]. David Vernon. MIT Press, 2015.&lt;br /&gt;
* [http://www.amazon.co.uk/Developmental-Robotics-Babies-Intelligent-Autonomous/dp/0262028018 Developmental Robotics: From Babies to Robots]. Angelo Cangelosi, Matthew Schlesinger. MIT Press, 2015.&lt;br /&gt;
* [http://www.amazon.co.uk/Machine-Learning-Optimization-Perspective-Developers/dp/0128015225 Machine Learning: A Bayesian and Optimization Perspective]. Sergios Theodoridis. Academic Press, March 2015.&lt;br /&gt;
* [http://www.amazon.co.uk/Gaussian-Processes-Machine-Learning-Rasmussen/dp/026218253X Gaussian Processes for Machine Learning]. Carl Edward Rasmussen, Christopher K. I. Williams. MIT Press, 2006.&lt;br /&gt;
* [http://www.amazon.co.uk/Designing-Sociable-Intelligent-Robotics-Autonomous/dp/0262025108 Designing Sociable Robots], Cynthia Breazeal. MIT Press, 2002.&lt;br /&gt;
&lt;br /&gt;
== Autumn 2014 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in November 2014, and arrived between December 2014 and February 2015.&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.co.uk/Probabilistic-Graphical-Models-Principles-Computation/dp/0262013193 Probabilistic Graphical Models: Principles and Techniques]. Daphne Koller, Nir Friedman. MIT Press, 2009. ([http://mitpress.mit.edu/books/probabilistic-graphical-models publisher page] with 20% discount code DKPGM12)&lt;br /&gt;
* [http://www.amazon.co.uk/Understanding-Vision-Theory-Models-Data/dp/0199564663 Understanding Vision: theory, models, and data]. Li Zhaoping. Oxford University Press, 2014. ([http://ukcatalogue.oup.com/product/9780199564668.do publisher page])&lt;br /&gt;
* [http://www.amazon.co.uk/Dictionary-Computer-Vision-Image-Processing/dp/1119941865 Dictionary of Computer Vision and Image Processing, 2nd Edition]. Robert B. Fisher, Toby P. Breckon, Kenneth Dawson-Howe, Andrew Fitzgibbon, Craig Robertson, Emanuele Trucco, Christopher K. I. Williams. Wiley, 2013. ([http://eu.wiley.com/WileyCDA/WileyTitle/productCd-1119941865.html publisher page])&lt;br /&gt;
* [http://www.amazon.co.uk/Introduction-Game-Design-Prototyping-Development-ebook/dp/B00LIYS9F0 Introduction to Game Design, Prototyping, and Development: From Concept to Playable Game with Unity and C#]. Jeremy Gibson. Addison-Wesley Professional, 2014.&lt;br /&gt;
* [http://www.amazon.co.uk/Regularization-Optimization-Kernels-Support-Machines/dp/1482241390 Regularization, Optimization, Kernels, and Support Vector Machines]. Johan A.K. Suykens, Marco Signoretto, Andreas Argyriou. Chapman and Hall/CRC, 2014. ([http://www.crcpress.com/product/isbn/9781482241396 publisher page])&lt;br /&gt;
&lt;br /&gt;
== Autumn 2013 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in October 2013, and arrived between November 2013 and June 2014.&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.co.uk/Gesture-Speech-Sign-Lynn-Messing/dp/019852451X Gesture, Speech, and Sign]. Lynn Messing, Ruth Campbell. Oxford University Press, 1999.&lt;br /&gt;
* [http://www.amazon.co.uk/OpenCV-Computer-Application-Programming-Cookbook/dp/1849513244/ OpenCV 2 Computer Vision Application Programming Cookbook]. Robert Laganière. Pack Publishing, May 2011.&lt;br /&gt;
* [http://www.amazon.co.uk/Brave-NUI-World-Designing-Interfaces/dp/0123822319 Brave NUI World: Designing Natural User Interfaces for Touch and Gesture]. Daniel Wigdor, Dennis Wixon. Morgan Kaufmann, April 2011.&lt;br /&gt;
* [http://www.amazon.co.uk/Probabilistic-Robotics-Intelligent-Autonomous-Agents/dp/0262201623 Probabilistic Robotics]. Sebastian Thrun, Wolfram Burgard, Dieter Fox. MIT Press, 2005.&lt;br /&gt;
* [http://www.amazon.co.uk/Frontiers-Human-Robot-Interaction-Advances-Studies/dp/9027204551 New Frontiers in Human-Robot Interaction] ([http://homepages.feis.herts.ac.uk/~comqkd/NFHRI-AIS-2011.pdf link2]). Kerstin Dautenhahn and Joe Saunder. John Benjamins Publishing Company, 2011.&lt;br /&gt;
* [http://mitpress.mit.edu/catalog/item/default.asp?ttype=2&amp;amp;tid=12814&amp;amp;mode=toc An Interdisciplinary Introduction to Image Processing]. Steven L. Tanimoto. MIT Press, May 2012.&lt;br /&gt;
* [http://www.amazon.co.uk/Machine-Learning-Probabilistic-Perspective-Computation/dp/0262018020 Machine Learning: A Probabilistic Perspective]. Kevin Murphy. MIT Press, October 2012.&lt;br /&gt;
* [http://www.cambridge.org/us/knowledge/discountpromotion/?site_locale=en_US&amp;amp;code=L2BRML Bayesian Reasoning and Machine Learning] (this link provides a 20% discount, you can change currency at checkout) David Barber. Cambridge University Press, February 2012.&lt;br /&gt;
* [http://www.amazon.co.uk/Active-Learning-Burr-Settles/dp/1608457257/ Active Learning: Synthesis Lectures on Artificial Intelligence and Machine Learning]. Burr Settles. Morgan &amp;amp; Claypool, 2012.&lt;br /&gt;
&lt;br /&gt;
== Summer 2011 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in the summer of 2011, and arrived on 2011-11-28.&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.com/Plasticity-Visual-System-Genes-Circuits/dp/0387281894 Plasticity in the Visual System: From Genes to Circuits], Raphael Pinaud (Editor), Liisa A. Tremere (Editor), Peter de Weerd, Springer 2006.&lt;br /&gt;
* [http://www.springer.com/engineering/robotics/book/978-3-540-23957-4 Springer Handbook of Robotics]. Bruno Siciliano, Oussama Khatib (Editors). Springer, 2008.&lt;br /&gt;
* [http://www.amazon.com/Human-Motor-Control-Second-Rosenbaum/dp/0123742269 Human Motor Control], David Rosenbaum. Elsevier/Academic Press, 2009.&lt;br /&gt;
* [http://www.amazon.com/Computer-Vision-Approach-David-Forsyth/dp/0130851981 Computer vision, A modern approach], David Forsyth and Jean Ponce.  &lt;br /&gt;
* [http://www.amazon.fr/Pattern-Recognition-Machine-Learning-Christopher/dp/0387310738/sr=8-1/qid=1158928255/ref=sr_1_1/402-9555855-8053710?ie=UTF8&amp;amp;s=english-books Pattern recognition and machine learning ], Christopher M. Bishop&lt;br /&gt;
&lt;br /&gt;
= Misc =&lt;br /&gt;
&lt;br /&gt;
== Discarded ==&lt;br /&gt;
&lt;br /&gt;
Books that were considered for purchase but not ordered:&lt;br /&gt;
&lt;br /&gt;
* [https://www.amazon.co.uk/Exploring-Robotic-Minds-Consciousness-Self-Organizing/dp/0190281065 Exploring Robotic Minds: Actions, Symbols, and Consciousness as Self-Organizing Dynamic Phenomena]. Jun Tani. OUP USA, 2016. ISBN 978-0190281069.&lt;br /&gt;
* [http://www.amazon.co.uk/Sparse-Modeling-Algorithms-Applications-Recognition/dp/1439828695 Sparse Modeling: Theory, Algorithms, and Applications]. Irina Rish, Genady Grabarnik. CRC Press, 2014.&lt;br /&gt;
* [http://www.amazon.co.uk/Sociorobot-World-Intelligent-Automation-Engineering-ebook/dp/B011QM0BBS Sociorobot World: A Guided Tour for All]. Spyros Tzafestas. Springer, 2016.&lt;br /&gt;
* [https://www.amazon.co.uk/Understanding-Machine-Learning-Theory-Algorithms-ebook/dp/1107512824 Understanding Machine Learning: From Theory To Algorithms]. Shai Shalev-Shwartz, Shai Ben-David. Cambridge University Press, 2015. ISBN 978-1107512825&lt;br /&gt;
* [https://www.amazon.co.uk/Computational-Integrating-Language-Synthesis-Lectures/dp/1608451127 Computational Methods for Integrating Vision and Language]. Kobus Barnard. Morgan &amp;amp; Claypool, 2016. ISBN 978-1608451128.&lt;br /&gt;
* [http://www.amazon.co.uk/OpenCV-3-Blueprints-Joseph-Howse/dp/1784399752 OpenCV 3 Blueprints]. Joseph Howse, Steven Puttemans, Quan Hua, Utkarsh Sinha. Packt Publishing, 2015. ISBN 978-1784399757.&lt;br /&gt;
* [https://www.amazon.co.uk/Time-Modeling-Computation-Inference-Statistical/dp/1420093363 Time Series: Modeling, Computation, and Inference]. Raquel Prado, Mike West. Chapman and Hall/CRC, 2010. ISBN 978-1420093360&lt;br /&gt;
&lt;br /&gt;
== Not available ==&lt;br /&gt;
&lt;br /&gt;
Books that are likely not available (from previous purchase attempts):&lt;br /&gt;
&lt;br /&gt;
* [http://www.oreilly.com/data/free/real-world-active-learning.csp Real-World Active Learning: Applications and strategies for human-in-the-loop machine learning]. Ted Cuzzillo. O&#039;Reilly, March 2015.&lt;br /&gt;
&lt;br /&gt;
[[Category:Vislab]]&lt;/div&gt;</summary>
		<author><name>Giovanni Saponaro</name></author>
	</entry>
	<entry>
		<id>http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=VisLab_book_wishlist&amp;diff=7041</id>
		<title>VisLab book wishlist</title>
		<link rel="alternate" type="text/html" href="http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=VisLab_book_wishlist&amp;diff=7041"/>
		<updated>2018-09-21T16:56:51Z</updated>

		<summary type="html">&lt;p&gt;Giovanni Saponaro: The Book of Why: use information from UK edition&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;If you need a new book for your research, please add it to this list:&lt;br /&gt;
&lt;br /&gt;
* Title. Authors. Publisher, year. ISBN code.&lt;br /&gt;
&lt;br /&gt;
* [https://www.amazon.co.uk/Book-Why-Science-Cause-Effect/dp/0241242630 The Book of Why: The New Science of Cause and Effect]. Judea Pearl, Dana Mackenzie, 2018. ISBN 978-0241242636.&lt;br /&gt;
&lt;br /&gt;
= Already ordered =&lt;br /&gt;
&lt;br /&gt;
The following orders have already been dispatched.&lt;br /&gt;
&lt;br /&gt;
== Spring 2018 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in June 2018 and arrived in xxx 2018.&lt;br /&gt;
&lt;br /&gt;
* [https://www.amazon.co.uk/Design-Report-Experiments-Andy-Field/dp/0761973834 How to Design and Report Experiments]. Andy Field, Graham Hole. Sage, 2003. ISBN 978-0761973836.&lt;br /&gt;
* [https://www.amazon.co.uk/Non-verbal-Communication-Human-Interaction-International/dp/1285083512/ Nonverbal Communication in Human Interaction]. Mark Knapp, Terrence Horgan, Judith Hall. Cengage, 2014. ISBN 978-1285083513.&lt;br /&gt;
* [https://www.amazon.co.uk/3D-Printing-Handbook-Technologies-applications/dp/9082748509/ The 3D Printing Handbook: Technologies, design and applications]. Ben Redwood, Filemon Schöffer, Brian Garret. 3D Hubs B.V., 2017. ISBN 978-9082748505.&lt;br /&gt;
&lt;br /&gt;
== Autumn 2017 batch ==&lt;br /&gt;
&lt;br /&gt;
This book was ordered in November 2017 and arrived in January 2018.&lt;br /&gt;
&lt;br /&gt;
* [https://www.amazon.co.uk/Theoretical-Neuroscience-Computational-Mathematical-Modeling/dp/0262541858 Theoretical Neuroscience: Computational and Mathematical Modeling of Neural Systems]. Peter Dayan, ‎L. F. Abbott. MIT Press, 2005. ISBN 978-0262541855.&lt;br /&gt;
&lt;br /&gt;
== Spring 2017 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in April 2017 and arrived in May 2017.&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.co.uk/Ecological-Approach-Visual-Perception-Psychology/dp/1848725787 The Ecological Approach to Visual Perception: Classic Edition]. James J. Gibson. Psychology Press, 2014. ISBN 978-1848725782.&lt;br /&gt;
* [https://www.amazon.co.uk/Effective-Modern-Specific-Ways-Improve/dp/1491903996 Effective Modern C++: 42 Specific Ways to Improve Your Use of C++11 and C++14]. Scott Meyers. O&#039;Reilly, 2014. ISBN 978-1491903995.&lt;br /&gt;
* [https://www.amazon.co.uk/Hand-Mind-Gestures-Reveal-Thought/dp/0226561348 Hand and Mind: What Gestures Reveal about Thought]. David McNeill. University Of Chicago Press, 1996. ISBN 978-0226561349.&lt;br /&gt;
* [https://www.amazon.co.uk/Principles-Neural-Science-Fifth-Kandel/dp/0071390111 Principles of Neural Science, Fifth Edition]. Eric R. Kandel, James H. Schwartz, Thomas M. Jessell, Steven A. Siegelbaum, A. J. Hudspeth. McGraw-Hill, 2012. ISBN 978-0071390118&lt;br /&gt;
&lt;br /&gt;
== Winter 2016 batch ==&lt;br /&gt;
&lt;br /&gt;
This book was ordered in November 2016 and arrived in April 2017.&lt;br /&gt;
&lt;br /&gt;
* [https://www.amazon.co.uk/Deep-Learning-Adaptive-Computation-Machine/dp/0262035618 Deep Learning]. Ian Goodfellow, Yoshua Bengio, Aaron Courville. MIT Press, 2016. ISBN 978-0262035613&lt;br /&gt;
&lt;br /&gt;
== Spring 2016 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in March 2016, and arrived between May 2016 and February 2017 (Learning OpenCV 3).&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.co.uk/gp/product/1491937998 Learning OpenCV 3: Computer Vision in C++ with the OpenCV Library]. Adrian Kaehler, Gary Bradski. O&#039;Reilly Media, 2016.&lt;br /&gt;
* [http://www.amazon.co.uk/Mastering-Robotics-Programming-Lentin-Joseph/dp/1783551798 Mastering ROS for Robotics Programming]. Lentin Joseph. Packt Publishing, 2015.&lt;br /&gt;
* [http://www.amazon.co.uk/Artificial-Cognitive-Systems-David-Vernon/dp/0262028387 Artificial Cognitive Systems: A Primer]. David Vernon. MIT Press, 2015.&lt;br /&gt;
* [http://www.amazon.co.uk/Developmental-Robotics-Babies-Intelligent-Autonomous/dp/0262028018 Developmental Robotics: From Babies to Robots]. Angelo Cangelosi, Matthew Schlesinger. MIT Press, 2015.&lt;br /&gt;
* [http://www.amazon.co.uk/Machine-Learning-Optimization-Perspective-Developers/dp/0128015225 Machine Learning: A Bayesian and Optimization Perspective]. Sergios Theodoridis. Academic Press, March 2015.&lt;br /&gt;
* [http://www.amazon.co.uk/Gaussian-Processes-Machine-Learning-Rasmussen/dp/026218253X Gaussian Processes for Machine Learning]. Carl Edward Rasmussen, Christopher K. I. Williams. MIT Press, 2006.&lt;br /&gt;
* [http://www.amazon.co.uk/Designing-Sociable-Intelligent-Robotics-Autonomous/dp/0262025108 Designing Sociable Robots], Cynthia Breazeal. MIT Press, 2002.&lt;br /&gt;
&lt;br /&gt;
== Autumn 2014 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in November 2014, and arrived between December 2014 and February 2015.&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.co.uk/Probabilistic-Graphical-Models-Principles-Computation/dp/0262013193 Probabilistic Graphical Models: Principles and Techniques]. Daphne Koller, Nir Friedman. MIT Press, 2009. ([http://mitpress.mit.edu/books/probabilistic-graphical-models publisher page] with 20% discount code DKPGM12)&lt;br /&gt;
* [http://www.amazon.co.uk/Understanding-Vision-Theory-Models-Data/dp/0199564663 Understanding Vision: theory, models, and data]. Li Zhaoping. Oxford University Press, 2014. ([http://ukcatalogue.oup.com/product/9780199564668.do publisher page])&lt;br /&gt;
* [http://www.amazon.co.uk/Dictionary-Computer-Vision-Image-Processing/dp/1119941865 Dictionary of Computer Vision and Image Processing, 2nd Edition]. Robert B. Fisher, Toby P. Breckon, Kenneth Dawson-Howe, Andrew Fitzgibbon, Craig Robertson, Emanuele Trucco, Christopher K. I. Williams. Wiley, 2013. ([http://eu.wiley.com/WileyCDA/WileyTitle/productCd-1119941865.html publisher page])&lt;br /&gt;
* [http://www.amazon.co.uk/Introduction-Game-Design-Prototyping-Development-ebook/dp/B00LIYS9F0 Introduction to Game Design, Prototyping, and Development: From Concept to Playable Game with Unity and C#]. Jeremy Gibson. Addison-Wesley Professional, 2014.&lt;br /&gt;
* [http://www.amazon.co.uk/Regularization-Optimization-Kernels-Support-Machines/dp/1482241390 Regularization, Optimization, Kernels, and Support Vector Machines]. Johan A.K. Suykens, Marco Signoretto, Andreas Argyriou. Chapman and Hall/CRC, 2014. ([http://www.crcpress.com/product/isbn/9781482241396 publisher page])&lt;br /&gt;
&lt;br /&gt;
== Autumn 2013 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in October 2013, and arrived between November 2013 and June 2014.&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.co.uk/Gesture-Speech-Sign-Lynn-Messing/dp/019852451X Gesture, Speech, and Sign]. Lynn Messing, Ruth Campbell. Oxford University Press, 1999.&lt;br /&gt;
* [http://www.amazon.co.uk/OpenCV-Computer-Application-Programming-Cookbook/dp/1849513244/ OpenCV 2 Computer Vision Application Programming Cookbook]. Robert Laganière. Pack Publishing, May 2011.&lt;br /&gt;
* [http://www.amazon.co.uk/Brave-NUI-World-Designing-Interfaces/dp/0123822319 Brave NUI World: Designing Natural User Interfaces for Touch and Gesture]. Daniel Wigdor, Dennis Wixon. Morgan Kaufmann, April 2011.&lt;br /&gt;
* [http://www.amazon.co.uk/Probabilistic-Robotics-Intelligent-Autonomous-Agents/dp/0262201623 Probabilistic Robotics]. Sebastian Thrun, Wolfram Burgard, Dieter Fox. MIT Press, 2005.&lt;br /&gt;
* [http://www.amazon.co.uk/Frontiers-Human-Robot-Interaction-Advances-Studies/dp/9027204551 New Frontiers in Human-Robot Interaction] ([http://homepages.feis.herts.ac.uk/~comqkd/NFHRI-AIS-2011.pdf link2]). Kerstin Dautenhahn and Joe Saunder. John Benjamins Publishing Company, 2011.&lt;br /&gt;
* [http://mitpress.mit.edu/catalog/item/default.asp?ttype=2&amp;amp;tid=12814&amp;amp;mode=toc An Interdisciplinary Introduction to Image Processing]. Steven L. Tanimoto. MIT Press, May 2012.&lt;br /&gt;
* [http://www.amazon.co.uk/Machine-Learning-Probabilistic-Perspective-Computation/dp/0262018020 Machine Learning: A Probabilistic Perspective]. Kevin Murphy. MIT Press, October 2012.&lt;br /&gt;
* [http://www.cambridge.org/us/knowledge/discountpromotion/?site_locale=en_US&amp;amp;code=L2BRML Bayesian Reasoning and Machine Learning] (this link provides a 20% discount, you can change currency at checkout) David Barber. Cambridge University Press, February 2012.&lt;br /&gt;
* [http://www.amazon.co.uk/Active-Learning-Burr-Settles/dp/1608457257/ Active Learning: Synthesis Lectures on Artificial Intelligence and Machine Learning]. Burr Settles. Morgan &amp;amp; Claypool, 2012.&lt;br /&gt;
&lt;br /&gt;
== Summer 2011 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in the summer of 2011, and arrived on 2011-11-28.&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.com/Plasticity-Visual-System-Genes-Circuits/dp/0387281894 Plasticity in the Visual System: From Genes to Circuits], Raphael Pinaud (Editor), Liisa A. Tremere (Editor), Peter de Weerd, Springer 2006.&lt;br /&gt;
* [http://www.springer.com/engineering/robotics/book/978-3-540-23957-4 Springer Handbook of Robotics]. Bruno Siciliano, Oussama Khatib (Editors). Springer, 2008.&lt;br /&gt;
* [http://www.amazon.com/Human-Motor-Control-Second-Rosenbaum/dp/0123742269 Human Motor Control], David Rosenbaum. Elsevier/Academic Press, 2009.&lt;br /&gt;
* [http://www.amazon.com/Computer-Vision-Approach-David-Forsyth/dp/0130851981 Computer vision, A modern approach], David Forsyth and Jean Ponce.  &lt;br /&gt;
* [http://www.amazon.fr/Pattern-Recognition-Machine-Learning-Christopher/dp/0387310738/sr=8-1/qid=1158928255/ref=sr_1_1/402-9555855-8053710?ie=UTF8&amp;amp;s=english-books Pattern recognition and machine learning ], Christopher M. Bishop&lt;br /&gt;
&lt;br /&gt;
= Misc =&lt;br /&gt;
&lt;br /&gt;
== Discarded ==&lt;br /&gt;
&lt;br /&gt;
Books that were considered for purchase but not ordered:&lt;br /&gt;
&lt;br /&gt;
* [https://www.amazon.co.uk/Exploring-Robotic-Minds-Consciousness-Self-Organizing/dp/0190281065 Exploring Robotic Minds: Actions, Symbols, and Consciousness as Self-Organizing Dynamic Phenomena]. Jun Tani. OUP USA, 2016. ISBN 978-0190281069.&lt;br /&gt;
* [http://www.amazon.co.uk/Sparse-Modeling-Algorithms-Applications-Recognition/dp/1439828695 Sparse Modeling: Theory, Algorithms, and Applications]. Irina Rish, Genady Grabarnik. CRC Press, 2014.&lt;br /&gt;
* [http://www.amazon.co.uk/Sociorobot-World-Intelligent-Automation-Engineering-ebook/dp/B011QM0BBS Sociorobot World: A Guided Tour for All]. Spyros Tzafestas. Springer, 2016.&lt;br /&gt;
* [https://www.amazon.co.uk/Understanding-Machine-Learning-Theory-Algorithms-ebook/dp/1107512824 Understanding Machine Learning: From Theory To Algorithms]. Shai Shalev-Shwartz, Shai Ben-David. Cambridge University Press, 2015. ISBN 978-1107512825&lt;br /&gt;
* [https://www.amazon.co.uk/Computational-Integrating-Language-Synthesis-Lectures/dp/1608451127 Computational Methods for Integrating Vision and Language]. Kobus Barnard. Morgan &amp;amp; Claypool, 2016. ISBN 978-1608451128.&lt;br /&gt;
* [http://www.amazon.co.uk/OpenCV-3-Blueprints-Joseph-Howse/dp/1784399752 OpenCV 3 Blueprints]. Joseph Howse, Steven Puttemans, Quan Hua, Utkarsh Sinha. Packt Publishing, 2015. ISBN 978-1784399757.&lt;br /&gt;
* [https://www.amazon.co.uk/Time-Modeling-Computation-Inference-Statistical/dp/1420093363 Time Series: Modeling, Computation, and Inference]. Raquel Prado, Mike West. Chapman and Hall/CRC, 2010. ISBN 978-1420093360&lt;br /&gt;
&lt;br /&gt;
== Not available ==&lt;br /&gt;
&lt;br /&gt;
Books that are likely not available (from previous purchase attempts):&lt;br /&gt;
&lt;br /&gt;
* [http://www.oreilly.com/data/free/real-world-active-learning.csp Real-World Active Learning: Applications and strategies for human-in-the-loop machine learning]. Ted Cuzzillo. O&#039;Reilly, March 2015.&lt;br /&gt;
&lt;br /&gt;
[[Category:Vislab]]&lt;/div&gt;</summary>
		<author><name>Giovanni Saponaro</name></author>
	</entry>
	<entry>
		<id>http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=VisLab_book_wishlist&amp;diff=7028</id>
		<title>VisLab book wishlist</title>
		<link rel="alternate" type="text/html" href="http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=VisLab_book_wishlist&amp;diff=7028"/>
		<updated>2018-07-30T14:50:05Z</updated>

		<summary type="html">&lt;p&gt;Giovanni Saponaro: /* Spring 2018 batch */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;If you need a new book for your research, please add it to this list:&lt;br /&gt;
&lt;br /&gt;
* Title. Authors. Publisher, year. ISBN code.&lt;br /&gt;
&lt;br /&gt;
* [https://www.amazon.com/Book-Why-Science-Cause-Effect/dp/046509760X The Book of Why: The New Science of Cause and Effect]. Judea Pearl, Dana Mackenzie, 2018. ISBN 978-0465097609.&lt;br /&gt;
&lt;br /&gt;
= Already ordered =&lt;br /&gt;
&lt;br /&gt;
The following orders have already been dispatched.&lt;br /&gt;
&lt;br /&gt;
== Spring 2018 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in June 2018 and arrived in xxx 2018.&lt;br /&gt;
&lt;br /&gt;
* [https://www.amazon.co.uk/Design-Report-Experiments-Andy-Field/dp/0761973834 How to Design and Report Experiments]. Andy Field, Graham Hole. Sage, 2003. ISBN 978-0761973836.&lt;br /&gt;
* [https://www.amazon.co.uk/Non-verbal-Communication-Human-Interaction-International/dp/1285083512/ Nonverbal Communication in Human Interaction]. Mark Knapp, Terrence Horgan, Judith Hall. Cengage, 2014. ISBN 978-1285083513.&lt;br /&gt;
* [https://www.amazon.co.uk/3D-Printing-Handbook-Technologies-applications/dp/9082748509/ The 3D Printing Handbook: Technologies, design and applications]. Ben Redwood, Filemon Schöffer, Brian Garret. 3D Hubs B.V., 2017. ISBN 978-9082748505.&lt;br /&gt;
&lt;br /&gt;
== Autumn 2017 batch ==&lt;br /&gt;
&lt;br /&gt;
This book was ordered in November 2017 and arrived in January 2018.&lt;br /&gt;
&lt;br /&gt;
* [https://www.amazon.co.uk/Theoretical-Neuroscience-Computational-Mathematical-Modeling/dp/0262541858 Theoretical Neuroscience: Computational and Mathematical Modeling of Neural Systems]. Peter Dayan, ‎L. F. Abbott. MIT Press, 2005. ISBN 978-0262541855.&lt;br /&gt;
&lt;br /&gt;
== Spring 2017 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in April 2017 and arrived in May 2017.&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.co.uk/Ecological-Approach-Visual-Perception-Psychology/dp/1848725787 The Ecological Approach to Visual Perception: Classic Edition]. James J. Gibson. Psychology Press, 2014. ISBN 978-1848725782.&lt;br /&gt;
* [https://www.amazon.co.uk/Effective-Modern-Specific-Ways-Improve/dp/1491903996 Effective Modern C++: 42 Specific Ways to Improve Your Use of C++11 and C++14]. Scott Meyers. O&#039;Reilly, 2014. ISBN 978-1491903995.&lt;br /&gt;
* [https://www.amazon.co.uk/Hand-Mind-Gestures-Reveal-Thought/dp/0226561348 Hand and Mind: What Gestures Reveal about Thought]. David McNeill. University Of Chicago Press, 1996. ISBN 978-0226561349.&lt;br /&gt;
* [https://www.amazon.co.uk/Principles-Neural-Science-Fifth-Kandel/dp/0071390111 Principles of Neural Science, Fifth Edition]. Eric R. Kandel, James H. Schwartz, Thomas M. Jessell, Steven A. Siegelbaum, A. J. Hudspeth. McGraw-Hill, 2012. ISBN 978-0071390118&lt;br /&gt;
&lt;br /&gt;
== Winter 2016 batch ==&lt;br /&gt;
&lt;br /&gt;
This book was ordered in November 2016 and arrived in April 2017.&lt;br /&gt;
&lt;br /&gt;
* [https://www.amazon.co.uk/Deep-Learning-Adaptive-Computation-Machine/dp/0262035618 Deep Learning]. Ian Goodfellow, Yoshua Bengio, Aaron Courville. MIT Press, 2016. ISBN 978-0262035613&lt;br /&gt;
&lt;br /&gt;
== Spring 2016 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in March 2016, and arrived between May 2016 and February 2017 (Learning OpenCV 3).&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.co.uk/gp/product/1491937998 Learning OpenCV 3: Computer Vision in C++ with the OpenCV Library]. Adrian Kaehler, Gary Bradski. O&#039;Reilly Media, 2016.&lt;br /&gt;
* [http://www.amazon.co.uk/Mastering-Robotics-Programming-Lentin-Joseph/dp/1783551798 Mastering ROS for Robotics Programming]. Lentin Joseph. Packt Publishing, 2015.&lt;br /&gt;
* [http://www.amazon.co.uk/Artificial-Cognitive-Systems-David-Vernon/dp/0262028387 Artificial Cognitive Systems: A Primer]. David Vernon. MIT Press, 2015.&lt;br /&gt;
* [http://www.amazon.co.uk/Developmental-Robotics-Babies-Intelligent-Autonomous/dp/0262028018 Developmental Robotics: From Babies to Robots]. Angelo Cangelosi, Matthew Schlesinger. MIT Press, 2015.&lt;br /&gt;
* [http://www.amazon.co.uk/Machine-Learning-Optimization-Perspective-Developers/dp/0128015225 Machine Learning: A Bayesian and Optimization Perspective]. Sergios Theodoridis. Academic Press, March 2015.&lt;br /&gt;
* [http://www.amazon.co.uk/Gaussian-Processes-Machine-Learning-Rasmussen/dp/026218253X Gaussian Processes for Machine Learning]. Carl Edward Rasmussen, Christopher K. I. Williams. MIT Press, 2006.&lt;br /&gt;
* [http://www.amazon.co.uk/Designing-Sociable-Intelligent-Robotics-Autonomous/dp/0262025108 Designing Sociable Robots], Cynthia Breazeal. MIT Press, 2002.&lt;br /&gt;
&lt;br /&gt;
== Autumn 2014 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in November 2014, and arrived between December 2014 and February 2015.&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.co.uk/Probabilistic-Graphical-Models-Principles-Computation/dp/0262013193 Probabilistic Graphical Models: Principles and Techniques]. Daphne Koller, Nir Friedman. MIT Press, 2009. ([http://mitpress.mit.edu/books/probabilistic-graphical-models publisher page] with 20% discount code DKPGM12)&lt;br /&gt;
* [http://www.amazon.co.uk/Understanding-Vision-Theory-Models-Data/dp/0199564663 Understanding Vision: theory, models, and data]. Li Zhaoping. Oxford University Press, 2014. ([http://ukcatalogue.oup.com/product/9780199564668.do publisher page])&lt;br /&gt;
* [http://www.amazon.co.uk/Dictionary-Computer-Vision-Image-Processing/dp/1119941865 Dictionary of Computer Vision and Image Processing, 2nd Edition]. Robert B. Fisher, Toby P. Breckon, Kenneth Dawson-Howe, Andrew Fitzgibbon, Craig Robertson, Emanuele Trucco, Christopher K. I. Williams. Wiley, 2013. ([http://eu.wiley.com/WileyCDA/WileyTitle/productCd-1119941865.html publisher page])&lt;br /&gt;
* [http://www.amazon.co.uk/Introduction-Game-Design-Prototyping-Development-ebook/dp/B00LIYS9F0 Introduction to Game Design, Prototyping, and Development: From Concept to Playable Game with Unity and C#]. Jeremy Gibson. Addison-Wesley Professional, 2014.&lt;br /&gt;
* [http://www.amazon.co.uk/Regularization-Optimization-Kernels-Support-Machines/dp/1482241390 Regularization, Optimization, Kernels, and Support Vector Machines]. Johan A.K. Suykens, Marco Signoretto, Andreas Argyriou. Chapman and Hall/CRC, 2014. ([http://www.crcpress.com/product/isbn/9781482241396 publisher page])&lt;br /&gt;
&lt;br /&gt;
== Autumn 2013 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in October 2013, and arrived between November 2013 and June 2014.&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.co.uk/Gesture-Speech-Sign-Lynn-Messing/dp/019852451X Gesture, Speech, and Sign]. Lynn Messing, Ruth Campbell. Oxford University Press, 1999.&lt;br /&gt;
* [http://www.amazon.co.uk/OpenCV-Computer-Application-Programming-Cookbook/dp/1849513244/ OpenCV 2 Computer Vision Application Programming Cookbook]. Robert Laganière. Pack Publishing, May 2011.&lt;br /&gt;
* [http://www.amazon.co.uk/Brave-NUI-World-Designing-Interfaces/dp/0123822319 Brave NUI World: Designing Natural User Interfaces for Touch and Gesture]. Daniel Wigdor, Dennis Wixon. Morgan Kaufmann, April 2011.&lt;br /&gt;
* [http://www.amazon.co.uk/Probabilistic-Robotics-Intelligent-Autonomous-Agents/dp/0262201623 Probabilistic Robotics]. Sebastian Thrun, Wolfram Burgard, Dieter Fox. MIT Press, 2005.&lt;br /&gt;
* [http://www.amazon.co.uk/Frontiers-Human-Robot-Interaction-Advances-Studies/dp/9027204551 New Frontiers in Human-Robot Interaction] ([http://homepages.feis.herts.ac.uk/~comqkd/NFHRI-AIS-2011.pdf link2]). Kerstin Dautenhahn and Joe Saunder. John Benjamins Publishing Company, 2011.&lt;br /&gt;
* [http://mitpress.mit.edu/catalog/item/default.asp?ttype=2&amp;amp;tid=12814&amp;amp;mode=toc An Interdisciplinary Introduction to Image Processing]. Steven L. Tanimoto. MIT Press, May 2012.&lt;br /&gt;
* [http://www.amazon.co.uk/Machine-Learning-Probabilistic-Perspective-Computation/dp/0262018020 Machine Learning: A Probabilistic Perspective]. Kevin Murphy. MIT Press, October 2012.&lt;br /&gt;
* [http://www.cambridge.org/us/knowledge/discountpromotion/?site_locale=en_US&amp;amp;code=L2BRML Bayesian Reasoning and Machine Learning] (this link provides a 20% discount, you can change currency at checkout) David Barber. Cambridge University Press, February 2012.&lt;br /&gt;
* [http://www.amazon.co.uk/Active-Learning-Burr-Settles/dp/1608457257/ Active Learning: Synthesis Lectures on Artificial Intelligence and Machine Learning]. Burr Settles. Morgan &amp;amp; Claypool, 2012.&lt;br /&gt;
&lt;br /&gt;
== Summer 2011 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in the summer of 2011, and arrived on 2011-11-28.&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.com/Plasticity-Visual-System-Genes-Circuits/dp/0387281894 Plasticity in the Visual System: From Genes to Circuits], Raphael Pinaud (Editor), Liisa A. Tremere (Editor), Peter de Weerd, Springer 2006.&lt;br /&gt;
* [http://www.springer.com/engineering/robotics/book/978-3-540-23957-4 Springer Handbook of Robotics]. Bruno Siciliano, Oussama Khatib (Editors). Springer, 2008.&lt;br /&gt;
* [http://www.amazon.com/Human-Motor-Control-Second-Rosenbaum/dp/0123742269 Human Motor Control], David Rosenbaum. Elsevier/Academic Press, 2009.&lt;br /&gt;
* [http://www.amazon.com/Computer-Vision-Approach-David-Forsyth/dp/0130851981 Computer vision, A modern approach], David Forsyth and Jean Ponce.  &lt;br /&gt;
* [http://www.amazon.fr/Pattern-Recognition-Machine-Learning-Christopher/dp/0387310738/sr=8-1/qid=1158928255/ref=sr_1_1/402-9555855-8053710?ie=UTF8&amp;amp;s=english-books Pattern recognition and machine learning ], Christopher M. Bishop&lt;br /&gt;
&lt;br /&gt;
= Misc =&lt;br /&gt;
&lt;br /&gt;
== Discarded ==&lt;br /&gt;
&lt;br /&gt;
Books that were considered for purchase but not ordered:&lt;br /&gt;
&lt;br /&gt;
* [https://www.amazon.co.uk/Exploring-Robotic-Minds-Consciousness-Self-Organizing/dp/0190281065 Exploring Robotic Minds: Actions, Symbols, and Consciousness as Self-Organizing Dynamic Phenomena]. Jun Tani. OUP USA, 2016. ISBN 978-0190281069.&lt;br /&gt;
* [http://www.amazon.co.uk/Sparse-Modeling-Algorithms-Applications-Recognition/dp/1439828695 Sparse Modeling: Theory, Algorithms, and Applications]. Irina Rish, Genady Grabarnik. CRC Press, 2014.&lt;br /&gt;
* [http://www.amazon.co.uk/Sociorobot-World-Intelligent-Automation-Engineering-ebook/dp/B011QM0BBS Sociorobot World: A Guided Tour for All]. Spyros Tzafestas. Springer, 2016.&lt;br /&gt;
* [https://www.amazon.co.uk/Understanding-Machine-Learning-Theory-Algorithms-ebook/dp/1107512824 Understanding Machine Learning: From Theory To Algorithms]. Shai Shalev-Shwartz, Shai Ben-David. Cambridge University Press, 2015. ISBN 978-1107512825&lt;br /&gt;
* [https://www.amazon.co.uk/Computational-Integrating-Language-Synthesis-Lectures/dp/1608451127 Computational Methods for Integrating Vision and Language]. Kobus Barnard. Morgan &amp;amp; Claypool, 2016. ISBN 978-1608451128.&lt;br /&gt;
* [http://www.amazon.co.uk/OpenCV-3-Blueprints-Joseph-Howse/dp/1784399752 OpenCV 3 Blueprints]. Joseph Howse, Steven Puttemans, Quan Hua, Utkarsh Sinha. Packt Publishing, 2015. ISBN 978-1784399757.&lt;br /&gt;
* [https://www.amazon.co.uk/Time-Modeling-Computation-Inference-Statistical/dp/1420093363 Time Series: Modeling, Computation, and Inference]. Raquel Prado, Mike West. Chapman and Hall/CRC, 2010. ISBN 978-1420093360&lt;br /&gt;
&lt;br /&gt;
== Not available ==&lt;br /&gt;
&lt;br /&gt;
Books that are likely not available (from previous purchase attempts):&lt;br /&gt;
&lt;br /&gt;
* [http://www.oreilly.com/data/free/real-world-active-learning.csp Real-World Active Learning: Applications and strategies for human-in-the-loop machine learning]. Ted Cuzzillo. O&#039;Reilly, March 2015.&lt;br /&gt;
&lt;br /&gt;
[[Category:Vislab]]&lt;/div&gt;</summary>
		<author><name>Giovanni Saponaro</name></author>
	</entry>
	<entry>
		<id>http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=ICub_machines_configuration&amp;diff=7026</id>
		<title>ICub machines configuration</title>
		<link rel="alternate" type="text/html" href="http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=ICub_machines_configuration&amp;diff=7026"/>
		<updated>2018-07-26T15:37:26Z</updated>

		<summary type="html">&lt;p&gt;Giovanni Saponaro: /* Dependencies */ Qt5 dependencies&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;In this page we describe the setup of the computers connected to the iCub robot, which all share a common network disk and configuration.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;See [[iCub machines configuration/Archive]] for obsolete information.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
= Operating system installation =&lt;br /&gt;
&lt;br /&gt;
Ubuntu LTS, default settings and partitioning. The first user to be created must be called &#039;&#039;&#039;icub&#039;&#039;&#039;, to make the distributed setup possible: for NFS network mount, this user has to have uid 1000 and guid 1000.&lt;br /&gt;
&lt;br /&gt;
In order to add a user:&lt;br /&gt;
* either use the Ubuntu graphical frontends&lt;br /&gt;
* or use a Terminal:&lt;br /&gt;
 sudo adduser icub&lt;br /&gt;
 sudo usermod -aG sudo icub  # gives sudo privileges&lt;br /&gt;
&lt;br /&gt;
= Other operations =&lt;br /&gt;
&lt;br /&gt;
== Network configuration ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;See also: [[VisLab network]], [[ISR computing resources]]&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Configure a static IP as explained in one of the following subsections, depending if the machine is a desktop or a server one.&lt;br /&gt;
&lt;br /&gt;
Also, it is recommended to set up the &amp;lt;code&amp;gt;/etc/hosts&amp;lt;/code&amp;gt; file as follows:&lt;br /&gt;
&lt;br /&gt;
 10.10.1.41 icubbrain1&lt;br /&gt;
 10.10.1.42 icubbrain2&lt;br /&gt;
 10.10.1.50 pc104&lt;br /&gt;
 10.10.1.51 icub-cuda&lt;br /&gt;
 10.10.1.53 icub-laptop&lt;br /&gt;
&lt;br /&gt;
You should be able to do &amp;lt;code&amp;gt;ping icubbrain1&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Desktop machines ===&lt;br /&gt;
&lt;br /&gt;
With the graphical Network Manager (https://help.ubuntu.com/16.04/ubuntu-help/net-fixed-ip-address.html), configure the connection &amp;quot;Auto eth0&amp;quot; IPv4 as follows:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|+ &lt;br /&gt;
! Address !! Netmask !! Gateway !! DNS Servers !! notes&lt;br /&gt;
|-&lt;br /&gt;
|10.10.1.x || 255.255.255.0 || 10.10.1.254 || 10.0.0.1, 10.0.0.2 || visnet (iCub machines)&lt;br /&gt;
|-&lt;br /&gt;
|10.0.x.y || 255.255.0.0 || 10.0.0.254 || 10.0.0.1, 10.0.0.2 || isrnet (rest of ISR)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Servers ===&lt;br /&gt;
&lt;br /&gt;
Edit &amp;lt;code&amp;gt;/etc/network/interfaces&amp;lt;/code&amp;gt; like this:&lt;br /&gt;
 auto lo&lt;br /&gt;
 iface lo inet loopback&lt;br /&gt;
   &lt;br /&gt;
 auto eth0&lt;br /&gt;
 iface eth0 inet static&lt;br /&gt;
 address 10.x.y.z # put your IP here, see above table&lt;br /&gt;
 netmask 255.255.x.y # see above table&lt;br /&gt;
 network 10.10.1.0&lt;br /&gt;
 broadcast 10.10.1.255&lt;br /&gt;
 gateway 10.10.1.254&lt;br /&gt;
 dns-nameservers 10.0.0.1 10.0.0.2&lt;br /&gt;
&lt;br /&gt;
In some versions of Ubuntu, to configure DNS you also need to edit &amp;lt;code&amp;gt;/etc/resolvconf/resolv.conf.d/head&amp;lt;/code&amp;gt; like this:&lt;br /&gt;
 nameserver 10.0.0.1&lt;br /&gt;
 nameserver 10.0.0.2&lt;br /&gt;
&lt;br /&gt;
then run:&lt;br /&gt;
 sudo resolvconf -u&lt;br /&gt;
&lt;br /&gt;
== Dependencies ==&lt;br /&gt;
&lt;br /&gt;
Installing the &#039;&#039;&#039;icub-common&#039;&#039;&#039; metapackage is sufficient. It is a bundle of the following packages (for more details see [http://wiki.icub.org/wiki/Linux:Installation_from_sources here] and [http://wiki.icub.org/wiki/Linux:_dependencies here]):&lt;br /&gt;
 sudo apt install build-essential libace-dev libedit-dev libeigen3-dev libncurses5-dev gfortran libtinyxml-dev libgraphviz-dev&lt;br /&gt;
 sudo apt install git-core ssh gcc g++ make cmake-curses-gui freeglut3-dev libxmu-dev libswscale-dev libavformat-dev&lt;br /&gt;
&lt;br /&gt;
Qt5 graphics dependencies in Ubuntu 16.04 Xenial:&lt;br /&gt;
&lt;br /&gt;
 sudo apt install qttools5-dev qtdeclarative5-dev qtdeclarative5-controls-plugin qtdeclarative5-dialogs-plugin qtmultimedia5-dev qtdeclarative5-qtmultimedia-plugin qtquick1-5-dev libqt5opengl5-dev&lt;br /&gt;
&lt;br /&gt;
Qt5 graphics dependencies in Debian Stretch:&lt;br /&gt;
 sudo apt install qml-module-qt-labs-folderlistmodel qml-module-qt-labs-settings&lt;br /&gt;
&lt;br /&gt;
iCub Simulator dependencies: SDL and ODE.&lt;br /&gt;
&lt;br /&gt;
GTK graphical programs are obsolete and replaced by their Qt equivalents. If you still want the old GTK programs, install &amp;lt;code&amp;gt;libgtkmm-2.4-dev&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Environment variables ==&lt;br /&gt;
&lt;br /&gt;
* Create a file called ~/.bashrc_iCub like this one. Usually you do not need all of the following variables and settings, just a subset.&lt;br /&gt;
&lt;br /&gt;
  export ROBOT_CODE=/usr/local/src/robot&lt;br /&gt;
&lt;br /&gt;
  export YARP_ROOT=$ROBOT_CODE/yarp&lt;br /&gt;
  export YARP_DIR=$YARP_ROOT/build&lt;br /&gt;
  export ICUB_ROOT=$ROBOT_CODE/icub-main&lt;br /&gt;
  export ICUB_DIR=$ICUB_ROOT/build&lt;br /&gt;
&lt;br /&gt;
  export ICUBcontrib_DIR=$ROBOT_CODE/icub-contrib-common/build&lt;br /&gt;
  export YARP_DATA_DIRS=$YARP_DIR/share/yarp:$ICUB_DIR/share/iCub:$ICUBcontrib_DIR/share/ICUBcontrib:$ROBOT_CODE/speech/svox-speech/build/share/speech&lt;br /&gt;
  export PATH=$PATH:$YARP_DIR/bin:$ICUB_DIR/bin:$ICUBcontrib_DIR/bin&lt;br /&gt;
&lt;br /&gt;
  export ODE_DIR=$ROBOT_CODE/ode-0.13/build&lt;br /&gt;
&lt;br /&gt;
  # OpenCV: select one of the following&lt;br /&gt;
  #export OpenCV_DIR=$ROBOT_CODE/opencv2/build&lt;br /&gt;
  #export OpenCV_DIR=$ROBOT_CODE/opencv2/build-cuda&lt;br /&gt;
  export OpenCV_DIR=$ROBOT_CODE/opencv3/build&lt;br /&gt;
  #export OpenCV_DIR=$ROBOT_CODE/opencv3/build-cuda&lt;br /&gt;
&lt;br /&gt;
  # To enable tab completion on yarp port names&lt;br /&gt;
  if [ -f $YARP_ROOT/scripts/yarp_completion ]; then&lt;br /&gt;
    source $YARP_ROOT/scripts/yarp_completion&lt;br /&gt;
  fi&lt;br /&gt;
&lt;br /&gt;
  # Set the name of your robot here.&lt;br /&gt;
  export YARP_ROBOT_NAME=iCubLisboa01&lt;br /&gt;
&lt;br /&gt;
  # Set-up optimizations&lt;br /&gt;
  export CMAKE_BUILD_TYPE=Release&lt;br /&gt;
&lt;br /&gt;
  # DebugStream customization&lt;br /&gt;
  export YARP_VERBOSE_OUTPUT=0&lt;br /&gt;
  export YARP_COLORED_OUTPUT=1&lt;br /&gt;
  export YARP_TRACE_ENABLE=0&lt;br /&gt;
  export YARP_FORWARD_LOG_ENABLE=0&lt;br /&gt;
&lt;br /&gt;
  # Lua&lt;br /&gt;
  ### DO NOT REMOVE &#039;;;;&#039; ###&lt;br /&gt;
  export LUA_PATH=&amp;quot;;;;$ROBOT_CODE/rFSM/?.lua;$ICUBcontrib_DIR/share/ICUBcontrib/contexts/interactiveObjectsLearning/LUA/?.lua&amp;quot;&lt;br /&gt;
  export LUA_CPATH=&amp;quot;;;;$YARP_ROOT/bindings/build-lua/?.so&amp;quot;&lt;br /&gt;
  export PATH=$PATH:$ROBOT_CODE/rFSM/tools:$ICUBcontrib_DIR/share/ICUBcontrib/contexts/interactiveObjectsLearning/LUA&lt;br /&gt;
  export PATH=$PATH:$YARP_ROOT/bindings/build-lua&lt;br /&gt;
  export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$YARP_ROOT/bindings/build-lua&lt;br /&gt;
&lt;br /&gt;
* Then, before the following line of /etc/bash.bashrc&lt;br /&gt;
 [ -z &amp;quot;$PS1&amp;quot; ] &amp;amp;&amp;amp; return&lt;br /&gt;
add this:&lt;br /&gt;
 # per-user environment variables (non-interactive and interactive mode)&lt;br /&gt;
 source $HOME/.bashrc_iCub&lt;br /&gt;
&lt;br /&gt;
The reason why we use the above custom file (as opposed to the standard ~/.bashrc) is that we want to enforce the variables both during interactive and non-interactive sessions, such as commands launched via &amp;lt;code&amp;gt;yarprun&amp;lt;/code&amp;gt; from another machine.&lt;br /&gt;
&lt;br /&gt;
See also https://git.robotology.eu/mbrunettini/icub-environment for the variables and scripts employed at IIT.&lt;br /&gt;
&lt;br /&gt;
= Additional software =&lt;br /&gt;
&lt;br /&gt;
== OpenCV ==&lt;br /&gt;
&lt;br /&gt;
=== Ubuntu packages ===&lt;br /&gt;
&lt;br /&gt;
* this is the easiest way to install OpenCV, however the Ubuntu packages might be too old and/or missing some specific features (in that case proceed with a manual installation, see below)&lt;br /&gt;
&lt;br /&gt;
  sudo apt install libcv-dev libhighgui-dev libcvaux-dev libopencv-gpu-dev&lt;br /&gt;
&lt;br /&gt;
=== Manual compilation ===&lt;br /&gt;
&lt;br /&gt;
* on most machines: download OpenCV, create a build directory, CMake, set WITH_CUDA=OFF, compile, set OpenCV_DIR to the path of OpenCV-x.y.z/build, for example:&lt;br /&gt;
 export OpenCV_DIR=$code/OpenCV-x.y.z/build&lt;br /&gt;
&lt;br /&gt;
* on CUDA machines, in order to compile CUDA-enabled modules: create a build-cuda directory, CMake, set WITH_CUDA=ON, compile, set OpenCV_DIR to the path of OpenCV-x.y.z/build-cuda&lt;br /&gt;
&lt;br /&gt;
== YARP and iCub ==&lt;br /&gt;
&lt;br /&gt;
* In general, when compiling this software, do &#039;&#039;&#039;not&#039;&#039;&#039; use &amp;lt;code&amp;gt;sudo make install&amp;lt;/code&amp;gt; but simply &amp;lt;code&amp;gt;make&amp;lt;/code&amp;gt; (and configure the PATH variable in such a way that it finds the binaries from the build directory).&lt;br /&gt;
&lt;br /&gt;
* If you work with the robot, use the volume shares exported from the NFS server.&lt;br /&gt;
&lt;br /&gt;
* In other cases, follow the instructions on the [[iCub software]] article. &lt;br /&gt;
&lt;br /&gt;
* yarp CMake configuration&lt;br /&gt;
 CMAKE_BUILD_TYPE Release&lt;br /&gt;
 CREATE_GUIS&lt;br /&gt;
 CREATE_LIB_MATH&lt;br /&gt;
&lt;br /&gt;
 // to enable 640x480@30Hz images with Bayer encoding&lt;br /&gt;
 // install libraw1394-dev libdc1394-22-dev then enable&lt;br /&gt;
 CREATE_OPTIONAL_CARRIERS&lt;br /&gt;
 ENABLE_yarpcar_bayer_carrier&lt;br /&gt;
&lt;br /&gt;
* icub-main CMake configuration&lt;br /&gt;
 CMAKE_BUILD_TYPE Release&lt;br /&gt;
 // on servers, do http://wiki.icub.org/wiki/Installing_IPOPT then enable&lt;br /&gt;
 ENABLE_icubmod_cartesiancontrollerclient ON&lt;br /&gt;
 ENABLE_icubmod_cartesiancontrollerserver ON&lt;br /&gt;
 ENABLE_icubmod_gazecontrollerclient ON&lt;br /&gt;
&lt;br /&gt;
* final configuration&lt;br /&gt;
# &amp;lt;code&amp;gt;yarp namespace /icub&amp;lt;/code&amp;gt;&lt;br /&gt;
# &amp;lt;code&amp;gt;yarp conf 10.10.1.53 10000&amp;lt;/code&amp;gt; (yarpserver runs on [[iCub laptop]])&lt;br /&gt;
&lt;br /&gt;
* special machines such as [[pc104]] need different flags&lt;br /&gt;
&lt;br /&gt;
== CUDA ==&lt;br /&gt;
&lt;br /&gt;
=== Prerequisites ===&lt;br /&gt;
&lt;br /&gt;
 sudo apt install freeglut3-dev libdevil-dev libglew-dev&lt;br /&gt;
 sudo apt purge libcudart*  // because we will manually install it&lt;br /&gt;
&lt;br /&gt;
Troubleshooting: http://askubuntu.com/questions/410604/installing-nvidia-drivers-with-pkg1-run-ends-with-no-version-h-found&lt;br /&gt;
&lt;br /&gt;
=== CUDA Toolkit, SDK and Examples ===&lt;br /&gt;
&lt;br /&gt;
* stop X servers: &amp;lt;code&amp;gt;sudo service lightdm stop&amp;lt;/code&amp;gt; (or &amp;lt;code&amp;gt;gdm stop&amp;lt;/code&amp;gt; depending on configuration)&lt;br /&gt;
* download and install NVIDIA CUDA Toolkit from http://docs.nvidia.com/cuda (not from Ubuntu packages)&lt;br /&gt;
* if you obtain the error &amp;quot;Toolkit:  Installation Failed. Using unsupported Compiler.&amp;quot;, use the override option, e.g., &amp;lt;code&amp;gt;./cuda_6.0.37_linux_64.run --override&amp;lt;/code&amp;gt;&lt;br /&gt;
* if you obtain the error &amp;quot;The driver installation is unable to locate the kernel source. Please make sure that the kernel source packages are installed and set up correctly&amp;quot;:&lt;br /&gt;
** read the CUDA log in /tmp and verify that the graphics card is currently supported -- if not, you might need to install a legacy NVIDIA driver. For example, the Quadro FX 580 card needs NVIDIA legacy drivers 340.xx: install them and then answer &#039;&#039;&#039;no&#039;&#039;&#039; when CUDA Toolkit installer asks &amp;quot;Install NVIDIA Accelerated Graphics Driver for Linux-x86_64 346.46?&amp;quot;&lt;br /&gt;
** &amp;lt;code&amp;gt;sudo apt install linux-generic linux-headers-$(uname -r) linux-headers-generic-lts-trusty&amp;lt;/code&amp;gt; (or other Ubuntu version codename)&lt;br /&gt;
** call the installer specifying the kernel source path, e.g., &amp;lt;code&amp;gt;./cuda_7.0.28_linux.run --kernel-source-path=/usr/src/linux-headers-3.13.0-52-generic/&amp;lt;/code&amp;gt;&lt;br /&gt;
* output of successful installation:&lt;br /&gt;
 Driver:   Installed&lt;br /&gt;
 Toolkit:  Installed in /usr/local/cuda-7.0&lt;br /&gt;
 Samples:  Not Selected&lt;br /&gt;
 Please make sure that&lt;br /&gt;
 -   PATH includes /usr/local/cuda-7.0/bin&lt;br /&gt;
 -   LD_LIBRARY_PATH includes /usr/local/cuda-7.0/lib64, or, add /usr/local/cuda-7.0/lib64 to /etc/ld.so.conf and run ldconfig as root&lt;br /&gt;
 To uninstall the CUDA Toolkit, run the uninstall script in /usr/local/cuda-7.0/bin&lt;br /&gt;
 To uninstall the NVIDIA Driver, run nvidia-uninstall&lt;br /&gt;
&lt;br /&gt;
* troubleshooting:&lt;br /&gt;
** http://askubuntu.com/questions/451672/installing-and-testing-cuda-in-ubuntu-14-04&lt;br /&gt;
** http://troylee2008.blogspot.pt/2012/05/linking-error-while-compiling-cuda-sdk.html&lt;br /&gt;
** https://devtalk.nvidia.com/default/topic/617414/-solved-cuda-driver-version-is-insufficient-for-cuda-runtime-version-fedora-18-rpmfusion-driver/&lt;br /&gt;
&lt;br /&gt;
=== SiftGPU ===&lt;br /&gt;
&lt;br /&gt;
* download it from http://cs.unc.edu/~ccwu/siftgpu/&lt;br /&gt;
* unzip it - typically in your home directory, not in the NFS shared folder&lt;br /&gt;
* compile with &amp;lt;code&amp;gt;make&amp;lt;/code&amp;gt;&lt;br /&gt;
* if you obtain &amp;quot;unspecified launch failure&amp;quot; and 0 sift features/matches, check that the X server is running: &amp;lt;code&amp;gt;sudo service lightdm start&amp;lt;/code&amp;gt;&lt;br /&gt;
* if you obtain the error &amp;quot;/usr/local/cuda/bin/nvcc: Command not found&amp;quot;, this can help: &amp;lt;code&amp;gt;sudo ln -s /usr/lib/nvidia-cuda-toolkit /usr/local/cuda&amp;lt;/code&amp;gt;. See also http://askubuntu.com/questions/231503/nvcc-compiler-setup-ubuntu-12-04&lt;br /&gt;
* run the test program &amp;lt;code&amp;gt;SimpleSIFT&amp;lt;/code&amp;gt; - it should work via ssh, as well as in a local session&lt;br /&gt;
* example of successful execution:&lt;br /&gt;
 $ ./SimpleSIFT &lt;br /&gt;
 Unable to create OpenGL Context!&lt;br /&gt;
 For nVidia cards, you can try change to CUDA mode in this case&lt;br /&gt;
 NOTE: changing maximum texture dimension to 32768&lt;br /&gt;
 [SiftGPU Language]:	CUDA&lt;br /&gt;
 Image size :	800x600&lt;br /&gt;
 Image loaded :	../data/800-1.jpg&lt;br /&gt;
 #Features:	3347&lt;br /&gt;
 #Features MO:	3910&lt;br /&gt;
 [RUN SIFT]:	0.339&lt;br /&gt;
 Image size :	640x480&lt;br /&gt;
 Image loaded :	../data/640-1.jpg&lt;br /&gt;
 #Features:	2372&lt;br /&gt;
 #Features MO:	2767&lt;br /&gt;
 [RUN SIFT]:	0.208&lt;br /&gt;
 NOTE: changing maximum texture dimension to 32768&lt;br /&gt;
 [SiftMatchGPU]: CUDA&lt;br /&gt;
 2247 sift matches were found;&lt;br /&gt;
&lt;br /&gt;
* define &amp;lt;code&amp;gt;export SIFTGPU_DIR=~/SiftGPU&amp;lt;/code&amp;gt; or similar in your iCub bashrc file, so that libsiftgpu.so is found by IOL modules&lt;br /&gt;
&lt;br /&gt;
== himrep ==&lt;br /&gt;
&lt;br /&gt;
Clone https://github.com/robotology/himrep, follow the instructions to compile &amp;lt;code&amp;gt;liblinear&amp;lt;/code&amp;gt;, CMake, make install&lt;br /&gt;
&lt;br /&gt;
To use the deep neural network object recognition, based on Caffe, follow the instructions at README_Caffe.md.&lt;br /&gt;
If you get &amp;quot;error: kernel launches from templates are not allowed in system files&amp;quot;, use an older GCC version like 4.6 (see also https://github.com/BVLC/caffe/issues/337). If you get &amp;quot;ImportError: No module named &#039;yaml&#039;&amp;quot;, do &amp;lt;code&amp;gt;sudo apt install python-yaml&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== IOL ==&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;sudo apt install lua5.1 liblua5.1-dev&amp;lt;/code&amp;gt;&lt;br /&gt;
* clone [https://github.com/kmarkus/rFSM rFSM] (no need to compile anything here)&lt;br /&gt;
&lt;br /&gt;
Clone https://github.com/robotology/iol, CMake, make install&lt;br /&gt;
&lt;br /&gt;
== stereo-vision ==&lt;br /&gt;
&lt;br /&gt;
Clone https://github.com/robotology/stereo-vision, CMake with USE_SIFT_GPU=ON, make install&lt;br /&gt;
&lt;br /&gt;
= Best practices =&lt;br /&gt;
&lt;br /&gt;
Below are some tips and tricks taken from:&lt;br /&gt;
&lt;br /&gt;
* http://wiki.icub.org/wiki/Yarp-config&lt;br /&gt;
* http://www.yarp.it/yarp-config.html&lt;br /&gt;
* [https://docs.google.com/document/d/1S9m4DbrV1AJWo_E1r3F8k3ZzmhaTOWRJ9WFjXPFqVos IIT - How to setup and start the iCub from scratch]&lt;br /&gt;
&lt;br /&gt;
== XML files ==&lt;br /&gt;
&lt;br /&gt;
Edit XML files locally, in /home/icub/.local/share/yarp&lt;br /&gt;
&lt;br /&gt;
To install robot-specific XML files, compile icub-main (just &amp;lt;code&amp;gt;make&amp;lt;/code&amp;gt;) then use commands like &amp;lt;code&amp;gt;yarp-config robot --import-all&amp;lt;/code&amp;gt; (installs all files) or &amp;lt;code&amp;gt;yarp-config robot --import iCubLisboa01 affordancesExploration.xml&amp;lt;/code&amp;gt; (installs specific files)&lt;br /&gt;
&lt;br /&gt;
== ini files ==&lt;br /&gt;
&lt;br /&gt;
To install application conf/*.ini files, compile a project (e.g., icub-main, poeticon, iol) then use commands like &amp;lt;code&amp;gt;yarp-config context --import-all&amp;lt;/code&amp;gt; (installs all files) or &amp;lt;code&amp;gt;yarp-config context --import actionsRenderingEngine&amp;lt;/code&amp;gt; (installs the files of specific applications)&lt;br /&gt;
&lt;br /&gt;
== Disabling some robot parts ==&lt;br /&gt;
&lt;br /&gt;
If the robot is not complete (or some parts need to be disabled):&lt;br /&gt;
&lt;br /&gt;
* On the pc104, type &amp;lt;code&amp;gt;yarp-config robot --list&amp;lt;/code&amp;gt; to look for the .ini files from where the configuration values are launched. These are local copies of the robots-configuration repository files.&lt;br /&gt;
* Go to the &amp;lt;code&amp;gt;INSTALLED DATA&amp;lt;/code&amp;gt; directory path and then, within the corresponding robot folder (e.g., iCubGenova04), look for the file yarprobotinterface.ini, which points to a .xml file which contains the configuration paths for all the robot parts (eg. icub_all.xml).&lt;br /&gt;
* If the local config file does not exist, there is only the canonical in the build path, then create a local one using yarp-config --import.&lt;br /&gt;
* Copy the .xml file with a descriptive name (eg icub_no_legs.xml) and on the copied file, comment or remove all lines that refer to .ini files of the part(s) that have to be disabled. &lt;br /&gt;
* Change yarprobotinterface.ini too, so that it will point to the new .xml file where the parts have been commented.&lt;br /&gt;
* On the robot/icub Startup application, modify the way that gravityCompensator and wholeBodyDynamics are launched, so that they don’t look for leg configuration files. For the legs case, add --no_legs to the argument list.&lt;br /&gt;
&lt;br /&gt;
= See also =&lt;br /&gt;
&lt;br /&gt;
* http://wiki.icub.org/wiki/Generic_iCub_machine_installation_instructions&lt;br /&gt;
&lt;br /&gt;
[[Category:Vislab]]&lt;/div&gt;</summary>
		<author><name>Giovanni Saponaro</name></author>
	</entry>
	<entry>
		<id>http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=ICub_machines_configuration&amp;diff=7025</id>
		<title>ICub machines configuration</title>
		<link rel="alternate" type="text/html" href="http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=ICub_machines_configuration&amp;diff=7025"/>
		<updated>2018-07-26T15:29:22Z</updated>

		<summary type="html">&lt;p&gt;Giovanni Saponaro: Use apt instead of apt-get&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;In this page we describe the setup of the computers connected to the iCub robot, which all share a common network disk and configuration.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;See [[iCub machines configuration/Archive]] for obsolete information.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
= Operating system installation =&lt;br /&gt;
&lt;br /&gt;
Ubuntu LTS, default settings and partitioning. The first user to be created must be called &#039;&#039;&#039;icub&#039;&#039;&#039;, to make the distributed setup possible: for NFS network mount, this user has to have uid 1000 and guid 1000.&lt;br /&gt;
&lt;br /&gt;
In order to add a user:&lt;br /&gt;
* either use the Ubuntu graphical frontends&lt;br /&gt;
* or use a Terminal:&lt;br /&gt;
 sudo adduser icub&lt;br /&gt;
 sudo usermod -aG sudo icub  # gives sudo privileges&lt;br /&gt;
&lt;br /&gt;
= Other operations =&lt;br /&gt;
&lt;br /&gt;
== Network configuration ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;See also: [[VisLab network]], [[ISR computing resources]]&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Configure a static IP as explained in one of the following subsections, depending if the machine is a desktop or a server one.&lt;br /&gt;
&lt;br /&gt;
Also, it is recommended to set up the &amp;lt;code&amp;gt;/etc/hosts&amp;lt;/code&amp;gt; file as follows:&lt;br /&gt;
&lt;br /&gt;
 10.10.1.41 icubbrain1&lt;br /&gt;
 10.10.1.42 icubbrain2&lt;br /&gt;
 10.10.1.50 pc104&lt;br /&gt;
 10.10.1.51 icub-cuda&lt;br /&gt;
 10.10.1.53 icub-laptop&lt;br /&gt;
&lt;br /&gt;
You should be able to do &amp;lt;code&amp;gt;ping icubbrain1&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Desktop machines ===&lt;br /&gt;
&lt;br /&gt;
With the graphical Network Manager (https://help.ubuntu.com/16.04/ubuntu-help/net-fixed-ip-address.html), configure the connection &amp;quot;Auto eth0&amp;quot; IPv4 as follows:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|+ &lt;br /&gt;
! Address !! Netmask !! Gateway !! DNS Servers !! notes&lt;br /&gt;
|-&lt;br /&gt;
|10.10.1.x || 255.255.255.0 || 10.10.1.254 || 10.0.0.1, 10.0.0.2 || visnet (iCub machines)&lt;br /&gt;
|-&lt;br /&gt;
|10.0.x.y || 255.255.0.0 || 10.0.0.254 || 10.0.0.1, 10.0.0.2 || isrnet (rest of ISR)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Servers ===&lt;br /&gt;
&lt;br /&gt;
Edit &amp;lt;code&amp;gt;/etc/network/interfaces&amp;lt;/code&amp;gt; like this:&lt;br /&gt;
 auto lo&lt;br /&gt;
 iface lo inet loopback&lt;br /&gt;
   &lt;br /&gt;
 auto eth0&lt;br /&gt;
 iface eth0 inet static&lt;br /&gt;
 address 10.x.y.z # put your IP here, see above table&lt;br /&gt;
 netmask 255.255.x.y # see above table&lt;br /&gt;
 network 10.10.1.0&lt;br /&gt;
 broadcast 10.10.1.255&lt;br /&gt;
 gateway 10.10.1.254&lt;br /&gt;
 dns-nameservers 10.0.0.1 10.0.0.2&lt;br /&gt;
&lt;br /&gt;
In some versions of Ubuntu, to configure DNS you also need to edit &amp;lt;code&amp;gt;/etc/resolvconf/resolv.conf.d/head&amp;lt;/code&amp;gt; like this:&lt;br /&gt;
 nameserver 10.0.0.1&lt;br /&gt;
 nameserver 10.0.0.2&lt;br /&gt;
&lt;br /&gt;
then run:&lt;br /&gt;
 sudo resolvconf -u&lt;br /&gt;
&lt;br /&gt;
== Dependencies ==&lt;br /&gt;
&lt;br /&gt;
Installing the &#039;&#039;&#039;icub-common&#039;&#039;&#039; metapackage is sufficient. It is a bundle of the following packages (for more details see [http://wiki.icub.org/wiki/Linux:Installation_from_sources here] and [http://wiki.icub.org/wiki/Linux:_dependencies here]):&lt;br /&gt;
 sudo apt install build-essential libace-dev libedit-dev libeigen3-dev libncurses5-dev gfortran libtinyxml-dev libgraphviz-dev&lt;br /&gt;
 sudo apt install git-core ssh gcc g++ make cmake-curses-gui freeglut3-dev libxmu-dev libswscale-dev libavformat-dev&lt;br /&gt;
 sudo apt install qttools5-dev qtdeclarative5-dev qtdeclarative5-controls-plugin qtdeclarative5-dialogs-plugin qtmultimedia5-dev qtdeclarative5-qtmultimedia-plugin qtquick1-5-dev libqt5opengl5-dev&lt;br /&gt;
&lt;br /&gt;
Debian Stretch also requires:&lt;br /&gt;
 sudo apt install qml-module-qt-labs-folderlistmodel qml-module-qt-labs-settings&lt;br /&gt;
&lt;br /&gt;
iCub Simulator dependencies: SDL and ODE.&lt;br /&gt;
&lt;br /&gt;
GTK graphical programs are obsolete and replaced by their Qt equivalents. If you still want the old GTK programs, install &amp;lt;code&amp;gt;libgtkmm-2.4-dev&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Environment variables ==&lt;br /&gt;
&lt;br /&gt;
* Create a file called ~/.bashrc_iCub like this one. Usually you do not need all of the following variables and settings, just a subset.&lt;br /&gt;
&lt;br /&gt;
  export ROBOT_CODE=/usr/local/src/robot&lt;br /&gt;
&lt;br /&gt;
  export YARP_ROOT=$ROBOT_CODE/yarp&lt;br /&gt;
  export YARP_DIR=$YARP_ROOT/build&lt;br /&gt;
  export ICUB_ROOT=$ROBOT_CODE/icub-main&lt;br /&gt;
  export ICUB_DIR=$ICUB_ROOT/build&lt;br /&gt;
&lt;br /&gt;
  export ICUBcontrib_DIR=$ROBOT_CODE/icub-contrib-common/build&lt;br /&gt;
  export YARP_DATA_DIRS=$YARP_DIR/share/yarp:$ICUB_DIR/share/iCub:$ICUBcontrib_DIR/share/ICUBcontrib:$ROBOT_CODE/speech/svox-speech/build/share/speech&lt;br /&gt;
  export PATH=$PATH:$YARP_DIR/bin:$ICUB_DIR/bin:$ICUBcontrib_DIR/bin&lt;br /&gt;
&lt;br /&gt;
  export ODE_DIR=$ROBOT_CODE/ode-0.13/build&lt;br /&gt;
&lt;br /&gt;
  # OpenCV: select one of the following&lt;br /&gt;
  #export OpenCV_DIR=$ROBOT_CODE/opencv2/build&lt;br /&gt;
  #export OpenCV_DIR=$ROBOT_CODE/opencv2/build-cuda&lt;br /&gt;
  export OpenCV_DIR=$ROBOT_CODE/opencv3/build&lt;br /&gt;
  #export OpenCV_DIR=$ROBOT_CODE/opencv3/build-cuda&lt;br /&gt;
&lt;br /&gt;
  # To enable tab completion on yarp port names&lt;br /&gt;
  if [ -f $YARP_ROOT/scripts/yarp_completion ]; then&lt;br /&gt;
    source $YARP_ROOT/scripts/yarp_completion&lt;br /&gt;
  fi&lt;br /&gt;
&lt;br /&gt;
  # Set the name of your robot here.&lt;br /&gt;
  export YARP_ROBOT_NAME=iCubLisboa01&lt;br /&gt;
&lt;br /&gt;
  # Set-up optimizations&lt;br /&gt;
  export CMAKE_BUILD_TYPE=Release&lt;br /&gt;
&lt;br /&gt;
  # DebugStream customization&lt;br /&gt;
  export YARP_VERBOSE_OUTPUT=0&lt;br /&gt;
  export YARP_COLORED_OUTPUT=1&lt;br /&gt;
  export YARP_TRACE_ENABLE=0&lt;br /&gt;
  export YARP_FORWARD_LOG_ENABLE=0&lt;br /&gt;
&lt;br /&gt;
  # Lua&lt;br /&gt;
  ### DO NOT REMOVE &#039;;;;&#039; ###&lt;br /&gt;
  export LUA_PATH=&amp;quot;;;;$ROBOT_CODE/rFSM/?.lua;$ICUBcontrib_DIR/share/ICUBcontrib/contexts/interactiveObjectsLearning/LUA/?.lua&amp;quot;&lt;br /&gt;
  export LUA_CPATH=&amp;quot;;;;$YARP_ROOT/bindings/build-lua/?.so&amp;quot;&lt;br /&gt;
  export PATH=$PATH:$ROBOT_CODE/rFSM/tools:$ICUBcontrib_DIR/share/ICUBcontrib/contexts/interactiveObjectsLearning/LUA&lt;br /&gt;
  export PATH=$PATH:$YARP_ROOT/bindings/build-lua&lt;br /&gt;
  export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$YARP_ROOT/bindings/build-lua&lt;br /&gt;
&lt;br /&gt;
* Then, before the following line of /etc/bash.bashrc&lt;br /&gt;
 [ -z &amp;quot;$PS1&amp;quot; ] &amp;amp;&amp;amp; return&lt;br /&gt;
add this:&lt;br /&gt;
 # per-user environment variables (non-interactive and interactive mode)&lt;br /&gt;
 source $HOME/.bashrc_iCub&lt;br /&gt;
&lt;br /&gt;
The reason why we use the above custom file (as opposed to the standard ~/.bashrc) is that we want to enforce the variables both during interactive and non-interactive sessions, such as commands launched via &amp;lt;code&amp;gt;yarprun&amp;lt;/code&amp;gt; from another machine.&lt;br /&gt;
&lt;br /&gt;
See also https://git.robotology.eu/mbrunettini/icub-environment for the variables and scripts employed at IIT.&lt;br /&gt;
&lt;br /&gt;
= Additional software =&lt;br /&gt;
&lt;br /&gt;
== OpenCV ==&lt;br /&gt;
&lt;br /&gt;
=== Ubuntu packages ===&lt;br /&gt;
&lt;br /&gt;
* this is the easiest way to install OpenCV, however the Ubuntu packages might be too old and/or missing some specific features (in that case proceed with a manual installation, see below)&lt;br /&gt;
&lt;br /&gt;
  sudo apt install libcv-dev libhighgui-dev libcvaux-dev libopencv-gpu-dev&lt;br /&gt;
&lt;br /&gt;
=== Manual compilation ===&lt;br /&gt;
&lt;br /&gt;
* on most machines: download OpenCV, create a build directory, CMake, set WITH_CUDA=OFF, compile, set OpenCV_DIR to the path of OpenCV-x.y.z/build, for example:&lt;br /&gt;
 export OpenCV_DIR=$code/OpenCV-x.y.z/build&lt;br /&gt;
&lt;br /&gt;
* on CUDA machines, in order to compile CUDA-enabled modules: create a build-cuda directory, CMake, set WITH_CUDA=ON, compile, set OpenCV_DIR to the path of OpenCV-x.y.z/build-cuda&lt;br /&gt;
&lt;br /&gt;
== YARP and iCub ==&lt;br /&gt;
&lt;br /&gt;
* In general, when compiling this software, do &#039;&#039;&#039;not&#039;&#039;&#039; use &amp;lt;code&amp;gt;sudo make install&amp;lt;/code&amp;gt; but simply &amp;lt;code&amp;gt;make&amp;lt;/code&amp;gt; (and configure the PATH variable in such a way that it finds the binaries from the build directory).&lt;br /&gt;
&lt;br /&gt;
* If you work with the robot, use the volume shares exported from the NFS server.&lt;br /&gt;
&lt;br /&gt;
* In other cases, follow the instructions on the [[iCub software]] article. &lt;br /&gt;
&lt;br /&gt;
* yarp CMake configuration&lt;br /&gt;
 CMAKE_BUILD_TYPE Release&lt;br /&gt;
 CREATE_GUIS&lt;br /&gt;
 CREATE_LIB_MATH&lt;br /&gt;
&lt;br /&gt;
 // to enable 640x480@30Hz images with Bayer encoding&lt;br /&gt;
 // install libraw1394-dev libdc1394-22-dev then enable&lt;br /&gt;
 CREATE_OPTIONAL_CARRIERS&lt;br /&gt;
 ENABLE_yarpcar_bayer_carrier&lt;br /&gt;
&lt;br /&gt;
* icub-main CMake configuration&lt;br /&gt;
 CMAKE_BUILD_TYPE Release&lt;br /&gt;
 // on servers, do http://wiki.icub.org/wiki/Installing_IPOPT then enable&lt;br /&gt;
 ENABLE_icubmod_cartesiancontrollerclient ON&lt;br /&gt;
 ENABLE_icubmod_cartesiancontrollerserver ON&lt;br /&gt;
 ENABLE_icubmod_gazecontrollerclient ON&lt;br /&gt;
&lt;br /&gt;
* final configuration&lt;br /&gt;
# &amp;lt;code&amp;gt;yarp namespace /icub&amp;lt;/code&amp;gt;&lt;br /&gt;
# &amp;lt;code&amp;gt;yarp conf 10.10.1.53 10000&amp;lt;/code&amp;gt; (yarpserver runs on [[iCub laptop]])&lt;br /&gt;
&lt;br /&gt;
* special machines such as [[pc104]] need different flags&lt;br /&gt;
&lt;br /&gt;
== CUDA ==&lt;br /&gt;
&lt;br /&gt;
=== Prerequisites ===&lt;br /&gt;
&lt;br /&gt;
 sudo apt install freeglut3-dev libdevil-dev libglew-dev&lt;br /&gt;
 sudo apt purge libcudart*  // because we will manually install it&lt;br /&gt;
&lt;br /&gt;
Troubleshooting: http://askubuntu.com/questions/410604/installing-nvidia-drivers-with-pkg1-run-ends-with-no-version-h-found&lt;br /&gt;
&lt;br /&gt;
=== CUDA Toolkit, SDK and Examples ===&lt;br /&gt;
&lt;br /&gt;
* stop X servers: &amp;lt;code&amp;gt;sudo service lightdm stop&amp;lt;/code&amp;gt; (or &amp;lt;code&amp;gt;gdm stop&amp;lt;/code&amp;gt; depending on configuration)&lt;br /&gt;
* download and install NVIDIA CUDA Toolkit from http://docs.nvidia.com/cuda (not from Ubuntu packages)&lt;br /&gt;
* if you obtain the error &amp;quot;Toolkit:  Installation Failed. Using unsupported Compiler.&amp;quot;, use the override option, e.g., &amp;lt;code&amp;gt;./cuda_6.0.37_linux_64.run --override&amp;lt;/code&amp;gt;&lt;br /&gt;
* if you obtain the error &amp;quot;The driver installation is unable to locate the kernel source. Please make sure that the kernel source packages are installed and set up correctly&amp;quot;:&lt;br /&gt;
** read the CUDA log in /tmp and verify that the graphics card is currently supported -- if not, you might need to install a legacy NVIDIA driver. For example, the Quadro FX 580 card needs NVIDIA legacy drivers 340.xx: install them and then answer &#039;&#039;&#039;no&#039;&#039;&#039; when CUDA Toolkit installer asks &amp;quot;Install NVIDIA Accelerated Graphics Driver for Linux-x86_64 346.46?&amp;quot;&lt;br /&gt;
** &amp;lt;code&amp;gt;sudo apt install linux-generic linux-headers-$(uname -r) linux-headers-generic-lts-trusty&amp;lt;/code&amp;gt; (or other Ubuntu version codename)&lt;br /&gt;
** call the installer specifying the kernel source path, e.g., &amp;lt;code&amp;gt;./cuda_7.0.28_linux.run --kernel-source-path=/usr/src/linux-headers-3.13.0-52-generic/&amp;lt;/code&amp;gt;&lt;br /&gt;
* output of successful installation:&lt;br /&gt;
 Driver:   Installed&lt;br /&gt;
 Toolkit:  Installed in /usr/local/cuda-7.0&lt;br /&gt;
 Samples:  Not Selected&lt;br /&gt;
 Please make sure that&lt;br /&gt;
 -   PATH includes /usr/local/cuda-7.0/bin&lt;br /&gt;
 -   LD_LIBRARY_PATH includes /usr/local/cuda-7.0/lib64, or, add /usr/local/cuda-7.0/lib64 to /etc/ld.so.conf and run ldconfig as root&lt;br /&gt;
 To uninstall the CUDA Toolkit, run the uninstall script in /usr/local/cuda-7.0/bin&lt;br /&gt;
 To uninstall the NVIDIA Driver, run nvidia-uninstall&lt;br /&gt;
&lt;br /&gt;
* troubleshooting:&lt;br /&gt;
** http://askubuntu.com/questions/451672/installing-and-testing-cuda-in-ubuntu-14-04&lt;br /&gt;
** http://troylee2008.blogspot.pt/2012/05/linking-error-while-compiling-cuda-sdk.html&lt;br /&gt;
** https://devtalk.nvidia.com/default/topic/617414/-solved-cuda-driver-version-is-insufficient-for-cuda-runtime-version-fedora-18-rpmfusion-driver/&lt;br /&gt;
&lt;br /&gt;
=== SiftGPU ===&lt;br /&gt;
&lt;br /&gt;
* download it from http://cs.unc.edu/~ccwu/siftgpu/&lt;br /&gt;
* unzip it - typically in your home directory, not in the NFS shared folder&lt;br /&gt;
* compile with &amp;lt;code&amp;gt;make&amp;lt;/code&amp;gt;&lt;br /&gt;
* if you obtain &amp;quot;unspecified launch failure&amp;quot; and 0 sift features/matches, check that the X server is running: &amp;lt;code&amp;gt;sudo service lightdm start&amp;lt;/code&amp;gt;&lt;br /&gt;
* if you obtain the error &amp;quot;/usr/local/cuda/bin/nvcc: Command not found&amp;quot;, this can help: &amp;lt;code&amp;gt;sudo ln -s /usr/lib/nvidia-cuda-toolkit /usr/local/cuda&amp;lt;/code&amp;gt;. See also http://askubuntu.com/questions/231503/nvcc-compiler-setup-ubuntu-12-04&lt;br /&gt;
* run the test program &amp;lt;code&amp;gt;SimpleSIFT&amp;lt;/code&amp;gt; - it should work via ssh, as well as in a local session&lt;br /&gt;
* example of successful execution:&lt;br /&gt;
 $ ./SimpleSIFT &lt;br /&gt;
 Unable to create OpenGL Context!&lt;br /&gt;
 For nVidia cards, you can try change to CUDA mode in this case&lt;br /&gt;
 NOTE: changing maximum texture dimension to 32768&lt;br /&gt;
 [SiftGPU Language]:	CUDA&lt;br /&gt;
 Image size :	800x600&lt;br /&gt;
 Image loaded :	../data/800-1.jpg&lt;br /&gt;
 #Features:	3347&lt;br /&gt;
 #Features MO:	3910&lt;br /&gt;
 [RUN SIFT]:	0.339&lt;br /&gt;
 Image size :	640x480&lt;br /&gt;
 Image loaded :	../data/640-1.jpg&lt;br /&gt;
 #Features:	2372&lt;br /&gt;
 #Features MO:	2767&lt;br /&gt;
 [RUN SIFT]:	0.208&lt;br /&gt;
 NOTE: changing maximum texture dimension to 32768&lt;br /&gt;
 [SiftMatchGPU]: CUDA&lt;br /&gt;
 2247 sift matches were found;&lt;br /&gt;
&lt;br /&gt;
* define &amp;lt;code&amp;gt;export SIFTGPU_DIR=~/SiftGPU&amp;lt;/code&amp;gt; or similar in your iCub bashrc file, so that libsiftgpu.so is found by IOL modules&lt;br /&gt;
&lt;br /&gt;
== himrep ==&lt;br /&gt;
&lt;br /&gt;
Clone https://github.com/robotology/himrep, follow the instructions to compile &amp;lt;code&amp;gt;liblinear&amp;lt;/code&amp;gt;, CMake, make install&lt;br /&gt;
&lt;br /&gt;
To use the deep neural network object recognition, based on Caffe, follow the instructions at README_Caffe.md.&lt;br /&gt;
If you get &amp;quot;error: kernel launches from templates are not allowed in system files&amp;quot;, use an older GCC version like 4.6 (see also https://github.com/BVLC/caffe/issues/337). If you get &amp;quot;ImportError: No module named &#039;yaml&#039;&amp;quot;, do &amp;lt;code&amp;gt;sudo apt install python-yaml&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== IOL ==&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;sudo apt install lua5.1 liblua5.1-dev&amp;lt;/code&amp;gt;&lt;br /&gt;
* clone [https://github.com/kmarkus/rFSM rFSM] (no need to compile anything here)&lt;br /&gt;
&lt;br /&gt;
Clone https://github.com/robotology/iol, CMake, make install&lt;br /&gt;
&lt;br /&gt;
== stereo-vision ==&lt;br /&gt;
&lt;br /&gt;
Clone https://github.com/robotology/stereo-vision, CMake with USE_SIFT_GPU=ON, make install&lt;br /&gt;
&lt;br /&gt;
= Best practices =&lt;br /&gt;
&lt;br /&gt;
Below are some tips and tricks taken from:&lt;br /&gt;
&lt;br /&gt;
* http://wiki.icub.org/wiki/Yarp-config&lt;br /&gt;
* http://www.yarp.it/yarp-config.html&lt;br /&gt;
* [https://docs.google.com/document/d/1S9m4DbrV1AJWo_E1r3F8k3ZzmhaTOWRJ9WFjXPFqVos IIT - How to setup and start the iCub from scratch]&lt;br /&gt;
&lt;br /&gt;
== XML files ==&lt;br /&gt;
&lt;br /&gt;
Edit XML files locally, in /home/icub/.local/share/yarp&lt;br /&gt;
&lt;br /&gt;
To install robot-specific XML files, compile icub-main (just &amp;lt;code&amp;gt;make&amp;lt;/code&amp;gt;) then use commands like &amp;lt;code&amp;gt;yarp-config robot --import-all&amp;lt;/code&amp;gt; (installs all files) or &amp;lt;code&amp;gt;yarp-config robot --import iCubLisboa01 affordancesExploration.xml&amp;lt;/code&amp;gt; (installs specific files)&lt;br /&gt;
&lt;br /&gt;
== ini files ==&lt;br /&gt;
&lt;br /&gt;
To install application conf/*.ini files, compile a project (e.g., icub-main, poeticon, iol) then use commands like &amp;lt;code&amp;gt;yarp-config context --import-all&amp;lt;/code&amp;gt; (installs all files) or &amp;lt;code&amp;gt;yarp-config context --import actionsRenderingEngine&amp;lt;/code&amp;gt; (installs the files of specific applications)&lt;br /&gt;
&lt;br /&gt;
== Disabling some robot parts ==&lt;br /&gt;
&lt;br /&gt;
If the robot is not complete (or some parts need to be disabled):&lt;br /&gt;
&lt;br /&gt;
* On the pc104, type &amp;lt;code&amp;gt;yarp-config robot --list&amp;lt;/code&amp;gt; to look for the .ini files from where the configuration values are launched. These are local copies of the robots-configuration repository files.&lt;br /&gt;
* Go to the &amp;lt;code&amp;gt;INSTALLED DATA&amp;lt;/code&amp;gt; directory path and then, within the corresponding robot folder (e.g., iCubGenova04), look for the file yarprobotinterface.ini, which points to a .xml file which contains the configuration paths for all the robot parts (eg. icub_all.xml).&lt;br /&gt;
* If the local config file does not exist, there is only the canonical in the build path, then create a local one using yarp-config --import.&lt;br /&gt;
* Copy the .xml file with a descriptive name (eg icub_no_legs.xml) and on the copied file, comment or remove all lines that refer to .ini files of the part(s) that have to be disabled. &lt;br /&gt;
* Change yarprobotinterface.ini too, so that it will point to the new .xml file where the parts have been commented.&lt;br /&gt;
* On the robot/icub Startup application, modify the way that gravityCompensator and wholeBodyDynamics are launched, so that they don’t look for leg configuration files. For the legs case, add --no_legs to the argument list.&lt;br /&gt;
&lt;br /&gt;
= See also =&lt;br /&gt;
&lt;br /&gt;
* http://wiki.icub.org/wiki/Generic_iCub_machine_installation_instructions&lt;br /&gt;
&lt;br /&gt;
[[Category:Vislab]]&lt;/div&gt;</summary>
		<author><name>Giovanni Saponaro</name></author>
	</entry>
	<entry>
		<id>http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=ICub_logbook&amp;diff=6985</id>
		<title>ICub logbook</title>
		<link rel="alternate" type="text/html" href="http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=ICub_logbook&amp;diff=6985"/>
		<updated>2018-07-20T15:14:25Z</updated>

		<summary type="html">&lt;p&gt;Giovanni Saponaro: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page serves as a maintenance diary of the iCub humanoid robot in VisLab, Lisbon.&lt;br /&gt;
&lt;br /&gt;
See also the related RedMine project http://rm.isr.tecnico.ulisboa.pt/projects/icub-robot (private access).&lt;br /&gt;
&lt;br /&gt;
== 2018 ==&lt;br /&gt;
&lt;br /&gt;
* 2018-06-27: replaced the motor in the right wrist, thus fixing the r_wrist_pitch+r_wrist_yaw (j5+j6) motor problem (see also 2017-11-17 entry and https://github.com/robotology/icub-support/issues/567).&lt;br /&gt;
* 2018-02-27: left shoulder steel tendon broke during calibration.&lt;br /&gt;
* 2018-02-08: l_wrist_pitch+l_wrist_yaw (j5+j6) electrical problem fixed (wire close to the board, far from the wrist).&lt;br /&gt;
&lt;br /&gt;
== 2017 ==&lt;br /&gt;
&lt;br /&gt;
* 2017-11-23: right thumb middle phalanx broken due to collision with the torso during an experiment.&lt;br /&gt;
* 2017-11-17: r_wrist_pitch+r_wrist_yaw (j5+j6) motor problem, see also https://github.com/robotology/icub-support/issues/567&lt;br /&gt;
* 2017-10-16: repaired right shoulder steel tendon.&lt;br /&gt;
* 2017-10-15: broke right shoulder steel tendon.&lt;br /&gt;
* 2017-10-13: broke and repaired r_wrist_pitch+r_wrist_yaw (j5+j6) steel tendon.&lt;br /&gt;
* 2017-09-2x: broke and repaired l_shoulder_pitch (j0) steel tendon, see also https://github.com/robotology/icub-support/issues/541&lt;br /&gt;
* 2017-09-01: tightened right wrist cables.&lt;br /&gt;
* 2017-08-30: broke and repaired r_wrist_pitch+r_wrist_yaw (j5+j6) steel tendon.&lt;br /&gt;
* 2017-07-31: broke r_shoulder_yaw steel tendon.&lt;br /&gt;
* 2017-01-06: repaired r_thumb_oppose and l_index_proximal steel tendons.&lt;br /&gt;
&lt;br /&gt;
== 2016 ==&lt;br /&gt;
&lt;br /&gt;
* 2016-12-1x: right hand joint 8 (r_thumb_oppose) and left hand joint 11 (l_index_proximal) steel cables broken.&lt;br /&gt;
* 2016-10-21: new USB Flash Drive installed in the robot head (Debian 6, https://github.com/robotology/QA/issues/136).&lt;br /&gt;
* 2016-07-19: left thumb proximal encoder wire fixed.&lt;br /&gt;
* 2016-07-12: left thumb proximal encoder wire fixed.&lt;br /&gt;
* 2016-07-08: left thumb tendon broken and replaced.&lt;br /&gt;
* 2016-05-30: left hand thumb proximal encoder and wire fixed (https://github.com/robotology/icub-support/issues/218), right hand index distal spring replaced (https://github.com/robotology/icub-support/issues/241).&lt;br /&gt;
* 2016-03-xx: right hand steel cable and metal piece with magnet for thumb opposition replaced (https://github.com/robotology/icub-support/issues/195). Left hand steel cable replaced.&lt;br /&gt;
* 2016-01-xx: right hand CAN bus problem (CAN2). (i) Replaced the CAN bus splitter connected to 2B2 at the end of the line (closer to the hand), by installed a transparent instead of a black filter; transparent = closed filter i.e. terminator with resistor, black = no resistor. (ii) Installed a replacement MC4 board. More details at https://github.com/robotology/icub-support/issues/156&lt;br /&gt;
&lt;br /&gt;
== 2015 ==&lt;br /&gt;
&lt;br /&gt;
* 2015-12-02: left hand repaired.&lt;br /&gt;
* 2015-10-28: installed new icub-cuda server (10.10.1.51): 12 x i7-5820K, 16GB memory, NVIDIA GeForce GTX 980.&lt;br /&gt;
* 2015-08-31: set GRUB_RECORDFAIL_TIMEOUT=5 on icubbrain1, icubbrain2, in order to boot successfully after a power failure. See also http://www.phoronix.com/scan.php?page=news_item&amp;amp;px=Ubuntu-Common-GRUB2-Issue&lt;br /&gt;
* 2015-05-xx: right wrist problem, see https://github.com/robotology/icub-support/issues/23&lt;br /&gt;
* 2015-02-20: replacement waist cable arrived and installed.&lt;br /&gt;
* 2015-02-16: waist cable broken.&lt;br /&gt;
* 2015-02-12: new machine icub-cuda (10.10.1.51), for now a desktop, set up to run CUDA-enabled modules of stereo vision and IOL, replacing cortex1.&lt;br /&gt;
* 2015-01-15: new Toshiba Qosmio [[iCub laptop]] deployed to replace chico3. This machine also acts as the new NFS server for the cluster.&lt;br /&gt;
&lt;br /&gt;
== 2014 ==&lt;br /&gt;
&lt;br /&gt;
* 2014-11-12/13: Stefano Saliceti and Julien Jenvrin (IIT) at IST to repair both robot shoulders and the skin.&lt;br /&gt;
* 2014-11-03: left elbow broken.&lt;br /&gt;
* &#039;&#039;&#039;2014-09-25: upgraded robot arrived after 8 weeks.&#039;&#039;&#039;&lt;br /&gt;
* &#039;&#039;&#039;2014-07-31: iCubLisboa01 leaves the lab for hardware upgrades in Italy (skin).&#039;&#039;&#039;&lt;br /&gt;
* 2014-06-18: right camera image was going black from time to time. Replacing the flex cable fixed the problem.&lt;br /&gt;
* &#039;&#039;&#039;2014-06-18: repaired forearm arrived after 27 days.&#039;&#039;&#039;&lt;br /&gt;
* &#039;&#039;&#039;2014-05-22: left forearm sent to Italy for repair.&#039;&#039;&#039;&lt;br /&gt;
* 2014-05-08: backlash in left forearm wrist motor. [http://youtu.be/rBy0FV2bje8 Backlash video], [http://youtu.be/pMI6jaxmyoo Motor noise video], [http://youtu.be/pWFvw3dNiuU Wrist motion video]&lt;br /&gt;
* 2014-05-06: icub-main (git) installed on all machines, including pc104.&lt;br /&gt;
* 2014-02-21: pc104 clock was off by one hour. Fixed ntp service by issuing &amp;lt;code&amp;gt;sudo dpkg -i --force-overwrite /var/cache/apt/archives/ntp_1%3a4.2.6.p2+dfsg-1+b1_i386.deb&amp;lt;/code&amp;gt; and setting the timezone to Lisbon (&amp;lt;code&amp;gt;sudo dpkg-reconfigure tzdata&amp;lt;/code&amp;gt;). See also 2011-11-18.&lt;br /&gt;
* &#039;&#039;&#039;2014-02-06: repaired forearm arrived after three weeks.&#039;&#039;&#039;&lt;br /&gt;
* 2014-01-20: IIT technicians confirmed the problem at the encoder attached to the pronosupination motor.&lt;br /&gt;
* &#039;&#039;&#039;2014-01-16: right forearm sent to Italy for repair.&#039;&#039;&#039;&lt;br /&gt;
* 2014-01-09: right arm pronosupination problem (j4).&lt;br /&gt;
* 2014-01-07: head/torso (CAN0) problem solved by manually setting CAN0 ID14 instead of ID15 in canLoader.&lt;br /&gt;
&lt;br /&gt;
== 2013 ==&lt;br /&gt;
&lt;br /&gt;
* 2013-12-2x: head/torso (CAN0) problems, see [http://robotcub-hackers.2198711.n2.nabble.com/iCubLisboa01-head-torso-problem-tt7578621.html this thread] for details.&lt;br /&gt;
* 2013-11-xx: presently, chico3 acts as NFS server for chico3,icubbrains,cortex1, while icubsrv (to be retired in the future) still acts as NFS server for pc104.&lt;br /&gt;
* 2013-11-19: upgrading icubsrv (Dell XPS laptop) Ubuntu version, installing common repositories there, shared with NFS to the other machines.&lt;br /&gt;
* 2013-11-01: often experiencing a problem where the wholeBodyDynamics module does not start, due to force/torque sensors not being found at iCubInterface startup.&lt;br /&gt;
* 2013-07-03: CFW2 board problem (cfw2can error). Replacing the board solved it.&lt;br /&gt;
* 2013-06-25: following new requirements (see [http://robotcub-hackers.2198711.n2.nabble.com/CMake-2-8-7-Required-for-YARP-td7578216.html this email]), manually installed a new version of CMake on [[pc104]].&lt;br /&gt;
* 2013-06-2x: robot mounted on a new, lower metal base on the floor. Occasionally, iCubInterface does not start the motors. Possibly a loose contact after the transport.&lt;br /&gt;
* 2013-05-10: new setup where some machines (pc104, chico3, icubbrains, cortex1) are directly connected via a fast Cisco switch (http://10.10.1.252/, empty, qb...). Got 640x480@30Hz images with Bayer encoding working (see also 2012-08-15 entry).&lt;br /&gt;
* 2013-05-0x: new yarp and iCub repositories installed on all machines. Old configuration files are backed up.&lt;br /&gt;
* 2013-04-29/30: problems with arms (solved by swapping left/right flat cable), occasional Force/Torque sensor problem in impedance control (temporary solution: close and re-launch demoGrasp).&lt;br /&gt;
* 2013-04-26: replacement parts arrived from IIT (gearbox and pulley for hand, flat cable linking BLL and BLP for arm). After installing them, both arms and hands are working again.&lt;br /&gt;
* 2013-04-08: video conference with Italy (Julien Jenvrin) to analyze two ongoing issues: left fingers and right shoulder.&lt;br /&gt;
* &#039;&#039;&#039;2013-04-02: iCubLisboa01 arms and new CFW2 boards arrived after about 2 months.&#039;&#039;&#039;&lt;br /&gt;
* &#039;&#039;&#039;2013-01-24: iCubLisboa01 arms sent to Italy for repair (they reached their destination the next day).&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== 2012 ==&lt;br /&gt;
&lt;br /&gt;
* 2012-12-18: replacement BLP board and adhesive tape arrived and installed, robot operational again.&lt;br /&gt;
* 2012-12-05: robot left shoulder and neck repaired. Torso: one BLP board is faulty. We are going to swap it with a functioning BLP board in the right leg, thus having a working torso and a disabled right leg.&lt;br /&gt;
* 2012-11-30: robot left shoulder, neck and torso malfunctioning.&lt;br /&gt;
* 2012-10-26: robot right shoulder fixed.&lt;br /&gt;
* 2012-10-15: robot right shoulder broken, right arm temporarily disabled in iCubInterface and demoGrasp configuration.&lt;br /&gt;
* 2012-08-15: pc104 configured to support 640x480@30Hz images with Bayer encoding. Requires &amp;lt;code&amp;gt;libraw1394-dev libdc1394-22-dev&amp;lt;/code&amp;gt; packages. See also [http://robotcub-hackers.2198711.n2.nabble.com/announcing-640x480-images-td7577551.html this email] and [http://wiki.icub.org/wiki/Getting_640x480_images this guide] by Lorenzo Natale. Added the following line on chico3,pc104,icubbrains /etc/sysctl.conf: &amp;lt;code&amp;gt;net.core.rmem_max=8388608&amp;lt;/code&amp;gt;&lt;br /&gt;
* 2012-07-11: problem in the CFW2 board FireWire interface to the two cameras: sometimes FireWire devices are not listed as available, not even at OS level. A pc104 reboot may or may not fix the problem, depending on your luck.&lt;br /&gt;
* 2012-07-0x: firmware of robot parts upgraded again, following [http://robotcub-hackers.2198711.n2.nabble.com/iKinGazeCtrl-fast-saccades-new-FW-td7577441.html this message] by Ugo. CAN6, board #14 (MAIS) in the right hand sometimes is not responding, possibly a bad contact, however it was now upgraded too.&lt;br /&gt;
* 2012-05-2x: major reconfiguration from Ugo and Vadim (IIT). Environment variables and software (OpenCV, IPOPT) reconfigured on all machines. &#039;&#039;&#039;[[Chico#Firmware|Firmware]]&#039;&#039;&#039; of robot parts upgraded.&lt;br /&gt;
&lt;br /&gt;
== 2011 ==&lt;br /&gt;
* 2011-11-18: Configured icubsrv laptop so that it sees the internet (DNS servers in &amp;lt;code&amp;gt;/etc/resolv.conf&amp;lt;/code&amp;gt;). &amp;lt;strike&amp;gt;TODO: pc104 ntp&amp;lt;/strike&amp;gt;&lt;br /&gt;
* 2011-10-xx: ongoing software updates and tests; currently there is a major mechanical issue with the head tilt (j0)&lt;br /&gt;
* &#039;&#039;&#039;2011-10-12: upgraded iCubLisboa01 returns to the lab after about 3 months&#039;&#039;&#039;&lt;br /&gt;
* &#039;&#039;&#039;2011-07-04: iCubLisboa01 leaves the lab for hardware upgrades in Italy (headV2, force/torque sensors, touch sensors)&#039;&#039;&#039;&lt;br /&gt;
* 2011-03-07: iCubInterface is shutting down gracefully. Was due to zombie processes (iKinCartesianSolvers on the icubbrain2). [The problem was trivial but I am not deleting these posts as it might help in troubleshooting in the future --ashish]. By the way, there are still some Can Errors on Boards 1 and 6.&lt;br /&gt;
* 2011-03-07: iCubInterface has not been shutting down gracefully. This behavior was seen earlier as well when we were having troubles with the iCub head (Last time it was probably due to a cable being pulled around the neck).&lt;br /&gt;
 From the iCubInterface:-&lt;br /&gt;
 pcan [0] thread ran 596 times, req.dT:10[ms], av.dT:10.05[ms] av.loopT :0.03[ms]&lt;br /&gt;
  Can Errors --  Device Tx:1 Rx:0 TxOvf: 1 RxOvf BusOff: 0 -- Driver Fifo Tx:0 Rx:0&lt;br /&gt;
 pcan [0] printing boards errors:&lt;br /&gt;
 None&lt;br /&gt;
 pcan [2] thread ran 596 times, req.dT:10[ms], av.dT:10.05[ms] av.loopT :0.04[ms]&lt;br /&gt;
  Can Errors --  Device Tx:2 Rx:0 TxOvf: 2 RxOvf BusOff: 81 -- Driver Fifo Tx:0 Rx:81&lt;br /&gt;
 pcan [2] printing boards errors:&lt;br /&gt;
 None&lt;br /&gt;
&lt;br /&gt;
* 2011-03-07: Joint 15 of the right arm is making noises (Nuno suspects that there is something wrong with the gearbox. Only 1 gearbox left in stock. Should order more)&lt;br /&gt;
* 2011-03-07: iCubInterface no more board errors (appears to be random: probably some cable is loose)&lt;br /&gt;
* 2011-03-07: iCubInterface could not contact boards 6, 8, 9, 10&lt;br /&gt;
* 2011-03-07: iCubInterface behaving wierdly: Board 1, 2, 3, 5, 7 could not be contacted&lt;br /&gt;
* 2011-03-07: right arm fixed&lt;br /&gt;
* 2011-03-07: right arm broken (cable broken near the elbow)&lt;br /&gt;
* 2011-02-08: head not working properly. Fixed (some cables connecting head to neck were not working well)&lt;br /&gt;
* 2011-01-25: eyes calibrated&lt;br /&gt;
&lt;br /&gt;
== 2010 ==&lt;br /&gt;
* 2010-12-30: robot right arm fixed; problem with torso though&lt;br /&gt;
* 2010-12-27: robot right arm broken&lt;br /&gt;
* 2010-11-08: left arm fixed. Joint j15 of right arm does not work correctly, though. &amp;lt;code&amp;gt;iCubInterface&amp;lt;/code&amp;gt; can be executed safely with any config file.&lt;br /&gt;
* 2010-10-08: left arm broken. For the time being, disable it by running &amp;lt;code&amp;gt;iCubInterface --from iCubInterfaceSimpleLeftArmDisabled.ini&amp;lt;/code&amp;gt;&lt;br /&gt;
* 2010-09-02: changed two of the software zeros head tilt and eye tilt to set the optical axis parallel to the robot X,Y coordinate axes. This change was made in the following file: &amp;lt;code&amp;gt;$ICUB_ROOT/app/iCubLisboa01/conf/icub_head_safe.ini&amp;lt;/code&amp;gt;&lt;br /&gt;
* 2010-07-13: the problem with demoAffV2 was fixed: it is necessary to link to a specific version of &amp;lt;code&amp;gt;/usr/local/lib/libcxcore.a&amp;lt;/code&amp;gt; for PNL to work.&lt;br /&gt;
* 2010-06-02: added the following line in &amp;lt;code&amp;gt;$ICUB_ROOT/app/iCubLisboa01/conf/icubEyes.ini&amp;lt;/code&amp;gt;, under the groups &amp;lt;code&amp;gt;CAMERA_CALIBRATION_LEFT&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;_RIGHT&amp;lt;/code&amp;gt;. This change makes camCalib run again at 30 fps, thus improving other vision modules e.g. ball tracker as well:&lt;br /&gt;
  fps 30&lt;br /&gt;
* 2010-02-08: changed one of the software joint limits of the torso to reflect our real (hardware) limit: 70-&amp;gt;35 degrees. This change was made in the following files: &amp;lt;code&amp;gt;$ICUB_ROOT/app/iCubLisboa01/conf/{icub_head_safe,icub_head_torso,icub_head_torso_raw,icub_head_torso_safe,icub_torso_safe}.ini&amp;lt;/code&amp;gt;&lt;br /&gt;
* 2010-02-04: updated yarp and iCub on: chico3, icubsrv (for [[pc104]]), icubbrains. Fixed ntp (time) hook script, hopefully for good this time.&lt;br /&gt;
&lt;br /&gt;
== 2009 ==&lt;br /&gt;
&lt;br /&gt;
* 2009-12-21: right wrist is currently broken, left one is working. Please use &amp;lt;code&amp;gt;iCubInterface --from iCubInterfaceRightArmDisabled.ini&amp;lt;/code&amp;gt; for the time being&lt;br /&gt;
* 2009-12-09: updated YARP and iCub on chico3 (current issue: openvislab libraries, Christian is looking into it) and on [[Cortex | cortex1-5]] (there was an issue with iKinCartesianSolver; toggling USE_ICUB_MOD to off fixed it for now)&lt;br /&gt;
* 2009-09-23: both arms working. You can safely use &amp;lt;code&amp;gt;icubSafe.ini&amp;lt;/code&amp;gt; again.&lt;br /&gt;
* 2009-09-21: left wrist is currently broken, right one is working. Please use &amp;lt;code&amp;gt;iCubInterface --config $ICUB_ROOT/app/iCubLisboa01/icubSafeLeftArmDisabled.ini&amp;lt;/code&amp;gt;&lt;br /&gt;
* 2009-09-21: checked controllers firmware build numbers - they match the latest releases. (alex)&lt;br /&gt;
* 2009-09-18: updated controllers firmware. (alex)&lt;br /&gt;
* 2009-09-18: both the iCub wrists are currently broken&lt;br /&gt;
* 2009-09-16: upgraded [[pc104 | pc104, icubsrv and boot scripts]]. Still missing: ntp (time).&lt;br /&gt;
* 2009-09-16: installed [[RobotCub software | yarp and iCub]] on chico3. Custom, uncommited files that used to be in &amp;lt;code&amp;gt;/home/icub/iCub/app/{default,iCubLisboa01}/{conf,scripts}&amp;lt;/code&amp;gt; are backed up in &amp;lt;code&amp;gt;/home/icub/iCub_cvs&amp;lt;/code&amp;gt;.&lt;br /&gt;
* 2009-09-14: installed [[RobotCub software | yarp]] (2.2.5rc0, revision 7446) and [[RobotCub software | iCub]] (revision 727) on [[Cortex | cortex1-5]]. iKin was complaining about not finding &amp;lt;code&amp;gt;libipopt.so.0&amp;lt;/code&amp;gt;; this was fixed by setting the environment variable&lt;br /&gt;
  LD_LIBRARY_PATH=/opt/Ipopt-3.5.5-linux-x86_32-gcc4.2.4/lib/&lt;br /&gt;
into &amp;lt;code&amp;gt;/home/icub/.bash_env&amp;lt;/code&amp;gt;.&lt;br /&gt;
* 2009-09-11: installed [[RobotCub software | yarp2 and iCub SVN]] on [[Cortex | cortex6]].&lt;br /&gt;
[[Category:Vislab]]&lt;/div&gt;</summary>
		<author><name>Giovanni Saponaro</name></author>
	</entry>
	<entry>
		<id>http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=ICub_logbook&amp;diff=6984</id>
		<title>ICub logbook</title>
		<link rel="alternate" type="text/html" href="http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=ICub_logbook&amp;diff=6984"/>
		<updated>2018-07-20T15:14:09Z</updated>

		<summary type="html">&lt;p&gt;Giovanni Saponaro: add link to RedMine project&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page serves as a maintenance diary of the iCub humanoid robot in VisLab, Lisbon.&lt;br /&gt;
See also the related RedMine project http://rm.isr.tecnico.ulisboa.pt/projects/icub-robot (private access).&lt;br /&gt;
&lt;br /&gt;
== 2018 ==&lt;br /&gt;
&lt;br /&gt;
* 2018-06-27: replaced the motor in the right wrist, thus fixing the r_wrist_pitch+r_wrist_yaw (j5+j6) motor problem (see also 2017-11-17 entry and https://github.com/robotology/icub-support/issues/567).&lt;br /&gt;
* 2018-02-27: left shoulder steel tendon broke during calibration.&lt;br /&gt;
* 2018-02-08: l_wrist_pitch+l_wrist_yaw (j5+j6) electrical problem fixed (wire close to the board, far from the wrist).&lt;br /&gt;
&lt;br /&gt;
== 2017 ==&lt;br /&gt;
&lt;br /&gt;
* 2017-11-23: right thumb middle phalanx broken due to collision with the torso during an experiment.&lt;br /&gt;
* 2017-11-17: r_wrist_pitch+r_wrist_yaw (j5+j6) motor problem, see also https://github.com/robotology/icub-support/issues/567&lt;br /&gt;
* 2017-10-16: repaired right shoulder steel tendon.&lt;br /&gt;
* 2017-10-15: broke right shoulder steel tendon.&lt;br /&gt;
* 2017-10-13: broke and repaired r_wrist_pitch+r_wrist_yaw (j5+j6) steel tendon.&lt;br /&gt;
* 2017-09-2x: broke and repaired l_shoulder_pitch (j0) steel tendon, see also https://github.com/robotology/icub-support/issues/541&lt;br /&gt;
* 2017-09-01: tightened right wrist cables.&lt;br /&gt;
* 2017-08-30: broke and repaired r_wrist_pitch+r_wrist_yaw (j5+j6) steel tendon.&lt;br /&gt;
* 2017-07-31: broke r_shoulder_yaw steel tendon.&lt;br /&gt;
* 2017-01-06: repaired r_thumb_oppose and l_index_proximal steel tendons.&lt;br /&gt;
&lt;br /&gt;
== 2016 ==&lt;br /&gt;
&lt;br /&gt;
* 2016-12-1x: right hand joint 8 (r_thumb_oppose) and left hand joint 11 (l_index_proximal) steel cables broken.&lt;br /&gt;
* 2016-10-21: new USB Flash Drive installed in the robot head (Debian 6, https://github.com/robotology/QA/issues/136).&lt;br /&gt;
* 2016-07-19: left thumb proximal encoder wire fixed.&lt;br /&gt;
* 2016-07-12: left thumb proximal encoder wire fixed.&lt;br /&gt;
* 2016-07-08: left thumb tendon broken and replaced.&lt;br /&gt;
* 2016-05-30: left hand thumb proximal encoder and wire fixed (https://github.com/robotology/icub-support/issues/218), right hand index distal spring replaced (https://github.com/robotology/icub-support/issues/241).&lt;br /&gt;
* 2016-03-xx: right hand steel cable and metal piece with magnet for thumb opposition replaced (https://github.com/robotology/icub-support/issues/195). Left hand steel cable replaced.&lt;br /&gt;
* 2016-01-xx: right hand CAN bus problem (CAN2). (i) Replaced the CAN bus splitter connected to 2B2 at the end of the line (closer to the hand), by installed a transparent instead of a black filter; transparent = closed filter i.e. terminator with resistor, black = no resistor. (ii) Installed a replacement MC4 board. More details at https://github.com/robotology/icub-support/issues/156&lt;br /&gt;
&lt;br /&gt;
== 2015 ==&lt;br /&gt;
&lt;br /&gt;
* 2015-12-02: left hand repaired.&lt;br /&gt;
* 2015-10-28: installed new icub-cuda server (10.10.1.51): 12 x i7-5820K, 16GB memory, NVIDIA GeForce GTX 980.&lt;br /&gt;
* 2015-08-31: set GRUB_RECORDFAIL_TIMEOUT=5 on icubbrain1, icubbrain2, in order to boot successfully after a power failure. See also http://www.phoronix.com/scan.php?page=news_item&amp;amp;px=Ubuntu-Common-GRUB2-Issue&lt;br /&gt;
* 2015-05-xx: right wrist problem, see https://github.com/robotology/icub-support/issues/23&lt;br /&gt;
* 2015-02-20: replacement waist cable arrived and installed.&lt;br /&gt;
* 2015-02-16: waist cable broken.&lt;br /&gt;
* 2015-02-12: new machine icub-cuda (10.10.1.51), for now a desktop, set up to run CUDA-enabled modules of stereo vision and IOL, replacing cortex1.&lt;br /&gt;
* 2015-01-15: new Toshiba Qosmio [[iCub laptop]] deployed to replace chico3. This machine also acts as the new NFS server for the cluster.&lt;br /&gt;
&lt;br /&gt;
== 2014 ==&lt;br /&gt;
&lt;br /&gt;
* 2014-11-12/13: Stefano Saliceti and Julien Jenvrin (IIT) at IST to repair both robot shoulders and the skin.&lt;br /&gt;
* 2014-11-03: left elbow broken.&lt;br /&gt;
* &#039;&#039;&#039;2014-09-25: upgraded robot arrived after 8 weeks.&#039;&#039;&#039;&lt;br /&gt;
* &#039;&#039;&#039;2014-07-31: iCubLisboa01 leaves the lab for hardware upgrades in Italy (skin).&#039;&#039;&#039;&lt;br /&gt;
* 2014-06-18: right camera image was going black from time to time. Replacing the flex cable fixed the problem.&lt;br /&gt;
* &#039;&#039;&#039;2014-06-18: repaired forearm arrived after 27 days.&#039;&#039;&#039;&lt;br /&gt;
* &#039;&#039;&#039;2014-05-22: left forearm sent to Italy for repair.&#039;&#039;&#039;&lt;br /&gt;
* 2014-05-08: backlash in left forearm wrist motor. [http://youtu.be/rBy0FV2bje8 Backlash video], [http://youtu.be/pMI6jaxmyoo Motor noise video], [http://youtu.be/pWFvw3dNiuU Wrist motion video]&lt;br /&gt;
* 2014-05-06: icub-main (git) installed on all machines, including pc104.&lt;br /&gt;
* 2014-02-21: pc104 clock was off by one hour. Fixed ntp service by issuing &amp;lt;code&amp;gt;sudo dpkg -i --force-overwrite /var/cache/apt/archives/ntp_1%3a4.2.6.p2+dfsg-1+b1_i386.deb&amp;lt;/code&amp;gt; and setting the timezone to Lisbon (&amp;lt;code&amp;gt;sudo dpkg-reconfigure tzdata&amp;lt;/code&amp;gt;). See also 2011-11-18.&lt;br /&gt;
* &#039;&#039;&#039;2014-02-06: repaired forearm arrived after three weeks.&#039;&#039;&#039;&lt;br /&gt;
* 2014-01-20: IIT technicians confirmed the problem at the encoder attached to the pronosupination motor.&lt;br /&gt;
* &#039;&#039;&#039;2014-01-16: right forearm sent to Italy for repair.&#039;&#039;&#039;&lt;br /&gt;
* 2014-01-09: right arm pronosupination problem (j4).&lt;br /&gt;
* 2014-01-07: head/torso (CAN0) problem solved by manually setting CAN0 ID14 instead of ID15 in canLoader.&lt;br /&gt;
&lt;br /&gt;
== 2013 ==&lt;br /&gt;
&lt;br /&gt;
* 2013-12-2x: head/torso (CAN0) problems, see [http://robotcub-hackers.2198711.n2.nabble.com/iCubLisboa01-head-torso-problem-tt7578621.html this thread] for details.&lt;br /&gt;
* 2013-11-xx: presently, chico3 acts as NFS server for chico3,icubbrains,cortex1, while icubsrv (to be retired in the future) still acts as NFS server for pc104.&lt;br /&gt;
* 2013-11-19: upgrading icubsrv (Dell XPS laptop) Ubuntu version, installing common repositories there, shared with NFS to the other machines.&lt;br /&gt;
* 2013-11-01: often experiencing a problem where the wholeBodyDynamics module does not start, due to force/torque sensors not being found at iCubInterface startup.&lt;br /&gt;
* 2013-07-03: CFW2 board problem (cfw2can error). Replacing the board solved it.&lt;br /&gt;
* 2013-06-25: following new requirements (see [http://robotcub-hackers.2198711.n2.nabble.com/CMake-2-8-7-Required-for-YARP-td7578216.html this email]), manually installed a new version of CMake on [[pc104]].&lt;br /&gt;
* 2013-06-2x: robot mounted on a new, lower metal base on the floor. Occasionally, iCubInterface does not start the motors. Possibly a loose contact after the transport.&lt;br /&gt;
* 2013-05-10: new setup where some machines (pc104, chico3, icubbrains, cortex1) are directly connected via a fast Cisco switch (http://10.10.1.252/, empty, qb...). Got 640x480@30Hz images with Bayer encoding working (see also 2012-08-15 entry).&lt;br /&gt;
* 2013-05-0x: new yarp and iCub repositories installed on all machines. Old configuration files are backed up.&lt;br /&gt;
* 2013-04-29/30: problems with arms (solved by swapping left/right flat cable), occasional Force/Torque sensor problem in impedance control (temporary solution: close and re-launch demoGrasp).&lt;br /&gt;
* 2013-04-26: replacement parts arrived from IIT (gearbox and pulley for hand, flat cable linking BLL and BLP for arm). After installing them, both arms and hands are working again.&lt;br /&gt;
* 2013-04-08: video conference with Italy (Julien Jenvrin) to analyze two ongoing issues: left fingers and right shoulder.&lt;br /&gt;
* &#039;&#039;&#039;2013-04-02: iCubLisboa01 arms and new CFW2 boards arrived after about 2 months.&#039;&#039;&#039;&lt;br /&gt;
* &#039;&#039;&#039;2013-01-24: iCubLisboa01 arms sent to Italy for repair (they reached their destination the next day).&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== 2012 ==&lt;br /&gt;
&lt;br /&gt;
* 2012-12-18: replacement BLP board and adhesive tape arrived and installed, robot operational again.&lt;br /&gt;
* 2012-12-05: robot left shoulder and neck repaired. Torso: one BLP board is faulty. We are going to swap it with a functioning BLP board in the right leg, thus having a working torso and a disabled right leg.&lt;br /&gt;
* 2012-11-30: robot left shoulder, neck and torso malfunctioning.&lt;br /&gt;
* 2012-10-26: robot right shoulder fixed.&lt;br /&gt;
* 2012-10-15: robot right shoulder broken, right arm temporarily disabled in iCubInterface and demoGrasp configuration.&lt;br /&gt;
* 2012-08-15: pc104 configured to support 640x480@30Hz images with Bayer encoding. Requires &amp;lt;code&amp;gt;libraw1394-dev libdc1394-22-dev&amp;lt;/code&amp;gt; packages. See also [http://robotcub-hackers.2198711.n2.nabble.com/announcing-640x480-images-td7577551.html this email] and [http://wiki.icub.org/wiki/Getting_640x480_images this guide] by Lorenzo Natale. Added the following line on chico3,pc104,icubbrains /etc/sysctl.conf: &amp;lt;code&amp;gt;net.core.rmem_max=8388608&amp;lt;/code&amp;gt;&lt;br /&gt;
* 2012-07-11: problem in the CFW2 board FireWire interface to the two cameras: sometimes FireWire devices are not listed as available, not even at OS level. A pc104 reboot may or may not fix the problem, depending on your luck.&lt;br /&gt;
* 2012-07-0x: firmware of robot parts upgraded again, following [http://robotcub-hackers.2198711.n2.nabble.com/iKinGazeCtrl-fast-saccades-new-FW-td7577441.html this message] by Ugo. CAN6, board #14 (MAIS) in the right hand sometimes is not responding, possibly a bad contact, however it was now upgraded too.&lt;br /&gt;
* 2012-05-2x: major reconfiguration from Ugo and Vadim (IIT). Environment variables and software (OpenCV, IPOPT) reconfigured on all machines. &#039;&#039;&#039;[[Chico#Firmware|Firmware]]&#039;&#039;&#039; of robot parts upgraded.&lt;br /&gt;
&lt;br /&gt;
== 2011 ==&lt;br /&gt;
* 2011-11-18: Configured icubsrv laptop so that it sees the internet (DNS servers in &amp;lt;code&amp;gt;/etc/resolv.conf&amp;lt;/code&amp;gt;). &amp;lt;strike&amp;gt;TODO: pc104 ntp&amp;lt;/strike&amp;gt;&lt;br /&gt;
* 2011-10-xx: ongoing software updates and tests; currently there is a major mechanical issue with the head tilt (j0)&lt;br /&gt;
* &#039;&#039;&#039;2011-10-12: upgraded iCubLisboa01 returns to the lab after about 3 months&#039;&#039;&#039;&lt;br /&gt;
* &#039;&#039;&#039;2011-07-04: iCubLisboa01 leaves the lab for hardware upgrades in Italy (headV2, force/torque sensors, touch sensors)&#039;&#039;&#039;&lt;br /&gt;
* 2011-03-07: iCubInterface is shutting down gracefully. Was due to zombie processes (iKinCartesianSolvers on the icubbrain2). [The problem was trivial but I am not deleting these posts as it might help in troubleshooting in the future --ashish]. By the way, there are still some Can Errors on Boards 1 and 6.&lt;br /&gt;
* 2011-03-07: iCubInterface has not been shutting down gracefully. This behavior was seen earlier as well when we were having troubles with the iCub head (Last time it was probably due to a cable being pulled around the neck).&lt;br /&gt;
 From the iCubInterface:-&lt;br /&gt;
 pcan [0] thread ran 596 times, req.dT:10[ms], av.dT:10.05[ms] av.loopT :0.03[ms]&lt;br /&gt;
  Can Errors --  Device Tx:1 Rx:0 TxOvf: 1 RxOvf BusOff: 0 -- Driver Fifo Tx:0 Rx:0&lt;br /&gt;
 pcan [0] printing boards errors:&lt;br /&gt;
 None&lt;br /&gt;
 pcan [2] thread ran 596 times, req.dT:10[ms], av.dT:10.05[ms] av.loopT :0.04[ms]&lt;br /&gt;
  Can Errors --  Device Tx:2 Rx:0 TxOvf: 2 RxOvf BusOff: 81 -- Driver Fifo Tx:0 Rx:81&lt;br /&gt;
 pcan [2] printing boards errors:&lt;br /&gt;
 None&lt;br /&gt;
&lt;br /&gt;
* 2011-03-07: Joint 15 of the right arm is making noises (Nuno suspects that there is something wrong with the gearbox. Only 1 gearbox left in stock. Should order more)&lt;br /&gt;
* 2011-03-07: iCubInterface no more board errors (appears to be random: probably some cable is loose)&lt;br /&gt;
* 2011-03-07: iCubInterface could not contact boards 6, 8, 9, 10&lt;br /&gt;
* 2011-03-07: iCubInterface behaving wierdly: Board 1, 2, 3, 5, 7 could not be contacted&lt;br /&gt;
* 2011-03-07: right arm fixed&lt;br /&gt;
* 2011-03-07: right arm broken (cable broken near the elbow)&lt;br /&gt;
* 2011-02-08: head not working properly. Fixed (some cables connecting head to neck were not working well)&lt;br /&gt;
* 2011-01-25: eyes calibrated&lt;br /&gt;
&lt;br /&gt;
== 2010 ==&lt;br /&gt;
* 2010-12-30: robot right arm fixed; problem with torso though&lt;br /&gt;
* 2010-12-27: robot right arm broken&lt;br /&gt;
* 2010-11-08: left arm fixed. Joint j15 of right arm does not work correctly, though. &amp;lt;code&amp;gt;iCubInterface&amp;lt;/code&amp;gt; can be executed safely with any config file.&lt;br /&gt;
* 2010-10-08: left arm broken. For the time being, disable it by running &amp;lt;code&amp;gt;iCubInterface --from iCubInterfaceSimpleLeftArmDisabled.ini&amp;lt;/code&amp;gt;&lt;br /&gt;
* 2010-09-02: changed two of the software zeros head tilt and eye tilt to set the optical axis parallel to the robot X,Y coordinate axes. This change was made in the following file: &amp;lt;code&amp;gt;$ICUB_ROOT/app/iCubLisboa01/conf/icub_head_safe.ini&amp;lt;/code&amp;gt;&lt;br /&gt;
* 2010-07-13: the problem with demoAffV2 was fixed: it is necessary to link to a specific version of &amp;lt;code&amp;gt;/usr/local/lib/libcxcore.a&amp;lt;/code&amp;gt; for PNL to work.&lt;br /&gt;
* 2010-06-02: added the following line in &amp;lt;code&amp;gt;$ICUB_ROOT/app/iCubLisboa01/conf/icubEyes.ini&amp;lt;/code&amp;gt;, under the groups &amp;lt;code&amp;gt;CAMERA_CALIBRATION_LEFT&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;_RIGHT&amp;lt;/code&amp;gt;. This change makes camCalib run again at 30 fps, thus improving other vision modules e.g. ball tracker as well:&lt;br /&gt;
  fps 30&lt;br /&gt;
* 2010-02-08: changed one of the software joint limits of the torso to reflect our real (hardware) limit: 70-&amp;gt;35 degrees. This change was made in the following files: &amp;lt;code&amp;gt;$ICUB_ROOT/app/iCubLisboa01/conf/{icub_head_safe,icub_head_torso,icub_head_torso_raw,icub_head_torso_safe,icub_torso_safe}.ini&amp;lt;/code&amp;gt;&lt;br /&gt;
* 2010-02-04: updated yarp and iCub on: chico3, icubsrv (for [[pc104]]), icubbrains. Fixed ntp (time) hook script, hopefully for good this time.&lt;br /&gt;
&lt;br /&gt;
== 2009 ==&lt;br /&gt;
&lt;br /&gt;
* 2009-12-21: right wrist is currently broken, left one is working. Please use &amp;lt;code&amp;gt;iCubInterface --from iCubInterfaceRightArmDisabled.ini&amp;lt;/code&amp;gt; for the time being&lt;br /&gt;
* 2009-12-09: updated YARP and iCub on chico3 (current issue: openvislab libraries, Christian is looking into it) and on [[Cortex | cortex1-5]] (there was an issue with iKinCartesianSolver; toggling USE_ICUB_MOD to off fixed it for now)&lt;br /&gt;
* 2009-09-23: both arms working. You can safely use &amp;lt;code&amp;gt;icubSafe.ini&amp;lt;/code&amp;gt; again.&lt;br /&gt;
* 2009-09-21: left wrist is currently broken, right one is working. Please use &amp;lt;code&amp;gt;iCubInterface --config $ICUB_ROOT/app/iCubLisboa01/icubSafeLeftArmDisabled.ini&amp;lt;/code&amp;gt;&lt;br /&gt;
* 2009-09-21: checked controllers firmware build numbers - they match the latest releases. (alex)&lt;br /&gt;
* 2009-09-18: updated controllers firmware. (alex)&lt;br /&gt;
* 2009-09-18: both the iCub wrists are currently broken&lt;br /&gt;
* 2009-09-16: upgraded [[pc104 | pc104, icubsrv and boot scripts]]. Still missing: ntp (time).&lt;br /&gt;
* 2009-09-16: installed [[RobotCub software | yarp and iCub]] on chico3. Custom, uncommited files that used to be in &amp;lt;code&amp;gt;/home/icub/iCub/app/{default,iCubLisboa01}/{conf,scripts}&amp;lt;/code&amp;gt; are backed up in &amp;lt;code&amp;gt;/home/icub/iCub_cvs&amp;lt;/code&amp;gt;.&lt;br /&gt;
* 2009-09-14: installed [[RobotCub software | yarp]] (2.2.5rc0, revision 7446) and [[RobotCub software | iCub]] (revision 727) on [[Cortex | cortex1-5]]. iKin was complaining about not finding &amp;lt;code&amp;gt;libipopt.so.0&amp;lt;/code&amp;gt;; this was fixed by setting the environment variable&lt;br /&gt;
  LD_LIBRARY_PATH=/opt/Ipopt-3.5.5-linux-x86_32-gcc4.2.4/lib/&lt;br /&gt;
into &amp;lt;code&amp;gt;/home/icub/.bash_env&amp;lt;/code&amp;gt;.&lt;br /&gt;
* 2009-09-11: installed [[RobotCub software | yarp2 and iCub SVN]] on [[Cortex | cortex6]].&lt;br /&gt;
[[Category:Vislab]]&lt;/div&gt;</summary>
		<author><name>Giovanni Saponaro</name></author>
	</entry>
	<entry>
		<id>http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=ICub_logbook&amp;diff=6939</id>
		<title>ICub logbook</title>
		<link rel="alternate" type="text/html" href="http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=ICub_logbook&amp;diff=6939"/>
		<updated>2018-06-28T10:40:26Z</updated>

		<summary type="html">&lt;p&gt;Giovanni Saponaro: /* 2018 */ fixed right wrist problem&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page serves as a maintenance diary of the iCub humanoid robot in VisLab, Lisbon.&lt;br /&gt;
&lt;br /&gt;
== 2018 ==&lt;br /&gt;
&lt;br /&gt;
* 2018-06-27: replaced the motor in the right wrist, thus fixing the r_wrist_pitch+r_wrist_yaw (j5+j6) motor problem (see also 2017-11-17 entry and https://github.com/robotology/icub-support/issues/567).&lt;br /&gt;
* 2018-02-27: left shoulder steel tendon broke during calibration.&lt;br /&gt;
* 2018-02-08: l_wrist_pitch+l_wrist_yaw (j5+j6) electrical problem fixed (wire close to the board, far from the wrist).&lt;br /&gt;
&lt;br /&gt;
== 2017 ==&lt;br /&gt;
&lt;br /&gt;
* 2017-11-23: right thumb middle phalanx broken due to collision with the torso during an experiment.&lt;br /&gt;
* 2017-11-17: r_wrist_pitch+r_wrist_yaw (j5+j6) motor problem, see also https://github.com/robotology/icub-support/issues/567&lt;br /&gt;
* 2017-10-16: repaired right shoulder steel tendon.&lt;br /&gt;
* 2017-10-15: broke right shoulder steel tendon.&lt;br /&gt;
* 2017-10-13: broke and repaired r_wrist_pitch+r_wrist_yaw (j5+j6) steel tendon.&lt;br /&gt;
* 2017-09-2x: broke and repaired l_shoulder_pitch (j0) steel tendon, see also https://github.com/robotology/icub-support/issues/541&lt;br /&gt;
* 2017-09-01: tightened right wrist cables.&lt;br /&gt;
* 2017-08-30: broke and repaired r_wrist_pitch+r_wrist_yaw (j5+j6) steel tendon.&lt;br /&gt;
* 2017-07-31: broke r_shoulder_yaw steel tendon.&lt;br /&gt;
* 2017-01-06: repaired r_thumb_oppose and l_index_proximal steel tendons.&lt;br /&gt;
&lt;br /&gt;
== 2016 ==&lt;br /&gt;
&lt;br /&gt;
* 2016-12-1x: right hand joint 8 (r_thumb_oppose) and left hand joint 11 (l_index_proximal) steel cables broken.&lt;br /&gt;
* 2016-10-21: new USB Flash Drive installed in the robot head (Debian 6, https://github.com/robotology/QA/issues/136).&lt;br /&gt;
* 2016-07-19: left thumb proximal encoder wire fixed.&lt;br /&gt;
* 2016-07-12: left thumb proximal encoder wire fixed.&lt;br /&gt;
* 2016-07-08: left thumb tendon broken and replaced.&lt;br /&gt;
* 2016-05-30: left hand thumb proximal encoder and wire fixed (https://github.com/robotology/icub-support/issues/218), right hand index distal spring replaced (https://github.com/robotology/icub-support/issues/241).&lt;br /&gt;
* 2016-03-xx: right hand steel cable and metal piece with magnet for thumb opposition replaced (https://github.com/robotology/icub-support/issues/195). Left hand steel cable replaced.&lt;br /&gt;
* 2016-01-xx: right hand CAN bus problem (CAN2). (i) Replaced the CAN bus splitter connected to 2B2 at the end of the line (closer to the hand), by installed a transparent instead of a black filter; transparent = closed filter i.e. terminator with resistor, black = no resistor. (ii) Installed a replacement MC4 board. More details at https://github.com/robotology/icub-support/issues/156&lt;br /&gt;
&lt;br /&gt;
== 2015 ==&lt;br /&gt;
&lt;br /&gt;
* 2015-12-02: left hand repaired.&lt;br /&gt;
* 2015-10-28: installed new icub-cuda server (10.10.1.51): 12 x i7-5820K, 16GB memory, NVIDIA GeForce GTX 980.&lt;br /&gt;
* 2015-08-31: set GRUB_RECORDFAIL_TIMEOUT=5 on icubbrain1, icubbrain2, in order to boot successfully after a power failure. See also http://www.phoronix.com/scan.php?page=news_item&amp;amp;px=Ubuntu-Common-GRUB2-Issue&lt;br /&gt;
* 2015-05-xx: right wrist problem, see https://github.com/robotology/icub-support/issues/23&lt;br /&gt;
* 2015-02-20: replacement waist cable arrived and installed.&lt;br /&gt;
* 2015-02-16: waist cable broken.&lt;br /&gt;
* 2015-02-12: new machine icub-cuda (10.10.1.51), for now a desktop, set up to run CUDA-enabled modules of stereo vision and IOL, replacing cortex1.&lt;br /&gt;
* 2015-01-15: new Toshiba Qosmio [[iCub laptop]] deployed to replace chico3. This machine also acts as the new NFS server for the cluster.&lt;br /&gt;
&lt;br /&gt;
== 2014 ==&lt;br /&gt;
&lt;br /&gt;
* 2014-11-12/13: Stefano Saliceti and Julien Jenvrin (IIT) at IST to repair both robot shoulders and the skin.&lt;br /&gt;
* 2014-11-03: left elbow broken.&lt;br /&gt;
* &#039;&#039;&#039;2014-09-25: upgraded robot arrived after 8 weeks.&#039;&#039;&#039;&lt;br /&gt;
* &#039;&#039;&#039;2014-07-31: iCubLisboa01 leaves the lab for hardware upgrades in Italy (skin).&#039;&#039;&#039;&lt;br /&gt;
* 2014-06-18: right camera image was going black from time to time. Replacing the flex cable fixed the problem.&lt;br /&gt;
* &#039;&#039;&#039;2014-06-18: repaired forearm arrived after 27 days.&#039;&#039;&#039;&lt;br /&gt;
* &#039;&#039;&#039;2014-05-22: left forearm sent to Italy for repair.&#039;&#039;&#039;&lt;br /&gt;
* 2014-05-08: backlash in left forearm wrist motor. [http://youtu.be/rBy0FV2bje8 Backlash video], [http://youtu.be/pMI6jaxmyoo Motor noise video], [http://youtu.be/pWFvw3dNiuU Wrist motion video]&lt;br /&gt;
* 2014-05-06: icub-main (git) installed on all machines, including pc104.&lt;br /&gt;
* 2014-02-21: pc104 clock was off by one hour. Fixed ntp service by issuing &amp;lt;code&amp;gt;sudo dpkg -i --force-overwrite /var/cache/apt/archives/ntp_1%3a4.2.6.p2+dfsg-1+b1_i386.deb&amp;lt;/code&amp;gt; and setting the timezone to Lisbon (&amp;lt;code&amp;gt;sudo dpkg-reconfigure tzdata&amp;lt;/code&amp;gt;). See also 2011-11-18.&lt;br /&gt;
* &#039;&#039;&#039;2014-02-06: repaired forearm arrived after three weeks.&#039;&#039;&#039;&lt;br /&gt;
* 2014-01-20: IIT technicians confirmed the problem at the encoder attached to the pronosupination motor.&lt;br /&gt;
* &#039;&#039;&#039;2014-01-16: right forearm sent to Italy for repair.&#039;&#039;&#039;&lt;br /&gt;
* 2014-01-09: right arm pronosupination problem (j4).&lt;br /&gt;
* 2014-01-07: head/torso (CAN0) problem solved by manually setting CAN0 ID14 instead of ID15 in canLoader.&lt;br /&gt;
&lt;br /&gt;
== 2013 ==&lt;br /&gt;
&lt;br /&gt;
* 2013-12-2x: head/torso (CAN0) problems, see [http://robotcub-hackers.2198711.n2.nabble.com/iCubLisboa01-head-torso-problem-tt7578621.html this thread] for details.&lt;br /&gt;
* 2013-11-xx: presently, chico3 acts as NFS server for chico3,icubbrains,cortex1, while icubsrv (to be retired in the future) still acts as NFS server for pc104.&lt;br /&gt;
* 2013-11-19: upgrading icubsrv (Dell XPS laptop) Ubuntu version, installing common repositories there, shared with NFS to the other machines.&lt;br /&gt;
* 2013-11-01: often experiencing a problem where the wholeBodyDynamics module does not start, due to force/torque sensors not being found at iCubInterface startup.&lt;br /&gt;
* 2013-07-03: CFW2 board problem (cfw2can error). Replacing the board solved it.&lt;br /&gt;
* 2013-06-25: following new requirements (see [http://robotcub-hackers.2198711.n2.nabble.com/CMake-2-8-7-Required-for-YARP-td7578216.html this email]), manually installed a new version of CMake on [[pc104]].&lt;br /&gt;
* 2013-06-2x: robot mounted on a new, lower metal base on the floor. Occasionally, iCubInterface does not start the motors. Possibly a loose contact after the transport.&lt;br /&gt;
* 2013-05-10: new setup where some machines (pc104, chico3, icubbrains, cortex1) are directly connected via a fast Cisco switch (http://10.10.1.252/, empty, qb...). Got 640x480@30Hz images with Bayer encoding working (see also 2012-08-15 entry).&lt;br /&gt;
* 2013-05-0x: new yarp and iCub repositories installed on all machines. Old configuration files are backed up.&lt;br /&gt;
* 2013-04-29/30: problems with arms (solved by swapping left/right flat cable), occasional Force/Torque sensor problem in impedance control (temporary solution: close and re-launch demoGrasp).&lt;br /&gt;
* 2013-04-26: replacement parts arrived from IIT (gearbox and pulley for hand, flat cable linking BLL and BLP for arm). After installing them, both arms and hands are working again.&lt;br /&gt;
* 2013-04-08: video conference with Italy (Julien Jenvrin) to analyze two ongoing issues: left fingers and right shoulder.&lt;br /&gt;
* &#039;&#039;&#039;2013-04-02: iCubLisboa01 arms and new CFW2 boards arrived after about 2 months.&#039;&#039;&#039;&lt;br /&gt;
* &#039;&#039;&#039;2013-01-24: iCubLisboa01 arms sent to Italy for repair (they reached their destination the next day).&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== 2012 ==&lt;br /&gt;
&lt;br /&gt;
* 2012-12-18: replacement BLP board and adhesive tape arrived and installed, robot operational again.&lt;br /&gt;
* 2012-12-05: robot left shoulder and neck repaired. Torso: one BLP board is faulty. We are going to swap it with a functioning BLP board in the right leg, thus having a working torso and a disabled right leg.&lt;br /&gt;
* 2012-11-30: robot left shoulder, neck and torso malfunctioning.&lt;br /&gt;
* 2012-10-26: robot right shoulder fixed.&lt;br /&gt;
* 2012-10-15: robot right shoulder broken, right arm temporarily disabled in iCubInterface and demoGrasp configuration.&lt;br /&gt;
* 2012-08-15: pc104 configured to support 640x480@30Hz images with Bayer encoding. Requires &amp;lt;code&amp;gt;libraw1394-dev libdc1394-22-dev&amp;lt;/code&amp;gt; packages. See also [http://robotcub-hackers.2198711.n2.nabble.com/announcing-640x480-images-td7577551.html this email] and [http://wiki.icub.org/wiki/Getting_640x480_images this guide] by Lorenzo Natale. Added the following line on chico3,pc104,icubbrains /etc/sysctl.conf: &amp;lt;code&amp;gt;net.core.rmem_max=8388608&amp;lt;/code&amp;gt;&lt;br /&gt;
* 2012-07-11: problem in the CFW2 board FireWire interface to the two cameras: sometimes FireWire devices are not listed as available, not even at OS level. A pc104 reboot may or may not fix the problem, depending on your luck.&lt;br /&gt;
* 2012-07-0x: firmware of robot parts upgraded again, following [http://robotcub-hackers.2198711.n2.nabble.com/iKinGazeCtrl-fast-saccades-new-FW-td7577441.html this message] by Ugo. CAN6, board #14 (MAIS) in the right hand sometimes is not responding, possibly a bad contact, however it was now upgraded too.&lt;br /&gt;
* 2012-05-2x: major reconfiguration from Ugo and Vadim (IIT). Environment variables and software (OpenCV, IPOPT) reconfigured on all machines. &#039;&#039;&#039;[[Chico#Firmware|Firmware]]&#039;&#039;&#039; of robot parts upgraded.&lt;br /&gt;
&lt;br /&gt;
== 2011 ==&lt;br /&gt;
* 2011-11-18: Configured icubsrv laptop so that it sees the internet (DNS servers in &amp;lt;code&amp;gt;/etc/resolv.conf&amp;lt;/code&amp;gt;). &amp;lt;strike&amp;gt;TODO: pc104 ntp&amp;lt;/strike&amp;gt;&lt;br /&gt;
* 2011-10-xx: ongoing software updates and tests; currently there is a major mechanical issue with the head tilt (j0)&lt;br /&gt;
* &#039;&#039;&#039;2011-10-12: upgraded iCubLisboa01 returns to the lab after about 3 months&#039;&#039;&#039;&lt;br /&gt;
* &#039;&#039;&#039;2011-07-04: iCubLisboa01 leaves the lab for hardware upgrades in Italy (headV2, force/torque sensors, touch sensors)&#039;&#039;&#039;&lt;br /&gt;
* 2011-03-07: iCubInterface is shutting down gracefully. Was due to zombie processes (iKinCartesianSolvers on the icubbrain2). [The problem was trivial but I am not deleting these posts as it might help in troubleshooting in the future --ashish]. By the way, there are still some Can Errors on Boards 1 and 6.&lt;br /&gt;
* 2011-03-07: iCubInterface has not been shutting down gracefully. This behavior was seen earlier as well when we were having troubles with the iCub head (Last time it was probably due to a cable being pulled around the neck).&lt;br /&gt;
 From the iCubInterface:-&lt;br /&gt;
 pcan [0] thread ran 596 times, req.dT:10[ms], av.dT:10.05[ms] av.loopT :0.03[ms]&lt;br /&gt;
  Can Errors --  Device Tx:1 Rx:0 TxOvf: 1 RxOvf BusOff: 0 -- Driver Fifo Tx:0 Rx:0&lt;br /&gt;
 pcan [0] printing boards errors:&lt;br /&gt;
 None&lt;br /&gt;
 pcan [2] thread ran 596 times, req.dT:10[ms], av.dT:10.05[ms] av.loopT :0.04[ms]&lt;br /&gt;
  Can Errors --  Device Tx:2 Rx:0 TxOvf: 2 RxOvf BusOff: 81 -- Driver Fifo Tx:0 Rx:81&lt;br /&gt;
 pcan [2] printing boards errors:&lt;br /&gt;
 None&lt;br /&gt;
&lt;br /&gt;
* 2011-03-07: Joint 15 of the right arm is making noises (Nuno suspects that there is something wrong with the gearbox. Only 1 gearbox left in stock. Should order more)&lt;br /&gt;
* 2011-03-07: iCubInterface no more board errors (appears to be random: probably some cable is loose)&lt;br /&gt;
* 2011-03-07: iCubInterface could not contact boards 6, 8, 9, 10&lt;br /&gt;
* 2011-03-07: iCubInterface behaving wierdly: Board 1, 2, 3, 5, 7 could not be contacted&lt;br /&gt;
* 2011-03-07: right arm fixed&lt;br /&gt;
* 2011-03-07: right arm broken (cable broken near the elbow)&lt;br /&gt;
* 2011-02-08: head not working properly. Fixed (some cables connecting head to neck were not working well)&lt;br /&gt;
* 2011-01-25: eyes calibrated&lt;br /&gt;
&lt;br /&gt;
== 2010 ==&lt;br /&gt;
* 2010-12-30: robot right arm fixed; problem with torso though&lt;br /&gt;
* 2010-12-27: robot right arm broken&lt;br /&gt;
* 2010-11-08: left arm fixed. Joint j15 of right arm does not work correctly, though. &amp;lt;code&amp;gt;iCubInterface&amp;lt;/code&amp;gt; can be executed safely with any config file.&lt;br /&gt;
* 2010-10-08: left arm broken. For the time being, disable it by running &amp;lt;code&amp;gt;iCubInterface --from iCubInterfaceSimpleLeftArmDisabled.ini&amp;lt;/code&amp;gt;&lt;br /&gt;
* 2010-09-02: changed two of the software zeros head tilt and eye tilt to set the optical axis parallel to the robot X,Y coordinate axes. This change was made in the following file: &amp;lt;code&amp;gt;$ICUB_ROOT/app/iCubLisboa01/conf/icub_head_safe.ini&amp;lt;/code&amp;gt;&lt;br /&gt;
* 2010-07-13: the problem with demoAffV2 was fixed: it is necessary to link to a specific version of &amp;lt;code&amp;gt;/usr/local/lib/libcxcore.a&amp;lt;/code&amp;gt; for PNL to work.&lt;br /&gt;
* 2010-06-02: added the following line in &amp;lt;code&amp;gt;$ICUB_ROOT/app/iCubLisboa01/conf/icubEyes.ini&amp;lt;/code&amp;gt;, under the groups &amp;lt;code&amp;gt;CAMERA_CALIBRATION_LEFT&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;_RIGHT&amp;lt;/code&amp;gt;. This change makes camCalib run again at 30 fps, thus improving other vision modules e.g. ball tracker as well:&lt;br /&gt;
  fps 30&lt;br /&gt;
* 2010-02-08: changed one of the software joint limits of the torso to reflect our real (hardware) limit: 70-&amp;gt;35 degrees. This change was made in the following files: &amp;lt;code&amp;gt;$ICUB_ROOT/app/iCubLisboa01/conf/{icub_head_safe,icub_head_torso,icub_head_torso_raw,icub_head_torso_safe,icub_torso_safe}.ini&amp;lt;/code&amp;gt;&lt;br /&gt;
* 2010-02-04: updated yarp and iCub on: chico3, icubsrv (for [[pc104]]), icubbrains. Fixed ntp (time) hook script, hopefully for good this time.&lt;br /&gt;
&lt;br /&gt;
== 2009 ==&lt;br /&gt;
&lt;br /&gt;
* 2009-12-21: right wrist is currently broken, left one is working. Please use &amp;lt;code&amp;gt;iCubInterface --from iCubInterfaceRightArmDisabled.ini&amp;lt;/code&amp;gt; for the time being&lt;br /&gt;
* 2009-12-09: updated YARP and iCub on chico3 (current issue: openvislab libraries, Christian is looking into it) and on [[Cortex | cortex1-5]] (there was an issue with iKinCartesianSolver; toggling USE_ICUB_MOD to off fixed it for now)&lt;br /&gt;
* 2009-09-23: both arms working. You can safely use &amp;lt;code&amp;gt;icubSafe.ini&amp;lt;/code&amp;gt; again.&lt;br /&gt;
* 2009-09-21: left wrist is currently broken, right one is working. Please use &amp;lt;code&amp;gt;iCubInterface --config $ICUB_ROOT/app/iCubLisboa01/icubSafeLeftArmDisabled.ini&amp;lt;/code&amp;gt;&lt;br /&gt;
* 2009-09-21: checked controllers firmware build numbers - they match the latest releases. (alex)&lt;br /&gt;
* 2009-09-18: updated controllers firmware. (alex)&lt;br /&gt;
* 2009-09-18: both the iCub wrists are currently broken&lt;br /&gt;
* 2009-09-16: upgraded [[pc104 | pc104, icubsrv and boot scripts]]. Still missing: ntp (time).&lt;br /&gt;
* 2009-09-16: installed [[RobotCub software | yarp and iCub]] on chico3. Custom, uncommited files that used to be in &amp;lt;code&amp;gt;/home/icub/iCub/app/{default,iCubLisboa01}/{conf,scripts}&amp;lt;/code&amp;gt; are backed up in &amp;lt;code&amp;gt;/home/icub/iCub_cvs&amp;lt;/code&amp;gt;.&lt;br /&gt;
* 2009-09-14: installed [[RobotCub software | yarp]] (2.2.5rc0, revision 7446) and [[RobotCub software | iCub]] (revision 727) on [[Cortex | cortex1-5]]. iKin was complaining about not finding &amp;lt;code&amp;gt;libipopt.so.0&amp;lt;/code&amp;gt;; this was fixed by setting the environment variable&lt;br /&gt;
  LD_LIBRARY_PATH=/opt/Ipopt-3.5.5-linux-x86_32-gcc4.2.4/lib/&lt;br /&gt;
into &amp;lt;code&amp;gt;/home/icub/.bash_env&amp;lt;/code&amp;gt;.&lt;br /&gt;
* 2009-09-11: installed [[RobotCub software | yarp2 and iCub SVN]] on [[Cortex | cortex6]].&lt;br /&gt;
[[Category:Vislab]]&lt;/div&gt;</summary>
		<author><name>Giovanni Saponaro</name></author>
	</entry>
	<entry>
		<id>http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=VisLab_book_wishlist&amp;diff=6936</id>
		<title>VisLab book wishlist</title>
		<link rel="alternate" type="text/html" href="http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=VisLab_book_wishlist&amp;diff=6936"/>
		<updated>2018-05-11T16:31:07Z</updated>

		<summary type="html">&lt;p&gt;Giovanni Saponaro: /* Spring 2018 batch */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;If you need a new book for your research, please add it to this list:&lt;br /&gt;
&lt;br /&gt;
* Title. Authors. Publisher, year. ISBN code.&lt;br /&gt;
&lt;br /&gt;
= Already ordered =&lt;br /&gt;
&lt;br /&gt;
The following orders have already been dispatched.&lt;br /&gt;
&lt;br /&gt;
== Spring 2018 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in xxx 2018 and arrived in xxx 2018.&lt;br /&gt;
&lt;br /&gt;
* [https://www.amazon.co.uk/Design-Report-Experiments-Andy-Field/dp/0761973834 How to Design and Report Experiments]. Andy Field, Graham Hole. Sage, 2003. ISBN 978-0761973836.&lt;br /&gt;
* [https://www.amazon.co.uk/Non-verbal-Communication-Human-Interaction-International/dp/1285083512/ Nonverbal Communication in Human Interaction]. Mark Knapp, Terrence Horgan, Judith Hall. Cengage, 2014. ISBN 978-1285083513.&lt;br /&gt;
* [https://www.amazon.co.uk/3D-Printing-Handbook-Technologies-applications/dp/9082748509/ The 3D Printing Handbook: Technologies, design and applications]. Ben Redwood, Filemon Schöffer, Brian Garret. 3D Hubs B.V., 2017. ISBN 978-9082748505.&lt;br /&gt;
&lt;br /&gt;
== Autumn 2017 batch ==&lt;br /&gt;
&lt;br /&gt;
This book was ordered in November 2017 and arrived in January 2018.&lt;br /&gt;
&lt;br /&gt;
* [https://www.amazon.co.uk/Theoretical-Neuroscience-Computational-Mathematical-Modeling/dp/0262541858 Theoretical Neuroscience: Computational and Mathematical Modeling of Neural Systems]. Peter Dayan, ‎L. F. Abbott. MIT Press, 2005. ISBN 978-0262541855.&lt;br /&gt;
&lt;br /&gt;
== Spring 2017 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in April 2017 and arrived in May 2017.&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.co.uk/Ecological-Approach-Visual-Perception-Psychology/dp/1848725787 The Ecological Approach to Visual Perception: Classic Edition]. James J. Gibson. Psychology Press, 2014. ISBN 978-1848725782.&lt;br /&gt;
* [https://www.amazon.co.uk/Effective-Modern-Specific-Ways-Improve/dp/1491903996 Effective Modern C++: 42 Specific Ways to Improve Your Use of C++11 and C++14]. Scott Meyers. O&#039;Reilly, 2014. ISBN 978-1491903995.&lt;br /&gt;
* [https://www.amazon.co.uk/Hand-Mind-Gestures-Reveal-Thought/dp/0226561348 Hand and Mind: What Gestures Reveal about Thought]. David McNeill. University Of Chicago Press, 1996. ISBN 978-0226561349.&lt;br /&gt;
* [https://www.amazon.co.uk/Principles-Neural-Science-Fifth-Kandel/dp/0071390111 Principles of Neural Science, Fifth Edition]. Eric R. Kandel, James H. Schwartz, Thomas M. Jessell, Steven A. Siegelbaum, A. J. Hudspeth. McGraw-Hill, 2012. ISBN 978-0071390118&lt;br /&gt;
&lt;br /&gt;
== Winter 2016 batch ==&lt;br /&gt;
&lt;br /&gt;
This book was ordered in November 2016 and arrived in April 2017.&lt;br /&gt;
&lt;br /&gt;
* [https://www.amazon.co.uk/Deep-Learning-Adaptive-Computation-Machine/dp/0262035618 Deep Learning]. Ian Goodfellow, Yoshua Bengio, Aaron Courville. MIT Press, 2016. ISBN 978-0262035613&lt;br /&gt;
&lt;br /&gt;
== Spring 2016 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in March 2016, and arrived between May 2016 and February 2017 (Learning OpenCV 3).&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.co.uk/gp/product/1491937998 Learning OpenCV 3: Computer Vision in C++ with the OpenCV Library]. Adrian Kaehler, Gary Bradski. O&#039;Reilly Media, 2016.&lt;br /&gt;
* [http://www.amazon.co.uk/Mastering-Robotics-Programming-Lentin-Joseph/dp/1783551798 Mastering ROS for Robotics Programming]. Lentin Joseph. Packt Publishing, 2015.&lt;br /&gt;
* [http://www.amazon.co.uk/Artificial-Cognitive-Systems-David-Vernon/dp/0262028387 Artificial Cognitive Systems: A Primer]. David Vernon. MIT Press, 2015.&lt;br /&gt;
* [http://www.amazon.co.uk/Developmental-Robotics-Babies-Intelligent-Autonomous/dp/0262028018 Developmental Robotics: From Babies to Robots]. Angelo Cangelosi, Matthew Schlesinger. MIT Press, 2015.&lt;br /&gt;
* [http://www.amazon.co.uk/Machine-Learning-Optimization-Perspective-Developers/dp/0128015225 Machine Learning: A Bayesian and Optimization Perspective]. Sergios Theodoridis. Academic Press, March 2015.&lt;br /&gt;
* [http://www.amazon.co.uk/Gaussian-Processes-Machine-Learning-Rasmussen/dp/026218253X Gaussian Processes for Machine Learning]. Carl Edward Rasmussen, Christopher K. I. Williams. MIT Press, 2006.&lt;br /&gt;
* [http://www.amazon.co.uk/Designing-Sociable-Intelligent-Robotics-Autonomous/dp/0262025108 Designing Sociable Robots], Cynthia Breazeal. MIT Press, 2002.&lt;br /&gt;
&lt;br /&gt;
== Autumn 2014 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in November 2014, and arrived between December 2014 and February 2015.&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.co.uk/Probabilistic-Graphical-Models-Principles-Computation/dp/0262013193 Probabilistic Graphical Models: Principles and Techniques]. Daphne Koller, Nir Friedman. MIT Press, 2009. ([http://mitpress.mit.edu/books/probabilistic-graphical-models publisher page] with 20% discount code DKPGM12)&lt;br /&gt;
* [http://www.amazon.co.uk/Understanding-Vision-Theory-Models-Data/dp/0199564663 Understanding Vision: theory, models, and data]. Li Zhaoping. Oxford University Press, 2014. ([http://ukcatalogue.oup.com/product/9780199564668.do publisher page])&lt;br /&gt;
* [http://www.amazon.co.uk/Dictionary-Computer-Vision-Image-Processing/dp/1119941865 Dictionary of Computer Vision and Image Processing, 2nd Edition]. Robert B. Fisher, Toby P. Breckon, Kenneth Dawson-Howe, Andrew Fitzgibbon, Craig Robertson, Emanuele Trucco, Christopher K. I. Williams. Wiley, 2013. ([http://eu.wiley.com/WileyCDA/WileyTitle/productCd-1119941865.html publisher page])&lt;br /&gt;
* [http://www.amazon.co.uk/Introduction-Game-Design-Prototyping-Development-ebook/dp/B00LIYS9F0 Introduction to Game Design, Prototyping, and Development: From Concept to Playable Game with Unity and C#]. Jeremy Gibson. Addison-Wesley Professional, 2014.&lt;br /&gt;
* [http://www.amazon.co.uk/Regularization-Optimization-Kernels-Support-Machines/dp/1482241390 Regularization, Optimization, Kernels, and Support Vector Machines]. Johan A.K. Suykens, Marco Signoretto, Andreas Argyriou. Chapman and Hall/CRC, 2014. ([http://www.crcpress.com/product/isbn/9781482241396 publisher page])&lt;br /&gt;
&lt;br /&gt;
== Autumn 2013 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in October 2013, and arrived between November 2013 and June 2014.&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.co.uk/Gesture-Speech-Sign-Lynn-Messing/dp/019852451X Gesture, Speech, and Sign]. Lynn Messing, Ruth Campbell. Oxford University Press, 1999.&lt;br /&gt;
* [http://www.amazon.co.uk/OpenCV-Computer-Application-Programming-Cookbook/dp/1849513244/ OpenCV 2 Computer Vision Application Programming Cookbook]. Robert Laganière. Pack Publishing, May 2011.&lt;br /&gt;
* [http://www.amazon.co.uk/Brave-NUI-World-Designing-Interfaces/dp/0123822319 Brave NUI World: Designing Natural User Interfaces for Touch and Gesture]. Daniel Wigdor, Dennis Wixon. Morgan Kaufmann, April 2011.&lt;br /&gt;
* [http://www.amazon.co.uk/Probabilistic-Robotics-Intelligent-Autonomous-Agents/dp/0262201623 Probabilistic Robotics]. Sebastian Thrun, Wolfram Burgard, Dieter Fox. MIT Press, 2005.&lt;br /&gt;
* [http://www.amazon.co.uk/Frontiers-Human-Robot-Interaction-Advances-Studies/dp/9027204551 New Frontiers in Human-Robot Interaction] ([http://homepages.feis.herts.ac.uk/~comqkd/NFHRI-AIS-2011.pdf link2]). Kerstin Dautenhahn and Joe Saunder. John Benjamins Publishing Company, 2011.&lt;br /&gt;
* [http://mitpress.mit.edu/catalog/item/default.asp?ttype=2&amp;amp;tid=12814&amp;amp;mode=toc An Interdisciplinary Introduction to Image Processing]. Steven L. Tanimoto. MIT Press, May 2012.&lt;br /&gt;
* [http://www.amazon.co.uk/Machine-Learning-Probabilistic-Perspective-Computation/dp/0262018020 Machine Learning: A Probabilistic Perspective]. Kevin Murphy. MIT Press, October 2012.&lt;br /&gt;
* [http://www.cambridge.org/us/knowledge/discountpromotion/?site_locale=en_US&amp;amp;code=L2BRML Bayesian Reasoning and Machine Learning] (this link provides a 20% discount, you can change currency at checkout) David Barber. Cambridge University Press, February 2012.&lt;br /&gt;
* [http://www.amazon.co.uk/Active-Learning-Burr-Settles/dp/1608457257/ Active Learning: Synthesis Lectures on Artificial Intelligence and Machine Learning]. Burr Settles. Morgan &amp;amp; Claypool, 2012.&lt;br /&gt;
&lt;br /&gt;
== Summer 2011 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in the summer of 2011, and arrived on 2011-11-28.&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.com/Plasticity-Visual-System-Genes-Circuits/dp/0387281894 Plasticity in the Visual System: From Genes to Circuits], Raphael Pinaud (Editor), Liisa A. Tremere (Editor), Peter de Weerd, Springer 2006.&lt;br /&gt;
* [http://www.springer.com/engineering/robotics/book/978-3-540-23957-4 Springer Handbook of Robotics]. Bruno Siciliano, Oussama Khatib (Editors). Springer, 2008.&lt;br /&gt;
* [http://www.amazon.com/Human-Motor-Control-Second-Rosenbaum/dp/0123742269 Human Motor Control], David Rosenbaum. Elsevier/Academic Press, 2009.&lt;br /&gt;
* [http://www.amazon.com/Computer-Vision-Approach-David-Forsyth/dp/0130851981 Computer vision, A modern approach], David Forsyth and Jean Ponce.  &lt;br /&gt;
* [http://www.amazon.fr/Pattern-Recognition-Machine-Learning-Christopher/dp/0387310738/sr=8-1/qid=1158928255/ref=sr_1_1/402-9555855-8053710?ie=UTF8&amp;amp;s=english-books Pattern recognition and machine learning ], Christopher M. Bishop&lt;br /&gt;
&lt;br /&gt;
= Misc =&lt;br /&gt;
&lt;br /&gt;
== Discarded ==&lt;br /&gt;
&lt;br /&gt;
Books that were considered for purchase but not ordered:&lt;br /&gt;
&lt;br /&gt;
* [https://www.amazon.co.uk/Exploring-Robotic-Minds-Consciousness-Self-Organizing/dp/0190281065 Exploring Robotic Minds: Actions, Symbols, and Consciousness as Self-Organizing Dynamic Phenomena]. Jun Tani. OUP USA, 2016. ISBN 978-0190281069.&lt;br /&gt;
* [http://www.amazon.co.uk/Sparse-Modeling-Algorithms-Applications-Recognition/dp/1439828695 Sparse Modeling: Theory, Algorithms, and Applications]. Irina Rish, Genady Grabarnik. CRC Press, 2014.&lt;br /&gt;
* [http://www.amazon.co.uk/Sociorobot-World-Intelligent-Automation-Engineering-ebook/dp/B011QM0BBS Sociorobot World: A Guided Tour for All]. Spyros Tzafestas. Springer, 2016.&lt;br /&gt;
* [https://www.amazon.co.uk/Understanding-Machine-Learning-Theory-Algorithms-ebook/dp/1107512824 Understanding Machine Learning: From Theory To Algorithms]. Shai Shalev-Shwartz, Shai Ben-David. Cambridge University Press, 2015. ISBN 978-1107512825&lt;br /&gt;
* [https://www.amazon.co.uk/Computational-Integrating-Language-Synthesis-Lectures/dp/1608451127 Computational Methods for Integrating Vision and Language]. Kobus Barnard. Morgan &amp;amp; Claypool, 2016. ISBN 978-1608451128.&lt;br /&gt;
* [http://www.amazon.co.uk/OpenCV-3-Blueprints-Joseph-Howse/dp/1784399752 OpenCV 3 Blueprints]. Joseph Howse, Steven Puttemans, Quan Hua, Utkarsh Sinha. Packt Publishing, 2015. ISBN 978-1784399757.&lt;br /&gt;
* [https://www.amazon.co.uk/Time-Modeling-Computation-Inference-Statistical/dp/1420093363 Time Series: Modeling, Computation, and Inference]. Raquel Prado, Mike West. Chapman and Hall/CRC, 2010. ISBN 978-1420093360&lt;br /&gt;
&lt;br /&gt;
== Not available ==&lt;br /&gt;
&lt;br /&gt;
Books that are likely not available (from previous purchase attempts):&lt;br /&gt;
&lt;br /&gt;
* [http://www.oreilly.com/data/free/real-world-active-learning.csp Real-World Active Learning: Applications and strategies for human-in-the-loop machine learning]. Ted Cuzzillo. O&#039;Reilly, March 2015.&lt;br /&gt;
&lt;br /&gt;
[[Category:Vislab]]&lt;/div&gt;</summary>
		<author><name>Giovanni Saponaro</name></author>
	</entry>
	<entry>
		<id>http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=VisLab_book_wishlist&amp;diff=6935</id>
		<title>VisLab book wishlist</title>
		<link rel="alternate" type="text/html" href="http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=VisLab_book_wishlist&amp;diff=6935"/>
		<updated>2018-05-11T16:30:52Z</updated>

		<summary type="html">&lt;p&gt;Giovanni Saponaro: Spring 2018 batch&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;If you need a new book for your research, please add it to this list:&lt;br /&gt;
&lt;br /&gt;
* Title. Authors. Publisher, year. ISBN code.&lt;br /&gt;
&lt;br /&gt;
= Already ordered =&lt;br /&gt;
&lt;br /&gt;
The following orders have already been dispatched.&lt;br /&gt;
&lt;br /&gt;
== Spring 2018 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in May xxx and arrived in xxx 2018.&lt;br /&gt;
&lt;br /&gt;
* [https://www.amazon.co.uk/Design-Report-Experiments-Andy-Field/dp/0761973834 How to Design and Report Experiments]. Andy Field, Graham Hole. Sage, 2003. ISBN 978-0761973836.&lt;br /&gt;
* [https://www.amazon.co.uk/Non-verbal-Communication-Human-Interaction-International/dp/1285083512/ Nonverbal Communication in Human Interaction]. Mark Knapp, Terrence Horgan, Judith Hall. Cengage, 2014. ISBN 978-1285083513.&lt;br /&gt;
* [https://www.amazon.co.uk/3D-Printing-Handbook-Technologies-applications/dp/9082748509/ The 3D Printing Handbook: Technologies, design and applications]. Ben Redwood, Filemon Schöffer, Brian Garret. 3D Hubs B.V., 2017. ISBN 978-9082748505.&lt;br /&gt;
&lt;br /&gt;
== Autumn 2017 batch ==&lt;br /&gt;
&lt;br /&gt;
This book was ordered in November 2017 and arrived in January 2018.&lt;br /&gt;
&lt;br /&gt;
* [https://www.amazon.co.uk/Theoretical-Neuroscience-Computational-Mathematical-Modeling/dp/0262541858 Theoretical Neuroscience: Computational and Mathematical Modeling of Neural Systems]. Peter Dayan, ‎L. F. Abbott. MIT Press, 2005. ISBN 978-0262541855.&lt;br /&gt;
&lt;br /&gt;
== Spring 2017 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in April 2017 and arrived in May 2017.&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.co.uk/Ecological-Approach-Visual-Perception-Psychology/dp/1848725787 The Ecological Approach to Visual Perception: Classic Edition]. James J. Gibson. Psychology Press, 2014. ISBN 978-1848725782.&lt;br /&gt;
* [https://www.amazon.co.uk/Effective-Modern-Specific-Ways-Improve/dp/1491903996 Effective Modern C++: 42 Specific Ways to Improve Your Use of C++11 and C++14]. Scott Meyers. O&#039;Reilly, 2014. ISBN 978-1491903995.&lt;br /&gt;
* [https://www.amazon.co.uk/Hand-Mind-Gestures-Reveal-Thought/dp/0226561348 Hand and Mind: What Gestures Reveal about Thought]. David McNeill. University Of Chicago Press, 1996. ISBN 978-0226561349.&lt;br /&gt;
* [https://www.amazon.co.uk/Principles-Neural-Science-Fifth-Kandel/dp/0071390111 Principles of Neural Science, Fifth Edition]. Eric R. Kandel, James H. Schwartz, Thomas M. Jessell, Steven A. Siegelbaum, A. J. Hudspeth. McGraw-Hill, 2012. ISBN 978-0071390118&lt;br /&gt;
&lt;br /&gt;
== Winter 2016 batch ==&lt;br /&gt;
&lt;br /&gt;
This book was ordered in November 2016 and arrived in April 2017.&lt;br /&gt;
&lt;br /&gt;
* [https://www.amazon.co.uk/Deep-Learning-Adaptive-Computation-Machine/dp/0262035618 Deep Learning]. Ian Goodfellow, Yoshua Bengio, Aaron Courville. MIT Press, 2016. ISBN 978-0262035613&lt;br /&gt;
&lt;br /&gt;
== Spring 2016 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in March 2016, and arrived between May 2016 and February 2017 (Learning OpenCV 3).&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.co.uk/gp/product/1491937998 Learning OpenCV 3: Computer Vision in C++ with the OpenCV Library]. Adrian Kaehler, Gary Bradski. O&#039;Reilly Media, 2016.&lt;br /&gt;
* [http://www.amazon.co.uk/Mastering-Robotics-Programming-Lentin-Joseph/dp/1783551798 Mastering ROS for Robotics Programming]. Lentin Joseph. Packt Publishing, 2015.&lt;br /&gt;
* [http://www.amazon.co.uk/Artificial-Cognitive-Systems-David-Vernon/dp/0262028387 Artificial Cognitive Systems: A Primer]. David Vernon. MIT Press, 2015.&lt;br /&gt;
* [http://www.amazon.co.uk/Developmental-Robotics-Babies-Intelligent-Autonomous/dp/0262028018 Developmental Robotics: From Babies to Robots]. Angelo Cangelosi, Matthew Schlesinger. MIT Press, 2015.&lt;br /&gt;
* [http://www.amazon.co.uk/Machine-Learning-Optimization-Perspective-Developers/dp/0128015225 Machine Learning: A Bayesian and Optimization Perspective]. Sergios Theodoridis. Academic Press, March 2015.&lt;br /&gt;
* [http://www.amazon.co.uk/Gaussian-Processes-Machine-Learning-Rasmussen/dp/026218253X Gaussian Processes for Machine Learning]. Carl Edward Rasmussen, Christopher K. I. Williams. MIT Press, 2006.&lt;br /&gt;
* [http://www.amazon.co.uk/Designing-Sociable-Intelligent-Robotics-Autonomous/dp/0262025108 Designing Sociable Robots], Cynthia Breazeal. MIT Press, 2002.&lt;br /&gt;
&lt;br /&gt;
== Autumn 2014 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in November 2014, and arrived between December 2014 and February 2015.&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.co.uk/Probabilistic-Graphical-Models-Principles-Computation/dp/0262013193 Probabilistic Graphical Models: Principles and Techniques]. Daphne Koller, Nir Friedman. MIT Press, 2009. ([http://mitpress.mit.edu/books/probabilistic-graphical-models publisher page] with 20% discount code DKPGM12)&lt;br /&gt;
* [http://www.amazon.co.uk/Understanding-Vision-Theory-Models-Data/dp/0199564663 Understanding Vision: theory, models, and data]. Li Zhaoping. Oxford University Press, 2014. ([http://ukcatalogue.oup.com/product/9780199564668.do publisher page])&lt;br /&gt;
* [http://www.amazon.co.uk/Dictionary-Computer-Vision-Image-Processing/dp/1119941865 Dictionary of Computer Vision and Image Processing, 2nd Edition]. Robert B. Fisher, Toby P. Breckon, Kenneth Dawson-Howe, Andrew Fitzgibbon, Craig Robertson, Emanuele Trucco, Christopher K. I. Williams. Wiley, 2013. ([http://eu.wiley.com/WileyCDA/WileyTitle/productCd-1119941865.html publisher page])&lt;br /&gt;
* [http://www.amazon.co.uk/Introduction-Game-Design-Prototyping-Development-ebook/dp/B00LIYS9F0 Introduction to Game Design, Prototyping, and Development: From Concept to Playable Game with Unity and C#]. Jeremy Gibson. Addison-Wesley Professional, 2014.&lt;br /&gt;
* [http://www.amazon.co.uk/Regularization-Optimization-Kernels-Support-Machines/dp/1482241390 Regularization, Optimization, Kernels, and Support Vector Machines]. Johan A.K. Suykens, Marco Signoretto, Andreas Argyriou. Chapman and Hall/CRC, 2014. ([http://www.crcpress.com/product/isbn/9781482241396 publisher page])&lt;br /&gt;
&lt;br /&gt;
== Autumn 2013 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in October 2013, and arrived between November 2013 and June 2014.&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.co.uk/Gesture-Speech-Sign-Lynn-Messing/dp/019852451X Gesture, Speech, and Sign]. Lynn Messing, Ruth Campbell. Oxford University Press, 1999.&lt;br /&gt;
* [http://www.amazon.co.uk/OpenCV-Computer-Application-Programming-Cookbook/dp/1849513244/ OpenCV 2 Computer Vision Application Programming Cookbook]. Robert Laganière. Pack Publishing, May 2011.&lt;br /&gt;
* [http://www.amazon.co.uk/Brave-NUI-World-Designing-Interfaces/dp/0123822319 Brave NUI World: Designing Natural User Interfaces for Touch and Gesture]. Daniel Wigdor, Dennis Wixon. Morgan Kaufmann, April 2011.&lt;br /&gt;
* [http://www.amazon.co.uk/Probabilistic-Robotics-Intelligent-Autonomous-Agents/dp/0262201623 Probabilistic Robotics]. Sebastian Thrun, Wolfram Burgard, Dieter Fox. MIT Press, 2005.&lt;br /&gt;
* [http://www.amazon.co.uk/Frontiers-Human-Robot-Interaction-Advances-Studies/dp/9027204551 New Frontiers in Human-Robot Interaction] ([http://homepages.feis.herts.ac.uk/~comqkd/NFHRI-AIS-2011.pdf link2]). Kerstin Dautenhahn and Joe Saunder. John Benjamins Publishing Company, 2011.&lt;br /&gt;
* [http://mitpress.mit.edu/catalog/item/default.asp?ttype=2&amp;amp;tid=12814&amp;amp;mode=toc An Interdisciplinary Introduction to Image Processing]. Steven L. Tanimoto. MIT Press, May 2012.&lt;br /&gt;
* [http://www.amazon.co.uk/Machine-Learning-Probabilistic-Perspective-Computation/dp/0262018020 Machine Learning: A Probabilistic Perspective]. Kevin Murphy. MIT Press, October 2012.&lt;br /&gt;
* [http://www.cambridge.org/us/knowledge/discountpromotion/?site_locale=en_US&amp;amp;code=L2BRML Bayesian Reasoning and Machine Learning] (this link provides a 20% discount, you can change currency at checkout) David Barber. Cambridge University Press, February 2012.&lt;br /&gt;
* [http://www.amazon.co.uk/Active-Learning-Burr-Settles/dp/1608457257/ Active Learning: Synthesis Lectures on Artificial Intelligence and Machine Learning]. Burr Settles. Morgan &amp;amp; Claypool, 2012.&lt;br /&gt;
&lt;br /&gt;
== Summer 2011 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in the summer of 2011, and arrived on 2011-11-28.&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.com/Plasticity-Visual-System-Genes-Circuits/dp/0387281894 Plasticity in the Visual System: From Genes to Circuits], Raphael Pinaud (Editor), Liisa A. Tremere (Editor), Peter de Weerd, Springer 2006.&lt;br /&gt;
* [http://www.springer.com/engineering/robotics/book/978-3-540-23957-4 Springer Handbook of Robotics]. Bruno Siciliano, Oussama Khatib (Editors). Springer, 2008.&lt;br /&gt;
* [http://www.amazon.com/Human-Motor-Control-Second-Rosenbaum/dp/0123742269 Human Motor Control], David Rosenbaum. Elsevier/Academic Press, 2009.&lt;br /&gt;
* [http://www.amazon.com/Computer-Vision-Approach-David-Forsyth/dp/0130851981 Computer vision, A modern approach], David Forsyth and Jean Ponce.  &lt;br /&gt;
* [http://www.amazon.fr/Pattern-Recognition-Machine-Learning-Christopher/dp/0387310738/sr=8-1/qid=1158928255/ref=sr_1_1/402-9555855-8053710?ie=UTF8&amp;amp;s=english-books Pattern recognition and machine learning ], Christopher M. Bishop&lt;br /&gt;
&lt;br /&gt;
= Misc =&lt;br /&gt;
&lt;br /&gt;
== Discarded ==&lt;br /&gt;
&lt;br /&gt;
Books that were considered for purchase but not ordered:&lt;br /&gt;
&lt;br /&gt;
* [https://www.amazon.co.uk/Exploring-Robotic-Minds-Consciousness-Self-Organizing/dp/0190281065 Exploring Robotic Minds: Actions, Symbols, and Consciousness as Self-Organizing Dynamic Phenomena]. Jun Tani. OUP USA, 2016. ISBN 978-0190281069.&lt;br /&gt;
* [http://www.amazon.co.uk/Sparse-Modeling-Algorithms-Applications-Recognition/dp/1439828695 Sparse Modeling: Theory, Algorithms, and Applications]. Irina Rish, Genady Grabarnik. CRC Press, 2014.&lt;br /&gt;
* [http://www.amazon.co.uk/Sociorobot-World-Intelligent-Automation-Engineering-ebook/dp/B011QM0BBS Sociorobot World: A Guided Tour for All]. Spyros Tzafestas. Springer, 2016.&lt;br /&gt;
* [https://www.amazon.co.uk/Understanding-Machine-Learning-Theory-Algorithms-ebook/dp/1107512824 Understanding Machine Learning: From Theory To Algorithms]. Shai Shalev-Shwartz, Shai Ben-David. Cambridge University Press, 2015. ISBN 978-1107512825&lt;br /&gt;
* [https://www.amazon.co.uk/Computational-Integrating-Language-Synthesis-Lectures/dp/1608451127 Computational Methods for Integrating Vision and Language]. Kobus Barnard. Morgan &amp;amp; Claypool, 2016. ISBN 978-1608451128.&lt;br /&gt;
* [http://www.amazon.co.uk/OpenCV-3-Blueprints-Joseph-Howse/dp/1784399752 OpenCV 3 Blueprints]. Joseph Howse, Steven Puttemans, Quan Hua, Utkarsh Sinha. Packt Publishing, 2015. ISBN 978-1784399757.&lt;br /&gt;
* [https://www.amazon.co.uk/Time-Modeling-Computation-Inference-Statistical/dp/1420093363 Time Series: Modeling, Computation, and Inference]. Raquel Prado, Mike West. Chapman and Hall/CRC, 2010. ISBN 978-1420093360&lt;br /&gt;
&lt;br /&gt;
== Not available ==&lt;br /&gt;
&lt;br /&gt;
Books that are likely not available (from previous purchase attempts):&lt;br /&gt;
&lt;br /&gt;
* [http://www.oreilly.com/data/free/real-world-active-learning.csp Real-World Active Learning: Applications and strategies for human-in-the-loop machine learning]. Ted Cuzzillo. O&#039;Reilly, March 2015.&lt;br /&gt;
&lt;br /&gt;
[[Category:Vislab]]&lt;/div&gt;</summary>
		<author><name>Giovanni Saponaro</name></author>
	</entry>
	<entry>
		<id>http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=VisLab_book_wishlist&amp;diff=6934</id>
		<title>VisLab book wishlist</title>
		<link rel="alternate" type="text/html" href="http://mediawiki.isr.tecnico.ulisboa.pt/index.php?title=VisLab_book_wishlist&amp;diff=6934"/>
		<updated>2018-05-10T18:59:56Z</updated>

		<summary type="html">&lt;p&gt;Giovanni Saponaro: fix link of Nonverbal Communication in Human Interaction&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;If you need a new book for your research, please add it to this list:&lt;br /&gt;
&lt;br /&gt;
* [https://www.amazon.co.uk/Design-Report-Experiments-Andy-Field/dp/0761973834 How to Design and Report Experiments]. Andy Field, Graham Hole. Sage, 2003. ISBN 978-0761973836.&lt;br /&gt;
* [https://www.amazon.co.uk/Non-verbal-Communication-Human-Interaction-International/dp/1285083512/ Nonverbal Communication in Human Interaction]. Mark Knapp, Terrence Horgan, Judith Hall. Cengage, 2014. ISBN 978-1285083513.&lt;br /&gt;
* [https://www.amazon.co.uk/3D-Printing-Handbook-Technologies-applications/dp/9082748509/ The 3D Printing Handbook: Technologies, design and applications]. Ben Redwood, Filemon Schöffer, Brian Garret. 3D Hubs B.V., 2017. ISBN 978-9082748505.&lt;br /&gt;
* Title. Authors. Publisher, year. ISBN code.&lt;br /&gt;
&lt;br /&gt;
= Already ordered =&lt;br /&gt;
&lt;br /&gt;
The following orders have already been dispatched.&lt;br /&gt;
&lt;br /&gt;
== Autumn 2017 batch ==&lt;br /&gt;
&lt;br /&gt;
This book was ordered in November 2017 and arrived in January 2018.&lt;br /&gt;
&lt;br /&gt;
* [https://www.amazon.co.uk/Theoretical-Neuroscience-Computational-Mathematical-Modeling/dp/0262541858 Theoretical Neuroscience: Computational and Mathematical Modeling of Neural Systems]. Peter Dayan, ‎L. F. Abbott. MIT Press, 2005. ISBN 978-0262541855.&lt;br /&gt;
&lt;br /&gt;
== Spring 2017 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in April 2017 and arrived in May 2017.&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.co.uk/Ecological-Approach-Visual-Perception-Psychology/dp/1848725787 The Ecological Approach to Visual Perception: Classic Edition]. James J. Gibson. Psychology Press, 2014. ISBN 978-1848725782.&lt;br /&gt;
* [https://www.amazon.co.uk/Effective-Modern-Specific-Ways-Improve/dp/1491903996 Effective Modern C++: 42 Specific Ways to Improve Your Use of C++11 and C++14]. Scott Meyers. O&#039;Reilly, 2014. ISBN 978-1491903995.&lt;br /&gt;
* [https://www.amazon.co.uk/Hand-Mind-Gestures-Reveal-Thought/dp/0226561348 Hand and Mind: What Gestures Reveal about Thought]. David McNeill. University Of Chicago Press, 1996. ISBN 978-0226561349.&lt;br /&gt;
* [https://www.amazon.co.uk/Principles-Neural-Science-Fifth-Kandel/dp/0071390111 Principles of Neural Science, Fifth Edition]. Eric R. Kandel, James H. Schwartz, Thomas M. Jessell, Steven A. Siegelbaum, A. J. Hudspeth. McGraw-Hill, 2012. ISBN 978-0071390118&lt;br /&gt;
&lt;br /&gt;
== Winter 2016 batch ==&lt;br /&gt;
&lt;br /&gt;
This book was ordered in November 2016 and arrived in April 2017.&lt;br /&gt;
&lt;br /&gt;
* [https://www.amazon.co.uk/Deep-Learning-Adaptive-Computation-Machine/dp/0262035618 Deep Learning]. Ian Goodfellow, Yoshua Bengio, Aaron Courville. MIT Press, 2016. ISBN 978-0262035613&lt;br /&gt;
&lt;br /&gt;
== Spring 2016 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in March 2016, and arrived between May 2016 and February 2017 (Learning OpenCV 3).&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.co.uk/gp/product/1491937998 Learning OpenCV 3: Computer Vision in C++ with the OpenCV Library]. Adrian Kaehler, Gary Bradski. O&#039;Reilly Media, 2016.&lt;br /&gt;
* [http://www.amazon.co.uk/Mastering-Robotics-Programming-Lentin-Joseph/dp/1783551798 Mastering ROS for Robotics Programming]. Lentin Joseph. Packt Publishing, 2015.&lt;br /&gt;
* [http://www.amazon.co.uk/Artificial-Cognitive-Systems-David-Vernon/dp/0262028387 Artificial Cognitive Systems: A Primer]. David Vernon. MIT Press, 2015.&lt;br /&gt;
* [http://www.amazon.co.uk/Developmental-Robotics-Babies-Intelligent-Autonomous/dp/0262028018 Developmental Robotics: From Babies to Robots]. Angelo Cangelosi, Matthew Schlesinger. MIT Press, 2015.&lt;br /&gt;
* [http://www.amazon.co.uk/Machine-Learning-Optimization-Perspective-Developers/dp/0128015225 Machine Learning: A Bayesian and Optimization Perspective]. Sergios Theodoridis. Academic Press, March 2015.&lt;br /&gt;
* [http://www.amazon.co.uk/Gaussian-Processes-Machine-Learning-Rasmussen/dp/026218253X Gaussian Processes for Machine Learning]. Carl Edward Rasmussen, Christopher K. I. Williams. MIT Press, 2006.&lt;br /&gt;
* [http://www.amazon.co.uk/Designing-Sociable-Intelligent-Robotics-Autonomous/dp/0262025108 Designing Sociable Robots], Cynthia Breazeal. MIT Press, 2002.&lt;br /&gt;
&lt;br /&gt;
== Autumn 2014 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in November 2014, and arrived between December 2014 and February 2015.&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.co.uk/Probabilistic-Graphical-Models-Principles-Computation/dp/0262013193 Probabilistic Graphical Models: Principles and Techniques]. Daphne Koller, Nir Friedman. MIT Press, 2009. ([http://mitpress.mit.edu/books/probabilistic-graphical-models publisher page] with 20% discount code DKPGM12)&lt;br /&gt;
* [http://www.amazon.co.uk/Understanding-Vision-Theory-Models-Data/dp/0199564663 Understanding Vision: theory, models, and data]. Li Zhaoping. Oxford University Press, 2014. ([http://ukcatalogue.oup.com/product/9780199564668.do publisher page])&lt;br /&gt;
* [http://www.amazon.co.uk/Dictionary-Computer-Vision-Image-Processing/dp/1119941865 Dictionary of Computer Vision and Image Processing, 2nd Edition]. Robert B. Fisher, Toby P. Breckon, Kenneth Dawson-Howe, Andrew Fitzgibbon, Craig Robertson, Emanuele Trucco, Christopher K. I. Williams. Wiley, 2013. ([http://eu.wiley.com/WileyCDA/WileyTitle/productCd-1119941865.html publisher page])&lt;br /&gt;
* [http://www.amazon.co.uk/Introduction-Game-Design-Prototyping-Development-ebook/dp/B00LIYS9F0 Introduction to Game Design, Prototyping, and Development: From Concept to Playable Game with Unity and C#]. Jeremy Gibson. Addison-Wesley Professional, 2014.&lt;br /&gt;
* [http://www.amazon.co.uk/Regularization-Optimization-Kernels-Support-Machines/dp/1482241390 Regularization, Optimization, Kernels, and Support Vector Machines]. Johan A.K. Suykens, Marco Signoretto, Andreas Argyriou. Chapman and Hall/CRC, 2014. ([http://www.crcpress.com/product/isbn/9781482241396 publisher page])&lt;br /&gt;
&lt;br /&gt;
== Autumn 2013 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in October 2013, and arrived between November 2013 and June 2014.&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.co.uk/Gesture-Speech-Sign-Lynn-Messing/dp/019852451X Gesture, Speech, and Sign]. Lynn Messing, Ruth Campbell. Oxford University Press, 1999.&lt;br /&gt;
* [http://www.amazon.co.uk/OpenCV-Computer-Application-Programming-Cookbook/dp/1849513244/ OpenCV 2 Computer Vision Application Programming Cookbook]. Robert Laganière. Pack Publishing, May 2011.&lt;br /&gt;
* [http://www.amazon.co.uk/Brave-NUI-World-Designing-Interfaces/dp/0123822319 Brave NUI World: Designing Natural User Interfaces for Touch and Gesture]. Daniel Wigdor, Dennis Wixon. Morgan Kaufmann, April 2011.&lt;br /&gt;
* [http://www.amazon.co.uk/Probabilistic-Robotics-Intelligent-Autonomous-Agents/dp/0262201623 Probabilistic Robotics]. Sebastian Thrun, Wolfram Burgard, Dieter Fox. MIT Press, 2005.&lt;br /&gt;
* [http://www.amazon.co.uk/Frontiers-Human-Robot-Interaction-Advances-Studies/dp/9027204551 New Frontiers in Human-Robot Interaction] ([http://homepages.feis.herts.ac.uk/~comqkd/NFHRI-AIS-2011.pdf link2]). Kerstin Dautenhahn and Joe Saunder. John Benjamins Publishing Company, 2011.&lt;br /&gt;
* [http://mitpress.mit.edu/catalog/item/default.asp?ttype=2&amp;amp;tid=12814&amp;amp;mode=toc An Interdisciplinary Introduction to Image Processing]. Steven L. Tanimoto. MIT Press, May 2012.&lt;br /&gt;
* [http://www.amazon.co.uk/Machine-Learning-Probabilistic-Perspective-Computation/dp/0262018020 Machine Learning: A Probabilistic Perspective]. Kevin Murphy. MIT Press, October 2012.&lt;br /&gt;
* [http://www.cambridge.org/us/knowledge/discountpromotion/?site_locale=en_US&amp;amp;code=L2BRML Bayesian Reasoning and Machine Learning] (this link provides a 20% discount, you can change currency at checkout) David Barber. Cambridge University Press, February 2012.&lt;br /&gt;
* [http://www.amazon.co.uk/Active-Learning-Burr-Settles/dp/1608457257/ Active Learning: Synthesis Lectures on Artificial Intelligence and Machine Learning]. Burr Settles. Morgan &amp;amp; Claypool, 2012.&lt;br /&gt;
&lt;br /&gt;
== Summer 2011 batch ==&lt;br /&gt;
&lt;br /&gt;
This group of books was ordered in the summer of 2011, and arrived on 2011-11-28.&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.com/Plasticity-Visual-System-Genes-Circuits/dp/0387281894 Plasticity in the Visual System: From Genes to Circuits], Raphael Pinaud (Editor), Liisa A. Tremere (Editor), Peter de Weerd, Springer 2006.&lt;br /&gt;
* [http://www.springer.com/engineering/robotics/book/978-3-540-23957-4 Springer Handbook of Robotics]. Bruno Siciliano, Oussama Khatib (Editors). Springer, 2008.&lt;br /&gt;
* [http://www.amazon.com/Human-Motor-Control-Second-Rosenbaum/dp/0123742269 Human Motor Control], David Rosenbaum. Elsevier/Academic Press, 2009.&lt;br /&gt;
* [http://www.amazon.com/Computer-Vision-Approach-David-Forsyth/dp/0130851981 Computer vision, A modern approach], David Forsyth and Jean Ponce.  &lt;br /&gt;
* [http://www.amazon.fr/Pattern-Recognition-Machine-Learning-Christopher/dp/0387310738/sr=8-1/qid=1158928255/ref=sr_1_1/402-9555855-8053710?ie=UTF8&amp;amp;s=english-books Pattern recognition and machine learning ], Christopher M. Bishop&lt;br /&gt;
&lt;br /&gt;
= Misc =&lt;br /&gt;
&lt;br /&gt;
== Discarded ==&lt;br /&gt;
&lt;br /&gt;
Books that were considered for purchase but not ordered:&lt;br /&gt;
&lt;br /&gt;
* [https://www.amazon.co.uk/Exploring-Robotic-Minds-Consciousness-Self-Organizing/dp/0190281065 Exploring Robotic Minds: Actions, Symbols, and Consciousness as Self-Organizing Dynamic Phenomena]. Jun Tani. OUP USA, 2016. ISBN 978-0190281069.&lt;br /&gt;
* [http://www.amazon.co.uk/Sparse-Modeling-Algorithms-Applications-Recognition/dp/1439828695 Sparse Modeling: Theory, Algorithms, and Applications]. Irina Rish, Genady Grabarnik. CRC Press, 2014.&lt;br /&gt;
* [http://www.amazon.co.uk/Sociorobot-World-Intelligent-Automation-Engineering-ebook/dp/B011QM0BBS Sociorobot World: A Guided Tour for All]. Spyros Tzafestas. Springer, 2016.&lt;br /&gt;
* [https://www.amazon.co.uk/Understanding-Machine-Learning-Theory-Algorithms-ebook/dp/1107512824 Understanding Machine Learning: From Theory To Algorithms]. Shai Shalev-Shwartz, Shai Ben-David. Cambridge University Press, 2015. ISBN 978-1107512825&lt;br /&gt;
* [https://www.amazon.co.uk/Computational-Integrating-Language-Synthesis-Lectures/dp/1608451127 Computational Methods for Integrating Vision and Language]. Kobus Barnard. Morgan &amp;amp; Claypool, 2016. ISBN 978-1608451128.&lt;br /&gt;
* [http://www.amazon.co.uk/OpenCV-3-Blueprints-Joseph-Howse/dp/1784399752 OpenCV 3 Blueprints]. Joseph Howse, Steven Puttemans, Quan Hua, Utkarsh Sinha. Packt Publishing, 2015. ISBN 978-1784399757.&lt;br /&gt;
* [https://www.amazon.co.uk/Time-Modeling-Computation-Inference-Statistical/dp/1420093363 Time Series: Modeling, Computation, and Inference]. Raquel Prado, Mike West. Chapman and Hall/CRC, 2010. ISBN 978-1420093360&lt;br /&gt;
&lt;br /&gt;
== Not available ==&lt;br /&gt;
&lt;br /&gt;
Books that are likely not available (from previous purchase attempts):&lt;br /&gt;
&lt;br /&gt;
* [http://www.oreilly.com/data/free/real-world-active-learning.csp Real-World Active Learning: Applications and strategies for human-in-the-loop machine learning]. Ted Cuzzillo. O&#039;Reilly, March 2015.&lt;br /&gt;
&lt;br /&gt;
[[Category:Vislab]]&lt;/div&gt;</summary>
		<author><name>Giovanni Saponaro</name></author>
	</entry>
</feed>