Author Topic: Microsoft Windows MIDI port limit / limitations  (Read 1316 times)

Offline chrisNova777

  • Administrator
  • Hero Member
  • Posts: 8747
  • "Vintage MIDI Sequencing + Audio Production"
    • | vintage audio production software + hardware info
Microsoft Windows MIDI port limit / limitations
« on: August 21, 2019, 12:50:01 AM »
a tool by m-audio that deletes duplicate entries from registry

avid article on testing midi ports using midi-ox

im looking for official documents pertaining to MIDI limits in versions of the windows operating system.

Windows XP (original Vanilla)
10 MIDI  ports
Rumoured to be true?  citable source?

Windows XP SP2 (Service Pack 2)
32 port limit
Rumoured to be true?  citable source?

10 Entry Limit documented by RME:

Offline chrisNova777

  • Administrator
  • Hero Member
  • Posts: 8747
  • "Vintage MIDI Sequencing + Audio Production"
    • | vintage audio production software + hardware info
Re: Microsoft Windows MIDI port limit / limitations
« Reply #1 on: August 21, 2019, 01:14:56 AM »
a blog page by a windows 10 developer detailing some new developments re: NEW MIDI API in Windows;
dated september 2016

a post regarding korg midi device uninstaller app

a cakewalk post about midi limitations

a support post from AVID/Digidesign

a presonus support post

article by craig anderton

MIDI-OX page

a page from microsoft:

article on the um880s from soundonsound:
"Edirol have implemented multi-client support for every MIDI input and output so that up to four applications can access each one; what's more, up to four UM880 units can apparently be connected to a Mac or a PC running Windows 98/ME. However, both Windows 2000 and XP currently have limitations that prevent this."

another soundonsound article referencing a so called "10-device-limit" on windows XP:

sweetwater page tallking about WDM / MME limitations of windows XP / 2000 vs Win9x (unrelated to MIDI)

Offline chrisNova777

  • Administrator
  • Hero Member
  • Posts: 8747
  • "Vintage MIDI Sequencing + Audio Production"
    • | vintage audio production software + hardware info
Re: Microsoft Windows MIDI port limit / limitations
« Reply #2 on: August 21, 2019, 01:44:00 AM »

Correcting the Windows MIDI Device Limit Issue
When Windows XP has installed over a certain number of MIDI devices, it will refuse to
show any new ones until you delete some of the existing ones. The Problem? Windows
considers ANY device you've ever connected to be a valid installed device! In addition
the Device manager won't show you these installed (although currently unused) MIDI
devices EVEN IF you select the 'Show hidden devices' option.

Fortunately there is a way to force Windows operate correctly, but it involves writing a
key to your registry.

NOTE: Editing your registry requires great care - You could prevent Windows from
running correctly if you make any mistakes. CB Electronics will NOT be responsible if
you mess up your windows installation while following these instructions, so take care
or have a qualified friend perform the operation if in doubt.

Here is how you can check your Windows XP machine out to make sure your issues are
not because of the device limit being reached: First, unplug your MIDI Interface’s USB
cable from the computer, then...

1. Click on the Start menu, then select Run.

2. Type in regedit and click OK.

3. Navigate to the System Key called:

4. If there is an entry called DEVMGR_SHOW_NONPRESENT_DEVICES already there,
make sure its value is set to 1.
If the value is missing from within the Key, Right-Click over the listing and select
NEW->String Value from the pop-up menu. Rename the new REG_SZ (String Value) to
DEVMGR_SHOW_NONPRESENT_DEVICES and set its value to 1. (1 = show all hidden

5. Exit regedit and restart your computer.

Now to remove unused midi devices:
1) On restart, open your control panel, select the system icon, select the Hardware tab
in the System Properties dialog and then press the 'Device Manager' button.
2) Open Device Manager's View menu and check the 'Show hidden devices' option.
3) You can now click on the 'Sound, video and game controllers' icon and you'll see all
the unused MIDI and Audio interfaces that windows has installed.

4) Delete any greyed out 'USB Audio Device' icons you see. If you see any MIDI
interface drivers for hardware you no longer own, feel free to delete these too. If you
delete a driver for hardware you still own, this will not cause any harm except to
require you to reinstall the drivers the next time you connect that MIDI device.

5) For good measure, click on the 'Universal Serial Bus controllers' icon and delete any
greyed out USB Composite devices you see: This will require that Windows reinstall
drivers the next time you reconnect some of your less used peripherals, but this should
not be a problem.

6) Make sure that any Logitech web-cam drivers are not there even if greyed out!
Delete them if you find them.

7) Now reboot and reconnect your USB MIDI Device. Once Windows informs you the
device is ready to use, Check if the interface’s MIDI in ports are now available.

Offline chrisNova777

  • Administrator
  • Hero Member
  • Posts: 8747
  • "Vintage MIDI Sequencing + Audio Production"
    • | vintage audio production software + hardware info
