Setting up the docker environment

Start with downloading the EuRoC project archive from here. Extract it in your home folder.

tar -xvf euroc.tar.gz

Create an alias for the dockuro script in your .bashrc

echo "alias dockuro=~/euroc/euroc_launch/docker/dockuro" >> ~/.bashrc && . ~/.bashrc

Initialize your containers with:

dockuro init

NOTE: If you have an nvidia or ATI graphics card, create a new Docker image that has exactly the same driver installed as your system.

cp ~/euroc/euroc_launch/docker/euroc-suturo-custom/Dockerfile.template ~/euroc/euroc_launch/docker/euroc-suturo-custom/Dockerfile

Modify the newly created Dockerfile so that it installs your drivers(examples can be found commented in the template). Build your new image(name is important):

docker build -t suturo/euroc-suturo-custom .

Set a flag to signal the system the use of a custom docker image

export EUROC_CUSTOM_CONT=true

Launch the docker container:

dockuro

All of the following commands are supposed to be executed within docker!! Before you can start hacking, you need to compile the catkin workspace that comes with the docker image

cd ~/catkin_ws
catkin_make

To start the experiment run:

/opt/euroc_c2s1/start_euroc_task_selector

In another terminal run dockuro again and start the simulator by running(copy paste both lines together):

rosservice call /euroc_c2_task_selector/start_simulator "user_id: '' 
scene_name: 'task1_v1'" 

Publish the joint states of the robot:

roslaunch suturo_manipulation_moveit publish_joint_state.launch

Start a node to publish point clouds:

roslaunch pointcloud_publisher run_pointcloud_publisher.launch

Use rviz to check the camera data and the tf tree. All set. Enjoy!