This project has been replaced by https://github.com/Santroller/Santroller.
This tool allows for programming arduinos to behave like xinput devices on windows, linux and mac, or PS3 compatible controllers, or switch compatible controllers. It provides an interfaces for configuring a controller and programming one.
For XInput, all device types are supported including guitar and standard controller. For PS3, guitars and standard controllers are supported. For Switch, standard controllers are supported.
This code uses https://github.com/sanjay900/Ardwiino under the hood, and as a result it is included as a submodule.