8. Mac OS - MP MIDI App - Sending keyboard keys

Modified on Thu, 7 Nov at 5:33 AM

In the September 2024 update we have introduced this functionality under the button Push Options. It provides the ability to send keyboard keys (or keyboard shortcuts) to any application running in MacOS. 


Tutorial video here


Installation of SendKeysMP and Mac OS Permissions Required
The  MP MIDI app uses a small utility program called SendKeysMP to send keyboard keys.
This functionality was not embedded in the MP MIDI app due to restrictions of the Mac OS. Mac OS does not allow sending keyboard keys via a plugin, therefore we had to separate this feature in an app.
Install SendKeysMP (get the MP MIDI installer from your account. SendKeysMP is included) and then set the permissions on MacOS as described here before moving on with this article.
SendKeysMP is installed in /Applications/SendKeysMP folder.


To send a key to an app enter the app name. In certain cases, the app window name needs to be defined as well.




Name of the DAW/App

This should be entered as it shows in the Mac OS Activity Monitor. For example Ableton Live, it is Live.


Name of the Window

On the Mac when working with applications that have multiple windows (like plugins), for sending certain keys, it may be necessary to define the main application window name.

This is important because the keys need to be sent on specific windows.
The window name does not have to be match exactly, the app will check if a window exists that contains the given text.

Here is an example to send the key combination to create a track.


Here are some main window names to use of popular DAWs:

Ableton Live: name of the project as it appears on the top bar of the Live app. You can use a keyword like "Ableton" os something else when you save your project so that it matches on every new project.

Bitwig: Name of the project or word (keyword) included in the name of the project.

Cubase: Cubase

Logic Pro: logicx

Pro Tools: Edit
Reaper: REAPER
Studio One: Studio




Key Modifiers
The drop down shows a list of available key modifiers, the third field is the key you want to send and the last drop down is a delay value that will be triggered after the targeted application has been selected by the MP MIDI app. This delay gives time for the application to come to focus (if needed) and then send the keyboard keys to it. This delay is optional and should be used only when needed.


Stop sending CCs when sending keyboard keys


You can disable sending CC for a button, when you have chosen to send keyboard shortcuts in the Push options dropdown.


Sending predefined keys:


You can type in the names of the following keys when you need to send these:

backspace

space

delete

escape

tab

up

down

left

right

F1

F2

F3

F4

F5

F6

F7

F8

F9

F10

F11

F12

home

end

pageup

pagedown


for example:


The key names must be typed exactly as listed here and letter casing matters.




Optionally, you can define the keycode definitions or even add new definitions by editing the MPMIDI.properties file under ~/MP/Host folder.

When this file is edited the MP MIDI app/plugin needs to be restarted for changes to take effect. If you make a mistake during edits and the MP MIDI app does not work correctly you can just delete the file and run the MP MIDI app to create a new one.


To add a new one, just copy a line and place it as a new line and then save the file. The start the MP MIDI app.

You can also edit the existing ones, both the name and key code.

To get key codes from your keyboard use a free app like KeyCodes


To monitor keys sent from the MP MIDI app,you can use KeyCodes.
Set as target app as Key Codes and target Window as Key Codes.
Whatever you send from the MP MIDI app will be displayed there.

Troubleshooting

SendKeysMP requires port 5005 to be free on the Mac.

If you encounter issues while running it, open a terminal and paste:

sudo lsof -i :5005

It will ask for your password. Type it in and press Enter.

It should not produce any output. If it does produce output, it means some other app is using that port. That app should be terminated so that the port is free to be used by the SendKeysMP app.

Under the COMMAND header, you will see the name of the app using the port 5005.




Was this article helpful?

That’s Great!

Thank you for your feedback

Sorry! We couldn't be helpful

Thank you for your feedback

Let us know how can we improve this article!

Select at least one of the reasons

Feedback sent

We appreciate your effort and will try to fix the article