Control one preset via another?

Is it possible for presets to speak to eachother? I’ve made an LFO preset that sends out CC values but it would be very cool if it could target and modulate controls on other pinned presets.

1 Like

Yes, Martin has foreseen a ‘pipe’ mechanism. I haven’t worked with it myself, but this would allow using the values of an LFO preset or a sequence preset as input to another preset.

I think this is a link to part of it.

Sounds interesting. Totally beyond my ken though, unfortunately, but I shall keep an eye on it!

a lot has been done to make it more friendly. A quick start instructions:

Preset that generates modulation:

Take a look at preset Send LFO. The important bits are local pipeOutput = pipe.acquire("output"); and pipe.send(pipeOutput, lfoTriangle);

the acquire creates a communication pipe called output. The send() function that writes data to that communiation pipe. Note, the preset does not send CCs or anything like that. It sends a stream of numbers to the communication pipe.

Tap “RUN” pad to active the LFO and pin it, so that it runs even when you leave the preset.

now, the receiving part:

  1. create a new preset with one fader control in it. Leave the default name “FADER” there.
  2. swipe the screen on the left side to open the Preset Menu window
  3. tap EDIT MODE to enable editing the preset (performance page only now).
  4. go back to the preset page
  5. open the "Page selection and tap PERFORMANCE button. The Performance page will be opened with 36 placeholders on the screen.The placeholders can be used to add/edit controls and macros.
  6. long touch the first placeholder
  7. tap “ADD CONTROL REFERENCE” button
  8. a form will show up, just confirm it with “Add control”.
  9. you will land on the Performance page and you will see there the “FADER” control you created earlier. If you switch between the Performance page and the Page 1 you will see that it is the same control.
  10. long touch another placeholder on the Performance page
  11. tap “Add macro control”
  12. you will get a form to add a macro control. A macro control allows you to modify and modulate values of preset controls.
  13. tap “Add control”
  14. change mode to “Receive pipe”. If your LFO preset is running, the form will be automatically prefilled.
  15. tap “Macro fader” in the top-left corner
  16. tap “Save changes” in the right-bottom corner

you should be now back on the Performance page. There should be two controls: the “FADER” and the “New macro”.

You can use “New macro” to adjust modulation depth of the “FADER” now. The “FADER” should indicate the modulation using an animation.

I will add screenshots here when I have a moment…

4 Likes

I think I might create an LFO preset based on the one I’ve made as extension to the Minitaur. Would be fun to use the same LFO types like ‘echternach’ and ‘trapezium’ on multiple synths in sync with MIDI clock :laughing:

1 Like

Looking forward to trying out the pipeline stuff, thanks @martin

@NewIgnis definitely think the preset library is lacking a good LFO. I can share mine as well but I expect your code will be far more efficient than what I wrote with ChatGPT!

@martin the method you described is working well except once the macro is set and running it seems you can’t change the rate of the LFO anymore. It seems to default to a set rate the moment you tweak the rate knob

Currently, you need to go back to the LFO preset and adjust the rate there. I’m looking into ways to make this easier, and I’m open to any suggestions.

That’s what I’ve been trying when I get the behaviour described above. The rate on the LFO preset itself seems set once it’s assigned