Crazy servo jitter

Is there a problem with using this sketch with a Arduino Nano.

Every 15 seconds the servo pulse/jitters 3 times

/*
 Controlling a servo position using a potentiometer (variable resistor)
 by Michal Rinott <http://people.interaction-ivrea.it/m.rinott>

 modified on 8 Nov 2013
 by Scott Fitzgerald
 http://www.arduino.cc/en/Tutorial/Knob
*/

#include <Servo.h>

Servo myservo;  // create servo object to control a servo

int potpin = 0;  // analog pin used to connect the potentiometer
int val;    // variable to read the value from the analog pin

void setup() {
  myservo.attach(9);  // attaches the servo on pin 9 to the servo object
}

void loop() {
  val = analogRead(potpin);            // reads the value of the potentiometer (value between 0 and 1023)
  val = map(val, 0, 1023, 0, 180);     // scale it to use it with the servo (value between 0 and 180)
  myservo.write(val);                  // sets the servo position according to the scaled value
  delay(20);                           // waits for the servo to get there
}

Trying to use for tilting a camera. Thanks

How is the servo powered? Not by the Arduino, I hope.

What happens if you ignore the pot and set val to a fixed value ?

Why don't you get your sketch to tell you what it is doing?

Thanks all.

PauilS, No, I am using a 2 amp 5 volt supply. The servo is a Tower Pro Micro Servo 99

UKHeliBob, thanks, I will try

AWOL Thanks, does that mean using the serial monitor?

I have found reducing the delay to 5 and by removing the delay has made the servo more stable.

It's now more stable, there are parts of the travel (at ends) which are jumpy but having restricted the rotation its acceptable.

Is there a way to remove power or apply power where the servo does not move, ie stay at last position?

ZOR2:
Is there a way to remove power or apply power where the servo does not move, ie stay at last position?

You can do a servo.detach() which then stops sending the repeat pulse to hold it in position. But if the servo's holding against a torque then it will get pushed away from where you want it to be.

It's now more stable, there are parts of the travel (at ends) which are jumpy but having restricted the rotation its acceptable.

What made it more stable ?

You might consider adding some hysteresis so that the program only responds if the post is moved over a certain amount.

Thanks both.

The servo became stable after removing the delay command.

I will try the servo detach function, but will that cure switch on jump?

Maybe there is servo attach command, have not yet looked at servo detatch syntax, will do so now

Thanks again

will that cure switch on jump?

Have you mentioned that before ?