Stream Deck Midi plugin

The plugin

The Stream Deck Midi plugin can interact with any Midi enabled device or Daw using Midi 1.0.

The plugin is available for Windows and macOS.

Badge

Device support

The plugin supports Stream Decks of all sizes, including Stream Deck+, and supports buttons and dials.

Protocols

Midi communication can be performed using...

Control Change, NRPN
Program Change, Note On/Off, Pitch Bend, Aftertouch, SysEx, Midi Show Control,
Mackie Control and Scripting

Ports

In Windows, you need to install a third party software that act as a virtual midi cable between StreamDeck and the other party (loopMidi recommended).

In macOS, you create Midi ports in the Midi Studio.

News

Version 4.1

Unfortunately, the default configuration for the new global ports feature is causing problems. If you cannot see any ports in the MIDI in/out port dropdowns, please add the "Global Settings" action to any button, go to the "Global ports" tab, and at the bottom, select anything other than "Show only global ports in dropdowns".

  • New feature: Custom layouts.
  • New feature: Section markers.
  • New feature: Global ports.
  • New feature: Script variable window.
  • New feature: # character allowed in texts (by typing ##).
  • New script actions: savetoclipboard and savetofile.
  • The plugin now better handles illegal characters in Reaper Mackie Control track names.
  • The problem on Mac with apostrophe in device names is fixed.
  • The Generic Midi button has improved input filters for received Midi, and the Cycle action manages the received Midi correctly.
  • The Mackie Control button VPot and Fader designs that did not work are fixed.
  • The min-max action handles 1-10 (with a hyphen) correctly.
  • The background script active checkbox now works more reliably (previously, scripts could respond to some events even if they were not active).

Version 4.0

  • The plugin now runs natively on Apple Silicon.
  • Changes to variable step algorithms for dials.
  • Dial selection lists.
  • Deep linking (sending messages to the plugin from, e.g., a browser).
  • Scripting events for device status.
  • Comment sections in scripts.
  • Local timers. This is a breaking change: local timers are prefixed "@lt_";if you have variables with that prefix, you need to rename them.
  • Bug fixes.

Version 3.12.1 released

  • Bug fix
    • The Generic Midi button ignored the defined midi channel when configured as a button (push, toggle, hold and latch). When a command of the configured type was received, the plugin accepted it regardless of on which channel it was received. This is now fixed.
  • Addition
    • The scripted dial has a new "selection list" feature.

No video for this update.

Version 3.11 released

  • A new Generic Midi button is added.

  • Bug fixes.

Please note that this version has some potentially breaking changes:

  • Script variables prefixed with @t_ and @timer_ must be renamed.

  • Script variables are no longer restricted to the Midi value range 0-127.

  • The wrong dual-byte CC command was sent, which is now corrected. If you use dual-byte CC commands, you need to review your settings.