omwdunkley / crazyflieROS

A GUI for controlling the Crazyflie with ROS input/output
GNU General Public License v2.0
87 stars 41 forks source link

roslaunch gives tupple index error #1

Open rs1990 opened 9 years ago

rs1990 commented 9 years ago

Hi When i try and run "roslaunch crazyflieROS joy.launch js:=0" i keep getting the following error. I am using a logitech F710 gamepad as the joystick. Never had any problems with the cfclient software by itself. Im new to ROS and python. Help?

[ERROR] [WallTime: 1425601207.898199] bad callback: <bound method JoyController.new_joydata of <main.JoyController instance at 0x1ff2b90>> Traceback (most recent call last): File "/opt/ros/groovy/lib/python2.7/dist-packages/rospy/topics.py", line 681, in _invoke_callback cb(msg) File "/home/developer/groovy_workspace/sandbox/crazyflieROS/bin/joy_driver.py", line 212, in new_joydata if self.released(Button.R1): File "/home/developer/groovy_workspace/sandbox/crazyflieROS/bin/joy_driver.py", line 99, in released return self.prev_cmd.buttons[id] and not self.curr_cmd.buttons[id] IndexError: tuple index out of range

Thanks

omwdunkley commented 9 years ago

Hey,

I only have a PS3 controller so the button/axis enumeration is pretty much hard coded. You would need to modify https://github.com/omwdunkley/crazyflieROS/blob/master/bin/joy_driver.py#L35 lines 35 and 36, and anywhere else in the code that uses Buttons.XYZ or Axes.XYZ.

Looking at http://wiki.ros.org/joy/Tutorials/ConfiguringALinuxJoystick should help you figure out which buttons/axes correspond to which index for your specific joystick!

Good luck!