Technical notes index

GARAGEBAND CONTROL CODES


GarageBand's control messages are non-standard (they would be, wouldn't they). These are the control messages sent by the iControl for each function: all sent on Channel 1 (I think probably any channel would do).

However it seems doubtful that sending these messages from some other controller will have the same results. GarageBand does not respond to most of these controllers in their intended form, but I found that 64 (Sustenuto Pedal) caused that result rather than 'Record track 3' when assigned to the Modulation wheel on my Evolution keyboard: so it's possible that some or all of these commands only work when the iControl's driver (hidden within GarageBand) is in use.

The iControl was designed to work with GarageBand 2. I haven't tried the later versions, but comments on the Apple Forums suggests that their support for the iControl is flaky at best.

iControlRECORD
Controller 106 127
Controller 106 0

SKIP TO BEGINNING
Controller 107 127
Controller 107 0

SKIP BACK
Controller 108 127
Controller 108 0

PLAY
Controller 109 127
Controller 109  0

SKIP FORWARD
Controller 110 127
Controller 110 0

CYCLE
Controller 111 127
Controller 111 0

JOG FORWARD
Controller 24 1

JOG BACKWARD
Controller 24 127


TRACK CONTROLS

Note that the tracks are controlled in groups of 8, selected by the Bank Select buttons. 'Volume' and 'Pan' buttons assign the rotary controllers on each track to either of theses parameters.

Each button sends its parameter and value 127 on press and 0 on release. Each rotary controller sends its parameter and value 127 on one click clockwise (up) and 0 on one click anticlockwise (down).

The names given are those reported by MIDI Monitor: I have included the standard MIDI Controller numbers in square brackets where I could identify them. (Contoller numbers below are the same, e.g. Controller 88 is [88]

Select Volume: Data Button -1 [06?] press 127 release 0
Select Pan: Non-Registered Parameter LSB [98] press 127 release 0

Track 1
Select: Controller 88 press 127 release 0
Record: Hold Pedal [?] press 127 release 0
Mute: General Purpose 5 [80] press 127 release 0
Solo: Release Time [72] press 127 release 0
Track Volume/Pan: General Purpose 1 (coarse) [16] up 1 down 127

Track 2
Select: Controller 89 press 127 release 0
Record: Portamento On/Off [84] press 127 release 0
Mute: General Purpose 6 [81]press 127 release 0
Solo: Attack Time [73]press 127 release 0
Track Volume/Pan: General Purpose 2 [17](coarse) up 1 down 1

Track 3
Select: Controller 90 press 127 release 0
Record: Sustenuto Pedal [64] press 127 release 0
Mute: General Purpose 7 [82] press 127 release 0
Solo: Brightness [?] press 127 release 0
Track Volume/Pan: General Purpose 3 (coarse)[18] up 1 down 127

Track 4
Select: Reverb Send Level [?] press 127 release 0
Record: Soft Pedal [67] press 127 release 0
Mute: General Purpose 8 [83] press 127 release 0
Solo: Decay Time [72?] press 127 release 0
Track Volume/Pan: General Purpose 4 (coarse) [19] up 1 down 127

Track 5
Select: Tremolo Depth [92] press 127 release 0
Record: Legato Pedal [68] press 127 release 0
Mute: Portamento Control [84] press 127 release 0
Solo: Vibrato Rate [?] press 127 release 0
Track Volume/Pan: Controller 20 up 1 down 127

Track 6
Select: Chorus Send Level [93?] press 127 release 0
Record: Hold 2 Pedal [?] press 127 release 0
Mute: Controller 85 press 127 release 0
Solo: Vibrato Depth [?] press 127 release 0
Track Volume/Pan: Controller 21 up 1 down 127

Track 7
Select: Celeste/Detune Depth [94] press 127 release 0
Record: Sound Variation [70] press 127 release 0
Mute: Controller 86 5 press 127 release 0
Solo: Vibrato Delay[?]  press 127 release 0
Track Volume/Pan: Controller 22 up 1 down 127

Track 8
Select: Phaser Depth [95] press 127 release 0
Record: Timbre/Resonance [71] press 127 release 0
Mute: Controller 87 press 127 release 0
Solo: Sound control 10 [?] press 127 release 0
Track Volume/Pan: Controller 23 up 1 down 127

Bank (of 8 tracks):
Up: Controller 104 press 127 release 0
Down: Controller 105 press 127 release 0

Master Volume:
Channel Volume (coarse) - 0-127 with position of slider

Roger Wilmut