On Fri Nov 29 22:33:30 2024 +0000, Paul Gofman wrote:
Oh, interesting, somehow I missed Joistick Id here while found those DirectInput properties keys. But in a practical sense in terms of implementation, it looks like the case with artificially cleaned up registry is least interesting, in practice that works without cleaning registry keys before any controller replug? We could probably persist that in registry as well, although I am not sure whether it worth the complication, I still suggest to track it locally / in memory. Yes, device path may be not the best choice, I could do it using vid / pid and sequential index accounting for multiple controllers with duplicated vid / pid (and in that case it doesn't matter which index each of those identical controllers get on replug I guess).
If we need to fix test driver to support identical vid / pid I can look into that (previously I managed to run that with multiple devices of the same vid / pid using `hid_device_start(, 2)` (with some fixes I've included in patches), not yet exactly sure if that is the same as starting separate devices with the same vid pid. I only feel bad about "volatile" ids changing on the fly, that's only happens in specific synthetic test conditions.