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

Revision history [back]

click to hide/show revision 1
initial version

We did end up solving this problem, but not in a way that allows me to point to what the solution was. After fighting this issue for a very long time, we took a different approach and started with the turtlebot3 simulation that ships with nav2. We gradually moved pieces of our physical robot into the simulation until we completely turned off the simulation and somehow everything was working.

Assuming I was right to assume that the controller_server was stuck on that wait_for_costmap(...) function I mentioned in my original question: I'm guessing the solution can be found in the difference between our old, not working configuration and the new one that does work. That diff can be found here: https://www.diffchecker.com/gdBaSp4O

The key bit (I'm guessing) is that, in the working version, we omit the voxel_layer that relies on a laser scan (which our robot doesn't have). The broken version was probably waiting indefinitely for a scan. This, of course, means that our robot cannot perceive obstacles, but we plan on replacing that piece with a depth-camera based obstacle detector.

You can see that our launch file basically didn't change: https://www.diffchecker.com/O9FGdWuY

I can't guarantee that this was the breaking difference (especially because I remember trying to turn off the voxel layer when originally fighting this issue), but it's the best I've got.

I hope this helps someone in the future!