MIDI Remote API 1.3 + Updated Docs

Hi Everyone,

With Cubase 15.0.20, we are shipping the latest MIDI Remote API version 1.3, and I’m happy to say that the API documentation is now up to date as well.

API 1.3 extends DirectAccess, first introduced in API 1.2, and adds a number of further improvements, including platform filters in device detection, extended DirectAccess introspection, plugin manager support, object type name lookup, surface display string access, and command binding capability checks.

As an addition to the documentation, there is now also a browser-based Playground for trying out MIDI Remote scripts directly in the docs. Please note that the Playground is brand new and currently in alpha state, so expect rough edges and use it at your own risk.

Feedback is welcome.

Very cool stuff,

Could there be any hope in the near future for the ability to add a “Non-Graphical Device”, that is essentially just a mass routing portal list of MIDI → Mapping Assistant… Akin to the old Generic Remote?

Don’t remove Generic Remote, instead improve it? Or Improve MIDI-Remote to have same function - Cubase - Steinberg Forums

Best regards to the MIDI Remote team

This documentation is very welcome, with the addition of logging host objects/params.

The mPluginManager is a great great addition!

I want to comment on the new getParameterProcessValueType method. This was a dream for me, in order to properly map knobs/buttons of my controllers, without too much effort.

Finally, the get/setDisplayValue is dope!

Playground? I will give this a shot, sounds very interesting :slight_smile:

Great progress, especially mPluginManager. Three remaining blockers for AI integration: track creation, audio region rendering, and external process communication (HTTP/IPC beyond MIDI). Looking forward to v1.4.

It extremely turns me off reading about API updates, but absolutely nothing (since three versions) for the midi remote editor. We normal users still have no support for displays, LED rings etc. For how the whole thing was advertised once, really nothing useful had happen since then. Even more frustrating is the fact, that API and midi remote editor is not compatible, not to mention that this editor is really a sad joke.

Really how hard can it be to add display support for the editor? At least add one display that follows the MCU standard, add a option for a sysex header and most people would have a display. Do the same for LED rings and you would have covered the most common midi controllers.

This is my controller under Ableton:

AND THIS is my controller under Cubase:

GJ on that….. NOT.

Could you please explain how it is possible to develop a dedicated API, bring it all the way to version 1.3, and still not provide a clear way to achieve something that a 30-year-old protocol can already do?

I am referring specifically to the ability to browse every bus available in Cubase through the Bus Destination control on Page 04 of the MCU FX SEND section for the SSL UF1 device.

Writing a script with these APIs is a nightmare. A real nightmare.

The useful methods seem to be missing. It is unclear where the relevant objects should be enumerated from. It is also unclear how a 30-year-old protocol is able to browse every available bus, while this functionality still does not appear to be natively exposed through the current APIs.

Hi, I’m not a developer, just user. I have an iCON V1-M controller with 8 channel faders an a master faders. More channels can be added with extenders.

For me it’s really great hardware and they provide MIDI remote scripts. I’m in contact with them, testing the script as a user and provide test results and requests and they made some improvements.

One of the main issues for me is caused by the Cubase MIDI remote API. The API doesn’t provide channel visibility parameters. Therefore all channels are always assigned to the faders of the controllers. E.g. if some channels are hidden, the controller doesn’t have that information. I can’t select only group channels plus FX channels for a final mix or only input channels and audio channels for recording and still have all faders of the controllers assigned to the channels that I want.

I assume that this is the same for all multi channel controllers or the V1-M engineering didn’t find the right functions.

Please extend the API.

Another minor issue is related to the stereo out metering. It seems that the API doesn’t provide separate values for the left and right channel. The stereo meter of the controller always shows the same level for both sides.

It does. However, what it doesn’t perform is an immediate refresh when the user hides/unhides channels. An action must be first taken.
Workaround this here:

It does provide them, but not from the very first version of it. It’s doable now:

Thank you very much. I will forward this good information to iCON

It’s still sad there’s no integration between the MIDI Remote and the API despite Steinberg creating the illusion that it does. You have all the functionality (in theory) in the world as showcased by the pretty ready script presets which are not created using the MIDI Remote despite having all neat little GUIs which look like the hardware in question. Then you go do the same yourself and you have to program the visual aspect of the thing because all that functionality only exists in code.