Hi Jean, I have had a quick look at your modified version of my code. You seem to have misunderstood the timing requirements of the servos. Each servo you want to control must have a pulse of between 1 and 2 ms with a duty cycle of 18 to 20 ms. your duty cycle timer must take account of the duration of the control pulse. I.E. after the counter for the pulse has expired you must also add the rest of the 2ms wait before entering the duty cycle timer. If you like I will Modify the code and post it back to you. Cheers Peter Baines..... ==================================== Remember .... Every Silver Lining Has It's Cloud ==================================== ---------- : From: Jean-Francois Joly : To: PICLIST@MITVMA.MIT.EDU : Subject: Servo Code Not Working : Date: Sunday, December 21, 1997 7:05 PM : : Hello everyone, : : I'v been modifying Peter Baine's servo controller code so I could : control a single servo on a pic16c84 running at 4 MHz. (I wanted it to : be as simple as possible) But for some reason, it doesn't work. All the : servo does is that it points in a certain direction and stays there. : Even if I change the delay for the pulse duration the servo won't move a : bit. : : Could someone take a little look at the program and see if something's : missing? Attached to this message is the small program. : : Thank you very much, : Jean-Francois Joly : :