Turtlebot: arm.launch returns KeyError: ´arm_shoulder_pan_joint´
Background:
Turtlebot: new, arrived with the arm assembled and with all required packages installed from factory. I installed turtlebot_viz for the dashboard as suggested here and updated all ros packages.
[EDIT] The exact same thing happened with a second turtlebot: literally took out of the box and typed: roslaunch turtlebot_arm_bringup arm.launch. Got the exact same error: Error message, log file and actions log
Turtlebot laptop: lenovo x130e AMD fusion processors E-450. Ubuntu: 10.04, kernel linux 2.6.32-40-generic. ros: electric
Machine: Intel Core i5-2500 CPU @ 3.30GHz x 4. 32-bit. Ubuntu: 11.10 (upgraded from 11.04). ros: electric
Problem description:
Following the kinect calibration tutorial part 4, both ssh from the machine specified above, and directly in the turtlebot laptop:
When trying to launch the arm:
roslaunch turtlebot_arm_bringup arm.launch
I am getting:
KeyError: ´arm_shoulder_pan_joint´
The full error message is here.
The arbotix_python controllerGUI displays and controls the base, but not the joints.
The only related thread I found was this, and my turtlebot already had the fixed file
Attempts so far:
- I tried to trace through the log file but couldn't find a problem. I also tried to debug using pydev (See details below).
- Both arbotix and the arm packages are updated to newest
version.
- Using the arbotix_python terminal and command ls: it lists 5 servors as required.
- The arm.ymal
file
in the turtlebot_arm_bringup package
contains all 5 joints each with the
correct id (i.e. shoulder pan id
1...gripper id 5).
Debugging details:
The call which brings up the error according to the call stack indicated in the error message:
try:
return self.dynamixels[key]
except:
return self.hobbyservos[key]
has the correct key: arm_shoulder_pan_joint, but both dynamixels and hobbyservos are empty.
The call stack which tracks why they are empty is here. They apparently don´t exist in the parameter server.
The printout of the parameter server from within servos.py is here.
If anyone has experience or ideas about the source of the problem/solutions, I'll be extremely glad to hear. Thanks!
I would expect a more complete error message, with a full traceback, to be printed. Could you post the full error message here?
Hello fergs, the full error message is here: http://dl.dropbox.com/u/5858778/error%20message. Cheers.