What MIDI Command Studio Does
MIDI Command Studio turns any MIDI controller into a powerful, fully customisable control surface for any Windows application. It is designed to be quick to map, easy to use, and still able to handle more complex tasks.
At a glance, you can:
- Control any app with buttons, pads, encoders, jog wheels, knobs, and faders
- Trigger keyboard shortcuts, type text, do mouse actions, run programs, and open files
- Make shortcuts app-specific so they only go to the app you want
- Build powerful macros (multi-step actions) without scripting (e.g., open an app → run shortcuts → click the mouse → open a file)
- Control Windows master volume or control a specific app's volume from a fader/knob
- Use a modifier to give encoders a second "mode" (one endless encoder can do two different jobs)
- Use multiple MIDI devices at the same time
- Get LED feedback on supported controllers for mapped buttons and quick visual status
- Add shortcuts quickly from a large library of common shortcuts with the Shortcut Palette. If you leave a mapping's description blank, it's auto-filled based on what you choose — so you only write descriptions when you want a custom label.
- Presets let you build completely different layouts for different workflows (OBS, Firefox, Photoshop, Reaper, etc.)
- Presets are device-specific, so one controller can hold many presets
- You can switch presets instantly from the controller itself by using preset switching (so a single device can jump between "OBS mode", "Reaper mode", "Photoshop mode", "VLC mode", etc. without touching the mouse).
MIDI Thru lets you keep playing your keyboard into a DAW while also using some keys/buttons/knobs for mappings (requires a virtual MIDI port such as loopMIDI) — great for recording without having to reach for a mouse on every take.
Quick start
- Add your device in the Devices panel.
- In the Mappings panel, click the correct Learn button, then move/press the control on your MIDI device.
- In the editor window, choose what the control should do (shortcut, volume control, macro, etc.).
- If needed, set App Targeting so the mapping only runs for a specific application. (The target application must be running at the time you select it for targeting.)
- Click Save and test the control.
Tip: for Volume – App Target, the target application must be running and currently producing audio so Windows creates an audio session for it.
A quick guide to MIDI and compatibility with MCS on Windows
Windows handling of MIDI devices can be a bit unreliable at times. MIDI Command Studio is designed to work around as many naming issues and device conflicts as possible, but there are still a few things to be aware of.
DAWs and other audio software can “steal” MIDI devices so they are no longer available to MCS. It is recommended to start MCS before any other programs that might take control of your MIDI devices. This can avoid a lot of confusion if devices are not appearing or connecting in MCS.
It is also a good idea to have any programs you are mapping shortcuts to open and running. This makes it easy to test mappings, and those programs will show up in dropdowns for app-specific shortcuts and volume control.
MIDI Command Studio works with most controllers that send standard MIDI note/CC data, and it also supports Mackie/MCU-style for LCD screen feedback and motorised faders. Some devices can switch between Standard MIDI or MCU (Mackie) and other modes. Make sure your device is set to standard MIDI (no feedback unless a profile exists in the app) or Mackie/MCU to use the Mackie protocol for LCD or fader feedback. HUI is not currently supported. LED feedback can normally work regardless of the device MIDI/MCU setting if your device supports LED feedback.
MMC (MIDI Machine Control) data is only minimally supported. Because MMC transport uses positional data, only simple commands like Play/Stop, and sometimes Record, may be usable, depending on how the MMC device is configured.
If you are using MIDI Thru, make sure the correct virtual MIDI port is already created before opening MCS, or use Rescan in the Devices menu after creating it so the app can connect to the MIDI Thru port.
You can always use the free version of MCS to check compatibility with your devices before committing to a full setup.
To get the most out of MIDI Command Studio, we recommend reading this help file. It explains how devices, mappings, presets, macros, LED feedback and MIDI Thru all fit together.
Devices
Add a new device
Click Add in the Devices panel.
Select your MIDI device from the dropdown list and click OK.
If you want to use device feedback, apply the options shown in the feedback setup popup. If you want to use Native protocol mode, check the Native supported devices list below.
The device will appear in the Devices panel already enabled:
- Green = connected and available
- Red = disconnected / unavailable
Under the hood, the app is constantly monitoring your devices:
- If a device is unplugged or goes missing, its status will automatically switch to red.
- When it becomes available again, it will automatically switch back to green.
You can add multiple devices to the Devices panel in the same way - each one will be monitored independently and can be enabled/disabled as needed.
Mackie/MCU devices
If your device supports Mackie/MCU motorised faders and LCD feedback, enable feedback in the Add Device popup when you add the device.
Use Protocol: MCU for Mackie/MCU behavior.
You can change these later in Settings → Device Feedback.
For LED feedback, enable it in the same popup or later in Settings → LED.
Native supported devices
Native mode is only available for devices with a built-in native profile in MIDI Command Studio. On supported devices, you can use either Native or MCU, but the controller hardware mode must match (for example, Standard MIDI for Native, Mackie/MCU for MCU). Choose the mode that best suits your workflow. If a device is not listed here, use MCU mode for LCD and motorised fader feedback.
- Behringer X-Touch One: set the hardware to "MIDI" mode when using Native protocol. Or "MC Std" if using MCU protocol.
In X-Touch One MCU mode, the built-in CH1-CH8 channel-select buttons switch channel strips. In Single fader MCU layout, these channel-select buttons are reserved and cannot be mapped as normal controls. Mute/Solo/Rec are strip-linked, so they can be mapped per selected channel within the same preset.
In practice, this lets one fader plus Mute/Solo/Rec work across 8 channel slots in one preset as you switch channels.
In Multi fader MCU layout (8/9-fader surfaces), strip controls stay available per channel and are not treated as one-fader reserved channel selectors.
Tip: if you are unsure, go to Settings → Device Feedback and check the protocol list. If Native is not available for that device, use MCU.
Presets and Autosave
MIDI Command Studio uses a simple but powerful preset system.
Autosave
The app automatically saves your current preset as you make changes. Once a mapping or macro is added, it autosaves - your mappings, device states, and macro steps are always kept up to date.
Quick preset switching
Switching presets can be done in the main app preset dropdown, from your controller or by right clicking on the system tray icon. Presets let you build completely different control layouts for different software. They are also device-specific, so you can have multiple presets for each individual device.
For example:
- A DAW preset for Reaper, Ableton, FL Studio, etc.
- A video editing preset for Resolve or Premiere
- A graphics preset for Photoshop or Blender
- A general desktop preset for everyday use
Switch presets for any device at any time and the app instantly changes:
- Which controls are active
- Which apps shortcuts target
- Which macros run
- How your faders and encoders behave
This makes it easy to use the same controller for completely different workflows - even across multiple programs running at the same time.
Preset switching from your controller
If you want to change presets without using the mouse, open Settings and use the Preset switching panel.
- Click Learn.
- Choose the preset you want that button to load.
- Press the button/pad on your controller.
- Optional: enable LED so the assigned button can light up.
If the button is already used for another mapping, the app will ask if you want to reassign it to preset switching.
Preset bar buttons
The preset bar at the top of the app is scoped to the currently selected device. Use it to switch between presets quickly, without affecting your other devices.
- New creates a new empty standard preset for the selected device.
- Audio presets are created from Settings → Audio Preset → Create Audio Preset.
- Rename renames the current preset (this renames the underlying preset file).
- Delete deletes the current preset file for the selected device.
- The Autosave indicator shows that changes are being saved automatically as you edit mappings and macros.
Preset files location and backup
Presets are saved as JSON files inside your user profile, under:
%LOCALAPPDATA%\MIDI Command Studio\presets
Each device has its own folder inside that presets directory. You can back up or copy presets by copying these folders.
You can open the presets folder from inside the app via Settings → Preset files location.
Audio Presets
Audio presets and audio mappings are available in the Full version only.
Audio preset creation is managed in Settings → Audio Preset. Choose a device, enter a preset name, and click Create Audio Preset. The app switches to the new audio preset automatically.
Important: only one audio preset can exist at a time. If an audio preset already exists, the app will ask you to delete the existing one before creating another.
Audio mappings let you trigger samples, stop playback quickly, and control playback level from your controller. For best control, set up all three: Trigger button, Stop button, and Audio Volume fader.
Trigger button mapping
Learn a button, choose an audio file, set gain, then choose Button mode:
- Play full sample: plays once on press.
- Play only while held: plays while held, stops on release.
- Repeat: plays multiple times from one press (set count 1 to 25). In Repeat mode, playback is forced to Cut and play.
When pressed
This setting controls what happens if the same sample is triggered again while it is already playing:
- Play over current: starts a new playback on top of the current one (layers/overlaps).
- Cut and play: stops the current playback and restarts from the beginning.
Note: In Repeat button mode, this is forced to Cut and play to keep repeats predictable and avoid overlap buildup.
Stop button mapping
Learn another button and enable Use this button as Stop All for immediate stop control.
Audio Volume fader
Learning a fader for audio volume has no extra dialog options. It is added to the mapping list automatically and controls the relative level of all samples together.
The audio volume level is saved with the audio preset and restored when that preset is loaded again.
When audio volume changes from a mapped control, the app shows a temporary on-screen volume overlay so you can see the level in real time.
Mappings and the editor
Learn buttons and MIDI control types
MIDI Command Studio uses different Learn buttons for different MIDI control types. If the wrong one is used, the mapping can behave unpredictably. The app has built-in detection to prevent the wrong control type from being mapped but cannot cover every scenario.
Buttons / Pads (Note On/Off)
- Expected MIDI: Note messages (press/release).
- Use for pads, keys, transport buttons, and any switch-type control.
Faders / Knobs (Absolute CC, 0-127)
- Expected MIDI: Control Change (CC) values that sweep 0-127.
- Some motorised faders send pitch wheel instead of CC; this is supported on compatible devices/workflows.
- Use for faders and knobs that have a fixed position (volume, pan, etc.).
- Touch faders: if you want to capture touch data, use Learn touch fader.
Encoders / Jogwheels (Relative)
- Expected MIDI: CC values that step up/down (often repeating values like 1/127 or 1/65, depending on the device).
- Use for endless encoders that have no fixed start/end.
Touch Fader (Touch + CC)
- Expected MIDI: a touch message plus CC movement.
- Use only if the device sends a separate touch event when you touch the fader.
Tip: If you're unsure, open the Log window and move the control. The values there will show you what data is being received.
Learn a control
In the Devices panel, make sure the device you want to map is selected (green box around the row) and its status is green (connected).
In the Mappings panel, click the Learn button that matches the type of control. Follow the onscreen prompt. The editor window will open once a control is learnt.
Mute setup tip: You can set up mute in two ways:
- When learning a button: click Use as mute control... to make that button a mute button.
- When learning a fader: turn on Add mute control to add a mute button linked to that fader.
Mute methods: You can either send a normal app shortcut (if that app has its own mute shortcut), or use mute control mapping to mute the actual Windows audio stream directly.
Open the editor
The editor window opens automatically after Learn.
Or later, click the green pen next to an existing mapping to edit it.
App Targeting (for buttons, encoders and shortcut-based mappings)
In the editor window there's an App Targeting panel.
This controls which app shortcuts are sent to, or whether they're global.
You'll see:
- A Mode selector
- An App dropdown
App dropdown
Use the App dropdown to pick the app you want this mapping to be linked to.
To make sure an app appears in the list, run the program and have a window open.
The selected app only matters when using Only when app has focus or Force focus then send.
Modes (for shortcut mappings)
-
Global
The mapping will send shortcuts to whichever app is currently in focus.
Use this for controls you want to work anywhere (system-wide shortcuts, media keys, generic actions). -
Only when app has focus
The mapping will only run when the selected app is currently in focus.
If any other app is active, nothing happens. -
Force focus then send
When you trigger the mapping, the selected app will come into focus first, then the shortcut is sent.
Good for ensuring shortcuts work reliably, because the app is focused before the shortcut is sent.Note (Windows limitation)
Windows can sometimes block background apps from taking focus. Force focus works best when the target app has been used recently; if apps have been left unused for a while, Windows may block focusing. For best results, keep the target app open (not minimized to the taskbar). App-specific volume control does not rely on focus, so volume mappings with App targeting still work reliably even when set to “normal.”
Choose a shortcut with the Shortcut Palette
Click in the shortcut box you want to set (for example: On, Off, Hold, Clockwise, Anticlockwise).
- On – send a shortcut when the button is pressed.
- Off – send a shortcut when the button is released.
- Both – send one shortcut on press, and another on release.
- Hold – send a shortcut while the button is held.
- Good for modifiers like Ctrl+Shift – press and hold the pad to hold the modifier, then use other controls, release to stop holding it.
Hold Repeat uses a minimum Delay of 300 ms and minimum Every interval of 80 ms. Lower values are clamped automatically.
The Shortcut Palette will open automatically when clicking inside the empty fields.
In the palette:
- Choose an app.
- Then a category.
- Then click a shortcut in the list.
These apps and categories are just for organising shortcuts to make them easier to find.
All shortcuts will be sent to the currently focused app, regardless of how they are named here.
(Per-app behaviour is handled separately in the App Targeting settings for the mapping.)
Shortcut lists are stored in the data folder: %LOCALAPPDATA%\\MIDI Command Studio\\shortcut_lists.
Use Settings → Data folder location to open it.
The shortcut will be sent back to the editor and the description will update automatically.
Capture your own shortcut (optional)
If you can’t find the shortcut you want in the list, click Capture from keyboard in the Shortcut Palette.
Press the keys you want.
The captured shortcut will be sent back to the editor.
You can edit the description text if you want.
Save the mapping
Repeat for any other shortcut boxes you want to fill for this control.
Click Save to store the mapping.
Conflict handling
If a control is already assigned (as a mapping, preset switch, or encoder modifier), the app will warn you when you try to learn it again and offer to reassign it. Choosing reassign removes the previous assignment so the control is only used in one place. This keeps mappings predictable and avoids accidental duplicates.
Assignment Check Mode
Use Assignment Check Mode to help you easily see what is mapped to your controller.
This is useful when you have already created mappings and want to quickly check what you have assigned without sending the shortcuts etc.
To start it, click "Click here to enable assignment check mode" under the four Learn buttons in the Mappings panel.
While Assignment Check Mode is active:
- Normal MIDI actions are temporarily paused.
- Only the selected device and selected preset are checked.
- Pressing a mapped control will show you a description of the assigned mapping.
- Click Exit or press Esc to leave Assignment Check Mode.
How the app icons work (Mappings panel)
In the Mappings panel, there's an App column showing an icon for each mapping:
Global
Shows a small globe icon.
The mapping is not locked to any specific app - it will send shortcuts to whatever app currently has focus.
Targeted app
When you set an App target (Only when app has focus or Force focus then send), the App column shows that app's icon.
Target app not running
The app icon gets a subtle red "not running" overlay.
Hovering over it shows a tooltip like:
Reaper - Only when app has focus - Not runningChrome - Force focus then send - Not running
Icons will update status only when sending shortcuts.
Faders
Fader settings (editor window)
When you learn a fader and the editor window opens, look for the Controls dropdown.
Under Controls select either:
-
Volume – System
Controls the current main output for Windows (your master system volume). -
Volume – App Target
Controls the volume for a specific app instead of the whole system.
Volume – App Target (per-app volume + app targeting)
When you choose Volume – App Target:
Use the App dropdown (in the App Targeting panel at the bottom of the editor) to pick the app you want this fader to control
(to make sure your app appears in the dropdown, run the program and have audio playing).
How it works:
- The fader will only adjust the volume for the app you selected, based on its audio session in Windows.
- All fader movements are sent to that app’s volume, not the system master volume.
- If you change the selected app in this dropdown, the same fader will control a different app instead.
App Targeting options (for Volume – App Target)
In the App Targeting panel you can choose how strictly the app selection is used:
-
Normal (recommended)
Changes the targeted app’s volume whether it is in focus or not.
Simplest option – works as long as the app is running and has an audio session. -
Only when app has focus
The volume will only be adjusted if the targeted app is currently in focus.
If some other window is active, moving the fader will do nothing. -
Force focus then send
When you move the fader, the targeted app will come into focus first, then its volume will be adjusted.
Makes it very clear which app is being controlled, because it pops to the front when you use the fader.Note (Windows limitation)
Windows can sometimes block background apps from taking focus. Force focus works best when the target app has been used recently; if apps have been left unused for a while, Windows may block focusing. For best results, keep the target app open (not minimized to the taskbar). App-specific volume control does not rely on focus, so volume mappings with App targeting still work reliably even when set to “normal.”
Volume – Input (Default)
When you choose Volume – Input (Default), the fader controls the Windows default recording input level. If you add a paired mute control, it toggles that same Windows default input mute state.
Mute setup tip: Mute can be set up either when learning a button (Use as mute control...) or when learning a fader (Add mute control).
Common apps that usually follow this Windows input level: OBS / Streamlabs Desktop, Discord, Zoom, Microsoft Teams, and Skype.
Important: Interface direct monitoring/hardware monitor mix is not controlled by Windows input level or Windows input mute.
Compatibility note: Some ASIO, exclusive-mode, or vendor-specific paths can bypass Windows input controls. In those cases both Windows input volume and Windows input mute may be ignored by that app.
Windows Input Control (Advanced)
Use this when you want a fader or mute button to control Windows input streams (for example individual mic inputs) in software.
Input volume and mute mappings control the Windows input stream used by software, so they change what your audience hears in apps like OBS, Streamlabs Desktop, Discord, Zoom, and Teams.
They do not change direct hardware monitoring on your audio interface.
To show specific input devices in the target list, enable Settings → General → Advanced → Show specific Windows input devices in mapping targets.
If a selected input device is unavailable (for example unplugged or renamed), that mapping may not apply until you reselect it.
Some ASIO, exclusive-mode, or vendor-specific routing paths may ignore Windows input volume and mute controls.
In short:
- Volume - System → one fader that always controls your main Windows volume.
- Volume - Input (Default) → controls the Windows default capture input level (and paired mute) for apps that use Windows input controls.
- Volume - App Target + Normal → per-app fader that works even when the app isn't focused.
- Volume - App Target + Only when app has focus → per-app fader that only works when you're actively in that app.
- Volume - App Target + Force focus then send → per-app fader that brings the app to the front and then changes its volume.
Encoders and jog wheels
Encoders and jog wheels are great for up/down style actions like scrolling, zooming, nudging, skipping forward/backward in videos or stepping through tracks.
They can also use a modifier key, effectively turning one encoder into two:
- Turn encoder normally → sends one set of shortcuts.
- Hold the modifier while turning → sends a different set of shortcuts (if configured).
Basic setup
Learn the control and check direction
In the Mappings panel, click Learn encoder/jogwheel and follow the onscreen prompt.
Turn the encoder/jogwheel and check encoder direction with the animation, flipping (invert) if required.
The editor window will open once it’s learnt.
Set clockwise / anticlockwise shortcuts
In the editor you’ll see shortcut boxes for:
- Clockwise
- Anticlockwise
Add shortcuts the same way as described for buttons/pads (using the Shortcut Palette).
Optional: add a modifier
Add a modifier by clicking Learn next to Modifier in the encoder editing window
(the modifier should be a button on the device you are currently using).
Add extra shortcuts for when the modifier is pressed.
When that modifier is held, the encoder can trigger a different behaviour
(for example: normal = zoom horizontally, with modifier = zoom vertically — some DAWs let you scroll the timeline with shortcuts on the encoder, then use the modifier to drag over areas to make a selection, etc.).
Save
Click Save to store the mapping.
Now turning the encoder clockwise sends the Clockwise shortcut, and turning it the other way sends the Anticlockwise shortcut; with a modifier, you effectively get a "second mode" for the same encoder.
You can experiment with Rate limit. To fine-tune the response of an encoder - for example, setting Rate limit to around 120ms may stop it from feeling like it's "buffering" lots of commands. Rate limit is set to 50ms by default and is usually ok for most situations.
LED feedback
LED feedback lets MIDI Command Studio control the lights on supported buttons and pads on your MIDI controller. It does not change how the mapping behaves - it simply gives you visual feedback on the hardware.
LED feedback is only available for button mappings.
You choose an LED mode per button mapping in the editor window:
- Off – LEDs are not controlled by the app. The controller behaves as it normally would.
- Momentary – the light turns on when the button is pressed and turns off when it is released. This is useful for things that are only “active” while you hold the button (for example modifier buttons).
- Toggle – each press flips the light on or off and keeps that state until the next press. This is useful for on/off style actions (mute, loop, record arm, etc.) when you want the LED to act like a latch. The LED state is based on button presses, not the true state inside the target app.
- Always on – the light is kept on while the preset is active, regardless of how many times the button is pressed. This mode is usually the most useful, because it lets you see at a glance which buttons are mapped and available on the device.
LED feedback is only available on devices that support receiving MIDI messages for their button lights. If a device doesn't support this, changing the LED mode will have no visible effect.
Device LED settings
LED feedback is enabled per device in the Settings window. In the device settings you can tick or untick a box to indicate whether a device supports LED feedback. It is set to off by default.
For devices that need specific LED values, you can also adjust the MIDI on/off values
used for the LEDs. By default the app sends 0 for off and 127 for on,
but some controllers use different values.
Send Note On (vel 0) for LED off (recommended) changes how LED-off is sent for
note-based LEDs. When enabled, LED-off is sent as Note On with velocity 0
instead of Note Off. Some controllers expect this behavior.
Testing LEDs
In the Mappings panel there is a small LED test control for each button mapping. Click and hold it with the mouse to briefly turn that button's LED on; release to turn it off. This is an easy way to check that your controller is responding to LED messages and that the on/off values are set correctly. If LED feedback is disabled for the device selected, the test function is also disabled.
LCD Feedback (SysEx data)
LCD feedback is configured per device in Settings → Device Feedback. Enable feedback for the device, select a protocol mode, then enable Send current preset to LCD.
- Native: device-specific LCD formatting for known native profiles.
- MCU: standard MCU LCD SysEx formatting for broad MCU compatibility.
In MCU mode, use MCU layout in Settings → Device Feedback:
- Single fader: for one-fader surfaces that switch CH1-CH8 with channel-select buttons.
- Multi fader: for 8/9-fader surfaces where strip controls are always available.
Choose the layout that matches your hardware for predictable MCU channel behavior when mapping controls.
Motorised Faders
Motorised fader behavior is configured in Settings → Device Feedback. If Motorised fader feedback is enabled, MCS sends fader-position updates for compatible mapped targets during relevant refresh points (including preset changes).
MCU motor faders generally expect host feedback to hold position. If feedback is disabled, some devices can drift or snap back to their last host-owned position.
For app-target volume mappings, best results are when the target app is running and has an active audio session.
MIDI Thru – virtual port setup
To use MIDI Thru, you need one virtual MIDI port with a specific name:
- Install a virtual MIDI tool such as loopMIDI.
- In that tool, create a new port called MCS MIDI Thru (spelled exactly like that).
- Leave loopMIDI (or your virtual MIDI app) running in the background.
- In your DAW or virtual instrument add MCS MIDI Thru as an input.
MIDI Command Studio will look for a port called MCS MIDI Thru and use it as the Thru output.
What MIDI Thru does
When MIDI Thru is enabled for a device:
- Any controls mapped with shortcuts/macros still function as intended.
- All unmapped MIDI messages are sent straight to the virtual port MCS MIDI Thru.
This means you can, for example, use a few lower keys on a MIDI keyboard for play/stop/record/undo/redo, and still use the rest of the keys to play a virtual instrument in your DAW.
Macros – when shortcuts aren’t enough
Macros let a single button do more than one thing or things that aren’t just keyboard shortcuts, such as:
- Mouse clicks / scroll
- Run a program or open a file
- Type text
- Wait/delay between actions
- Or a sequence of shortcuts
Turn a mapping into a macro
Learn a button as normal
Use Learn pad/note/button and follow the onscreen prompt.
The editor window will open for that button.
Open the Macro Editor
In the editor window, click the Macro button.
The Macro Editor will open for this mapping.
From now on, that button will trigger the macro instead of a single shortcut.
Re-open later
In the Mappings panel, click the green pen next to the mapping.
If the mapping is saved as a macro, this will open the Macro Editor directly.
Add steps to a macro
In the Macro Editor you build a list of steps that run from top to bottom when you press the button.
Common step types:
- Shortcut – send a keyboard shortcut
- Run program / open file
- Mouse click / move / scroll
- Text input – type some text
- Wait / delay – pause between actions (the app has a 75ms delay between steps by default)
To add a step:
- Click Add step (or
+). - Choose the step type.
- Fill in the details:
- For shortcut steps, use the Shortcut Palette just like normal mappings.
- For run program / open file, choose the file or enter a path.
- For mouse/scroll/text, fill in the fields shown.
- Repeat for as many steps as you need.
How to run Microsoft Store apps
Some Microsoft Store apps do not have a normal .exe you can launch directly. MIDI Command Studio now includes a dedicated Run Store App macro step, so you do not need to launch Explorer manually.
1) Create the macro step
- Open the Macro Editor (learn a button and choose Macro).
- Click Add step and choose Run Store App.
2) Choose the app
- Use the search box to find your app in the Store app list.
- Select the app and click OK.
- If needed, you can paste an App ID (AUMID) manually.
3) Test or save
- Click Test macro (or save the macro and trigger your mapping).
- The selected Store app should launch.
For Media Player force-focus options, see Settings → Advanced.
Save and test
In the Macro Editor, click Save/OK to save the macro.
Go to your target app and press the MIDI button.
The steps will run in order.
If it doesn’t behave as expected, click the green pen again to reopen the Macro Editor and adjust the steps.
Settings
The Settings window is split into tabs. Use this section as a quick guide to what each tab controls.
General
- Run at Windows startup: start MIDI Command Studio automatically with Windows.
- Run app in system tray on close and Start app in system tray: control tray behavior.
- Open log window on startup: opens the live log automatically.
- Show shortcut/macro popup when triggered: show or hide the on-screen action popup for triggered shortcuts, macros, and preset actions.
- Windows panel shortcuts: quick access to Log window, Shortcut Palette, Data folder, Help, and About.
Advanced
- Show specific Windows input devices in mapping targets: shows per-device input targets instead of only default input.
- Media Player focus: optional Store App ID (AUMID) for improved Microsoft Media Player force-focus behavior.
LED
- Configure LED feedback support per device.
- Set LED On/Off values.
- Optional compatibility mode: Send Note On (vel 0) for LED off.
Preset Switching
- Preset switching: map controller buttons/controls to preset changes.
- Manage per-device preset switch behavior.
Device Feedback
- Enable feedback for this device: master toggle for LCD and motorised feedback output.
- Protocol mode: choose Native (device-specific) or MCU (standard MCU feedback).
- Send current preset to LCD: sends preset/mapping context text to compatible LCD displays.
- Motorised fader feedback: sends fader position updates for compatible mapped targets.
- MCU layout: choose Single fader (one-fader surfaces) or Multi fader (8/9-fader surfaces).
- Tip: use Single fader for X-Touch One style workflows, and Multi fader for standard multi-fader MCU surfaces.
Advanced Feedback
Advanced LCD SysEx Header Override
Some Mackie/MCU-family devices may use different LCD SysEx header bytes. This setting lets advanced users override those bytes for compatibility testing.
Use this only if your device is MCU-compatible but LCD text is not updating correctly. Do not change this setting unless you know the required header bytes.
Valid input example: 00 00 66 14 12
With this option off (recommended), MIDI Command Studio uses the default MCU LCD SysEx header. Enable it only if your MCU device needs a custom LCD header. This affects MCU LCD text compatibility only and does not change normal mapping behavior. If the custom header is incorrect, LCD updates may fail.
These options are only relevant when Device Feedback is enabled and protocol mode is set to MCU.
Audio Preset
- Create or manage the device audio preset.
- Audio preset sample mappings are configured from the mapping editor/macro steps.
- Only one audio preset can exist at a time.
Feedback
- Open the feedback form in your browser.
- Open the error log file and optionally send a report.
- Clear the local error log and control issue indicator visibility.
Free vs Full Version
Free version
- Up to 2 presets per device
- Up to 6 mappings per preset
- Multiple devices can be added, with one active at a time
- MIDI Thru included (requires a virtual MIDI port)
Full version
- Multiple devices active at the same time
- Unlimited presets and mappings
- Simple audio sample playback
For pricing and licensing, visit:
https://midicommandstudio.com
Activation
Activation requires an internet connection.
A license allows up to 2 activations.
How to activate
- Open Settings.
- In the Licensing panel, click Activate.
- Paste your license key and confirm.
- Restart the app so all changes take effect.
Check activation status
Go to Settings → Licensing → Check status.
Deactivate
Use Deactivate if you plan to reinstall Windows, change machines, or need to move an activation.
Go to Settings → Licensing → Deactivate. You will be asked to confirm, and the app will switch back to Free mode.
Data and privacy
MIDI Command Studio does not send any data automatically. If you choose to send an error log when submitting feedback,
the app only sends the contents of error_log.txt (up to 200 KB) to help diagnose issues and support development.
The log contains timestamps, a short context label, and exception/stack trace details, with your Windows user path
redacted (e.g., C:\Users\<redacted>\...). The report also includes a non-reversible machine hash used only
to correlate reports (it does not expose your actual hardware ID). No license keys, activation data, email address, or MIDI
input data are sent unless you manually add them to the log.
Licensing & activation: The app makes network requests only for licensing actions (activate/status/deactivate). These requests include your license key and non-identifying device/install identifiers used to manage activations. No usage tracking, MIDI input, or personal information is transmitted. The app does not send your email address (if Gumroad returns an email, it’s shown locally only).
Feedback and error log
In Settings → Feedback:
- Open form in browser opens the feedback form for bug reports, feature requests, and general feedback.
- Clear error log clears the local
error_log.txtfile. - Icon toggles the issue-log indicator visibility in the main window.
This panel does not send data by itself; data is only sent when you explicitly submit the feedback form.
Troubleshooting
My device is red / disconnected
- Make sure the device is powered and connected (try a different USB port/cable).
- Close other software that might be using the same MIDI port (DAWs can grab exclusive access on some devices).
- If the device reconnects, MIDI Command Studio will automatically switch it back to green.
Learn doesn’t detect my control
- Confirm the correct device is selected in the Devices panel.
- Make sure the device shows as connected (green) before learning.
- Try moving/pressing the control a few times (some devices send values only after the first change).
Learn Fader/Knob says “suspected encoder”
- Some faders/knobs jump values when turned quickly, which can make the app suspect an encoder.
- If this happens, try learning again and move the control slowly through a wider range.
- If you’re unsure, open the Log window and move the control — the data shown there will help you confirm the control type.
My target app isn’t in the App dropdown
- Run the app and make sure it has an open window.
- For Volume – App Target, the app must be producing audio so Windows creates an audio session.
LEDs don’t respond
- Open Settings and enable LED support for that device.
- Double-check the LED
on/offvalues (different controllers use different values). - Not all controllers support receiving LED messages for their buttons.
MIDI Thru says the port is missing
- In your virtual MIDI tool (for example loopMIDI), create a port named MCS MIDI Thru (exact spelling).
- Keep the virtual MIDI tool running in the background.
Activation issues
- Activation requires an internet connection.
- Check the license key is complete and correct (no missing characters).
- A license allows up to 2 activations. Deactivate an old machine if you reach the limit.
- If activation or status fails, try again later or restart the app.
- If the issue continues, contact support via the feedback form.