Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Preset MIDI connections do not work across machines #889

Open
HorstBaerbel opened this issue Aug 21, 2023 · 3 comments
Open

Preset MIDI connections do not work across machines #889

HorstBaerbel opened this issue Aug 21, 2023 · 3 comments
Labels
bug Something isn't working enhancement Feature requests

Comments

@HorstBaerbel
Copy link

HorstBaerbel commented Aug 21, 2023

Operating system and application version

  • OS: Fedora
  • Version 3.29.1

Describe the bug
I have two machines running the same modV and Fedora version. When I create a preset with MIDI connections on one machine those MIDI connections do not work on the other machine despite the same MIDI controller being connected.

EDIT: I also have the problem, that MIDI connections do not work on the same machine. They seem to change IDs from time to time. This really sucks as you have to edit the preset manually and copy-paste the new IDs...

Looking at the code I guess storing the "unique" port ID that comes from the browser / system does not make much sense. Plugging it into a different port might result in a different ID. I personally can live with one device (type/name) per system.
If you want to support multiple device of the same type, assign increasing numbers to the MIDI devices found. The first enumerated device gets "ID" 1, the next 2 and so on. Now assign MIDI connections based on that "ID". That should work with multiple devices and on multiple machines.

To Reproduce
Steps to reproduce the behavior:

  1. Create preset on one machine
  2. Make MIDI connections
  3. Copy preset to other machine
  4. MIDI connections do not work on second machine

Expected behavior
MIDI connections work across machines and work when plugging the same MIDI device into a different USB port.

Preset: 2023-05.zip

@2xAA
Copy link
Member

2xAA commented Sep 5, 2023

Not all MIDI devices report UUIDs, and Chrome, between operating systems, isn't consistent with the device IDs returned through the WebMIDI API - so it's almost impossible for us to track devices without adding somewhat complex UI to allow the user to select the correct MIDI device from the devices plugged into the user's machine to map to the existing one in the preset.

It's a headache, sorry. Probably already covered by #296.

@2xAA 2xAA added bug Something isn't working enhancement Feature requests labels Sep 5, 2023
@HorstBaerbel
Copy link
Author

Then just do less work. Scrap all the UUID stuff. Just use the name, that's what I'm proposing above. It is rare that two controllers of the same kind are used in one machine and if they're flipped I just insert them again in a different order. I can't work around the problem as easily atm though, I have to edit the JSON like every reboot...

@2xAA
Copy link
Member

2xAA commented Sep 5, 2023

Apologies, that was quite clear in the initial post.
And yes, that could work as a stop-gap before implementing a better UX than remembering your controller order.

I'm hesitant to agree it's rare to have multiple controllers of the same type though - we don't have any usage data to support that statement.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working enhancement Feature requests
Projects
None yet
Development

No branches or pull requests

2 participants