yeah, I generally agree, Id like a ‘live’ patching view.
the reason it could glitch is because if you do a ‘timed’ update, your patch may not be in a consistent state.
this is different from a live update where every change made in vcv is done at the same time, in the same order on the MM.
i.e. you patch a cable 1 then cable 2 , it does it on the fly in that order.
now theoretically the 4ms mm hub could do this by monitoring the vcv patch real time, and determining differences and applying those as charges … rather than every N seconds just resending the entire patch.
BUT it’s a lot more work to do … but I think the right direction (eventually)
also I think to understand the motivation behind this, we need to discuss WHY?
a lot of the time, this kind of live patching is NOT required.
simply because you can get the patch working in vcv, then send it across when its done. it does really add that much.
( I used axoloti and eagan matrix which has live patching, its has its merits and drawbacks)
I think a couple of reasons for a more live workflow are:
a) integration with your eurorack
this is the big one for me…
most of the time I can set up the patch in vcv desktop to work there, but sometimes I want to see/hear it in context with other modules.
e.g. I might have a sequencer playing on Frap Tools USTA, or I might be running the output of MM into Qubit Nebulae.
its not so easy for me to simulate these on the desktop…
(ok, I can use another eurorack module to start sending cv/audio to/vcv desktop … but its a faff, and involves me changing the eurorack patch)
the next two, are lesser reasons (imo), as you can work around much easier.
b) mm is cpu bound, pc likely is not
we need to know when out patch is getting too complex.
I dont think we need live patching for this, just being able to send quickly/easily - one touch, will do.
however. it would be very useful to have a CPU load meter from MM sent to VCV so we can see where we are when we send patches.
c) vcv and mm modules are sometimes different
the solution to this is trying to make them more similar, but need to recognise this is a driver.
anyway, thats what I mean about trying to understand what we are trying to achieve, before think how it has to be implement - often there are different solutions.