Servo Control

Let me preface by saying this is my first time using an Arduino controller and servos.

I am using an Arduino Mega and a few different analog servos. I am trying to take advantage of the Servo library to simplify the programming, but I am not getting the results I am looking for. The servos are hooked up to the digital pins.

The servos do not react to commands to changes in angle less than 40 degrees, and between 40 and 90 degrees hardly move at all and do not reach appropriate position.

I can get the servos to go 0 -> 90, or 0 -> 180 in one smooth motion with no problems, however the smaller changes don't work.

Any suggestions on why this is happening? Should I be using SoftwareServo and refreshing constantly somehow? Should I be utilizing the PWM pins instead of the digital?

Also, it may be related that the servo wires have been extended roughly a foot and a half. And the grounds of the external power supply and the Arduino are connected.

Thanks in advance for any insight.

What is the spec for the servos, who makes them, what model number?
Have you tried using the "writeMicroseconds" method, instead of the simple "write"?

Thanks for the quick response!

That seemed to work just fine. Thanks again :smiley: