Topic: UFX+ Midi Ports Issue in Cubase Pro

The problem I detail below is a problem with the detection of the midi ports of my Fireface UFX+ that I hope you can fix in a next release.

This problem has been happening to me in Cubase for a long time. I would say since Cubase Pro 12. You can check this problem using the free trial version of Cubase Pro 15 if you do not have a recent version of Cubase Pro.

Before talking to you I have been talking to Steinberg technical service about this problem for several days, because I thought the problem would be theirs. Finally we ruled out that the problem is Cubase. According to Cubase technical service, the problem must be something related to the internal identifiers of the midi ports of my Fireface UFX+.

The Fireface UFX+ is connected via Thunderbolt to a computer with macOS 15.7.3. With previous versions of macOS I had the same problem, so I think the macOS used should not be relevant.

The problem is the following, step by step:
1- I configure the MIDI ports of the UFX+ in Cubase Pro 14 or 15, unchecking all the ports in the "Visible" and "In All MIDI" columns.
2- I close Cubase.
3- I turn off the UFX+
4- I turn on the UFX+
5- I open Cubase again.
6- I open the MIDI port configuration of Cubase and all the ports in the "Visible" and "In All MIDI" columns of the Fireface UFX+ are checked.

So, the problem is that every time I turn off and on the Fireface UFX+, Cubase forgets the port configuration and re-enables them all, which is its default configuration. I attach screenshots of the ports configuration:
https://helpcenter.steinberg.de/attachm … name=1.png
https://helpcenter.steinberg.de/attachm … name=2.png

However, the audio input and output configurations of the Fireface UFX+ are correctly remembered by Cubase.

I have another sound card, and I did the same test with it. Cubase correctly remembers which midi ports I enable/disable.

I inform you that with Steinberg I have done several steps of resetting Cubase, resetting the default midi configuration of macos, and nothing has solved the problem.

According to Steinberg, MIDI port detection is done with an identifier, and it seems that the Fireface UFX+ changes the internal identifiers that macos reads every time the card is turned off and on again.

I don't know if all this information can give you any clue as to how to fix this. I hope I explained it well.

I hope you can fix this because it's very tedious to have to configure the ports every day when I turn on the Fireface UFX+.

2 (edited by waedi 2026-01-27 23:20:38)

Re: UFX+ Midi Ports Issue in Cubase Pro

jordikt wrote:

problem with the detection of the midi ports of my Fireface UFX+ that I hope you can fix in the next updates of this beta.

You may have overlooked that this is about Totalmix only and Totalmix has nothing to do with the midi ports identyfiers of the interface.

May be a driver update will sort out that issue or a firmware update.

Anyway good you posted the issue with all details and informations

In my opinion, it is Cubase that should be updated to read the midi ports identifiers correctly.
Seems a lazy excuse by Cubase to blame the interface.
They know the issue and the solution, where is the Cubase Update ?

M1-Tahoe, Madiface Pro, Digiface USB, Babyface silver and blue

Re: UFX+ Midi Ports Issue in Cubase Pro

waedi wrote:

You may have overlooked that this is about Totalmix only and Totalmix has nothing to do with the midi ports identyfiers of the interface.
May be a driver update will sort out that issue or a firmware update.

You are right, I shouldn't post this issue here, it is not related to Totalmix.

[Mod edit: thread has been moved]

waedi wrote:

In my opinion, it is Cubase that should be updated to read the midi ports identifiers correctly.
Seems a lazy excuse by Cubase to blame the interface.
They know the issue and the solution, where is the Cubase Update ?

I must say that they were not lazy and they didn't blame the interface. I have been for several days talking with them and testing several things trying to find a solution.
As I said before, I am only having this midi port issue with the RME interface. It is not happening with the other audio interface I have.

4 (edited by waedi 2026-01-28 00:08:25)

Re: UFX+ Midi Ports Issue in Cubase Pro

Did you test with another DAW, Reaper ?

Also in the MacOS Audio-Midi-Setup / Midi-Studio
Did you try "new search" ?

https://i.ibb.co/fzRPg09m/midi.jpg

M1-Tahoe, Madiface Pro, Digiface USB, Babyface silver and blue

Re: UFX+ Midi Ports Issue in Cubase Pro

I didn't test it with another DAW, I mainly use Cubase.

Regarding Audio Midi Setup, I created another default configuration and I also did a reset of my current configuration, but it didn't fix the issue.

Re: UFX+ Midi Ports Issue in Cubase Pro

Are the Midi ports of the UFX+ visible there ?

M1-Tahoe, Madiface Pro, Digiface USB, Babyface silver and blue

Re: UFX+ Midi Ports Issue in Cubase Pro

Yes.

8

Re: UFX+ Midi Ports Issue in Cubase Pro

We will have a look, thanks for the details. Does the same happen when using USB instead of TB? This might be an issue specifically with that platform.

Regards
Matthias Carstens
RME

9 (edited by maggie33 2026-01-28 07:47:18)

Re: UFX+ Midi Ports Issue in Cubase Pro

Maybe it helps...

I did a quick test in Cubase 15.
With my UFX3 (which uses the de.rme-audio.firefaceUSB3Midi driver) and 802 (uses the com.apple.AppleMIDIUSBDriver -  Apple's general MIDI driver). For both devices the settings are remembered correctly in Cubase.

Sure, don't know if UFX+ uses one of them via USB connection. Same, if TB connection uses a dedicated midi driver as well.

——

jordkit wrote:

MIDI port detection is done with an identifier, and it seems that the Fireface UFX+ changes the internal identifiers that macos reads every time the card is turned off and on again.

@jordkit
MacOS stores its Midi configs in ~/Library/Audio/MIDI Configurations/ as *.mcfg files.
The identifier (UID) for each devices, MIDI port, src and dst are generated on first connection by Apple's Midi Setup. And shall be persistent. At least as you un-/re plug a unit into the same TB/USB port (and don't change USB/CC mode etc...).

You could verify this quite easy:
- Save your current mcfg as a copy f. Ex via Terminal:

cp "~/Library/Audio/MIDI Configurations/YOURCONFIGNAME.mcfg" "~/Library/Audio/MIDI Configurations/YOURCONFIGNAME.mcfg.before"

- Turn off your unit
- Turn on your unit again. And now, do a diff to check if the UIDs (or sth else) has changed. F. Ex via:

diff "~/Library/Audio/MIDI Configurations/YOURCONFIGNAME.mcfg" "~/Library/Audio/MIDI Configurations/YOURCONFIGNAME.mcfg.before"

If nothing changed, the output should be empty (usual behavior here).
Otherwise, you’ll get the diff lines…

“Do It For Her”
My Gear: Bontempi Magic light Keyboard

Re: UFX+ Midi Ports Issue in Cubase Pro

Thanks a lot @maggie33 for your suggestion.

After doing the diff in terminal, it seems that indeed all midi port identifiers are changed evry time I turn off and on my UFX+.

This is the reply from terminal after doing the comparison between the two mcfg files:

745,865d744
<         <dict>
<             <key>DeviceType</key>
<             <string>Fireface UFX+ (23968278)</string>
<             <key>driver</key>
<             <string>de.rme-audio.RMEPCIeMidi</string>
<             <key>entities</key>
<             <array>
<                 <dict>
<                     <key>destinations</key>
<                     <array>
<                         <dict>
<                             <key>uniqueID</key>
<                             <integer>1614553812</integer>
<                         </dict>
<                     </array>
<                     <key>embedded</key>
<                     <integer>0</integer>
<                     <key>maxSysExSpeed</key>
<                     <integer>3125</integer>
<                     <key>name</key>
<                     <string>Port 1</string>
<                     <key>protocol</key>
<                     <integer>1</integer>
<                     <key>sources</key>
<                     <array>
<                         <dict>
<                             <key>uniqueID</key>
<                             <integer>-1427597331</integer>
<                         </dict>
<                     </array>
<                     <key>uniqueID</key>
<                     <integer>-38120408</integer>
<                 </dict>
<                 <dict>
<                     <key>destinations</key>
<                     <array>
<                         <dict>
<                             <key>uniqueID</key>
<                             <integer>1347727768</integer>
<                         </dict>
<                     </array>
<                     <key>embedded</key>
<                     <integer>0</integer>
<                     <key>maxSysExSpeed</key>
<                     <integer>3125</integer>
<                     <key>name</key>
<                     <string>Port 2</string>
<                     <key>protocol</key>
<                     <integer>1</integer>
<                     <key>sources</key>
<                     <array>
<                         <dict>
<                             <key>uniqueID</key>
<                             <integer>-670880866</integer>
<                         </dict>
<                     </array>
<                     <key>uniqueID</key>
<                     <integer>-471167103</integer>
<                 </dict>
<                 <dict>
<                     <key>destinations</key>
<                     <array>
<                         <dict>
<                             <key>uniqueID</key>
<                             <integer>2085933737</integer>
<                         </dict>
<                     </array>
<                     <key>embedded</key>
<                     <integer>0</integer>
<                     <key>maxSysExSpeed</key>
<                     <integer>3125</integer>
<                     <key>name</key>
<                     <string>MADI optical</string>
<                     <key>protocol</key>
<                     <integer>1</integer>
<                     <key>sources</key>
<                     <array>
<                         <dict>
<                             <key>uniqueID</key>
<                             <integer>386976614</integer>
<                         </dict>
<                     </array>
<                     <key>uniqueID</key>
<                     <integer>1227938225</integer>
<                 </dict>
<                 <dict>
<                     <key>destinations</key>
<                     <array>
<                         <dict>
<                             <key>uniqueID</key>
<                             <integer>-186346119</integer>
<                         </dict>
<                     </array>
<                     <key>embedded</key>
<                     <integer>0</integer>
<                     <key>maxSysExSpeed</key>
<                     <integer>3125</integer>
<                     <key>name</key>
<                     <string>MADI coaxial</string>
<                     <key>protocol</key>
<                     <integer>1</integer>
<                     <key>sources</key>
<                     <array>
<                         <dict>
<                             <key>uniqueID</key>
<                             <integer>-120287771</integer>
<                         </dict>
<                     </array>
<                     <key>uniqueID</key>
<                     <integer>1455203619</integer>
<                 </dict>
<             </array>
<             <key>manufacturer</key>
<             <string>RME</string>
<             <key>model</key>
<             <string>Fireface UFX+ (23968278)</string>
<             <key>name</key>
<             <string>Fireface UFX+ (23968278)</string>
<             <key>uniqueID</key>
<             <integer>2097729010</integer>
<         </dict>

I confirm that I have always plugged my UFX+ in the same thunderbolt input port of my macbook pro, and I always connect it directly to the computer (no HUB).

Installed Driver: macOS 11 or up Thunderbolt DriverKit driver for UFX+, v. 1.06.

Installed Firmware PCIe: revision 112
Installed Firmware DSP: revision 61
Installed Firmware USB: revision 55
Installed Firmware Fallback USB: revision 47

Re: UFX+ Midi Ports Issue in Cubase Pro

Does this also happen if you reboot rather than switch the device off and on?

Regards
Daniel Fuchs
RME

Re: UFX+ Midi Ports Issue in Cubase Pro

MC wrote:

We will have a look, thanks for the details. Does the same happen when using USB instead of TB? This might be an issue specifically with that platform.

I have never used my UFX+ through USB, maybe it would be a solution (maybe thunderbolt protocol always change the ids?)

It is true that the other audio device I have is a USB device and it is not causing the midi port issue in Cubase.

Unfortunately, it is a little bit complicated to me to connect a usb cable to my ufx+ now, cause I have a part of the rear panel of my UFX+ not accessible and I would need to dismount it, and it would take me quite a while.

If you agree, I would prefer to wait for your first feedback on this issue before dismounting and mounting it.

But if it's necessary that I test the usb connection, I will do it, no problem at all.

Is it ok for you?

