The new Joystick service will use JInput & be supported on Windows, Linux & Mac. It will support Joysticks, Gamepads & Rumblers. It will have configurable transforms, so you can send the output of an axis directly to an Arduino, Motor shield, or Servo ....
Up to 12 buttons are supported and each button event can be routed to another service...
More to come !