VCV MIDI-Map: (shortcomings/ideas) vs generic rack extensions

MIDI-MAP is a truly game-changing addition to Rack since it allows you to get your hands on anything. At least in theory.

Problem 1: There’s no way to put something in between your MIDI signal and the linked control such that you could attenuate/modulate the signal first. For example: I’d like to link my trigger buttons on the BCR2000 to the gate toggles of a step sequencer. That doesn’t work, because the triggers on the BCR2000 work by either being on full signal (127) or none (0). So there’s no proper pulse, just one long open or closed gate, thus only every other hit on the button actually toggles the gate on the step sequencer. Also the button-light, or state, is out of sync now, obviously.
I would solve this with one of the CV to Trigger modules by AS if I’d be wiring things up the usual way, but this is not possible with MIDI-MAP. So I’m out of luck.

Problem 2: It doesn’t let me link MIDI notes to such toggles/buttons. That was my next idea with my BCR2000/step sequencer gate toggle problem. I would lose the state information on the toggle/buttons by using a different preset there, but if it works… well, it doesn’t anyways.

Now, there are various ways to “improve” MIDI-MAP, which I’ve put in quotes, because I fear it would make a complicated frankenstein out of the currently simple and nice module.

So why not move a step back. The real problem is that not everything got it’s own CV ports to automate it. Modules often try to imitate real hardware, and so they do not bother to offer ports for everything. That might not even be a good idea anyways. Yet, in other applications, for example FL Studio, you can link anything to literally anything, no matter what. Clearly, this is possible in Rack too, as proven by MIDI-MAP. So it’s a question of interface.

And at this point I do wonder: wouldn’t it be great if Rack would offer an option to request a generic (and configurable) rack extension for any module? This way, you could request actual CV ports for any control missing it, and from there the usual modules will do just fine. No MIDI-MAP needed. More power to the people.

1 Like

Well, MIDI-MAP is open source. It is not very hard to modify its code to address your „problems“ (I wouldn‘t call it problem, these are just feature requests). So, go for it and make your own MIDI-MAP!
For the „more power to the people“-thing: https://github.com/stoermelder/vcvrack-packone/blob/v1/docs/CVMap.md

1 Like

mmm I have another requests to MIDI MAP for somebody who would modify that. This is all about digital encoders like TouchOsc and BCR2000. I am talking about sending position of the knobs and states of the button when we open a patch. It’s really cool thing that works in Ableton Live for example. But now when I open VCV Rack patch controller doesn’t recive any CC feedback from the Rack and the each movement of the knobs is beginning destroy a patch by jumping of the knobs. It will be really cool to fix that) But I don’t have any coding skills. Maybe I should ask @Vortico about it but maybe this is the option that not only me would like to see in any update or modification in the future.

2 Likes

This would require to “merge” MIDI-MAP and CC-MIDI, as MIDI-MAP is only midi-in and controller feedback needs midi-out obviously. Maybe I have a look as I want to use Maschine Jam with Rack.

2 Likes

@rube you can change the behaviour of the buttons on the BCR2000 to momentary (as well as cycling through values with a set step size and range), they just won’t stay lit, so you would have to look on the screen to see which steps are active.

Since we’re making wishes on a high level here, I would like to add mine :slight_smile: :

I just want the option of a pick up mode (so that when my knob is at a different value than what is set in the project, it will wait until I reach the same value with the knob and start moving from there, to avoid sudden uncontrollable jumps).

But I’m also really happy with how it is right now, just trying to develope some kind of live-jamming-machine with midi controllers and it’s so nice to have MIDI mapping now…

1 Like

That requires setting a MIDI input and output. We don’t have room on the panel to put an output LED display.

Cool! It would be awesome feature for everyone who owns digital controllers
@Vortico - thanks for the answer!

what about a pick up mode? good idea? might be easy to implement I hope…

1 Like

I don’t see any problem with it. See https://vcvrack.com/manual/FAQ.html#i-have-a-feature-request

1 Like

