Back in the heady days of analogue synthesis, people tried to find ways of playing synths automatically, and various ideas emerged. One early design was the matrix sequencer, which had perhaps eight or 16 steps marked along the bottom, and various outputs up the side. By pressing a key in the matrix a control voltage appeared at the appropriate output when that particular step was activated. A clock signal was used to cycle round the steps, which triggered sounds depending on what buttons had been set.
Whilst being a very simple design, it still has its devotees and has been revisited in various modern software applications, such as Propellerhead's Reason. However, Logic has no dedicated matrix sequencer and, while the Hyper Edit window can be adapted to act in this way, I prefer to use the Environment. So here's how to create a basic eight-step, two-line matrix for yourself.
Doing The Groundwork
First you need a signal to be automatically generated in the Environment during playback, and for this you need to use a MIDI Metronome Click object with just the Bar field ticked in its Parameters it will mark the start of every bar. To get the matrix to run at a comfortable rate at 120bpm, it is necessary to go through the eight-step sequence twice. In order to create a second trigger halfway through the bar, cable the metronome straight into a Delay Line object in its Parameters, set Repeat to one and Delay to '8 0', making sure Thru is ticked.
To route the MIDI Note On message to different parts of a matrix, a Channel Switcher object needs to be used this object is vital to the matrix sequencer design, because it can operate under remote control. First let's concentrate on setting up the automated switching action. A MIDI Continuous Controller number seven message (CC7) with a value of 127 can be used to advance the switch, whilst the same message with a value of zero will reset it back to the start. To convert the MIDI Metronome Click's note messages to the correct Continuous Controller messages, you need to use Transformer objects.
Mac OS X: Logic Audio Platinum v6.1.0
Mac OS 9: Logic Audio Platinum v6.1.0
PC: Logic Audio Platinum v5.5.1
Having the right signals is one thing, but we also need to duplicate them we currently have two per bar, yet for an eight-step sequence repeated twice we need 16 separate signals. Cable the output of the 'switch advance' Transformer into seven Delay Line objects, unticking Thru in each one's Parameters and setting the Delays from '1 0' through to '7 0'. Next, cable the 'reset switch' Transformer into another Delay Line with Thru unticked in its Parameters and Delay set to '8 0'. Finally, cable all eight Delay Lines through a Monitor object to merge them, and connect this to a new Cable Switcher. When we have some outputs for this Cable Switcher, it should happily cycle round eight steps. This setup can be seen in Screen 2.
Creating The Notes
That provides the switching control, so now we need to send a signal though the Cable Switcher. Take a second output from the Monitor object to route the eight Delay Lines to a new Transformer object, this time changing all the CC7 messages (both 'advance' and 'reset') back into Note On messages with velocity values of 127 a setting to do this can be seen in Screen 3. Cable this Transformer to the Cable Switcher these Note On messages will be used to activate a row of buttons which will form the steps of the matrix.
Some of Logic's plug-ins have so many parameters that the designers have chosen not to show all of them in the plug-in window's main Editor view. However, if you'd like to see them, then click the circular '001 011' button at the top of the window and they'll appear under the main Editor view. Mike Senior Audio playback from both the Audio window and the Sample Editor uses the Track Audio object selected in the Cha numerical field at the left-hand side of the window. It's a good idea to set this to an Audio Track object not used in the Arrange window, so that muting and effects processing won't be applied when auditioning audio files. Note that the setting is not preserved with the song or between sessions with Logic it is always reset to one. Len Sasso
The button with the chain links icon at the top left of most of Logic's windows has three modes, indicated by the colour of the button: off (gray), Link (pink), and Contents Link (gold). In Link mode, the window's view will change in synchronisation with the top window. In Contents Link mode, its view will change in synchronisation with the selected object in the top window. Link mode is handy for windows that display similar objects, such as two MIDI editors. Contents Link mode is handy for synchronising MIDI editors to the Arrange window. The Sample Editor window is an exception it only offers Link mode, which causes it to show the contents of the audio region selected in any other window. Len Sasso
Some of Logic's plug-ins have so many parameters that the designers have chosen not to show all of them in the plug-in window's main Editor view. However, if you'd like to see them, then click the circular '001 011' button at the top of the window and they'll appear under the main Editor view. Mike Senior
Audio playback from both the Audio window and the Sample Editor uses the Track Audio object selected in the Cha numerical field at the left-hand side of the window. It's a good idea to set this to an Audio Track object not used in the Arrange window, so that muting and effects processing won't be applied when auditioning audio files. Note that the setting is not preserved with the song or between sessions with Logic it is always reset to one. Len Sasso
It's worth noting here that a strange quirk of the Transformer object means that the zero-velocity Transformer will actually output velocities of one. This is fine for switching our buttons, which will default to sending out notes of a fixed duration. To get a variable duration for the notes requires some complicated routing, which is beyond the scope of this article. However, the note durations can be easily changed in the Event List window once the data has been created.
So, let's recap. We now have a Cable Switcher which sends a Note On message with a velocity value of 127 followed by a Note On message at a velocity of zero via eight different outputs which are switched 16 times a bar. The hard work is now complete, because the signals have been created, much like the control-voltages of old. What we need to do now is decide whether or not to send each one to our instrument.
Building The Selection Matrix
Create a horizontal row of eight buttons by selecting Button from the Fader submenu of the New menu, and set the In field in the Parameters to match the notes being sent by the Cable Switcher. Cable eight outputs of the Cable Switcher into each of these buttons, one per button. With the Range fields in the Parameters set to one and 127, the buttons should switch on and off appropriately, providing a visual representation of which step the matrix sequencer is on. Bear in mind that Logic gets the MIDI data right first and updates the screen second, so the visual switching may lag slightly.
Once the second row of buttons is constructed in the same way, all that remains to be done is to send from each row's Transformer output to a single Sequencer Input object, from where it can be routed to instruments and recorded. This last section of the setup is shown in Screen 5, but if you're still scratching your head about how it all works, you can investigate the final setup for yourself by downloading the demo Song file. This Logic Song file contains a Matrix Sequencer Environment Layer in which you can see Steve's complete matrix sequencer device. The Song is in Logic v4.8 format.
Beyond The Matrix