How to Use Your iPhone as a MIDI Controller in GarageBand

This guide covers GarageBand for Mac. The setup is the shortest of any DAW we write about, because GarageBand has no MIDI device list and nothing to switch on — connect the iPhone at the operating-system level and GarageBand is already listening. It is also the most constrained, and that is worth saying up front: GarageBand has no MIDI learn, so you cannot point an incoming CC at any knob you like. The method that works is to set NueCtrl to send a controller the instrument already understands — CC1 or CC11 — and play it.

What you need

Part 1 — Connect your iPhone

This part is the same for every DAW, because it happens at the operating-system level before GarageBand is involved. Pick one of the three routes below. If you want the full walkthrough with screenshots of each dialog, see the MIDI connection setup guide.

Option A — Bluetooth LE MIDI

The fastest route, and the only one that needs no cable and no shared network. NueCtrl advertises itself over Bluetooth LE when it launches.

  1. On your iPhone, open Settings → Bluetooth and make sure Bluetooth is on.
  2. Launch NueCtrl and go to Settings → Connection → Bluetooth MIDI, then tap Advertise so the phone is visible.
  3. On your Mac, open Audio MIDI Setup (Applications → Utilities), choose Window → Show MIDI Studio, and click the Bluetooth icon.
  4. Find NueCtrl BLE in the device list and click Connect. NueCtrl's status indicator will read Connected.

On Windows: Bluetooth MIDI support is inconsistent. Windows 10 and 11 can pair a Bluetooth LE MIDI device at the OS level, but not every DAW exposes it as a selectable port, and some setups need a third-party Bluetooth MIDI bridge before the port shows up. This caveat does not apply to GarageBand, which is macOS-only — it is here because the connection steps above are shared with our Windows-capable DAW guides. If you are on Windows, you are looking for a different DAW, not a different cable.

Option B — Wi-Fi (Network / RTP-MIDI)

Lower latency than Bluetooth, still wireless. Roughly 5 ms in practice.

  1. Put the iPhone and the Mac on the same Wi-Fi network — 5 GHz if you have the choice.
  2. macOS: Network MIDI is built in. Open Audio MIDI Setup → Window → Show MIDI Studio, double-click the Network icon, click + under My Sessions and tick Enabled. Select NueCtrl in the Directory panel and click Connect.
  3. Windows: there is no built-in Network MIDI. Install rtpMIDI (the free RTP-MIDI driver from Tobias Erichsen), create a session in it, and connect to NueCtrl from its directory list. Again, this line is for the shared guides — GarageBand does not run on Windows.
  4. Other DAWs list this input under the session name (for example Session 1) rather than the phone's name. GarageBand shows you no port name at all — it simply receives.

Option C — USB

The lowest latency and the most reliable route — around 2 ms — and the right choice for a take you intend to keep.

  1. Connect the iPhone to the Mac with a Lightning or USB-C cable.
  2. First time only: in Audio MIDI Setup, choose Window → Show Audio Devices, select your iPhone and click Enable.
  3. NueCtrl detects the cable and switches to USB MIDI automatically. The port appears as NueCtrl.

USB is a macOS route. Getting MIDI off an iPhone over USB relies on macOS exposing the phone as a MIDI device in Audio MIDI Setup. On Windows, use Wi-Fi with rtpMIDI for the low-latency path. For GarageBand this is a non-issue: macOS is the only platform it runs on, so the best route is also the available one.

Part 2 — GarageBand setup

Read this before you start. GarageBand for Mac has no general-purpose MIDI learn: there is no Controller Assignments window, no mapping browser and no link dialog, so you cannot assign an incoming CC to an arbitrary plug-in knob the way Logic Pro, Ableton Live, FL Studio, Cubase, REAPER, Studio One and Bitwig all let you. Everything below works within that limit rather than around it. If arbitrary mapping is what you came for, the honest answer is Logic Pro — and because GarageBand projects open directly in Logic Pro, starting here costs you nothing later.

