Arduino Uno R3 to control SkyRC Leopard V2 ESC

Hello everyone,

I am trying to control a SkyRC Leopard V2 ESC with an Arduino Uno R3 but it doesn’t respond and it is not arming. I have the signal connected to P6. I already tried lots of arming sequences that I got from the forum but no luck. Now I have the following code:


Servo esc;

void setup() {

void loop() {

Their manual has the following instructions:

  • Hold full throttle and turn ESC on. Wait for beeps
  • Wait 2 seconds
  • While beeping push full break. Wait for beeps
  • While beeping push neutral. Wait for beeps
  • When armed it will beep 2 times

As I said, I could never get it to beep. Does anyone have any experience with this ESC?
Thanks a lot!

No specific experience...but your current sequence is obviously wrong, writeMicroseconds(0) isn't possible. The normal range is from around 1000 (full brake) to around 2000 (full on) with 1500 as the centre. That might be worth trying.

But what I would actually do is get a potentiometer and run the Knob example code. That way you can manually try the various values until you see what works. You can easily modify it to use writeMicroseconds() instead of write() if that's what you prefer and also add a Serial.print or two to tell you exactly what the current pulse length/angle is.

BTW what you're describing is the intial calibration procedure. You only need to do that once. Once it's set up the arming sequence is much's all described in the ESCs operating manual.


Thanks Steve! I will try your ideas to see if it works.

Just got an email from SkyRC saying that this ESC does not work with UNO R3, so I am giving up.

Just got an email from SkyRC saying that this ESC does not work with UNO R3, so I am giving up.

Absolute nonsense.
If it works with an RC hobby receiver, it will work with an arduino.

Edit: You mentioned trying Steve's suggestion of 1000 for full brakes and trying the knob example.
Did you do that? How did it work? Can you post that code?