23volts / 23volts-vcv

23volts modules for VCVRack
GNU General Public License v3.0
8 stars 7 forks source link

Multimap feature requests #6

Open vcvrackideas opened 4 years ago

vcvrackideas commented 4 years ago

Hi! Thanks you for multimap, it was a really my dream to have that in VCV! However I've noticed some midi to and out lag while mapped all 16 knobs and 2 buttons for banks. Knobs looks like freezing sometimes and bank switching becomes a really slow. Controller is Touchosc and it works smoothly with Stoermelder's midi-cat I'd also like to suggest the option to name specific bank, for example first bank - mixer, second - plaits, third - filter and so on. It would be so handy.

RemiCollin commented 4 years ago

Hey! Are you using TouchOSC with TouchOSC Bridge ? Can you detail me your config so I can try to replicate the issue. Cheers

vcvrackideas commented 4 years ago

Hey! Are you using TouchOSC with TouchOSC Bridge ? Can you detail me your config so I can try to replicate the issue. Cheers

whoops, shame on me, sorry. just ignore that. there was something on my side, wi-fi over usb bug or something, now everything works ok! So another suggestion that I have - while in yellow ASSIGN mode - can you make something that MIDI-MAP module has - after assigning the first knob the yellow square around it would be jumped into the next (right one) and then in that order? It would be increase assigning process a lot. I understand there are no lines of mapping in your module as in MIDI-MAP but still left-to right row by row automatic jumps would be cool. Hope you will understand what I mean.

RemiCollin commented 4 years ago

Ok, glad it's sorted out!

For chain-assign, I see exactly what you mean, in fact, it was already in my feature todo-list for next Multimap version :)

vcvrackideas commented 4 years ago

Ok, glad it's sorted out!

For chain-assign, I see exactly what you mean, in fact, it was already in my feature todo-list for next Multimap version :)

Ok, great & looking forward! Also if possible each cell can be activated for assignment when midi knob will be moved, maybe two options in context menu would be nice for different kind of purposes. So I'm also thinking on if you can add also internal midi mapping ability to assign button (also it would be more than cool if it would be a toggle one, so user will be know about assign state looking at his controller with midi feedback only). In that way we don't even need to touch multimap module each time we want to map some new modules in the patch.

RemiCollin commented 4 years ago

Ok, great & looking forward! Also if possible each cell can be activated for assignment when midi knob will be moved, maybe two options in context menu would be nice for different kind of purposes.

Probably no need for a context meun option, as Ithink the two feature can coexist at the same time. Assigning with the mouse will jump to the next knob, and physically moving the Midi controller will jump to it's bounded knob.

So I'm also thinking on if you can add also internal midi mapping ability to assign button (also it would be more than cool if it would be a toggle one, so user will be know about assign state looking at his controller with midi feedback only). In that way we don't even need to touch multimap module each time we want to map some new modules in the patch.

I'll think about this. Might want to implement buttons behaviour (toggle/momentary) in the Mapping code beforehand, but otherwise it could work with a Midi Controller button which is configured as a toggle.

vcvrackideas commented 4 years ago

I also have an idea for visual identification knobs while we are in any bank. Now you have implemented a blue squares when we are hovering the mouse in multimap. That's nice but does VCV rack allow implemented a third static color of mapping squares for the current selected bank we are in that moment? For example - yellow for knobs that aren't in the current bank; pink for the knobs that in the current bank and blue for identifying knob by hovering.

vcvrackideas commented 4 years ago

Also I'd like to have some initialize mode of Multimap but without removing assigning and learning mappings - to initialize modules that were been mapped to multimap because Multimap blocks manual parameters adjusting in the modules (for preventing a wrong feedback to the controller, am I right?)

RemiCollin commented 4 years ago

I also have an idea for visual identification knobs while we are in any bank. Now you have implemented a blue squares when we are hovering the mouse in multimap. That's nice but does VCV rack allow implemented a third static color of mapping squares for the current selected bank we are in that moment? For example - yellow for knobs that aren't in the current bank; pink for the knobs that in the current bank and blue for identifying knob by hovering.

Nice idea! For the assigned parameter color, basically VCV just render the color you choose and you can change it in real time, which is what I'm doing with the blue color while hovering a knob. So yes changing the base color of selected bank is of course possible.

