This is machine translation

Translated by Microsoft
Mouseover text to see original. Click the button below to return to the English version of the page.

Note: This page has been translated by MathWorks. Click here to see
To view all translated materials including this page, select Country from the country navigator on the bottom of this page.


Determine if data is available to read from MIDI device


tf = hasdata(device)



tf = hasdata(device) returns logical 1 (true) if there is data available to read from the mididevice specified by device. Otherwise, it returns logical 0 (false).


collapse all

Create a mididevice object to interface with your MIDI device. Query your system for available MIDI devices.

  MIDI devices available:
  ID  Direction  Interface   Name
   0   output    MMSystem   'Microsoft MIDI Mapper'
   1    input    MMSystem   'nanoKONTROL2'
   2    input    MMSystem   'USB Uno MIDI Interface'
   3   output    MMSystem   'Microsoft GS Wavetable Synth'
   4   output    MMSystem   'nanoKONTROL2'
   5   output    MMSystem   'USB Uno MIDI Interface'
device = mididevice('USB Uno MIDI Interface')
device = 
  mididevice connected to
     Input: 'USB Uno MIDI Interface' (2)
    Output: 'USB Uno MIDI Interface' (5)

As soon as your mididevice object is created, it begins listening for MIDI messages and storing them in a buffer. When you call midireceive, MIDI messages are retrieved from the buffer and returned. You can use hasdata to query whether your mididevice object buffer contains unread MIDI messages.

ans = logical

Input Arguments

collapse all

Specify device as an object created by mididevice.

Introduced in R2018a