i soldered the diagrammed circuit on perfboard, installed the nodemcu firmware, and had it successfully driving a Futaba S3003 servo for a couple weeks before it started behaving strangely.
at first i began hearing the servo twitching around for no discernible reason. when it go into this state, i was able to telnet to the esp and confirm that my code wasn't responsible (it's controlled via mqtt and prints messages when it activates pwm).
i thought maybe leaving the signal pin in a floating state was allowing random fluctuations to cause servo movement. to test this i needed to reflash the firmware to install the gpio package, but after doing so i'm no longer able to get either gpio writes or pwm to work anymore (either by attaching to the servo or a multimeter).
i'm very amateur when it comes to electronics, so i'm wondering if maybe there's something bad about my design. in particular, i'm wondering if it's dangerous to directly drive the signal input on the servo from a gpio pin? when i tried measuring the current the servo's signal line is sinking i remember it being miniscule, but maybe there are conditions that could cause it to draw too much current? would a resistor be able to protect against this, or maybe i should drive it using a transistor?
also, any ideas what could cause the random servo movement? when pwm isn't active, would it help to keep the signal line pulled up/down?
thanks for any assistance!