Creating Your MIDI Signal Path

Before any MIDI events received at your computer’s MIDI inputs can be recorded by Logic Express, there must be a connection between two Environment objects:

Figure. Physical and Sequencer Input objects in the Environment window.

In Logic Express, incoming MIDI events (which arrive at the Sequencer Input object) are always directed to the selected track in the Arrange area’s track list, where they can be recorded in MIDI regions.

The events played by the track region are mixed with incoming events (if any), and sent to the Environment object that the track is routed to.

From here (the multi-instrument object), the events are directed to a MIDI output (see Creating Direct Output Assignments).

You can insert objects into the signal path between the Physical Input object and the Sequencer Input object if you wish (a MIDI monitor object, for example, which allows you to see incoming MIDI events).

You can also insert objects between the arrange track and its destination object, enabling other Environment processing. The arrange track itself is not represented by an Environment object, but you can use the Track Assignment menu to route the track’s output to an Environment object.

For example, the output of an arrange track (the note events in a MIDI region) routed to (software) instrument channel 1 can be arpeggiated. To do this, you would create an arpeggiator object (this will be easiest on the Mixer layer of the Environment), assign the arpeggiator to the arrange track (Control-click the track header to access the Track Assignment menu, and browse to the arpeggiator object), then cable the arpeggiator out to instrument channel 1.

Figure. Showing how to create and assign an arpeggiator object.

On playback, the note events in the region will be processed by the arpeggiator object, and routed (via the cable) into the instrument channel, which plays back the processed (arpeggiated) MIDI note data.

Creating Direct Output Assignments

You can create a direct output connection to a physical MIDI output from any of the following object types:

  • Instrument

  • Multi-Instrument

  • Mapped Instrument

  • Touch Tracks

  • GM Mixer

  • MIDI Metronome Click

To make a direct output connection
  • Click the Port menu in the object’s Parameter box, and choose a MIDI output.

    Figure. Port pop-up menu showing MIDI outputs.

    The Port menu lists all MIDI Outputs, plus the following options:

    • The Off setting completely disables the connection to the MIDI interface port.

    • The All option routes the object’s output to all available MIDI ports. This may be useful if the device is sending a pulse, for example.

Note: If you have a MIDI interface with more than one output port (or even several interfaces that can be stacked), you can set up a direct connection to one of the individual ports (1 to 63) of that (or those) interfaces.

Any object with a directly assigned output is indicated by a white triangle on its right side. The triangle is hollow when there is no direct assignment.

Figure. Objects with and without direct output assignments.

Cabling Environment Objects

The cabling between Environment objects provides control over the entire MIDI signal path. A cable is normally shown as a gray or colored line between a source and destination object.

Cables are assigned the same color as the source object, which makes following the signal path much easier. You can, however, turn off cable coloring, and render them in gray with the View > Colored Cables function.

Objects always have an (invisible) input on the left, and an output on the right side. The output of an object is shown as a small triangle, pointing to the right.

To make a connection between two objects—method 1
  1. Click-hold the triangle of the source object.

    Figure. Showing how to create a cable connection from an object’s output.

    The mouse pointer turns into a plug (patch cord) that represents a cable connection coming from the object’s output.

  2. Move the cable plug over the destination object, and release the mouse button when the object is highlighted (this happens automatically when you touch it).

    A cable connection is created between the two objects.

    Figure. Showing how to create a cable connection between two objects.

    If the source object has already been directly assigned to a MIDI output port, a dialog asks if you want to replace the direct assignment. You have three options:

    • Cancel: The connection is not made, and the direct output assignment of the source object remains intact.
    • No: Your cabling takes place, but the direct output assignment remains intact. This means that the source object is connected to two destinations—one to another object via the cable, and one via the direct output assignment.
    • Remove: Your cabling occurs, and the direct output assignment is removed. (This is the default selection, because you generally won’t want an object connected to two different destinations.)
To make a connection between two objects—method 2
  1. Option-click the triangle, which opens a hierarchical menu.

    Figure. Choosing a destination object from the pop-up menu.
  2. Browse to the layer that the destination object is on, and choose the object name.

    A cable connection is created between the two objects.

    This method is ideal for creating connections between layers, but can also be useful when a large number of closely spaced objects exists on a single layer.

    You can also open a second Environment window (showing the destination layer), and connect the objects graphically between the windows.

    A cable connection to another layer looks like this:

    Figure. Showing a cable connection between two objects in different Environment windows.
To remove a cable connection
Do one of the following:
  • Click the cable with the Eraser tool.

  • Select the cable and press Delete.

  • Grab the cable, and plug it back into (drag it over) the triangle of the source object.

  • Use Edit > Clear Cables Only to remove all selected cables, without also clearing any objects that happen to be selected.

    This is handy when you want to clear all cables leading to (or from) one or more objects, given that selecting objects also selects all associated cable connections.

Making Multiple Cable Connections

There is no limit to the number of cables that you can plug in to a destination object. All MIDI signals are mixed at the object’s input.

To make multiple output connections from an object
  1. Connect the object to a destination object.

    Once an output from an object is used (cabled to another object), another output triangle automatically appears.

    Figure. Showing multiple output connections on an object.
  2. Use the second output triangle to create a second cable connection to a further destination object.

    Once this is done, a third output triangle appears, and so on.

Some objects have special outputs, and are exceptions to the previous task. One example is channel splitter objects (see Channel Splitter Objects), which feature several (functionally different) outputs. Other special objects include cable switchers (see Cable Switchers) and the Physical Input object (see Physical Input Objects). In these objects, each output can only be used once.

To route the signal of special output objects (outlined above) to several destinations
  1. Create a monitor object (see Monitor Objects) by choosing New > Monitor.

  2. Plug the cable from the desired object output into the monitor object.

  3. Cable from the monitor object to as many other destinations as you’d like.

    The monitor object allows you to view the MIDI events flowing through it.

    Figure. Showing the cabling between one object and several destinations.
To select a common destination for several existing cables
  1. Select the cables.

    Tip: If the cables are already connected to a common destination, the simplest way of doing this is to select the destination object.

  2. Grab one of the cables, and plug it into the new destination object.

    You are asked if you want to connect all selected cables with the new destination.

  3. Click Connect, or press Return.

Cabling Objects Serially and in Parallel

You can cable objects in series or in parallel. Cabling objects in series is handy for quickly connecting groups of faders used to control a MIDI mixing console, for example.

To cable a group of objects serially
  • Select all objects you want to cable, then choose Options > Cable serially.

The objects are cabled in series, starting with the top-left object.

To cable a group of the same type of object (transformers, faders, and so on) to a common destination
  1. Cable one of the source objects to the destination.

  2. Select the destination object and choose Edit > Copy.

  3. Select the other objects that you want to connect to the same destination, and choose Options > Apply Buffer Template to > Cable(s).

You can copy more complex cabling configurations this way, too. Just ensure that the type(s) of objects in the group that you want to copy matches the type(s) of objects in the group that you apply the buffer template to.