Welcome to Synthiam!

The easiest way to program the most powerful robots. Use technologies by leading industry experts. ARC is a free-to-use robot programming software that makes servo automation, computer vision, autonomous navigation, and artificial intelligence easy.

Get Started
Asked — Edited
Resolved Resolved by DJ Sures!

Wires Melting Together


I have 4 heavy duties servos, 1 HD, and 1 micro servo attached to EZB. And a bunch of LEDs, HBRIDGE, etc all but 1 addressable port is available. 

Today I noticed one of my servos was failing. In fact, it smelled like plastic was burning. But it wasn't the servo itself but the plastic female pin connectors. The Red and Black ones melted together. Both at the EZB side and at the servo end. 

1. What can cause this, and how can I avoid this?
2. Is there a way I check through the terminal if D16 is still functioning?  
3. I'm using the orange DFRobot labeled 2200mAh 7.4v battery but when I working with the servos the battery drains in a minute getting the "battery is low" message. Am I doing something inherently incorrect or is my battery just not enough to power everything?


Related Hardware EZ-B v4


Upgrade to ARC Pro

Harnessing the power of ARC Pro, your robot can be more than just a simple automated machine.

AI Support Bot
Related Content
Sounds like those servos are trying to lift too much weight - might want to reconsider which servos you decide to use. Use something more appropriate for the application. The old discontinued HD servos from ezrobot aren't that great for holding the weight. The HDD servos are the newer versions that were released in 2018. You can check their website to find out more about that product. Their website is www.ez-robot.com
#2   — Edited
@DJ Sures

The wires that melted is the Heavy Duty servo and all I was doing opening and closing a claw with it. I'm wondering if its the gauge of wire I'm using to extend the servo wire, could it not handle the heat?
#3   — Edited
Again, the HD servos are the discontinued old ez-robot servos from before 2018. The HDD servos are the newer versions - the HDD servos use a lot less current. But they're also more efficient and have a built-in sensor to prevent burn-out. 

EZ-Robot's website is www.ez-robot.com where there's info on their HDD servos. 

We all use the same size servo extension cables for our InMoovs which have massive servos moving human-sized arms. If the servo is drawing so much current that the wire can't provide, then it's the wrong servo for the job
Also what are the servos lifting? What’s the robot look like. Sounds like it might be pretty cool
Thanks DJ! I'll be sure to post pics.

I did buy 20KG servos from Amazon which might be the problem. In this scenario, I wasnt lifting anything. Just make it wave hello :). I think the aftermarket servo is pulling in too much current which is heating up the plastic connectors. 

But DJ is there a command I can to test Dxx to make sure it's not shorting?
Figured out what happened. When I connect to EZB it runs an init script to reset the servos. Sometimes Ive noticed it inverses the servo "randomly". So this time around it inverted the claw servo thus burning it out! So, DJ, you were right. 

Now has anyone else noticed the servo getting inverted like that on a connect?
Auto position is really good for starting up servo's on a robot arm. Create the final position you want your robot arm to be in  and then copy it 5 times.  Now zero all but 1 servo out (Probably the base one). Then on the next copy zero all 2 two out, then 3 our etc until all servo's are active.  This is how I  power on my robot routine. Also have one as a power down routine to relax servos when they are not being used to save power and servo burn out.

Servo's when they power up can be unpredicatable.  If you know the servo's starting positon and can put it in that position it is best.  Example put all 180 degree servos at 90 degrees so when you power down robot they are at 90 and when they power up again they are at 90 (or you can manually line them up that way).

Robot claws can also Jam causing them to burn out.
@aliusa I've never seen a servo operate completely inverted before with an init script but I have seen some odd behavior with analog servos having a mind of their own before.

Are the servos you purchased from Amazon analog or digital?
@Nink Right I scripted the servo positions and speed. So are you suggested creating actions called "Start Up" and "Shut Down" and call it via init during a connect: 


ControlCommand("Auto Position", AutoPositionAction, "Start Up")
I'm assuming during a "disconnect" there's a script I can trigger. I didn't realize that but it makes sense. That would definitely help! 

@Jeremie: Servos

Where should I define min/max properties of a servos so they are global and aren't overwritten? Any best practice around this?

"Where should I define min/max properties of a servos so they are global and aren't overwritten? Any best practice around this?"

isn that in the INIT script ?
@Nomad 6R,

That's where I have it. But if I have "servo skill" defined in the project, what values take precedence?
#12   — Edited
Every control has it's own MAX and MIN for flexibility across various robot designs. Read in manual here: https://synthiam.com/Support/ARC-Overview/Servo-Controls

The Auto Position ONLY moves into the positions defined in the frame, so it can never exceed min and max values because you're the one configuring them in the frame.

If you want to be lazy and ensure servos never ever move past a specific range, you can use these commands in an init script...

Set Max position limit: https://synthiam.com/Support/javascript-api/Servo/setMaxPositionLimit

Set Min position limit: https://synthiam.com/Support/javascript-api/Servo/setMinPositionLimit