I'm trying to produce a PWM signal for an ESC (electronic speed controller) in a Raspberry PI.
According to my logic analyser, the signal is fine.
I can use the signal to drive a servo, so I'm happy that the signal is good.
When I feed this signal into the ESC, the motors do nothing, until the pulse width is increased from 1.5ms (neutral) to 1.57, when the motor runs fast. Increasing the pulse width further makes the motor run ever faster.
Changing the pulse width to values less than 1.5ms does not cause the motor to run backwards.
Should an ESC be correctly driver by signals which correctly drive a servo, or is my understanding faulty?