ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question

Revision history [back]

Ok, so a few things:

  1. I am unable to reproduce the behavior you describe with the latest source (which will hopefully be getting released imminently). The node starts just fine either way and doesn't crash. There could be an incompatibility between my node and an updated dependency in another package. Regardless, the error you're seeing involves threading, and I don't explicitly use threading anywhere, which means it likely is an interaction with a dependency.
  2. Your IMU is given in the base_imu_link, but you have not specified a transform from base_imu_link->base_link. See this section of the wiki.
  3. In your launch file, you are not measuring nearly enough variables. If you are operating in 2D, then set two_d_mode to true. Otherwise, you need to measure enough variables to keep your covariances from exploding. See this page. You might also try fusing your commanded velocities.
  4. You appear to have a transform from odom_motor_cmds to base_link, but it appears to be changing. If you have some node that is outputting motor commands to the robot, I would suggest issuing them as geometry_msgs/TwistWithCovarianceStamped messages. That way, you can fuse them with the state estimate.