Getting a Rover to Rove, Part 2

This is part 2 in my journey to simulate a rover.

Of course getting the Husky robot to spawn in the Gazebo simulator is no quick task; the Husky robot does not yet support ROS Kinetic, so you have to build the ROS packages for it from source. To do this, we need to set up our first workspace. Running:

mkdir src
catkin_make

Fails with another fun error:

The manifest must not contain the following tags: depend, build_export_depend, buildtool_export_depend

Turns out Conda has some really old stuff in it, and so these tools need installing via pip instead of Conda.

conda install setuptools
pip install -U rosdep rosinstall_generator wstool rosinstall six vcstools

Alright, now we have a workspace. Time to clone some Husky.

git clonehttps://github.com/husky/husky/tree/kinetic-devel

Now we move all those directories into the src directory, and run catkin_make again. Oh no, another error. Missing something called ‘em’. Ok, easy, just pip install em. But no! Another landmine. After installing em, we find that ‘em’ doesn’t have ‘Interpeter’. Why is this? Because you need empy, not em. Joy.

pip uninstall em
pip install empy
catkin_make
[100%] Built target husky_node

Hooray! Husky kinetic packages built.

Now we source our new workspace:

source src/devel/setup.bash

And launch Husky.

roslaunch husky_gazebo husky_empty_world.launch

Nope, another big fat error.

ResourceNotFound: multimaster_launch

That’s enough errors for this hour.