These solutions are really good and is already good enough for my first prototypes, but I was thinking how hard would it be to implement a more structural solution similar to hardware MIDI synths that can control any parameters through MIDI. It would be amazing if the VCV Rack could have a SysEx Id where the data could be organised with specific values for each manufacturer and for each module and each knob, button or patch connection could be controlled through a unique SysEx message that could be directed in both ways. It could open new possibilities for hardware products that could be made specifically for each module.
I believe each manufacturer and product already have IDs that could be used for that, and I know each knob and button is already ordered by the system so it would be easy to implement such a protocol, wouldnāt it?
This could lead to the invention of many completely new interfaces for Modular synths that could then be appropriated back to the hardware modular synth World. Interfaces like the Reactable for example could be programmed to control VCV Rack, wouldnāt that be amazing?
I donāt think designing some sort of MIDI protocol should be too hard. The main challenge will be how to address specific input and output ports of modules that can change any minute. Even if you could answer this question from the technical side, how would an user know which port on his hardware device is mapped onto which port in Rack? This is already a challenge right now with parameter mapping and would be even more hard to handle if ports and cables are involved.
The idea would be to develop specific hardware MIDI interfaces for each (or a group of) specific modules. The idea of SysEx messages for controlling parameters is to have a specific set of controls that are Exclusive to each functionality of each system.
This wouldnāt be a solution for a general purpose MIDI controller to control the parameters of a module in VCV Rack.
If you want to use generic MIDI controllers as a VCV interface you would have to pre-program each setup as you usually do with the Midi Mapping module and the matrix switches.
The SysEx implementation would be to stimulate hardware interface developers to create specific modules for each (or a group of) VCV Modules, which is a lot!!
Hey @spacepluk, sorry for the late reply, I am now looking for a way to get email notifications on this threadā¦
About this idea, I havenāt put forward yet. I have rethought that it may be more interesting to use the regular MIDI-MAP approach. The whole SysEx standardization in VCV Rack will require an immense effort without being useful. Even if it would be implemented, to use a MIDI Controller connected to Rack through SysEx, it would also be necessary to load the modules the first time.
The MIDI Mapping to each parameter could also be done just once, so I donāt see why to use a new SysEx standard with one standard message per module parameter.
I also saw that there were a lot of replies in this thread (also without email notificationsā¦) 14 bit midi in 1.0?, where @stoermelder has just done an implementation of high res CC in MIDI-CAT, which is already the best midi interface module in the Rack. I will test it and as soon as it works I will gladly carry out this idea. The modules could be made to look just like the software interfaces, but maybe it would be more interesting if they could be remapped to different uses, being able to have presets on the controller to play different patches.
I have just had an idea about this. Uh oh. Iāll prototype it and start a new thread if it pans out, but in the meantime Iām wondering if @stoermelder T7 is still at the forefront of programmatic Rack cable MIDI control. Does anyone know of anything else (in the Library or under development?)
Edit: It looks like Midilar has made some progress in this direction. Anything else?
Thanks, all! And good to confirm that Jakub is using T7 on the software side.
In the context of working on a completely unrelated problem, I hit on an approach with what may be some neat possibilities. There were three potential technical show-stoppers and Iāve resolved two of them in my prototype; if the third falls down too, and itās as efficient to use as I think it will be, Iāll be pretty happy about it.
This is of course going to use unstable APIs which probably means there wonāt be an official V1 release, but Iāll probably do something Pack Tau-like with it and then consider more public development as of V2.
Looking good, My dream, if I find the time is to make myself a hardware controller similar to the one seen in the Midilar videos, first demoed a year ago, although my progress is currently limited to a couple of breadboard designs, and I received my first pcbās for a 12 bit cc controller yesterday.
If you are looking for testers, or I can aid in another way, please let me know.
Fantastic, @Curlymorphic! I would love to have you as a tester especially since your Iverson modules have thought carefully about MIDI feedback, which is something I definitely want to include in this design (not required to use it, but nice to have).