What GarageBand does give you is simpler than a mapping system and, for motion control specifically, nearly as useful. GarageBand receives from every connected MIDI input at once, with no device selection anywhere in its interface, and its software instruments respond natively to the standard MIDI controllers — modulation (CC1), expression (CC11), volume (CC7), pan (CC10), sustain (CC64), pitch bend and aftertouch. Which of those a given instrument acts on depends on the instrument, but CC1 is nearly universal.

So the working method in GarageBand inverts the usual one. Instead of picking a destination and teaching the DAW which CC drives it, you pick a CC the destination already listens to and send that. The configuration step happens in NueCtrl, not in GarageBand.

Step 1 — There is nothing to enable

This is the step people spend the longest looking for, so to be explicit: it does not exist. GarageBand has no MIDI Ports list, no input enable switch, no "active device" preference. If the port exists at the macOS level — that is, if Part 1 succeeded — GarageBand is already listening to it. Any troubleshooting for "GarageBand doesn't see my controller" therefore belongs upstream, in Audio MIDI Setup, not inside GarageBand.

To confirm the phone is getting through, create or click a Software Instrument track so it is the selected track, then move the phone. GarageBand routes incoming MIDI to the selected software instrument track, so if the instrument is one that responds to the controller you are sending, you will hear it immediately. Track selection is the whole routing model — there is nothing else to set.

Step 2 — Choose the CC in NueCtrl

This is the actual configuration step, and it is on the phone. In NueCtrl, set the fader you want to perform with to transmit a controller number the instrument understands. In practice that means CC1 for modulation or CC11 for expression; those two cover the large majority of useful cases in GarageBand. If you have Pro, per-fader sensitivity is worth setting at the same time, because you cannot narrow a range on the GarageBand side the way a mapping's Min/Max would let you — with no mapping layer, the scaling has to happen at the source.

Step 3 — Record the movement

Record-enable the software instrument track, start recording, and ride the part with your hand while it plays. The controller data is captured into the region and plays back with it, exactly as it would from a mod wheel.

Be realistic about editing afterwards. GarageBand's controller editing is far shallower than Logic Pro's — this is not a DAW where you redraw a CC curve breakpoint by breakpoint. Treat a recorded pass as a performance you re-take rather than a curve you repair, and use the automation view (the lane GarageBand opens beneath a track from its menu bar) for the track-level moves it does expose. Whether CC7 moves the instrument's own level or the track's volume slider varies by instrument and by GarageBand version; watch the slider while you move the phone and you will know within a second which one you have.

Smart Controls are not MIDI-assignable. GarageBand's Smart Controls panel looks like the obvious mapping target, and it is not one — its knobs have no learn function and cannot be bound to an incoming CC. (Logic Pro's Smart Controls can be assigned; GarageBand's cannot. It is one of the clearest lines between the two applications.)

Part 3 — What to map in GarageBand

"Map" is the wrong verb here, so read this section as what to send. Each heading below is a standard controller that GarageBand's instruments already respond to, in rough order of how much you get back per gesture.

CC1 (modulation)

The single most useful assignment in GarageBand, and the one to try first. GarageBand's built-in orchestral, string and synth instruments treat CC1 as their primary continuous expression input, which means one tilt of the phone drives whatever that patch has decided modulation should do — vibrato depth on a string patch, filter and timbre movement on a synth, layer intensity on an orchestral instrument. Because it is the most widely implemented controller in the MIDI specification, it is also the safest bet on any third-party instrument you add later. If you only ever configure one NueCtrl fader for GarageBand, make it CC1.

CC11 (expression)

The right controller for swells on sustained parts. Where CC1 usually changes the character of a sound, CC11 usually changes its level within the performance — which is what a string line crescendoing into a downbeat actually needs. Sustained brass, strings and pads are where a hand movement beats a drawn line most obviously, because the shape of the swell carries the phrasing. Set one fader to CC1 and another to CC11 and you have covered most of what GarageBand will let a motion controller do.

