DAW Setup
macOS Setup (IAC Driver)
Section titled “macOS Setup (IAC Driver)”Enable IAC Driver
Section titled “Enable IAC Driver”- Open Audio MIDI Setup (Applications > Utilities)
- Menu: Window > Show MIDI Studio (or Cmd+2)
- Double-click IAC Driver
- Check Device is online
- Ensure at least one port exists (default: “Bus 1”)
- Click Apply
Verify Connection
Section titled “Verify Connection”resonon --list-portsYou should see “IAC Driver Bus 1” (or similar).
Windows Setup (loopMIDI)
Section titled “Windows Setup (loopMIDI)”- Install loopMIDI
- Create a virtual port (e.g., “loopMIDI Port”)
- Connect in Resonon:
midi_connect("loopMIDI Port");Or via CLI:
resonon -p "loopMIDI"Linux Setup
Section titled “Linux Setup”Use ALSA or JACK virtual MIDI:
# List available portsresonon --list-ports
# Connectresonon -p "Your Port Name"Ableton Live
Section titled “Ableton Live”Configure MIDI Preferences
Section titled “Configure MIDI Preferences”- Open Ableton Live
- Go to Preferences > Link, Tempo & MIDI
- In MIDI Ports, find “IAC Driver (Bus 1)”
- Enable Track input (checkmark in Track column)
- Optionally enable Remote for control messages
Create a MIDI Track
Section titled “Create a MIDI Track”- Create a new MIDI track (Cmd+Shift+T)
- Set MIDI From to “IAC Driver (Bus 1)”
- Set Monitor to In
- Load an instrument (e.g., drag a synth from Browser > Instruments)
Test Connection
Section titled “Test Connection”midi_connect("IAC Driver Bus 1");let t = MidiTrack(1);t << [C4 E4 G4 E4];PLAY;You should hear notes through Ableton’s instrument.
Recording
Section titled “Recording”To record Resonon output:
- Arm the MIDI track
- Press record in Ableton
- Run your Resonon code
- Stop recording
MIDI clips will contain the captured notes.
Connecting Any DAW
Section titled “Connecting Any DAW”These steps work with any DAW that accepts external MIDI input:
- Open your DAW’s MIDI or Audio/MIDI preferences
- Find the virtual MIDI port in the input list — IAC Driver on macOS, loopMIDI on Windows, or your ALSA/JACK port on Linux
- Enable it as a MIDI input
- Create an instrument track and load a synth or plugin
- Set the track’s MIDI input to the virtual port (or “All Inputs”)
- Enable input monitoring so you hear incoming MIDI in real time
- Test with a basic Resonon snippet:
let t = MidiTrack(1);t << [C4 E4 G4 E4];PLAY;To record Resonon output as MIDI clips, arm the track and press record before running your code.
Multi-Channel Setup
Section titled “Multi-Channel Setup”Use different MIDI channels for different instruments:
midi_connect("IAC Driver Bus 1");
let drums = MidiTrack(10); // Channel 10 (GM drums)let bass = MidiTrack(1);let lead = MidiTrack(2);let pad = MidiTrack(3);In your DAW, create tracks listening to each channel.
See Also
Section titled “See Also”- MIDI Tracks - Track setup and channel routing
- MIDI Setup - Initial MIDI configuration
- MIDI Input - Receiving MIDI from external devices
- Troubleshooting - Common issues and solutions