Hello fellow techie MIDI people! I'm developing an application based around WebMidi. I've set up MIDI mapping to allow users to configure their MIDI devices to control my app. I'm primarily a Mac user and all of my testing has gone well. However, I've recently realized that on Windows, the WebMidi device `id` doesn't seem consistent from session to session, or even if USB/MIDI devices are unplugged and replugged in a different order.
I'm trying to think of ways to identify devices so that a user's MIDI Maps will stay associated with the correct device from session to session. Has anyone else dealt with this issue? What strategies have you used?
I've started exploring SysEx identity requests. And this seems promising. But it only seems to work with hardware devices. And I can't get identity down to a device-specific identifier (such as a serial number). I'm getting clues that there might be additional, manufacturer-specific SysEx messages I can send to get deeper device identity. But I'm not sure where to start gathering that information.
Does anyone have any thoughts about this?