Re: UFX+ Midi Ports Issue in Cubase Pro

RME Support wrote:

Does this also happen if you reboot rather than switch the device off and on?

Sorry I don't understand, do you mean to reboot the computer with the UFX+ on?

Re: UFX+ Midi Ports Issue in Cubase Pro

Yes, for a test. Does that also change IDs?

Regards
Daniel Fuchs
RME

Re: UFX+ Midi Ports Issue in Cubase Pro

If I reboot the computer with the UFX+ turned on, the mcfg file doesn't change and the issue in Cubase is fixed.

I have realized that the mcfg file is changing everytime the UFX+ is turned on, but also every time it is turned off.

This is the Diff Terminal reply after turning the UFX+ off:

744a745,865
>         <dict>
>             <key>DeviceType</key>
>             <string>Fireface UFX+ (23968278)</string>
>             <key>driver</key>
>             <string>de.rme-audio.RMEPCIeMidi</string>
>             <key>entities</key>
>             <array>
>                 <dict>
>                     <key>destinations</key>
>                     <array>
>                         <dict>
>                             <key>uniqueID</key>
>                             <integer>1615197146</integer>
>                         </dict>
>                     </array>
>                     <key>embedded</key>
>                     <integer>0</integer>
>                     <key>maxSysExSpeed</key>
>                     <integer>3125</integer>
>                     <key>name</key>
>                     <string>Port 1</string>
>                     <key>protocol</key>
>                     <integer>1</integer>
>                     <key>sources</key>
>                     <array>
>                         <dict>
>                             <key>uniqueID</key>
>                             <integer>1077547265</integer>
>                         </dict>
>                     </array>
>                     <key>uniqueID</key>
>                     <integer>-1528218506</integer>
>                 </dict>
>                 <dict>
>                     <key>destinations</key>
>                     <array>
>                         <dict>
>                             <key>uniqueID</key>
>                             <integer>252256424</integer>
>                         </dict>
>                     </array>
>                     <key>embedded</key>
>                     <integer>0</integer>
>                     <key>maxSysExSpeed</key>
>                     <integer>3125</integer>
>                     <key>name</key>
>                     <string>Port 2</string>
>                     <key>protocol</key>
>                     <integer>1</integer>
>                     <key>sources</key>
>                     <array>
>                         <dict>
>                             <key>uniqueID</key>
>                             <integer>1638378339</integer>
>                         </dict>
>                     </array>
>                     <key>uniqueID</key>
>                     <integer>-1029554677</integer>
>                 </dict>
>                 <dict>
>                     <key>destinations</key>
>                     <array>
>                         <dict>
>                             <key>uniqueID</key>
>                             <integer>762701994</integer>
>                         </dict>
>                     </array>
>                     <key>embedded</key>
>                     <integer>0</integer>
>                     <key>maxSysExSpeed</key>
>                     <integer>3125</integer>
>                     <key>name</key>
>                     <string>MADI optical</string>
>                     <key>protocol</key>
>                     <integer>1</integer>
>                     <key>sources</key>
>                     <array>
>                         <dict>
>                             <key>uniqueID</key>
>                             <integer>-162100429</integer>
>                         </dict>
>                     </array>
>                     <key>uniqueID</key>
>                     <integer>-1565242177</integer>
>                 </dict>
>                 <dict>
>                     <key>destinations</key>
>                     <array>
>                         <dict>
>                             <key>uniqueID</key>
>                             <integer>-247368969</integer>
>                         </dict>
>                     </array>
>                     <key>embedded</key>
>                     <integer>0</integer>
>                     <key>maxSysExSpeed</key>
>                     <integer>3125</integer>
>                     <key>name</key>
>                     <string>MADI coaxial</string>
>                     <key>protocol</key>
>                     <integer>1</integer>
>                     <key>sources</key>
>                     <array>
>                         <dict>
>                             <key>uniqueID</key>
>                             <integer>1428164687</integer>
>                         </dict>
>                     </array>
>                     <key>uniqueID</key>
>                     <integer>844017315</integer>
>                 </dict>
>             </array>
>             <key>manufacturer</key>
>             <string>RME</string>
>             <key>model</key>
>             <string>Fireface UFX+ (23968278)</string>
>             <key>name</key>
>             <string>Fireface UFX+ (23968278)</string>
>             <key>uniqueID</key>
>             <integer>-392732895</integer>
>         </dict>