Re: Microsoft Windows MIDI port limit / limitations
« Reply #3 on: August 21, 2019, 01:54:52 AM »

MIDI on Windows systems: What's the issue?

Using MIDI interface port drivers on PCs with Windows in conjunction with current MIDI/Audio sequencer applications like Cubase or Nuendo, which mainly rely on Microsoft's current DirectMusic (as part of DirectX) API for MIDI communication, can sometimes be confusing for the user. This is due to the fact that it is possible for providers of MIDI interface drivers to deliver their drivers in different 'flavors'. Modern MIDI interfaces are installed with real native DirectMusic drivers whereas it is still quite common for other interfaces to use a predecessor API to provide drivers for the Windows MIDI system. DirectMusic itself has a function to "mirror" these Windows MIDI ports to show up as 'emulated DirectMusic' ports. Unfortunately, this can lead to a quite nice array of problems when using inappropriate port driver architecture:

Shifted MIDI events while recording (events are recorded too late or too early)
Sometimes no MIDI events are recorded at all
Sometimes stuck notes or several events stacked on top of each other are recorded instead of being consecutive
Generally bad or wacky MIDI timing on playback
Double or triple recordings of the same MIDI events due to using different driver architectures at the same time
General advice for using MIDI on Windows systems

These are the basic steps to check when you experience problems with the stability of MIDI communication on your Windows system:

Make sure to have all available updates for the application and the operating system installed. When it comes to MIDI timing it is crucial to use the latest DirectX version available for your operating system. Cubase and Nuendo

If you have persistent timing problems (shifted notes etc.) with native or emulated DirectMusic ports please check the option "Use System Timestamp" provided in the DirectMusic section of the Device Setup dialogue. If enabled, an alternative time reference in your system is being used.
Depending on the Cubase version, 'Use System Time Stamp' can be found under:

Devices > Device Setup… > Direct Music
Devices > Device Setup… > Windows MIDI
Devices > Device Setup… > MIDI Port Setup
If you experience difficulties whwith receiving/transmitting SysEx data through native or emulated DirectMusic MIDI ports, please check if the Windows MIDI (MME) ports can be of help. To gain access to all available driver architectures please see the section below about the "ignoreportfilter" & "enableemulated" switches.

Sequel 1

Normally, one can fix any of these issues by using the two filter files 'enableemulated' and 'ignoreportfilter'. Those files can be found in the Sequel application folder (default is C:\Program Files\Steinberg\Sequel) in the subfolder 'Midi Port Enabler'.*
Both files have to be moved one directory up into the Sequel application folder. After a Sequel relaunch, the program now has access to previously hidden driver architectures and protocols. As the whole MIDI configuration is done automatically in Sequel, a different method of communicating with the MIDI interface or the USB keyboard will be chosen and thus the MIDI delay and recording issues should not occur any longer.

*Unfortunately, the first Sequel production run does not include the 'MIDI Port Enabler' folder. Therefore, we offer both files as a zip package for download as part of the article.

Sequel 2

If timing problems with the recorded MIDI events occurs with your operating system, try changing the "Record Placement Method (that can be found on the Program Settins Page from) A (uses timing information of Sequel) to B (uses MIDI timestamp) or vice versa.

Troubleshooting: Other possibilities to configure MIDI ports

If you continue to have issues, you can use the 'ignoreportfilter' and the 'enableemulated' files. These two files are stored inside a folder named 'midi port enabler' which can be found inside the Cubase/Nuendo/Sequel application folder.

This will happen when you use these files:

'ignoreportfilter' will show you every MIDI port installed on your system independent of the used driver architecture. Generally speaking, the 'ignoreportfilter' disables any filter to hide specific MIDI port architectures.
'enableemulated' will show you all emulated DirectMusic ports but will not unhide Windows MIDI ports itself. This can be necessary if you have problems with the Windows MIDI ports of your MIDI interface but there are no native DirectMusic ports available for your interface. Fortunately, this situation is happens only in a very rare number of cases.
These files are used as a sort of switch. To use these 'switches' just move the desired file from the folder 'midi port enabler' one level up to the main application folder, e.g. to folder '\program files\steinberg\cubase 6\'.

Please note that using these files makes it mandatory to check the MIDI port setup for redundant MIDI ports (i.e. those that appear twice or even three times) in Cubase/Nuendo under Devices > Device Setup. You should not use more than one driver architecture for a specific MIDI device at a time. For example, using the 'ignoreportfilter' with a MIDEX 3 or 8 will show you the native DirectMusic ports listed and the Windows MIDI ports at the same time. This means that you will record from two ports at once when your MIDI tracks are set to 'All MIDI Inputs'. To solve this, please deactivate the ports either for DirectMusic or Windows MIDI.