I am using the USB joystick lib from Matthew Heironimus on a Leonardo. It works great. My question is regarding how Windows sees the device. When I set the joystick type to "joystick" or "gamepad" in the code, Windows identifies the device and I can see the axes and buttons in device manager for testing. When I set the joystick type to "JOYSTICK_TYPE_MULTI_AXIS", the device is seen as "Arduino Leonardo" and I can't see the axes and buttons in device manager. It still works, I can go into a flight sim like X-Plane and use the axes and buttons. Just wondering what prevents Windows from identifying the device the same as the other 2 types...
Thanks for any ideas!
The library can also be downloaded directly using the following: https://github.com/MHeironimus/ArduinoJoystickLibrary/archive/version-2.0.zip
#include <Joystick.h>
Joystick_ Joystick(JOYSTICK_DEFAULT_REPORT_ID,0x05, // 0x04 = joystick, 0x05 = gamepad, 0x08 = flight_controller
16, 0, // Button Count, Hat Switch Count
true, true, true, // X and Y, Z Axis
false, false, false, // No Rx, Ry, or Rz
false, false, // rudder or throttle
false, false, false); // No accelerator, brake, or steering