This is the Diff Terminal reply after turning the UFX+ on:

745,865d744
<         <dict>
<             <key>DeviceType</key>
<             <string>Fireface UFX+ (23968278)</string>
<             <key>driver</key>
<             <string>de.rme-audio.RMEPCIeMidi</string>
<             <key>entities</key>
<             <array>
<                 <dict>
<                     <key>destinations</key>
<                     <array>
<                         <dict>
<                             <key>uniqueID</key>
<                             <integer>997891894</integer>
<                         </dict>
<                     </array>
<                     <key>embedded</key>
<                     <integer>0</integer>
<                     <key>maxSysExSpeed</key>
<                     <integer>3125</integer>
<                     <key>name</key>
<                     <string>Port 1</string>
<                     <key>protocol</key>
<                     <integer>1</integer>
<                     <key>sources</key>
<                     <array>
<                         <dict>
<                             <key>uniqueID</key>
<                             <integer>506605956</integer>
<                         </dict>
<                     </array>
<                     <key>uniqueID</key>
<                     <integer>132300319</integer>
<                 </dict>
<                 <dict>
<                     <key>destinations</key>
<                     <array>
<                         <dict>
<                             <key>uniqueID</key>
<                             <integer>1772972493</integer>
<                         </dict>
<                     </array>
<                     <key>embedded</key>
<                     <integer>0</integer>
<                     <key>maxSysExSpeed</key>
<                     <integer>3125</integer>
<                     <key>name</key>
<                     <string>Port 2</string>
<                     <key>protocol</key>
<                     <integer>1</integer>
<                     <key>sources</key>
<                     <array>
<                         <dict>
<                             <key>uniqueID</key>
<                             <integer>1566699364</integer>
<                         </dict>
<                     </array>
<                     <key>uniqueID</key>
<                     <integer>-1638111335</integer>
<                 </dict>
<                 <dict>
<                     <key>destinations</key>
<                     <array>
<                         <dict>
<                             <key>uniqueID</key>
<                             <integer>-597045560</integer>
<                         </dict>
<                     </array>
<                     <key>embedded</key>
<                     <integer>0</integer>
<                     <key>maxSysExSpeed</key>
<                     <integer>3125</integer>
<                     <key>name</key>
<                     <string>MADI optical</string>
<                     <key>protocol</key>
<                     <integer>1</integer>
<                     <key>sources</key>
<                     <array>
<                         <dict>
<                             <key>uniqueID</key>
<                             <integer>970913003</integer>
<                         </dict>
<                     </array>
<                     <key>uniqueID</key>
<                     <integer>-1556356780</integer>
<                 </dict>
<                 <dict>
<                     <key>destinations</key>
<                     <array>
<                         <dict>
<                             <key>uniqueID</key>
<                             <integer>1140432995</integer>
<                         </dict>
<                     </array>
<                     <key>embedded</key>
<                     <integer>0</integer>
<                     <key>maxSysExSpeed</key>
<                     <integer>3125</integer>
<                     <key>name</key>
<                     <string>MADI coaxial</string>
<                     <key>protocol</key>
<                     <integer>1</integer>
<                     <key>sources</key>
<                     <array>
<                         <dict>
<                             <key>uniqueID</key>
<                             <integer>-1352145618</integer>
<                         </dict>
<                     </array>
<                     <key>uniqueID</key>
<                     <integer>1829366775</integer>
<                 </dict>
<             </array>
<             <key>manufacturer</key>
<             <string>RME</string>
<             <key>model</key>
<             <string>Fireface UFX+ (23968278)</string>
<             <key>name</key>
<             <string>Fireface UFX+ (23968278)</string>
<             <key>uniqueID</key>
<             <integer>992187455</integer>
<         </dict>

