Reading the docs, I see the following:
Note: If you power the Arduino before powering the ESC, then the ESC will miss the initialization step and won’t start. Power them up at the same time, power the ESC first, or press “reset” on the Arduino after applying power to the ESC.Couldn't this be simply fixed by providing power to all at once but changing the arduino setup() code to delay BEFORE attaching the servo as follows: <div class="language-cpp highlighter-rouge"> <pre class="highlight">
<span class="cp">#include <Servo.h>
</span>
<span class="n">byte</span> <span class="n">servoPin</span> <span class="o">=</span> <span class="mi">9</span><span class="p">;</span>
<span class="n">Servo</span> <span class="n">servo</span><span class="p">;</span>
<span class=“kt”>void</span> <span class=“nf”>setup</span><span class=“p”>()</span> <span class=“p”>{</span>
<pre class="highlight"><code><span class="n"> delay</span><span class="p">(</span><span class="mi">1000</span><span class="p">);</span> <span class="c1">// delay to allow the ESC to recognize the stopped signal
</span>
<pre class=“highlight”><span class=“n”> servo</span><span class=“p”>.</span><span class=“n”>attach</span><span class=“p”>(</span><span class=“n”>servoPin</span><span class=“p”>);</span>
<span class=“n”> servo</span><span class=“p”>.</span><span class=“n”>writeMicroseconds</span><span class=“p”>(</span><span class=“mi”>1500</span><span class=“p”>);</span> <span class=“c1”>// send “stop” signal to ESC. </span>
}
</div>