PDA

View Full Version : [Discussion] When setting the ID for the servos, you need to scan twice to find it



guoshihui
10-08-2015, 07:19 AM
Got little experience with hardware before, so hope this helps others as well.

When following the official guide to set the DYNAMIXEL servo with the DXL_MONITOR, first thing you do is



scan


Sometimes you can find the servo, sometimes you don't. Try again *scan*, and you will see the servo.

Don't know why this happens, any one who could give a hint?

Also the red light will blink once after you connect the servo to the ArbotiX Pro board. Don't worry, this is absolutely the right thing the servo should do.

https://github.com/Interbotix/HROS1-Framework/wiki/Setting-DYNAMIXEL-Servo-ID-with-the-DXL_Monitor

sonel
10-11-2015, 05:08 PM
guoshihui,

Are you using a Raspberry Pi? I also have noticed some times this behaviour and it seems to be because of a bug in the framework related to the timing in the communication (sometimes the RPi starts counting for the answer timeout before the full command message is even transmitted to the ArbotixPRO).

Have a look on this thread (http://forums.trossenrobotics.com/showthread.php?7617-Trying-to-debug-HROS1-with-RPI-talking-to-Arbotix-Pro) about the issue. There is a fix from KurtEck (https://github.com/Interbotix/HROS1-Framework/pull/13) that seems to solve this problem. If you want to can try this on your own.

guoshihui
10-11-2015, 08:14 PM
Yes, I am using the RPi. The explanation of timeout makes sense, so it may be the reason for this abnormal behaviour.

The fix is authored 10 days ago, so has not been included in the repo. Should I generate a patch from the repo by KurtEck, and apply it to my local repo?

Cheers.

Shihui

guoshihui
10-12-2015, 08:59 PM
Update.

After trying the pull request from KurtE, the servos can be found in the first scan, so you don't need to scan twice. But when you write to the register 30 to control the rotation of the servos, it stills fails to write from time to time.

https://github.com/Interbotix/HROS1-Framework/pull/13