MIDI Mapping: Difference between revisions

From Renoise User Manual
Jump to: navigation, search
imported>Taktik
No edit summary
 
(46 intermediate revisions by 4 users not shown)
Line 1: Line 1:
= MIDI Mapping =
= MIDI Mapping =


Via Midi Mapping you can remote control Renoise from your external MIDI controllers or master keyboard. Nearly everything (and more ;) you can do in Renoise with the mouse or the keyboard, can also be done from an external MIDI controller.
With MIDI Mapping you can remotely control Renoise from your external MIDI controller or master keyboard. Nearly everything you can do in Renoise with the mouse or the keyboard can also be done from an external MIDI controller.


First note that MIDI mappings are saved along with your song, unlike the Keyboard mappings in the preferences. This way you can create unique MIDI mapping sessions for every song, but you can also share the settings by either using [[Template Songs]], or by im/exporting common MIDI mappings in the MIDI dialog (see below). More about this later.
MIDI mappings are saved along with your song, unlike the [[Preferences#Keys|keyboard mappings in the Preferences]], allowing you to create unique MIDI mapping sessions for every song and also share the settings by either using [[Template Song]]s or by importing/exporting common MIDI mappings in the MIDI dialog (see below).


Either way, Renoise will never automatically detect your MIDI controller and do the mappings for you. You have to (at least once for a [[Template Song]]) set up your controller just the way you would like to use it.
Renoise will never automatically detect your MIDI controller and configure the mappings for you. You have to manually (at least once for a [[Template Song]]) set up the controller.




== MIDI Device Setup ==
== MIDI Device Setup ==


First make sure Renoise 'knows' which MIDI device you want to use for MIDI mapping. This is done in the [[Preferences]], section MIDI. → Master Keyboard A/B
First make sure Renoise knows which device you want to use for MIDI mapping by setting it in the [[Preferences#MIDI|''"Edit -> Preferences -> MIDI"'']] panel.
 


== Opening the MIDI Mapping Dialog ==
== Opening the MIDI Mapping Dialog ==


Opening the MIDI dialog can be either done through the '''View''' option in the title-menu (or by hitting Control/Command + M):  
The MIDI Mapping dialog box can be opened with the ''"Options -> MIDI Mapping..."'' option in the main menu (or by pressing ''"Left Control/Command + M"''). It can also be opened by clicking the [[Image:3.0_upperstatusbar-midimap.png]] button to the right of the VU meters [[Main_Screen#Upper_Status_Bar|at the top of the Renoise interface]].


[[Image:vvoois_renoise_midi_mapping_1.png]]
Next to the ''"MIDI Map"'' button you will also find two small LEDs which show the MIDI input/output that Renoise receives/sends. If you are in doubt about whether your MIDI controller is set up and connected correctly to Renoise, then watch the green LED (input), which should blink when you use the controller.  


[[Image:3.0_midi-io.gif]]
* '''Left:''' MIDI Clock (if enabled in the [[Preferences#MIDI|MIDI Preferences]])
* '''Right:''' General MIDI input and output


Or by clicking clicking the '''MIDI Map''' button in the upper right title bar area of Renoise:
== The MIDI Mapping Dialog at a Glance ==


[[Image:vvoois_renoise_midi_mapping_11.png]]
[[Image:3.0_midimapping.png]]


There you will also find two small LED which will show you the MIDI input/output that Renoise receives/sends. If you are in doubt if your MIDI controller is set up and connected correctly to Renoise, then watch the green LED, the input, which should blink as soon as you do something on your controller.
* '''Learn Mode:'''
** Highlights all the parts of Renoise available for MIDI Mapping (see image below). Select a highlighted button or parameter, then press a key or move a controller to assign.
** When clicked, ''"Learn Mode"'' will become ''"Test Mode"'', which allows you to test out what you've just mapped without having to close the MIDI Mapping dialog.
* '''Available & Active Mappings:''' Clicking the arrow will unfold a list of the currently available and active mappings.
* '''Selected parameter:''' Displays the currently mapped parameter in Renoise.
** '''Channel:''' The MIDI channel currently mapped from your controller.
** '''CC No:''' The CC number currently mapped from your controller.
** '''CC Type:''' The type of MIDI CC controller.
*** '''Absolute 7 bit:''' Use the CC value as an absolute value.
*** '''Relative signed bit:''' Increase at [065 - 127], decrease at [001 - 063].
*** '''Relative signed bit 2:''' Increase at [001 - 063], decrease at [065 - 127].
*** '''Relative bin offset:''' Increase at [065 - 127], decrease at [063 - 000].
*** '''Relative two's comp:''' Increase at [001 - 64], decrease at [127 - 065].
** '''Min:''' When mapping, for example, a MIDI fader or encoder to an effect parameter in Renoise, this allows you to set up the lower boundary of the controller.
** '''Max:''' This allows you to set up the upper boundary of the controller in Renoise. Tip: Swap min and max values to reverse the controller.
* '''Prefer 'Setting' instead of 'Toggling' On/Off states:''' Specify how the controller should change things that are turned On/Off in Renoise. See [[#Set, Trigger and Toggle Mappings|Set, Trigger and Toggle Mappings]] for a detailed description.
* '''Allow mapping the same Note/CC more than once:''' When enabled, you can assign the same controller button or fader (the same MIDI message) to multiple things in Renoise. As an example, this could be used for cross-fades of two track volume parameters.
* '''Record MIDI mapped parameters to automation:''' When enabled, any parameter changes you make with the MIDI controller will be recorded into either the [[Pattern Editor]] or [[Graphical_Automation|Automation Editor]]. This only applies when [[Recording_and_Editing_Notes|Edit Mode]] is enabled.


== The MIDI Mapping Dialog At a Glace ==


[[Image:vvoois_renoise_midi_mapping_2.png]]
[[Image:3.0_midimappablecontrols.png]]


* '''Learn mode''' (when clicked, it will turn into “Test Mode”: [[Image:vvoois_renoise_midi_mapping_test_mode.png]] which allows you to test out what you've just mapped - disable the learn mode - without having to close the MIDI Mapping Dialog)
Note that the highlighted colour may vary according to the [[Preferences#Theme|current interface Theme]].
* '''Available and active mappings''': When the arrow is clicked, it unfolds a list with an overview of currently active mappings and all available ones. More about this later)
* '''Selected parameter''' (in the example above „Lower Frame / Show Song Properties“): Displays the currently mapped parameter in Renoise.
** '''Channel''' : The MIDI channel currently mapped/broadcasted from your controller.
** '''CC No''' : The CC number currently mapped/broadcasted from your controller.
** '''CC Type''': This refers to the type of the MIDI CC controller.
*** '''Absolute 7 bit:''' use the CC value as absolute value
*** '''Relative signed bit:''' increase at [065 - 127], decrease at [001 - 063]
*** '''Relative signed bit 2:''' increase at[001 - 063], decrease at [065 - 127]
*** '''Relative bin offset:''' increase at [065 - 127], decrease at [063 - 000]
*** '''Relative two's comp:''' increase at [001 - 64], decrease at [127 - 065]
** '''Min''': When mapping, lets say a MIDI fader or encoder to a FX parameter in Renoise, this allows you to set up the lower bound you want to reach in Renoise with your controller.
** '''Max''': Just like min, but this controls the upper bound of the destination parameter in Renoise. TIP: Swap min and max values to reverse the controller.
* '''Allow mapping the same Note/CC more than once''': When enabled, you can assign the same button or fader on your controller (the same MIDI message), to multiple things in Renoise. This can for example be useful to do cross fades of two track volume parameters.
* '''Record Midi mapped parameters to automation:''' When enabled, any parameter changes you do with your MIDI controller will be recorded in either the [[Pattern Editor]] or [[Automation Editor]]. This only applies when having the global [[Edit Mode]] enabled. If you just want to perform and play around with your controller, never record the changes to the song as automation, then disable this option.
 
As soon as the MIDI mapping dialog opened, you will also notice that a lot of things in Renoises GUI got a different color. All those parts of the interface can be quickly MIDI mapped now:
 
[[Image:vvoois_renoise_midi_mapping_4.png]]


== Create Mappings ==  
== Create Mappings ==  


With the MIDI Mapping dialog opened, all you now have to do is:
* Click on a highlighted parameter or button.


* Clicking on the parameter or button that ot highlighted
[[Image:3.0_midimapping-create.png]]


[[Image:voois_renoise_midi_mapping_5.png]]
* Send MIDI from your controller (press a key, push a button, move a fader etc.)


* Send MIDI from your controller (bush button on the controller or move the faders, encoders)
[[Image:3.0_midimapping-create2.png]]


[[Image:vvoois_renoise_midi_mapping_7.png]]
Renoise will automatically map the selected parameter to the chosen key/button/fader of the controller.


As soon as you've done so, Renoise automatically mapped the selected parameter in Renoise to what you've moved or pressed on your controller. Thats it.
Note: When using endless encoders, which may send one of the relative CC modes noted above, slowly turn it to the left in order to map it. This allows Renoise to estimate how the encoder works (guess the relative CC modes) and stop you from having to keep manually resetting the mode.


Please note: When using endless encoders, which may send one of the relative CC modes noted above, turn them slowly left to map. This allows Renoise to guess how the encoder works (guess the relative CC modes). Then you don't have to set up the mode manually again and again.


== Remove Mappings ==
== Remove Mappings ==


To remove a mapping, click on the mapped part in Renoises GUI with the MIDI mapping dialog open. Then either hit the Backspace or Delete key on your keyboard. Alternatively press the '''clear''' button on the '''left''' side of the dialog next to the parameter description:
To remove a mapping, open the MIDI Mapping dialog and click on the mapped part of the Renoise GUI. Then hit the Backspace or Delete key on your keyboard. Alternatively, press the ''"Clear"'' button next to the parameter description:


[[Image:vvoois_renoise_midi_mapping_clear_param.png]]  
[[Image:3.0_midimapping-clear.png]]  


To clear '''all''' mapped parameters, click the '''clear''' button on the top of the dialog (next to the load and save buttons).
To clear all of the mapped parameters, click the ''"Clear"'' button at the top of the dialog (next to the ''"Load"'' and ''"Save"'' buttons).


== Im/Export Mappings ==


If you want to share MIDI mappings you've set up, you can do so by im/exporting those. To export them click on the "Load" button in the MIDI Mapping Dialog. This will prompt for a file name, where the mappings should be saved to. Later on, with the same song or in another song, you can import those settings again by hitting the "Export" button. Now simply select the file we've saved before.
== Import/Export Mappings ==


Note that Renoise won't be able to save/restore parameter mappings. Parameter mappings are mappings in Track DSP effects. Those will be different in every song, so it would not make much sense to do so. Whats im/exported instead, is everything you find under "Global Mappings" in the "Available and active mappings" list, like Start/Stop the song, select/trigger Sequences and so on...
If you want to share MIDI mappings you've set up, you can do so by importing/exporting them. To export, click on the ''"Save"'' button at the top of the dialog. This will prompt you for a file name and a location to save the mappings to. Exported settings can be imported by clicking the "Load" button and selecting a file.
 
Note that Renoise will not import/export parameter mappings as these are specific to [[Effect Chains|Track Effects]] and so will be completely different for every song. What is imported/exported though, are the parameters found under ''"Global Mappings"'' in the ''"Available and active mappings"'' list, such as Start/Stop, select/trigger sequences etc.
    
    
If you want to use the same mappings over and over again for your songs, then it might be useful to use a [[Template Song]]. Because all mappings are saved along in your songs, set up your favorite mappings in an empty document once, and then save this song as template. This will enable all your mappings by default, for every new song that you create.
If you want to repeatedly use the same mappings for your songs, then it might be useful to create a [[Template Song]]. Because all mappings are saved with a song, you can set up your favourite mappings in a blank song and save this as a template, enabling them by default for every new song.
 
 
== Set, Trigger and Toggle Mappings ==
 
The list of ''"Available and active mappings"'' shows you all the possible parameters and functions that can be mapped in Renoise. This list contains far more entries than what is shown highlighted in the GUI. For example, there are mappings to select the currently active track, to control the selected [[Effect Chains|Track Effects]] and much, much more.
 
Further, many things can be mapped in more than one way. Note the postfix of the mapping names in the list: [Trigger], [Toggle] or [Set].
 
[[Image:3.0_midimapping-list.png]]
 
* '''[Trigger]:''' Whenever your controller sends a command to Renoise, ignoring any values or states from the MIDI messages. This is, for example, used for things like "Start Playing" or "Stop Playing".
* '''[Toggle]:''' Allows the controller to only change an On/Off value, ignoring any values or states from the MIDI messages.
* '''[Set]:''' Allows the controller to specify exactly when something is On or Off, giving it total control.


To understand the difference between [Toggle] and [Set] better, let's take a look at what commands MIDI controllers may send out. Here is an example for a button that sends a MIDI controller change message:


'''A)'''<br>
''Button Pressed:'' Controller with Value 127 (or something above 64) is sent.<br>
''Button Released:'' Controller with Value 0 (or something below 64) is sent.<br>
''Button Pressed again:'' Same as before.<br>
''Button Released again:'' Same as before.<br>


== More About the ''Available and active mappings'' ==
'''B)'''<br>
''Button Pressed:'' Controller with Value 127 (or something above 64).<br>
''Button Released:'' Nothing.<br>
''Button Pressed again:'' Controller with Value 0.<br>
''Button Released again:'' Nothing.<br>


When opened, the list of available and active mappings shows you all possible parameters and functions that you can map in Renoise. This list contains way more entries and thus possibilities than whats highlighted in Renoise to be automatically mapped.  
'''C)'''<br>
''Button Pressed:'' Controller with Value 127 (or something above 64).<br>
''Button Released:'' Nothing.<br>
''Button Pressed again:'' Controller with Value 127 is sent again.<br>
''Button Released again:'' Nothing.<br>


There are mappings to for example select the currently active track, to control the selected Track DSP FX and much more.  
Some controllers may use use protocol A, others B or C, or even other non-listed combinations. Renoise needs to deal with all of these possibilities, which is why the [Toggle] and [Set] options exist.


Further, some parameters can be mapped on two or three different ways:
Now let's say you want to set something On or Off in Renoise. You have to tell Renoise how it should deal with the incoming messages. Take the global ''"Edit Mode"'' as an example,
where there exists two variants for it in the list of available MIDI mappings:  


# [Set]
* '''Edit Mode [Toggle]:''' Will ignore Controller Values of 0, so you can use controller protocol A or C.
# [Trigger]
* '''Edit Mode [Set]:''' Will not ignore Controller Values of 0, but will instead interpret them as ''"state"'': CC value > 64 On, CC value < 64 Off, so you can use controller protocol B with encoders or faders.
# [Toggle]  


[[Image:vvoois_renoise_midi_mapping_list.png]]
If you are unsure what the right mode is for your controller, simply try out both variants. If this works, then select that variant for the other mappings, because it's very likely that the controller sends MIDI in the same manner for the other buttons too. Note that Renoise will always choose the [Toggle] variant when executing MIDI ''"Learn Mode"''.


Lets try to understand what [Set], [Trigger] or [Toggle] means.
To automatically choose [Set] or [Toggle]:


A MIDI controller can send out MIDI in many ways. Here is an example for a button:
When clicking on something in the Renoise GUI to create mappings, the ''"Prefer 'Setting' instead of 'Toggling' On/Off states"'' option in the MIDI mapping dialog defines which mappings should be used for your controller. [Set] will be selected when the option is enabled, otherwise [Toggle] is used. This way you only have to decide which type of mapping you want and can quickly create the mapping without using the ''"Available And Active Mappings"'' list.


A)
Button Pressed: Controller with Value 127 (or something above 64) is sent
Button Released: Controller with Value 0 (or something below 64) is sent
Button Pressed again: same as before
Button Released again: same as before


B)
== Dynamic Mappings ==
Button Pressed: Controller with Value 127 (or something above 64)
Button Released: nothing
Button Pressed again: Controller with Value 0
Button Released again: nothing


C)
The list of ''"Available and active mappings"'' shows you all the possible parameters and functions that can be mapped in Renoise. This list contains far more entries than what is shown highlighted in the GUI. For example:
Button Pressed: Controller with Value 127 (or something above 64)
Button Released: nothing
Button Pressed again: Controller with Value 127 is sent again
Button Released again: nothing


So some controllers may use use protocol A, others B or C, even other non listed combination are possible. Often this can also be configured for the controllers. We want Renoise to deal with all those possibilities, thats why the [Trigger], [Toggle] [Set] options exist.
=== Selected Track Mappings ===


Lets say you want to set something ON or OFF in Renoise, you then have to 'tell' Renoise how it should deal with the incoming messages. Lets choose the global "Edit Mode" as example:
* '''Global Mappings/Navigation/Tracks:''' Allows you to switch over to the next or previous track in Renoise.
* '''Global Mappings/Track Muting/Current Track:''' Allows you to mute/unmute the currently selected track.
* '''Global Mappings/Track Levels/Volume/Current Track:''' Allows you to control the volume of the current track.
* '''Global Mappings/Track Levels/Panning/Current Track:''' Allows you to control the panning of the current track.


There are two variants for the "Edit Mode" in the list of available MIDI mappings:
Using this you can control every track in a song with just a few buttons and faders on your controller.


Edit Mode [Toggle] -> will ignore Controller Values of 0, so you can use controller A) or C)
=== Selected DSP FX Mapping ===
Edit Mode [Set] -> will not ignore Controller 0 Values, but interpret them as "state": CC value > 64 ON, CC value < 64 OFF, so you can use controller B) or encoders or faders


If you are unsure whats the „right“ mode for you controller, simply try out both variants. Then select the variant also for other mappings for this controller because its very likely that it sends MIDI the same way for other buttons as well. Note that Renoise always chooses the [Toggle] variants when doing the MIDI learning by clicking on the highlighted frames in the GUI.
The same is also possible for [[Effect Chains|DSP Effects]]:


== Dynamic Mappings ==
* '''Global Mappings/Navigation/Track DSPs/Select:''' Mapping the selection of [[Effect Chains|DSP effects]].
* '''Global Mappings/Track DSPs/Selected FX/Parameter #XX:''' Controlling up to 32 DSP effect parameters.
* '''Global Mappings/Track DSPs/Selected FX (Mixer Subset)/Parameter #XX:''' Controlling up to 32 DSP effect parameters in the Mixer.
 
When using the ''"Selected FX (Mixer Subset)"'' mappings, only the [[Effect Chains|DSP effect]] parameters which are seen in the Mixer can be controlled. This allows you to customise which parameters are seen (right-click on the FX in the Mixer and choose a parameter from the ''"Show Sliders"'' option) and controlled, so you can quickly and easily navigate through a small subset of parameters during a live performance.
 
=== Sequencer Navigation & Triggering ===
 
Just like the track and effects, the sequencer can be also be controlled in a dynamic manner. Feel free to explore this on your own, using the above information as a guide.
 
 
== The Duplex Tool ==
 
[[Tools|Renoise Tools]] are downloadable packages that extend the functionality of the program, using the Renoise Scripting API. Created with this, Duplex is a flexible system for using external controllers in Renoise. When you install Duplex, each supported device has a number of configurations that control important Renoise parameters like the Mixer, Matrix or Effects. You can combine these so-called 'applications' to form your own, unique mix of features. For example, some pre-installed device configurations have entries like 'Mixer+Effect'.


TODO: Sequence, Track muting triggering, automapping Track FX parameters
You can download and find more information about the Duplex Tool at [http://renoise.com/tools/duplex its page in the Renoise Tools] section of the site.

Latest revision as of 14:09, 4 October 2019

MIDI Mapping

With MIDI Mapping you can remotely control Renoise from your external MIDI controller or master keyboard. Nearly everything you can do in Renoise with the mouse or the keyboard can also be done from an external MIDI controller.

MIDI mappings are saved along with your song, unlike the keyboard mappings in the Preferences, allowing you to create unique MIDI mapping sessions for every song and also share the settings by either using Template Songs or by importing/exporting common MIDI mappings in the MIDI dialog (see below).

Renoise will never automatically detect your MIDI controller and configure the mappings for you. You have to manually (at least once for a Template Song) set up the controller.


MIDI Device Setup

First make sure Renoise knows which device you want to use for MIDI mapping by setting it in the "Edit -> Preferences -> MIDI" panel.

Opening the MIDI Mapping Dialog

The MIDI Mapping dialog box can be opened with the "Options -> MIDI Mapping..." option in the main menu (or by pressing "Left Control/Command + M"). It can also be opened by clicking the 3.0 upperstatusbar-midimap.png button to the right of the VU meters at the top of the Renoise interface.

Next to the "MIDI Map" button you will also find two small LEDs which show the MIDI input/output that Renoise receives/sends. If you are in doubt about whether your MIDI controller is set up and connected correctly to Renoise, then watch the green LED (input), which should blink when you use the controller.

3.0 midi-io.gif

  • Left: MIDI Clock (if enabled in the MIDI Preferences)
  • Right: General MIDI input and output

The MIDI Mapping Dialog at a Glance

3.0 midimapping.png

  • Learn Mode:
    • Highlights all the parts of Renoise available for MIDI Mapping (see image below). Select a highlighted button or parameter, then press a key or move a controller to assign.
    • When clicked, "Learn Mode" will become "Test Mode", which allows you to test out what you've just mapped without having to close the MIDI Mapping dialog.
  • Available & Active Mappings: Clicking the arrow will unfold a list of the currently available and active mappings.
  • Selected parameter: Displays the currently mapped parameter in Renoise.
    • Channel: The MIDI channel currently mapped from your controller.
    • CC No: The CC number currently mapped from your controller.
    • CC Type: The type of MIDI CC controller.
      • Absolute 7 bit: Use the CC value as an absolute value.
      • Relative signed bit: Increase at [065 - 127], decrease at [001 - 063].
      • Relative signed bit 2: Increase at [001 - 063], decrease at [065 - 127].
      • Relative bin offset: Increase at [065 - 127], decrease at [063 - 000].
      • Relative two's comp: Increase at [001 - 64], decrease at [127 - 065].
    • Min: When mapping, for example, a MIDI fader or encoder to an effect parameter in Renoise, this allows you to set up the lower boundary of the controller.
    • Max: This allows you to set up the upper boundary of the controller in Renoise. Tip: Swap min and max values to reverse the controller.
  • Prefer 'Setting' instead of 'Toggling' On/Off states: Specify how the controller should change things that are turned On/Off in Renoise. See Set, Trigger and Toggle Mappings for a detailed description.
  • Allow mapping the same Note/CC more than once: When enabled, you can assign the same controller button or fader (the same MIDI message) to multiple things in Renoise. As an example, this could be used for cross-fades of two track volume parameters.
  • Record MIDI mapped parameters to automation: When enabled, any parameter changes you make with the MIDI controller will be recorded into either the Pattern Editor or Automation Editor. This only applies when Edit Mode is enabled.


3.0 midimappablecontrols.png

Note that the highlighted colour may vary according to the current interface Theme.

Create Mappings

  • Click on a highlighted parameter or button.

3.0 midimapping-create.png

  • Send MIDI from your controller (press a key, push a button, move a fader etc.)

3.0 midimapping-create2.png

Renoise will automatically map the selected parameter to the chosen key/button/fader of the controller.

Note: When using endless encoders, which may send one of the relative CC modes noted above, slowly turn it to the left in order to map it. This allows Renoise to estimate how the encoder works (guess the relative CC modes) and stop you from having to keep manually resetting the mode.


Remove Mappings

To remove a mapping, open the MIDI Mapping dialog and click on the mapped part of the Renoise GUI. Then hit the Backspace or Delete key on your keyboard. Alternatively, press the "Clear" button next to the parameter description:

3.0 midimapping-clear.png

To clear all of the mapped parameters, click the "Clear" button at the top of the dialog (next to the "Load" and "Save" buttons).


Import/Export Mappings

If you want to share MIDI mappings you've set up, you can do so by importing/exporting them. To export, click on the "Save" button at the top of the dialog. This will prompt you for a file name and a location to save the mappings to. Exported settings can be imported by clicking the "Load" button and selecting a file.

Note that Renoise will not import/export parameter mappings as these are specific to Track Effects and so will be completely different for every song. What is imported/exported though, are the parameters found under "Global Mappings" in the "Available and active mappings" list, such as Start/Stop, select/trigger sequences etc.

If you want to repeatedly use the same mappings for your songs, then it might be useful to create a Template Song. Because all mappings are saved with a song, you can set up your favourite mappings in a blank song and save this as a template, enabling them by default for every new song.


Set, Trigger and Toggle Mappings

The list of "Available and active mappings" shows you all the possible parameters and functions that can be mapped in Renoise. This list contains far more entries than what is shown highlighted in the GUI. For example, there are mappings to select the currently active track, to control the selected Track Effects and much, much more.

Further, many things can be mapped in more than one way. Note the postfix of the mapping names in the list: [Trigger], [Toggle] or [Set].

3.0 midimapping-list.png

  • [Trigger]: Whenever your controller sends a command to Renoise, ignoring any values or states from the MIDI messages. This is, for example, used for things like "Start Playing" or "Stop Playing".
  • [Toggle]: Allows the controller to only change an On/Off value, ignoring any values or states from the MIDI messages.
  • [Set]: Allows the controller to specify exactly when something is On or Off, giving it total control.

To understand the difference between [Toggle] and [Set] better, let's take a look at what commands MIDI controllers may send out. Here is an example for a button that sends a MIDI controller change message:

A)
Button Pressed: Controller with Value 127 (or something above 64) is sent.
Button Released: Controller with Value 0 (or something below 64) is sent.
Button Pressed again: Same as before.
Button Released again: Same as before.

B)
Button Pressed: Controller with Value 127 (or something above 64).
Button Released: Nothing.
Button Pressed again: Controller with Value 0.
Button Released again: Nothing.

C)
Button Pressed: Controller with Value 127 (or something above 64).
Button Released: Nothing.
Button Pressed again: Controller with Value 127 is sent again.
Button Released again: Nothing.

Some controllers may use use protocol A, others B or C, or even other non-listed combinations. Renoise needs to deal with all of these possibilities, which is why the [Toggle] and [Set] options exist.

Now let's say you want to set something On or Off in Renoise. You have to tell Renoise how it should deal with the incoming messages. Take the global "Edit Mode" as an example, where there exists two variants for it in the list of available MIDI mappings:

  • Edit Mode [Toggle]: Will ignore Controller Values of 0, so you can use controller protocol A or C.
  • Edit Mode [Set]: Will not ignore Controller Values of 0, but will instead interpret them as "state": CC value > 64 On, CC value < 64 Off, so you can use controller protocol B with encoders or faders.

If you are unsure what the right mode is for your controller, simply try out both variants. If this works, then select that variant for the other mappings, because it's very likely that the controller sends MIDI in the same manner for the other buttons too. Note that Renoise will always choose the [Toggle] variant when executing MIDI "Learn Mode".

To automatically choose [Set] or [Toggle]:

When clicking on something in the Renoise GUI to create mappings, the "Prefer 'Setting' instead of 'Toggling' On/Off states" option in the MIDI mapping dialog defines which mappings should be used for your controller. [Set] will be selected when the option is enabled, otherwise [Toggle] is used. This way you only have to decide which type of mapping you want and can quickly create the mapping without using the "Available And Active Mappings" list.


Dynamic Mappings

The list of "Available and active mappings" shows you all the possible parameters and functions that can be mapped in Renoise. This list contains far more entries than what is shown highlighted in the GUI. For example:

Selected Track Mappings

  • Global Mappings/Navigation/Tracks: Allows you to switch over to the next or previous track in Renoise.
  • Global Mappings/Track Muting/Current Track: Allows you to mute/unmute the currently selected track.
  • Global Mappings/Track Levels/Volume/Current Track: Allows you to control the volume of the current track.
  • Global Mappings/Track Levels/Panning/Current Track: Allows you to control the panning of the current track.

Using this you can control every track in a song with just a few buttons and faders on your controller.

Selected DSP FX Mapping

The same is also possible for DSP Effects:

  • Global Mappings/Navigation/Track DSPs/Select: Mapping the selection of DSP effects.
  • Global Mappings/Track DSPs/Selected FX/Parameter #XX: Controlling up to 32 DSP effect parameters.
  • Global Mappings/Track DSPs/Selected FX (Mixer Subset)/Parameter #XX: Controlling up to 32 DSP effect parameters in the Mixer.

When using the "Selected FX (Mixer Subset)" mappings, only the DSP effect parameters which are seen in the Mixer can be controlled. This allows you to customise which parameters are seen (right-click on the FX in the Mixer and choose a parameter from the "Show Sliders" option) and controlled, so you can quickly and easily navigate through a small subset of parameters during a live performance.

Sequencer Navigation & Triggering

Just like the track and effects, the sequencer can be also be controlled in a dynamic manner. Feel free to explore this on your own, using the above information as a guide.


The Duplex Tool

Renoise Tools are downloadable packages that extend the functionality of the program, using the Renoise Scripting API. Created with this, Duplex is a flexible system for using external controllers in Renoise. When you install Duplex, each supported device has a number of configurations that control important Renoise parameters like the Mixer, Matrix or Effects. You can combine these so-called 'applications' to form your own, unique mix of features. For example, some pre-installed device configurations have entries like 'Mixer+Effect'.

You can download and find more information about the Duplex Tool at its page in the Renoise Tools section of the site.