PDA

View Full Version : [Question(s)] dxl_monitor Access or Range Error



Fredenburger
03-04-2016, 08:21 AM
Hello all,

I am working on HR-OS1. Yesterday I noticed his right leg wasn't moving. I tested it on dxl_monitor, and servos 11 and 15 didn't work. When I try to use wr 30 [any number], any servo will move except these two. The message I get back says "Access or Range Error!", unless I use wr 30 0, which just does nothing. Does anyone know how to help? Thanks!

jwatte
03-04-2016, 01:07 PM
Do they respond to ping? Did they lose their IDs?

OldBotBuilder
03-04-2016, 03:09 PM
Do you have a Robotis USB2Dynamixel device? If so, download the Robotis RoboPlus software.
Isolate the questionable servos, plug 1 into the USB2Dynamixel, follow the directions in the Dynamixel Wizard.
You might need to do the 'Dynamixel Firmware Recovery'. Then you can re-assign the ID number.
I have recovered the use of several AX-12s this way.

Good luck.

BTW - The USB2Dynamixel is very useful if you plan to use/maintain AX-12s and a number of replacement gear sets is almost a must have.

KurtEck
03-04-2016, 03:47 PM
What I would often do, is to do some simple tests to see if by chance some of these servos reset their ID to servo #1...

Have been hit more than once on the PhantomX and HROS1...

Note: I most often use some of my own test programs, like the ones I have in my Raspberry Pi project, but also do most of this with the dxl_monitor program.

Simple test: if load dxl_monitor
set the id to talk to servo #1 and now tell servo #1 to move to some new position, lets say 600. If the servos that were not responding move, they probably have servo address 1.


[ID:200(ARBOTIX_PRO)] id 1
[ID:1(R_SHOULDER_PITCH)] wr 30 600
Writing successful!

if this happens you can also probably use the dxl_monitor to renumber them again. It is sort of a pain, but you need to then isolate each of the servos that have reset (as well as the real #1), example unplug the AX servos going to the right shoulder such that real #1 is not plugged in aslo then unplug somewhere in the right leg below hip.
Then only the right hip should respond to commands to servo #1.

So then do something like: Note: this is assuming you still have ID:1 selected, if not issue the ID command

wr 3 11
Which should hopefully now have the right hip back. So plug the cable back into the lower right leg and repeat except, set the appropriate id maybe

wr 3 15
Plug the shoulder back in and do a new scan to see if all of the servos now show up.

Good luck.