16 (edited by maggie33 2026-01-29 07:38:14)

Re: UFX+ Midi Ports Issue in Cubase Pro

Your diff shows absolute clear whats going on.
JFYI: the lines 745-865 are affected in your .mcfg...

The device is completely removed, powering the unit off and freshly generated powering it on...
Instead "marked as offline" (greyed out) in AMS, the device disappears completely. Right?
As described here: https://support.apple.com/en-ca/guide/a … %20dimmed.

Thats why the uniqueID's are freshly generated on power on/reconnect, what causes Cubase to recognize a new MIDI device (which is enabled by default).

----

Not 100% sure (as I don't own a TB unit), but maybe this info helps to identify the cause easier.

- The de.rme-audio.firefaceUSB3Midi (afaik, UFX+ uses it in USB Mode, too) driver uses the "offline key". Thats what makes Apple's AMS "happy"... This key marks the device offline/greyed out in AMS instead deleting it. 
I used my UFX3 here, just to show what I mean:
(the "-C 1" param just additionally show the upper/lower line. while the ! marks the real change):
Thats my result here:

diff -C 1 \
  ~/Library/Audio/MIDI\ Configurations/MySetup.mcfg.UFX3on \    
  ~/Library/Audio/MIDI\ Configurations/MySetup.mcfg.UFX3off  
....
*** 2068,2070 ****
              <key>offline</key>
!             <integer>0</integer>
              <key>uniqueID</key>
--- 2068,2070 ----
              <key>offline</key>
!             <integer>1</integer>
              <key>uniqueID</key>

To sum up, jordkits's issue indicates the same cause as my personal experience was.. (a while ago I was developing a midi driver and stumbled over exact the same point)...
I am pretty sure the TB driver  (de.rme-audio.RMEPCIeMidi) calls MIDISetupRemoveDevice (whatever triggers it) on poweroff/disconnect, instead setting the kMIDIPropertyOffline
See: https://developer.apple.com/documentati … y%20state.

(vs.: if system is rebooted, the TB driver doesn't get a "offline" trigger and doesn't call MIDISetupRemoveDevice with the result that the midi device persists in the config, as jordkit mentioned)

“Do It For Her”
My Gear: Bontempi Magic light Keyboard

17

Re: UFX+ Midi Ports Issue in Cubase Pro

Thumbs up!

Regards
Matthias Carstens
RME

Re: UFX+ Midi Ports Issue in Cubase Pro

maggie33 wrote:

JFYI: the lines 745-865 are affected in your .mcfg...

Thanks for your help @maggie33 !

My .mcfg file has only 747 lines after turning the UFX+ off. These are the 3 last lines of the file:

745       </array>
746   </dict>
747   </plist>

But my .mcfg file has 868 lines after turning the UFX+ on. These are the 3 last lines of the file:

866       </array>
867   </dict>
868   </plist>

It seems that when the UFX+ is turned off, all the info of the UFX+ is removed from the mcfg file…

Re: UFX+ Midi Ports Issue in Cubase Pro

maggie33 wrote:

Instead "marked as offline" (greyed out) in AMS, the device disappears completely. Right?

Yes, that's correct. The UFX+ is only visible in the AMS when the UFX+ is powered on. When it is powered off, the device disappears from AMS.

20 (edited by maggie33 2026-01-30 03:36:52)

Re: UFX+ Midi Ports Issue in Cubase Pro

jordkit wrote:

It seems that when the UFX+ is turned off, all the info of the UFX+ is removed from the mcfg file…

Yes, absolutely. Thats what I meant...  Lines 745-865 represent the device if its turned on (as your 2 diff's from #15 show in: "745,865d744" and "744a745,865")

jordkit wrote:

]Yes, that's correct. The UFX+ is only visible in the AMS when the UFX+ is powered on. When it is powered off, the device disappears from AMS.

Thanks for confirming my "theory".

Thanks @MC as well.

“Do It For Her”
My Gear: Bontempi Magic light Keyboard