How does a servo work (PWM or PPM)?

Hi..And thanks for the reply :slight_smile:

I believe I do understand what PWM (pulse width modulation) and PPM (pulse position modulation) means and how they respectively work.

In short...

PWM: ..has a fixed frequency (for servos: ~20 ms) and variable on-pulse (for servos: 0.5-2.5 ms). The information is contained in the width of the on-pulse.

PPM: ..has a fixed length on-pulse that arrives at different times, referenced to a fixed frequency. How far ahead or behind the fixed time is what is important.

And you're right..the diagrams posted by Mem does indeed seem like PWM. So it confuses me that he says (directly following the diagrams):

This is called Pulse Position Modulation and is not the same as PWM as used in the Arduino analogWrite. PWM (Pulse Width Modulation) varies the ratio of on time to off time to vary the overall signal level and are not suitable for driving a hobby servo.

...And that he starts off with:

You should not use the arduino analogWrite PWM function to drive a hobby servo. They do not use PWM and could damage a servo or speed controller. Its confusing because many references do incorrectly use the term PWM in articles about servos. But hobby servos and speed controllers expect different pulse timings from that provided by analogWrite.

The latter could mean that the Arduino analogWrite PWM works of a different frequency than the PWM used by servos...but I dunno...