Skip to content

derekcurry/super_easing

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

super_easing

A comprehensive servo easing library for Arduino

This library assumes you are not using an Arduino delay() function (see examples)

You can control:

  • The speed of movement
  • Max, Min, Mid points of the servo
  • Switch between 30 different easing options (10 types, 3 motions for each type)

Easing type options:

  • Cubic
  • Quadratic
  • Quartic
  • Quintic
  • Sine
  • Circular
  • Exponential
  • Elastic
  • Overshoot
  • Bounce

Easing motion options for each type:

  • ease-out
  • ease-in
  • ease-in-out

This library was developed specifically for animatronics to change the speed and switch between different types of easing to create more realistic movements, but may be useful for any situation that requires easing.

Based on the Arduino easing functions by T-K-233:

And easing equations by Andrey Sitnik and Ivan Solovev:

This code was developed for a project that has received funding from the European Union’s framework Horizon 2020 for research and innovation programme under grant agreement No 951962.