I hope this is still pertinent. When I built the servo controller for this project: http://letsmakerobots.com/node/571
, I noticed two things: Firstly, the servos didn't really care if the pulse came every 5ms or every 25 ms. Secondly, they DID care if the time between pulses repeatedly changed, even by a small amount. If there was a spurious 10us delay caused by a MCU interrupt, the servos would waggle pretty wildly!
Anyway, I came across this while I was trying to find an answer to a question of my own. I've just obtained a couple of MG995 servos brand new. I can't drive them! Do they still operate on a 1ms - 2ms pulse every 18.5ms?
I read elsewhere that the pulse was in the 300Hz region, but there's no way I can control a 300Hz PWM with a 20MHz MCU. Not with any decent resolution, anyway. Perhaps teh 300Hz refers to the PID frequency?