A patch change is Ardour's description for a combination of MIDI program change and bank select messages, that (typically) instruct a synthesizer or sampler to select a different sound to use on a particular channel.
Patch changes are shown within MIDI regions as small rectangles or flags, with a vertical line showing where in the region (hence "when") this patch change happens.
Inserting Patch Changes
To insert a patch change, the edit point should be located where the patch change should be (within an existing MIDI region). When right clicking, and from the MIDI region's context menu, selecting MIDI > Insert Patch Change, a dialog appears allowing to set the bank and program values.
Modifying Patch Changes
Context-clicking on a patch change will bring up the same dialog that was used to create it, allowing to modify the program and/or bank numbers.
The mouse wheel can also be used: ⇑/⇓ on the patch change will alter the program number, ⇑/⇓ will modify the bank number.
Moving Patch Changes
Just Left-dragging the patch change moves it around.
Removing Patch Changes
Pressing Del with the mouse pointer into the rectangular area, or using the delete mouse button operation will remove the patch change (the operation can be undone).
Names for Patch Numbers: MIDNAM files
MIDNAM files assign human-redable names to the "coordinates" (MSB, LSB, pc) of instruments and controls of MIDI-devices. A number of MIDNAM files come already pre-bundled with Ardour. Should this not be the case for your device, you can add your own (see below).
Selecting a device
For the proper names to show up in the "Patch Selector"-dialog, you have to assign a device to your current track. To do so, hover the lower border of the tracks header (the mouse-cursor will change to a "resize-cursor") and expand it. You'll see dropdown menus. Select your device in the menu.
Adding a custom MIDNAM-file
MIDNAM-files are XML-Files. You can edit them using your favorite text-editor. When doing so, please ensure to change the "Model" of the device, as Ardour will only load each model once (i.e. it will skip files, if there are clashes).
After you have done modifications to a file, it's a good idea to validate it. This can be done using the tool xmllint as shown below:
$ xmllint --valid --noout myfile.midnam $ wget http://www.midi.org/dtds/MIDINameDocument10.dtd $ xmllint --dtdvalid MIDINameDocument10.dtd myfile.midnam
Once you are satisfied with your file, you have to put it at a location where Ardour picks it up. The best place would be the (hidden) directory Ardour configuration directory subdirectory patchfiles. in your home-folder. Should the sub-directory patchfiles not exist yet, just create it. The path and file-names are case-sensitive. The file should end with ".midnam".
After restarting Ardour, hit the small Log-button in the upper right corner of the main window. It should say something like (this is Linux, Macos or Windows will be different):
[INFO]: Loading 3 MIDI patches from /home/username/.config/ardour5/patchfiles
The added device should now show up in the dropdown mentioned in the previous paragraph.
Should the MIDNAM-file be useful for the general public, it would be nice to share it: Fork the Ardour-project on gitHub by hitting the "Fork"-Button. Go to the patchfiles-directory (and read the README).
You can upload the file using the Web-Interface. Be sure to select "Create a new branch for this commit and start a pull request".