Forums › Niryo One › Troubleshooting › Failed to scan Dynamixel motors, Broadcast ping failed , result : -3002
Tagged: Broadcast ping failed, Failed to scan Dynamixel motors, result : -3002
but I believe that move commands were still not working
Could you give more details about what you observed ?
If you didn’t have a connection problem while using ID 1 for servo 6, it means that it should be OK, and you should be able to use the robot without any problem on this motor. I’ll send you a test script on Monday (didn’t have time today), and in the next software update there will be more scripts and functionalities to test and debug motors and connections.
I only changed the axis 6 ID in the file that checks for required motor connections. I probably need to change the ID for axis 6 in dxl_communication.h file as well. (#define DXL_MOTOR_6_ID 1). I will try this on the weekend and hopefully I can get things moving.
Yes, you also have to do that.
After you change the file don’t forget to
1. stop the execution: “sudo systemctl stop niryo_one_ros.service”
2. compile (because it’s C++):
“catkin_make -j2” (don’t forget -j2 or else it might crash)
3. Start again: restart the Raspberry Pi or restart with
“sudo systemctl start niryo_one_ros.service”
you can start in terminal: “roslaunch niryo_one_bringup rpi_setup.launch”
Update on my axis 6 motor connection issues. I updated the ID from 6 to 1 in hopes that my XL320 servo was still on the default address. The update was made to both of these files through ssh on the raspberry pi:
Then a recompiled as suggested in your post above (thanks). Unfortunately this did not seem to resolve my issue with motor connection on axis 6. I still believe that somehow the XL320 is not configured to the correct address, but I do not know what address it is on.
As a last resort, I tried using one of my new XL320 servos that I purchased for Gripper 2 and Gripper 3 use since it will be on ID1. This worked perfectly with the changes I made to set axis 6 to work on ID1.
So at this point I can’t get either of the supplied XL320 servos (axis 6 and gripper 1) to communicate, but I have the robot arm working without any tools attached. One interesting thing I found was that if I plug in either XL320 servo on its own, I get the motor connection missing on axis 6 message, but if I plug in both servos then the message changes to DXL communication failure (Failure to Scan DXL motors). I wonder if this means they are both on the same unknown address.
Looking forward to some help with identifying and resetting the IDs for the XL320 servos provided.
OK, so in fact the problem is not that the Dxl #6 has a wrong ID. The problem is that the motor is just dead. Thus the -3002 error, which means that the response from the motor bus was corrupted. The motor is unable to correctly communicate and it sends wrong packets over the Dynamixel bus.
(also if the Dxl6 was set with ID 1, you would still had have an error saying : “unallowed Dynamixel motor 1”. My bad, I can’t remember the code I wrote last year 🙂 )
I’ve sent you an email to deal with the shipping.
For those interested:
We have just released 2 command line tools to setup (including changing ID and baudrate) and do more in-depth debugging for Dynamixel motors (works for both XL-320 and XL-430).
You can find a basic documentation here, and each command line tool has a help that you can see by using –help.
(Note, you might have to execute a “git pull origin master” in the ~/catkin_ws/src folder, as this code is not released yet on SD cards we provide)
You must be logged in to reply to this topic.