Interbotix / interbotix_ros_manipulators

ROS Packages for Interbotix Arms
BSD 3-Clause "New" or "Revised" License
125 stars 84 forks source link

[Bug]: 2 motors detected but other 3 not detected #35

Closed sbhambr1 closed 1 year ago

sbhambr1 commented 2 years ago

What happened?

Hi,

Using the Dynamixel Wizard 2.0 Tool, I am able to detect 2 motors of XL430-W250 (ID 1 & 5 - firmware v46) but unable to detect other 3 motors (on firmware v45 - which I could read earlier when they were working fine). I tried updating the firmware and the firmware installation failed each time for motor IDs 2, 3 & 4.

Any help or support on this will be appreciated. Thanks!

Robot Model

px100

Operating System

Ubuntu 20.04 ROS Noetic

Steps To Reproduce

Open Dynamixel Wizard 2.0 Tool Scan for Protocol 2.0 on ttyUSB0 port and 1000000 bps baudrate for IDs 1-252.

Relevant log output

No response

Anything Else

No response

lukeschmitt-tr commented 2 years ago

See if anything in the Troubleshooting Guide's 'Can't find Dynamixel ID' section helps at all.

Have you changed anything about the physical configuration of the arm since you were last able to run it?

sbhambr1 commented 2 years ago

Hi, thanks a lot for your quick reply! Yes, I tried all the steps from the mentioned section but couldn't resolve the issue.

I tried updating the firmware on the 3 motors that were on v45 and all three updates failed midway after which the motors were not being recognized. Also, after I unplugged and plugged the arm back, none of the red LEDs of these 3 motors blink.

lukeschmitt-tr commented 2 years ago

Try doing a firmware recovery on the servos. Follow the directions carefully. Try to only have a single servo connected to the U2D2 when running the recovery.

sbhambr1 commented 2 years ago

Thanks for the response! To be sure that I am following correctly, I need to perform the firmware recovery on the two motors that are being recognized to v45 (then all motors would be on the same version). Request you to please confirm/correct so I can proceed further.

lukeschmitt-tr commented 2 years ago

You would be performing the firmware recovery on the servos that are not recognized by the Dynamixel Wizard 2.0 Tool. It's possible that the failed update broke something internally and their firmware needs to be restored to a working state.

sbhambr1 commented 2 years ago

Thanks for your response. Since I am unable to view any of the other 3 Dynamixel servos, I am not sure how to perform a firmware recovery on those servos. I may be getting confused here, but is it the case that the firmware recovery happens for all servos when I follow the instructions as shown here? If not, then how am I supposed to select the 3 non-recognized servos for firmware recovery?

lukeschmitt-tr commented 2 years ago

You would connect a single unresponsive servo to the U2D2, do the firmware recovery on that servo, and continue to the next unresponsive servo. The firmware recovery tool will (if it succeeds) be able to write to the servo as long as you choose the correct model and select the right port.

sbhambr1 commented 2 years ago

Thanks for your response! And sorry for responding late to this. I am trying to follow the steps as you mentioned, and will update here as soon as I have something!

lukeschmitt-tr commented 1 year ago

Do you have any further questions on this? Otherwise, this issue will be closed.