I made a gimbal using an arduino nano but it will work with an uno. It works by reading the angle of the accelorometer and adjusting the motors accordingly. However it does not work on the roll axis. Pressing the button zeroes all of the motors and brings them to the default positionl. The switch is a simple on/off switch.