Log in
Register

  • The MIDI Messages Forum  Ask and you shall receive

    The MIDI Messages Forum
    Ask and you shall receive

  1. Bassel
  2. MIDI Specifications
  3. Tuesday, 28 February 2017
  4.  Subscribe via email
Hello,

I am developing an iOS Application that connects to a midi keyboard, and controls the keyboard.

I was able to send messages to play notes, change the pitch band, and many other functionalities.

But i was unsuccessful to send system exclusive real time messages, for example microtuning and changing the master volume.

I have tested on several keyboards with no luck.

I am sending for changing the Master volume to 0 the following hexadecimal values :

F0 7F 7F 04 01 00 00 F7

Nothing is changing when i send it, volume remains the same.

Please help, i have no idea what i am missing.
Comment
There are no comments made yet.
Clemens Ladisch Accepted Answer Pending Moderation
0
Votes
Undo
Do you actually know that these keyboards support master volume?

If yes, there might be something wrong with the way you're sending the SysEx messages.
Comment
There are no comments made yet.
  1. more than a month ago
  2. MIDI Specifications
  3. # 1
Michael Rideout Accepted Answer Pending Moderation
0
Votes
Undo
I don't know if this will help, but one thing to be aware of-- in case you don't already know-- is that MIDI documentation sometimes omits things which are considered to be obvious, or which are typically handled by the software you're using. For instance, SysEx messages should include the length of the message after the F0 byte-- but since the length is often automatically added and transmitted by the software, it might not be shown in the documentation.

So your Master Tuning message should really be as follows:

F0 07 7F 7F 04 01 00 00 F7

The 07 after the F0 indicates that the rest of the message is 7 bytes long. If you're using a program that automatically counts the number of bytes in the message and adds the length for you, then you would omit the 07 and let the program insert it for you. But if you're writing your own program to send SysEx messages then you'll need to be sure you include the length.

Meta Events are similar-- they need to include a length after the Meta Event subtype to indicate how many bytes of data there are.
Comment
There are no comments made yet.
  1. more than a month ago
  2. MIDI Specifications
  3. # 2
Clemens Ladisch Accepted Answer Pending Moderation
0
Votes
Undo
SysEx messages should include the length of the message after the F0 byte-- but since the length is often automatically added and transmitted by the software, it might not be shown in the documentation.


This is wrong; SysEx messages are not transmitted with a length.

(SysEx messages have a length only when stored in a SMF file.)

Meta Events
… appear only in SMF files and are never transmitted directly.
Comment
There are no comments made yet.
  1. more than a month ago
  2. MIDI Specifications
  3. # 3
Michael Rideout Accepted Answer Pending Moderation
0
Votes
Undo
Yes, I was aware that Meta Events are restricted to MIDI files; FF = Reset when transmitted.

But I hadn't heard that SysEx events don't include a length when transmitted. Thank you very much for educating me on that! :)
Comment
There are no comments made yet.
  1. more than a month ago
  2. MIDI Specifications
  3. # 4
  • Page :
  • 1


There are no replies made for this post yet.
However, you are not allowed to reply to this post.