Player/Stage install instructions

From Tekkotsu Wiki

Jump to: navigation, search

Player/Stage is an alternative to the Tekkotsu framework. This page shows how to install Player 2.1.3 and Stage 3.2.2 under Ubuntu Linux 10.04.

1. Install required tools and libraries.

sudo -s
apt-get update
apt-get -y install build-essential libtool pkg-config cmake 
apt-get -y install libpng-dev libglu1-mesa-dev libfltk-dev

2. Download Player 2.1.3.

cd /opt
wget http://downloads.sourceforge.net/project/playerstage/Player/2.1.3/player-2.1.3.tar.bz2
tar xvjf player-2.1.3.tar.bz2


3. Compile and install Player.

cd /opt/player-2.1.3
./configure --disable-alldrivers --enable-roomba --enable-cameracompress\
  --enable-camerav4l --enable-camerauvc --enable-cmvision --enable-logfile
make install

4. Add a simple config file for the Create:

cat >/usr/local/share/player/config/simple-roomba.cfg <<EOF
driver
(
  name "roomba"
  provides ["position2d:0" "power:0" "bumper:0"]
  port "/dev/ttyUSB0"
  safe 1
)
EOF

5. Download Stage 3.2.2.

cd /opt
wget http://downloads.sourceforge.net/project/playerstage/Stage/3.2.2/Stage-3.2.2-Source.tar.gz
tar xvzf Stage-3.2.2-Source.tar.gz


6. Fix missing scope resolution in Stage file libstage/region.cc:

cd /opt/Stage-3.2.2-Source
gedit libstage/region.cc
      Change Region:: to Stg::Region:: on lines 10 and 17

7. Build and install Stage.

cd /opt/Stage-3.2.2-Source
cmake .
make install

cp -r worlds /usr/local/share/stage

cd /usr/local/lib
ln -s stageplugin.so libstageplugin.so

Testing Player with Stage

To run the robot in a simple world, do:

export LD_LIBRARY_PATH=/usr/local/lib
player /usr/local/share/stage/worlds/simple.cfg

Testing Player On the Create/ASUS

Turn on the Create and make sure the USB-to-serial serial cable is plugged in to the ASUSn netbook. Open two terminal tabs. In the first tab, do:

export LD_LIBRARY_PATH=/usr/local/lib
player /usr/local/share/player/config/simple-roomba.cfg

In the second tab, do:

export LD_LIBRARY_PATH=/usr/local/lib
playerjoy

You can press keys to drive the robot around.