--- layout: default title: MIDI Learn ---
There are no "best" ways to map an arbitrary MIDI controller for controlling Ardour. There may be very legitimate reasons for different users to prefer quite different mappings.
On every platform that Ardour runs on, there are excellent free-of-charge tools for making connections between MIDI hardware and "virtual" MIDI ports like the ones that Ardour creates and uses. Rather than waste precious developer time replicating these connection/patch managers, we prefer to leverage their existence by having users rely on them to actually connect Ardour to other MIDI devices and software. On OS X, we recommend Pete Yandell's MIDI Patchbay. On Linux, a wide variety of tools are available including QJackctl, aconnect, Patchage, and more.
If you want the bindings you set up to be used automatically in every session, the simplest thing to do is to use Session > Save Template. Then, when creating new sessions, select that template and all the bindings will be automatically set up for you. You can also save a specific track/bus configuration as a template, and use that when adding new tracks or busses. Click on the track name at the top of a mixer strip and select Save as Template.