Servo target error

Good evening.

I have successfully used the mini meastro 12channel boards before, they are fantastic.

Having a little issue with one of the servo boards on this new project. I’m using 5 x Mini SG-90 9g Micro Servos and a 12 channel in my little project, just started programing some sequences.
However every now and again as I move the slider to a different position it comes up with the following error and crashes, I then have to disconnect and reconnect to continue, but lose the sequence that I have been creating.

Failed to set target of servo 0 to 5474 Control transfer failed. error code 0x1f.

I have tried the different servos, moving them slowly, moving them quickly, but the target value ( which changes each time ) doesn’t show any representation to where I was trying to put it. Every now and again it randomly errors.

I’m hoping that its a setting I need to change because I’m using micro servos, whereas ive only ever used normal s3003 before?

Any help would be fab. Thanks

John

Hello, John.

I suspect there is electrical noise from your system that is putting the USB port into a bad state. Could you try disconnecting all of your servos from the Maestro and see if the problem goes away?

There are a couple of things you could try doing to reduce the noise. You might consider switching out your USB cable for a different one that has ferrite beads at either end. Using a powered USB hub could also help. Also, you could try using a different power supply.

If you try those suggestions, we would be interested in hearing what you find.

Brandon

Ah, I’m not an electrical wiz, but I’ve got motors being activated by relays in the system, I hadn’t considered it would be the noise from these that might be the issue.

I think I can put some capacitors over the motors, will that help?

Thanks

Hello.

It might be possible that the relays in your system are causing the problem. You could try adding some capacitors across the power lines to the servos to see if it helps.

By the way, if you are using relays to control power to your servos, you might try simply disabling the output to the particular servo channels instead of using a relay to disable the servos. You can disable the output of a specific servo channel on the Maestro by sending a target position of 0. For a lot of servos, this will disable the servo and stop it from holding its position; however, some digital servos will continue to hold the last position they were sent. Also, it is generally bad practice to continue sending logic signals to an unpowered device, so you should consider disabling the servo output on channels when the servo is unpowered.

Brandon

Brandon,

Thanks for the update.

I think I didn’t make myself clear, what I’m doing is using the board to move the servos, each servo then hits a micro switch which then activates a relay which powers a motor.
Playing around with it today, it works fine unless I do short sharp bursts of the motors / relays that appears to kill the board,

If I do a long on, followed by an off, its fine. and works perfect.

If it crashes, I then have to disconnect and reconnect the usb and start again.

So it must be noise from the relays activating the motors I assume?

Thanks
John

Thank you for the clarification. It sounds reasonable that your relays and motors are causing a lot of noise. There are a few general things you might be able to do to reduce the noise, such as twisting your motor wires together and adding capacitors to your motor leads like you suggested. You might find the information in our “Dealing with Motor Noise” app note helpful.

Brandon