MIDI Controller Mapping¶
The MIDI Controller Mapping dialog lets you configure a MIDI controller for use with AetherSDR. You can select a device, record bindings using Learn mode, tune per-binding behavior, and save or load mapping profiles.
Open the dialog¶
- Go to
Settings > MIDI Mapping....
The dialog opens, showing the current MIDI port status and any existing bindings.
Select a MIDI device¶
- From the
Port:combo box, select the MIDI input device you want to use. - Click
Refreshto rescan available MIDI ports if your device is not listed. - Click
Connectto open the selected port. The button text changes to "Disconnect" when the port is open. - (Optional) Check
Auto-connect on startupto automatically reopen this port the next time you launch AetherSDR.
The port status indicator shows "Connected: [device name]" with a green label when the port is open, and "Disconnected" with a gray label when it is closed.
Record a new binding with Learn mode¶
- From the
Categorycombo box, select the control category for the parameter you want to map. - From the
Parametercombo box, select the target parameter for the new binding. - Click
Learn. The button highlights to indicate it is listening. - Move or press the control on your MIDI device that you want to map.
The binding appears in the bindings table with the parameter name, MIDI source, and channel.
Note on momentary (Gate) actions¶
In v0.9.7, three new momentary (Gate) actions were added in the Phone/CW category:
Trigger straight key(id:cwkey)Trigger CW Left Paddle(id:cwdit)Trigger CW Right Paddle(id:cwdah)
Legacy dotted IDs (cw.key, cw.dit, cw.dah) are automatically migrated on read.
Tune per-binding behavior¶
Each binding row in the bindings table has two optional controls:
- Invert: Check this checkbox to reverse the control direction for that row. For example, if turning a knob clockwise normally increases a value, checking Invert makes it decrease the value instead.
- Relative: Check this checkbox to treat the control as an endless encoder. Use this for rotary encoders that do not have physical stops and send relative position changes.
Delete a binding¶
Delete a single binding¶
- In the bindings table, locate the row for the binding you want to remove.
- Click
×in the rightmost column of that row.
The row is removed immediately. The change is saved automatically.
Delete all bindings at once¶
- Click
Clear All.
Every row in the bindings table is removed. The change is saved automatically.
Save the current mapping as a named profile¶
- In the
Profile:combo box, type a name for your profile. - Click
Save.
The profile is saved and appears in the profile list for future use.
Load a previously saved MIDI profile¶
- From the
Profile:combo box, select the profile you want to load. - Click
Load.
The bindings from the selected profile replace the current bindings in the table.
Activity monitoring¶
The activity indicator shows the most recent MIDI message received, displayed in a monospace font. Use this to verify that your MIDI controller is sending messages and that the port is working correctly.
What each control does¶
| Control | Description | Notes |
|---|---|---|
Port: |
Selects MIDI input device. | |
Refresh |
Rescans available MIDI ports. | |
Connect |
Opens/closes the selected MIDI port. | |
Auto-connect on startup |
Reopens MIDI port on launch. | |
Category |
Filters parameter combo to a control category. | |
Parameter |
Chooses the target parameter for a new binding. | |
Learn |
Starts listening for the next MIDI message. | |
| Bindings table | Shows existing bindings with per-row controls. | Columns: Parameter, MIDI Source, Channel, Invert, Relative, (delete). |
Invert (per row) |
Reverses the control direction for the row. | |
Relative (per row) |
Treats the control as an endless encoder. | |
× (delete row) |
Removes that binding. | |
Clear All |
Removes every binding. | |
Profile: |
Picks a saved MIDI mapping profile. | |
Save |
Saves current bindings as a profile. | |
Load |
Loads the selected profile. | |
Close |
Closes the dialog. |
Tips¶
- If you delete a binding by mistake, you can restore it by loading a previously saved profile.
- Before using
Clear All, consider saving your current bindings as a profile first. - The activity indicator is helpful for diagnosing connection issues—if you move a control and see no activity, check that the correct port is selected and connected.