Device Control

Enables smooth servo movement. Linear as well as other (Cubic, Circular, Bounce, etc.) ease movements for servos are provided. The Arduino Servo library or PCA9685 servo expanders are supported.
Just use myServo.easeTo() instead of myServo.write() and you have smooth servo movement.Non blocking movement for all servos attached to the Arduino Servo library is implemented by reusing the interrupts of the Arduino servo timer.All servos can move synchronized.Includes the following easing functions:Linear, Quadratic, Cubic and QuarticSine, Circular, Back, Elastic and BouncePrecision, Dummy and User definedEach function supports the easing types In, Out, InOut and BouncingOutInTrim and reverse operations are supported as well as continuous rotating servos.New: Added function setFloatDegreeForAllServos().Revision History

Author: Armin Joachimsmeyer

Maintainer: Armin Joachimsmeyer

Read the documentation


This library is compatible with the avr, megaavr, sam, samd, esp8266, esp32, stm32, STM32F1, apollo3, mbed, mbed_nano, rp2040 architectures so you should be able to use it on the following Arduino boards:

Compatibility Note

Note: while the library is supposed to compile correctly on these architectures, it might require specific hardware features that may be available only on some boards.


To use this library, open the Library Manager in the Arduino IDE and install it from there.