PDA

View Full Version : [Question(s)] Did I just brick my MX-28?



alonso
10-19-2012, 03:35 AM
I was hooking up my Dynamixel MX28-T to a breadboard to interface with the Arduino, and after finally getting Pablo Gindel's library to work I accidentally shifted my connection over one pin effectively connecting 14.8v (an acceptable voltage for a MX-28) to my data pin and ground to my positive pin and now my servo no longer responds. Did I just fry my servo?????

So this is normal:

GND => GND
V => V
DATA =>DATA

But I accidentally did this:

GND => V
V => DATA
DATA =>

I tried hooking it up through my USB2Dynamixel, but it is no longer recognized! Is there anything I can do to fix it?

WHAT HAVE I DONE!!

-Alonso

tician
10-19-2012, 07:45 AM
When you connect the servo to the power supply, does the red LED flash once?

If yes, then the most likely culprit is a damaged level shifter, but I do not know how Robotis would handle repair/replacement. If it is the level shifter, then theoretically you could purchase a replacement IC from a place like digikey or mouser and remove/replace the old one (be warned, this will absolutely void any warranty provided by Robotis, so only attempt if you really have no other choice - it will also be a bit difficult if you have never previously done SMD rework).

If no, then something serious happened and only Robotis will really be able to know.

jwatte
10-19-2012, 11:37 AM
It is very simple to build circuitry so that it won't be permanently damaged by "reasonable" over-voltage. It costs literally just cents -- a Zener or TVS and a simple input resistor is one simple way to ruggedize a circuit. If you over-volt the data input, the zener clamps the voltage to, say, 5.1V, and the resistor limits current to, say, 50 mA, to keep the Zener from blowing. Meanwhile, a 100 Ohm resistor on the TTL input won't harm the integrity of the signal.

That a > $200 piece of hobby electronics doesn't have this protection seems unfortunate :-(

Then again, I guess this is why the RS485 option is still there. The input voltage tolerances are higher, and the driver chip is usually a replaceable DIP-8. Is that the case for the Dynamixels too? That might be a reason to go with the -R version...

alonso
10-19-2012, 04:37 PM
Yes, the LED still flashes once when I power the servo. It's actually also holding position when I try to move it, it's just not responding to communication.

That's a great point about the RS485 that I hadn't thought about.

Tician, I don't know if Robotis has a repair/replacement. I shot them an email to see if they could help me out.

-Alonso

lnxfergy
10-19-2012, 06:31 PM
It is very simple to build circuitry so that it won't be permanently damaged by "reasonable" over-voltage.

Even still, the OP described a reversed voltage situation on the data pin -- and thus even a TVS might not help unless you have a current-limited power supply.


Then again, I guess this is why the RS485 option is still there. The input voltage tolerances are higher, and the driver chip is usually a replaceable DIP-8. Is that the case for the Dynamixels too? That might be a reason to go with the -R version...

The driver on the RS-485 is not a DIP -- it is a SOIC8. However, RS-485 drivers usually spec -7 to 12V (that is 0-5V with a 7V buffer) as their absolute max ratings -- meaning they would still likely explode given a -12V connection (as the OP described).

-Fergs

jwatte
10-19-2012, 11:23 PM
thus even a TVS might not help unless you have a current-limited power supply

Most TVS-es are bidirectional, and with a current limiting resistor (say, 100 Ohms) he could probably keep it hooked up reverse forever.
Well, if it was RS-485 -- I don't know how well the "TTL" (I presume really a CMOS gate input or an optocoupler) deals with -5.1V. More likely to deal with that than dealing with -12V though :-)


The driver on the RS-485 is not a DIP -- it is a SOIC8

I see. I've always seen replaceable drivers for RS-485 as an intended design feature in gear :-) I've seen boards that were all suface mounts except for the interface/driver.