(Cheap) Gamepad: Triggers are Axes?

To start with, let me say that support for cheap gamepads like mine is much better in the pre-release version of the Panda SDK that I’m currently using! Thank you very much to those who worked on that support! :smiley:

I have encountered one oddity, however: Panda seems to register the triggers as axes. Is that correct?

(Granted that I’m somewhat unfamiliar with gamepads, I’m inclined to expect them to be buttons–but then perhaps there’s some element of gradation in their input that I’m not aware of…)

Many “standard” Xbox-style gamepads have analog triggers. Digital triggers occur mostly on PlayStation-style gamepads. (Some, like the Steam Controller, have digital buttons at the end of the analog trigger ranges.)

Exposing them as axes makes it easier for developers to code their games for a single input without having to worry about having to support different styles of gamepads.

Ah, I see! I didn’t know that! Thank you for explaining. :slight_smile:

Well, that’s a little bit more work for me to do then, I think (possibly in part because I expected them to be buttons)–but fair enough!

Are they not registering as buttons at all in device_tester.py ?

I am seeing them as both axes and buttons in device_tester, yes. However, it still introduces some complications to my own code. Nothing terrible serious, mind! For one thing, when I detect bindings, they seem to detect as axes first–detecting them as buttons instead would call for knowing to ignore that, I think.

(And on the plus side, I think that it’s prompted me to uncover an issue in my extant code.)