this is how it usually is in software and/or controllers, a setting choice for: “jump to” & “pick-up” .

Yes, unfortunately my controllers (Launch Control XL and AKAI MIDIMIX) don’t feature it…
I don’t know about the BCR2000, although I have one, but I stopped using it because the upper row has problems (as seems to be quite common with it - and it’s chunky and the encoders are not good for fast movements with their long turning range).
With a pick up mode I could also use multiple templates on the Launch Control XL, which would make it super powerful.

1 Like

While fair enough (I actually do intend to give writing own modules a try), there’s a point to be made here to have a strong, “official” MIDI support by means of the host application/official modules. Besides, it’s also about having a proper discussion first and maybe hear some other ideas.

Funny you say that. I was about to write the same thing in the opening post too, but decided to keep things a bit more focused. Then again, it is essentially the same discussion: having strong MIDI support for all the MIDI toys out there.

What do you think about a generic (as in available for any module) rack extension to request a set of additional ports? I’d imagine an initially blank extension panel (added/removed by context menu) that grows as needed as you add additional ports, similarly to MIDI-MAP where you just click on the thing/control you’d like to arm/link to. This could be pretty useful in may situations, not even necessarily involving anything MIDI.

I don’t address feature requests on this forum. See https://vcvrack.com/manual/FAQ.html#i-have-a-feature-request
Also, “Rack Extensions” is the name for Propellerhead plugins.

Midi map doesn’t work as reliably as it should in any case scenario… Its… useful for those modules where people adamantly aren’t going to add cv inputs or a breakout for inputs to a module but from what I’ve experienced midi-cc to cv input is much more stable and responsive.

1 Like

Yeah, it’s not supposed to extend the rack anyways, but rather the module. So it’s a module, or a panel extension. English, or rather naming things properly, is hard. :neutral_face:

My bad. I’m new around here, and don’t really know how you guys like to keep things going (I did read the FAQ). But this wasn’t (yet) supposed to be a formal feature request. Having a less formal discussion first about such things seems to be more approppriate than spaming github with the first ideas that come to mind.

Anyways, I still think it’s a splendid idea, and so: https://github.com/VCVRack/Rack/issues/1437 :smirk:

As written before you should have a look at my CV-MAP module.

1 Like

You’re absolutely right, this does indeed solve my problem!
:smiling_face_with_three_hearts:

Imgur

Thank you very much. It’s an important tool that does solve a real problem (I don’t really buy Andrew’s “The best solution is to make the panel good in the first place.” which might apply in theory, but certainly not in practice. Don’t real eurorack modules have hidden ports at the back sometimes? Nothing to patch around all the time, or in many use cases, but if then they’re there.).

Well, too bad my feature request got shot down. I still think there’s merit to it. For one, we’re talking about MIDI I/O (at least in many use cases where such extra ports matter), and so latency/roundtrip matters. Now have a look at my screenshot using CV-Map: 1) MIDI-CC, 2) CV2T 3) the poly MERGE 4) CV-MAP, and finally, finally, the actual module with the controls I’m interested in. Compare this situation to a native solution with the proposed module/panel extension (or extra patch bay).
…granted, from what I can tell I don’t have a problem with latency with this solution, and that’s all rather splitting hairs. And maybe that’s just something for another time, with many other, more important and fun things to be implemented first. I understand. :grimacing:

I’m glad you could solve your problem.
From a conceptional standpoint I’m on Andrew’s side: developers should consider all necessary (and maybe unnecessary) ports on their panels and modules. CV-MAP is just a wonky workaround.

You should contact the developer of the AS modules. Rack v1 allows creating expanders (like in hardware world). The difference is that an expander is specifically designed to work with one or more modules, exactly how the developer wants to.

I see. Yes, that’s certainly the nicer solution.

Good idea. Is there a reason that pretty much all sequencers lack those ports (using them with a mouse certainly is not that much fun)?

No reason I know of. Actually I created CV-MAP because most of the sequencers don’t have modulation ports for each step. Only Stages from Audible Instruments comes to mind right now.