Also I'd like to have some initialize mode of Multimap but without removing assigning and learning mappings - to initialize modules that were been mapped to multimap because Multimap blocks manual parameters adjusting in the modules (for preventing a wrong feedback to the controller, am I right?)

No it's just the default behaviour of midi mapping (see MIDI-MAP module). It's possible to unlock it by sampling the parameter's value at each step, which is a bit more CPU costly, but it wouldn't affect MIDI feedback, as it's cached and only send MIDI update when needed.

vcvrackideas commented 4 years ago

Thanks for implementing transparent midi links! However it seems to me it doesn't work now when using a CV input for direct bank switching

RemiCollin commented 4 years ago

Indeed, thanks for reporting this, I fixed it in last commit.

vcvrackideas commented 4 years ago

I also did some huge tests with update multimap and have some thoughts:

vcvrackideas commented 4 years ago

and, oh, in order of newcomer Timeline module (from Entrian) I think mute buttons for CV in and CV out (at least for CV in)with saved state for the each bank would be awesome tool to receive timeline automation (CV in) after setting the initial knob positions and also record knobs movements (I don't know if it would be possible to make recordings right into that module but still interesting) via CV out. Also I didn't proper test it but maybe you know - is it possible to exclude some knobs from poly cable when it's connected? It also can be useful to not destroy settings that we did before via midi controller for example

RemiCollin commented 4 years ago
  • it would be cool if clicking on ASSIGN button immediately place a yellow square in the first knob (upper left one) so user wouldn't clicking it by himself.

Sure, I'll add it.

  • if we're using touchosc instead fixing knob controller it would be also cool to connect yellow assigning square to controllers that has been moved, similar to midi-map module in short. Just would be easy to follow. I think we already have a talk about it that there would be no problem with both methods - chaining and knob moving, just a little reminder here)

I'm not sure I understand this one. Do you mean directly mapping MIDI while assigning a knob ?

  • As I said before transparent unused mapping is a gamechanger thing now! But if we can have ability to give specific names to the banks it would be also helpful (especially if we use direct banks via CV input)

I didn't forget about this one. I plan on upgrading the display for more in-depth features, like direct input of midi Channel/CC and selecting several different mapping modes (momentary, latch, that kind of thing), so naming bank will be done within that update.

and, oh, in order of newcomer Timeline module (from Entrian) I think mute buttons for CV in and CV out (at least for CV in)with saved state for the each bank would be awesome tool to receive timeline automation (CV in) after setting the initial knob positions and also record knobs movements (I don't know if it would be possible to make recordings right into that module but still interesting) via CV out.

Good suggestion. I'll definitely add mute to CV IN. Right now patching it disable midi input, as it's impossible to guess the user intent having two sources of control for the same knob. So it's a good thing to have it user selectable.

Also I didn't proper test it but maybe you know - is it possible to exclude some knobs from poly cable when it's connected? It also can be useful to not destroy settings that we did before via midi controller for example

The VCV api only allows to know how many channels there is in a poly cable, so it's impossible to know if either a channel is used or its value is 0. So it's possible to exclude the knobs > number of channels but not on a 1-1 basis. Only workaround to this would be to add an expander with 16 individual inputs.

vcvrackideas commented 4 years ago

Ok, great & looking forward! Also if possible each cell can be activated for assignment when midi knob will be moved, maybe two options in context menu would be nice for different kind of purposes.

Probably no need for a context meun option, as Ithink the two feature can coexist at the same time. Assigning with the mouse will jump to the next knob, and physically moving the Midi controller will jump to it's bounded knob.

I'm not sure I understand this one. Do you mean directly mapping MIDI while assigning a knob ?

Actually I meant physical moving of midi controller jump to this bounded knob. Sorry for wrong explanation.

The VCV api only allows to know how many channels there is in a poly cable, so it's impossible to know if either a channel is used or its value is 0. So it's possible to exclude the knobs > number of channels but not on a 1-1 basis. Only workaround to this would be to add an expander with 16 individual inputs.

I don't think it worth it really. We just can add a zero offset voltage into those inputs for poly cable that we won't use but I don't know is this possible or not. By the way is it possible to modulate knobs as offsets instead overwriting those positions when we insert a poly cable? So in that way prhaps 0 zero volts won't be move a knob and we still able to tweak it by midi controller. But I don't sure if Rack API allows this hack. And instead of this expander I'm thinking about CV in for each bank of Multimap! But also I think that it's too fantastic to have that hehe...so if bank switching to another one the module lost the connection with previous one to continue to translate CV input for example?

RemiCollin commented 4 years ago

Actually I meant physical moving of midi controller jump to this bounded knob. Sorry for wrong explanation.

Got it. Should be possible i think :)

I don't think it worth it really. We just can add a zero offset voltage into those inputs for poly cable that we won't use but I don't know is this possible or not. By the way is it possible to modulate knobs as offsets instead overwriting those positions when we insert a poly cable? So in that way prhaps 0 zero volts won't be move a knob and we still able to tweak it by midi controller. But I don't sure if Rack API allows this hack. And instead of this expander I'm thinking about CV in for each bank of Multimap! But also I think that it's too fantastic to have that hehe...so if bank switching to another one the module lost the connection with previous one to continue to translate CV input for example?

I already thought about the CV IN acting as an offset, but in short it would conflict MIDI feedback., as one knob would have two separate states, and the MIDI controller can only have one, so which state to send back to the controller is the big question there.

matthleg commented 4 years ago

Hello, multimap is a nice module but I really miss an option to avoid the value to jump... You have this option in midi-cat (from Stoermelder), in the right click menu: PICKUP(JUMP) the value will not change until the control reaches the current value of the parameter. Also (I saw it in other post) the possibility to name the banks would be nice. Have a nice day and thanks for the great work.

RemiCollin commented 4 years ago

Hello @matthleg : Pickup mode is in the roadmap, it'll be added in the next update, along with other enhancements

matthleg commented 4 years ago

Thanks a lot. It's perfect , I am really happy.

Le mer. 5 févr. 2020 à 13:31, Rémi Collin notifications@github.com a écrit :

Hello @matthleg https://github.com/matthleg : Pickup mode is in the roadmap, it'll be added in the next update, along with other enhancements

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/23volts/23volts-vcv/issues/6?email_source=notifications&email_token=AIVRB77GSSHIUKAUP2CVEVDRBKWRLA5CNFSM4KEW3NN2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEK3IASQ#issuecomment-582385738, or unsubscribe https://github.com/notifications/unsubscribe-auth/AIVRB737LBDR4Z44VJXY27LRBKWRLANCNFSM4KEW3NNQ .

-- Matthieu Legros violinmaker masarykova 9 60200 BRNO CZECH republic +420 773 080 023 www.luthier-legros.com

matthleg commented 4 years ago

Hi, I just update your modules and I don't see the "pickup mode"... Am I doing something wrong? O maybe we are not speaking about the same thing: I have a simple midi controller (no motorised) and I don't want (when you change bank) the knobs jump when you begin to move them , but I want the knobs inactive till they reach the value of the bank... Sorry it is difficult to explain with my bad English but it is like PICKUP(JUMP) in Stoermelder. Have a nice day.

RemiCollin commented 4 years ago

@matthleg no this is not added yet, the yesterday's update was a fix for another bug. (you can see the content of the update when clicking "changelog" from the VCV's update menu.) When I talked about next version, I was refering to 1.2

matthleg commented 4 years ago

Hi, sorry if I am too present but I think it can also be nice to have the possibilty to map different cv with the same knob... Ex: with 1knob you can change the pitch of 2 different vco (it's something I do quite often). Have a nice day. Matthieu

El vie., 7 feb. 2020 11:22 AM, Rémi Collin notifications@github.com escribió:

@matthleg https://github.com/matthleg no this is not added yet, the yesterday's update was a fix for another bug. (you can see the content of the update when clicking "changelog" from the VCV's update menu.)

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/23volts/23volts-vcv/issues/6?email_source=notifications&email_token=AIVRB7ZKWYZLIRQLGF5Y6UDRBUY67A5CNFSM4KEW3NN2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOELCN4QY#issuecomment-583327299, or unsubscribe https://github.com/notifications/unsubscribe-auth/AIVRB7ZZBJAZPU7BKTOJUCTRBUY67ANCNFSM4KEW3NNQ .