After running into the same problems over and over again, it felt like we needed some list of problems that we could reference to remind ourselves of common solutions. This wiki page is meant to hold that list. Please feel free to add any issues you encounter along with their associated solutions to this page.
If the robot shakes at all during calibration of the IMU, the IMU will acquire a drift. This will cause the odom_combined frame to drift and hampers effective localization and navigation.
Symptoms: Drift in the odom_combined frame, incredibly bad localization performance, failure of tasks that should succeed that are performed in the odom_combined frame.
- Solution: Re-run calibration and make sure not to shake the robot.
See the PR2 Support FAQ for more information.
Out of Date URDF
A URDF that is out-of-date can cause any number of tf problems. Before you start digging around, make sure that your robot has the latest available URDF.
- Symptoms: Delayed transforms coming from the robot_pose_ekf, missing links, etc.
Solution: Update your URDF in /etc/ros/urdf/robot.xml to point to the latest version
High Load Average
The cause for this is unknown, but often the robots can enter a state where the load average skyrockets.
- Symptoms: Tf problems, general timing issues, high load average in top (above 2 )
- Solution: The only solution that seems to work every time is to reboot the computers. Some have had success with just performing a robot reset, so you might want to try that first.
As a safety precaution, the system halts all motors when it detects certain error conditions. Information on how to identify and fix these error conditions is available here.