freddyz / computerscare-vcv-modules

Modules for VCV Rack
BSD 3-Clause "New" or "Revised" License
42 stars 10 forks source link

Father & Son buttons cannot be clicked via MIDI #37

Closed freddyz closed 4 years ago

freddyz commented 4 years ago

Apparently this is because the 10x10 matrix is push buttons and not toggle buttons. Bogaudio Switch88 works correctly with MIDI control.

sami-befree commented 4 years ago

More information about the issue: When mapping toggle buttons (using modules like MIDI-MAP or MIDI-CAT) on Father & Son's matrix buttons, you have to press twice the toggle button on the midi controller (an iPad using TouchOSC in my case) to change the module's button value.

2nd Impact: This behavior makes the visual feedback on the iPad's toggle button incorrect.

freddyz commented 4 years ago

After investigating this, I don't think I can change it in that way you are suggesting. Father & Son stores 16 different scenes for its buttons. If the buttons were configured as simple latch switches, when the user clicked the arrow buttons to change which step is currently being edited, then the MIDI value would immediately overwrite the button value for that step. Even if the MIDI values didn't overwrite the button state, then the display on your MIDI controller would potentially be incorrect.

Solution: use momentary buttons on your MIDI controller to control Father & Son's patch grid. This worked for me using my Novation LaunchKey 49 controller via VCV MIDI-MAP, as well as touchosc via Stoermelder MIDI-CAT (VCV MIDI-MAP didn't seem to recognize the touchosc momentary button)

@sami-befree I'm open to other suggestions if you have any, but if I'm understanding things correctly, toggle MIDI button controls are not possible to map to Father & Son without breaking its "scene" functionality, which I see as the main point of the module.

sami-befree commented 4 years ago

Thanks for your investigations and time! If I understand the compromise, the adaptaion wouldn't impair the normal behaviour of Father & Son (even when changing scenes). But when a scene is changed, the new buttons status wouldn't be sent to the controller.

For me, that wouldn't be a problem: because the instance of Father & Son I'm using with the controller I don't need to change any other scene (it's only for "live actions").

I could use an other instance of it (without mapping the controller) for the scene fuinction...

freddyz commented 4 years ago

when a scene is changed, the new buttons status wouldn't be sent to the controller.

As far as I know, MIDI-MAP and MIDI-CAT do not send information from VCV Rack to the MIDI controller. The communication is one-way: CONTROLLER ---> VCV Rack. I might be wrong about this.

The problem would be worse than what you describe though. If I changed Father & Son to use toggle buttons, when the user clicked the buttons to edit a different step, the MIDI mapping would immediately overwrite the button values for that step.