The MIDI Forum

  1. Jonas
  2. Sherlock Holmes
  3. MIDI Software
  4. Saturday, 04 January 2020
  5.  Subscribe via email
It is kind of strange they created ID's for synths, but you are not able to adress a specific synth via ID "or can you do that over sysex?". If i have a synth in a midi thru chain, can i adress it to mute that specific synth, or mute channels on that ***specific*** synth?

By allowing the synth standard to use a identification byte with range 0-255 well, things would been different today.

It is kind of weird a single byte at start would had allowed for 256 synths "adjustable number IDs on synths" so....???
But that would have allowed for free chaining "well with a little latency, but the number of midi adapters sold would be reduced drastically....

So what about the new midi standard?

What was the historical reason, did they not see the potential for device to be omni channel, with different instrument?
Was a single instrument thought to be a single channel?
Comment
There are no comments made yet.
Accepted Answer
Accepted Answer Pending Moderation
0
Votes
Undo
Firstly, the whole point about SYSEX is that the commands are, or can be, peculiar to each device, so you cannot be certain about the format except as that format may be defined for each specific device. This could well still apply between devices of the same manufacturer, but more so between different manufacturers.

There are however some generat rules which might be generally applicable. Some commands may not have the mfg items, and may immed have a command byte and data. Any like this may applicable to all manufacturers, I have a Korg NS5R manual here which has a Master Volume setting of this type.

Some other commands may have a function number, maybe followed by address values (multiple bytes, possibly being LSB and MSB) then followed by multiple (?) bytes of data. The example you give seems a little strange as if it IS LSB and MSB that there should be data following, maybe more likely it's the 4e might be a precific commads, and the next two bytes are the data to be applied. Depends what you manual says.

Regarding your specific query, there may NOT be a way to make a specific device insensitive to incoming data, However, if your device can set the channels that it will receive (respond to) you might be able to change this setting so that it will not respond to ANY channel?

Geoff
Comment
There are no comments made yet.
  1. more than a month ago
  2. MIDI Software
  3. # Permalink
Accepted Answer Pending Moderation
0
Votes
Undo
Well i have an old Roland soundcanvas 7 chained "thru" from my Korg N364. And i would like to mute them independently but i guess that is not possible?
Comment
There are no comments made yet.
  1. more than a month ago
  2. MIDI Software
  3. # 1
Accepted Answer Pending Moderation
0
Votes
Undo
It is kind of weird a single byte at start would had allowed for 256 synths "adjustable number IDs on synths" so....???

No, MIDI 1.0 uses 7-bit data bytes. A single data byte can have a maximum of 128 values.

A "Manufacturer ID" is built into SysEx messages by the standard so that SysEx messages can target devices for a specific manufacturer. Roland adds a "Device ID" to its standard SysEx format so that you can target a specific Roland device. Many Roland devices even allow you to change the Device ID in case you have more than one of the same device in a chain.

When you send SysEx messages coded for your Roland Sound Canvas, the Korg N364 will ignore them.
Comment
There are no comments made yet.
  1. more than a month ago
  2. MIDI Software
  3. # 2
Accepted Answer Pending Moderation
0
Votes
Undo
No, MIDI 1.0 uses 7-bit data bytes. A single data byte can have a maximum of 128 values.
Is not that a matter of semantics?
According to this the status byte "function" is 8-bit but the parameter bytes 7-bit?

https://www.midi.org/specifications-old/item/table-2-expanded-messages-list-status-bytes

But they could allowed accessing synths directly using an ID byte of 8,7,6,5, 4 bits before statusbyte, i mean 16 devices goes a long way, one can wonder why that was not implemented globally for any event "as assignable on the device"?

=============================================================
I am starting to make a parameter editor for the N364 and Roland SC-7 but i do not have the hang on sysex messages.
So i am looking back at a message i programmed for bank change, and sent out, but really did not understand the gist off. This one is for setting synth into "program mode" on the KorgN364.

settingChange=[0xf0,0x42,0x30,0x35,0x4e,0x02,0x00,0xf7];
F0 Exclusive
42 Manufacturer Korg
30 Device ID???? Tells it is a synth??
35 Korg N364
4e Command ID or what is it?
02 LSB or what is it?
00 MSB or what is it?
f7 EOX "end of message?"

If someone got the time to explain, it does set the Korg N364 into program mode. I do not understand how the LSB, DATA, MSB relate to the function selected "program mode".
Comment
There are no comments made yet.
  1. more than a month ago
  2. MIDI Software
  3. # 3
Accepted Answer Pending Moderation
0
Votes
Undo
Is not that a matter of semantics?
No, it's not a matter of semantics. The high bit of a status byte is what differentiates it from a parameter or data byte. The important thing to understand here is that the payload of a SysEx message can only contain 7-bit bytes. If you want to transmit a value greater than 127 then you need to use more than one byte. This leads to part of your second question. MSB, in the context of your SysEx message, stands for "most significant byte" while LSB stands for "least significant byte". This appears to be a 14-bit value which relates to the command ID. The N364 User Guide should explain to you what each part of the SysEx message is. I'm not familiar with Korg, only Roland.
Comment
There are no comments made yet.
  1. more than a month ago
  2. MIDI Software
  3. # 4
  • Page :
  • 1


There are no replies made for this post yet.
Be one of the first to reply to this post!