Contact sensor error when using Gazebo 2.2.3
I have just moved my code from Ubuntu 12.04 LTS and ROS Hydro to Ubuntu 14.04 LTS and ROS Indigo. My robot is using Gazebo contact sensors with the libgazebo_ros_bumper.so plugin. The sensors worked correctly with the version of Gazebo used by Hydro (1.9.6), but with Indigo I get the following error:
***** Internal Program Error - assertion (this->customContactPublishers.count(name) > 0)
failed in std::string gazebo::physics::ContactManager::CreateFilter(const string&, const
std::vector<std::basic_string<char> >&):
/tmp/buildd/gazebo2-2.2.3/gazebo/physics/ContactManager.cc(329): Failed to create a custom
filter
Service call failed: transport error completing service call: unable to receive data from
sender, check sender's logs for details
Aborted (core dumped)
Here is a contact specification from the robot's URDF file:
<gazebo reference="gripper_fixed_jaw">
<sensor name="fixed_jaw_contact_sensor" type="contact">
<always_on>true</always_on>
<update_rate>${contact_sensor_update_rate}</update_rate>
<contact>
<collision>collision</collision>
</contact>
<plugin name="fixed_jaw_bumper" filename="libgazebo_ros_bumper.so">
<bumperTopicName>fixed_jaw_contact_sensor_state</bumperTopicName>
<frameName>gripper_fixed_jaw</frameName>
</plugin>
</sensor>
</gazebo>
Is there something that needs to be changed in this specification in order to work with Gazebo 2.2.3?