an articulation management system for REAPER

First Run


Let’s first get some terminology and basic operational stuff out of the way:

Track Setup

In order for Reaticulate to work on a track, you must first load the Reaticulate FX plugin at the top of the FX chain. The job of the Reaticulate FX is to translate program change MIDI messages (as emitted by Reaticulate’s GUI) to the appropriate MIDI needed by the virtual instrument on that track to switch articulations.

A bank is a collection of articulations that generally describes a multi-articulation patch of a virtual instrument. A track can contain a number of banks provided there are no conflicting articulations (program numbers) between banks on the same track.

Once added, each bank has a few UI elements:

Factory Banks

Banks for a number of existing VI libraries come bundled with Reaticulate. These generally work out of the box with the patch, or require minimal tweaks to the patch which will be indicated in a message when you add a factory bank. (For example, banks for Spitfire libraries usually require setting the patch to Locked to UACC.)

You can use these to get started, but of course you’re almost certainly going to want to roll your own.

User Banks

In the alpha preview of Reaticulate, there is no GUI for creating custom banks. This means some manual text editing is necessary to configure banks. Click here to learn how to create your own custom banks for Reaticulate.



Hopefully the GUI will be fairly intuitive. Here are some tips that may not be obvious:



Reaticulate installs a number of Reaper actions that you can bind to keyboard shortcuts or MIDI controller events. Most of the actions are designed to make Reaticulate usable from a control surface or tablet (e.g. running TouchOSC or Lemur).

All actions are prefixed with Reaticulate so you can easily find them by searching for Reaticulate in Reaper’s action list.

Action Description
Activate articulation by CC on default channel When you bind a CC to this action, sending the CC with value <n> will activate the articulation defined by program <n>. This is the action you probably want to use from a control surface. The articulation is activated on the default channel (described above).
Activate articulation by CC on channel <n> Like the previous action, except explicitly activates the articulation on channel <n> instead of the default channel. There are 16 separate actions for the 16 different MIDI channels.
Set default MIDI Channel by CC Sending value <n> on the CC bound to this action will set the default channel to <n>.
Set default MIDI Channel to <n> Sets the default channel to <n>. There are 16 separate actions for the 16 different MIDI channels.
Activate articulation by CC in group <n> on default channel (MIDI CC relative or mousewheel) Scrolls through the articulations in group <n>. It can be convenient to bind this action to an encoder as a quick way to flip through articulations from a control surface.
Activate previous/next articulation in group <n> on default channel These actions can be assigned to previous/next keys (or control surface buttons) to discretely scroll through the articulations on group <n>
Disable/Enable/Toggle CC feedback to MIDI feedback device If CC feedback is configured (see below), these actions control whether or not it’s active
Dump current CC values on select track to MIDI feedback device Replays all last seen CCs on all channels to the MIDI feedback device (if configured).

CC Feedback to Control Surface


MIDI controllers that send CCs can sometimes also receive those same CCs and use those values to set the controller’s current state. There are many devices with this capability, but some examples are:

Many control surfaces with motorized faders (such as the one depicted right) can be configured such that the faders transmit MIDI CC values and can receive CCs back to move the faders to the new values.

Even if your control surfaces lacks a custom mode to work directly with CCs (and supports only e.g. Mackie Control Protocol [MCP] or HUI), if you’re particularly enterprising, it’s possible to shim a translation layer between Reaper and the controller. For example, with a control surface supporting MCP, software such as Bome MIDI Translator Pro could be used to translate between CCs on the DAW side and pitch bend messages (used by MCP) on the control surface side.

Reaticulate provides a built-in mechanism to transmit CC values to a MIDI controller:


To configure this:


You almost certainly want to leave this set to 1, in which case the CC events sent to the control surface are standard MIDI.

More esoteric custom configurations may benefit from using a different MIDI bus for the outbound CCs. When a bus other than 1 is used, Reaper will output SysEx MIDI events like this:

F0 FF 52 50 62 0F B0 0B 30 F7