(Unsure if this is the right forum, but none of them seem ideal, and you guys seem as likely to know about this stuff as anyone)
So my friend and I have been working on a local co-op game designed for a large number of players, with a bespoke web-based gamepad, to be used from a smartphone. Having built a simple mock-up gamepad, I thought I'd take a slight detour into trying to use it as a general-purpose controller (even in its current form, it could be great for simple ‘party’ games that can be played with just a few buttons).
So I have the phone sending data to a Linux desktop server, which sends events with uinput for each button press. Easy enough. But it seems that I'll need to do more than this to have existing games actually recognise the virtual device. After a few hours of research, I can't see that there is any kind of universal approach to do this.
So how does Steam, for example, determine that a particular device should be treated as a gamepad? I need to find a way to convince Steam (and third-party games) to see my virtual device as if it were an ordinary physical controller.