CC7 (volume)

Use CC7 when you want a recorded volume ride captured as part of the performance rather than drawn in afterwards. It is a blunter instrument than CC11 — volume rather than expression — but for a simple fade-in or a level move that follows the phrasing it does the job. As noted above, confirm where it lands on your particular instrument before you commit a take to it.

CC64 (sustain)

Listed for completeness, with a caveat. CC64 works — GarageBand's instruments respond to sustain — but it is a switch, not a continuous controller: below the halfway point it is off, above it is on. Feeding smooth motion into a two-state destination wastes the thing NueCtrl is good at. Send it only if you specifically want a hands-free pedal.

Third-party Audio Unit instruments

Here the picture changes, and in your favour. Some Audio Unit instruments implement their own internal MIDI learn, entirely inside the plug-in's own window. Where a plug-in does that, it works inside GarageBand — the CC reaches the plug-in regardless of GarageBand's own lack of a mapping system, because GarageBand is passing the MIDI stream through rather than intercepting it. This is genuinely plug-in dependent: many AU instruments have no learn function at all, and we cannot promise any specific one does. Check the plug-in's own documentation. But if you own an instrument with internal learn, it is the one way to get arbitrary parameter control inside GarageBand.

Resolution note. NueCtrl's Max Mode captures motion at up to 500 Hz, which produces far denser controller data than a physical fader or mod wheel would. That density is what makes the curve feel like a hand rather than a ramp, but GarageBand gives you much less after-the-fact thinning than Logic Pro or Ableton Live do. The practical consequence: record deliberately, one controller at a time, and re-take rather than repair. If you find yourself wanting to edit dense CC curves regularly, that want is the signal to move up to Logic Pro.

Troubleshooting

FAQ

Can I use an iPhone as a MIDI controller in GarageBand?

Yes, within GarageBand's limits. GarageBand for Mac receives from every connected MIDI input automatically, so an iPhone running NueCtrl works as soon as the port exists at the operating-system level. What it cannot do is assign that input to an arbitrary parameter — GarageBand has no MIDI learn. Set NueCtrl to send a standard controller such as CC1 or CC11 and the software instrument responds natively.

Does GarageBand support MIDI learn?

No. GarageBand for Mac has no general-purpose MIDI learn: there is no Controller Assignments window, no mapping browser and no link dialog, so you cannot assign an incoming CC to an arbitrary plug-in knob the way Logic Pro, Ableton Live, FL Studio, Cubase, REAPER, Studio One and Bitwig all let you. Work with the standard controllers instead, or move up to Logic Pro if you need real mapping — GarageBand projects open in Logic Pro, so nothing you build is lost.

Which CC should NueCtrl send for GarageBand?

CC1 (modulation) first. It is the controller the widest range of instruments implements, and in GarageBand's built-in orchestral, string and synth instruments it is the assignment that gives you the most for one gesture. CC11 (expression) is the second choice, for swells on sustained parts. If an instrument does not react, switch NueCtrl between CC1 and CC11 before assuming the connection is at fault.

Does Bluetooth MIDI add too much latency for GarageBand?

Bluetooth MIDI typically runs around 10-15 ms, which is fine for a modulation or expression ride but noticeable if you are playing notes in time. Wi-Fi is roughly 5 ms and USB roughly 2 ms. Use USB for a take you intend to keep.

Is NueCtrl free?

NueCtrl is free to download and use. A one-time Pro in-app purchase unlocks Max Mode (up to 500 Hz motion capture), unlimited faders, per-fader sensitivity, full customization and unlimited presets.

Turn your iPhone into a GarageBand controller

NueCtrl is free to download. Set a fader to CC1 and you are performing in under five minutes.

Download on the App Store

GarageBand and Logic Pro are trademarks of Apple Inc. NueCtrl is not affiliated with, endorsed by, or sponsored by Apple Inc. Product and DAW names are used for identification only.