benj2017 Posted December 15, 2020 Share Posted December 15, 2020 Hi, I am using the Band Helper app on my iPad (iRig 2, camera connection kit, midi solutions merge and thru) to send SysEx messages in hex code to changes patches on a Yamaha Moxf6 in Master Mode which then selects patches on my Nord Stage Ex and two H9 Eventides. This seems to be working fine. (The Yamaha can't receive program changes in Master Mode and requires system exclusive messages which is why I am sending the hex code.) I would like to use the iPad/Band Helper to also select patches on a Kurzweil PC4-7 (pre-ordered) for when I need to travel light with one board but I don't want to have to recreate all the same songs with midi presets. I am thinking I can add bank/program changes for the Kurzweil to send at the same time as the SysEx. The Yamaha should ignore the program changes, but I am unclear if the Kurz will ignore the SysEx. Are "system exclusive" messages actually system exclusive or can they trigger other keyboards as well? Also, just curious if SysEx messages travel along a specific midi channel or if this works differently somehow than for program changes, control changes, etc. Quote Studio: Motif XF8 / MacBook Pro / Apollo Twin X / M-Audio BX8a / Plug-ins Live Rig A: Nord Stage 3 Compact 73 / Prophet Rev2 / Various FX pedals (Eventide, Strymon, Lounsberry, Neo Vent II) Live Rig B: Yamaha MODX7 / Crumar D9-X / B3-X (iPad) Amp: MS KP-610s Link to comment Share on other sites More sharing options...
AnotherScott Posted December 15, 2020 Share Posted December 15, 2020 Yes, the Kurz will ignore the Yamaha system exclusive commands. Quote Maybe this is the best place for a shameless plug! Our now not-so-new new video at https://youtu.be/3ZRC3b4p4EI is a 40 minute adaptation of T. S. Eliot's "Prufrock" - check it out! And hopefully I'll have something new here this year. ;-) Link to comment Share on other sites More sharing options...
ElmerJFudd Posted December 15, 2020 Share Posted December 15, 2020 The Yamaha stays, but you are swapping the Nord for a PC4-7 in the setup? I"m assuming you are going iPad to Yamaha midi IN and then midi THRU to the Nord (or at times PC4-7)? Also - just a side note - isn"t it easy with an app to just make a copy of your set list and rename it for when the PC4 is in the mix? Then edit that set list without goofing with your original? Quote Yamaha CP88, Casio PX-560 Link to comment Share on other sites More sharing options...
benj2017 Posted December 15, 2020 Author Share Posted December 15, 2020 Yeah, just did some more research and it looks like the third and fourth character groups in the hex code ID's the specific manufacturer and model. Thanks for confirming though, this is definitely dry reading... Quote Studio: Motif XF8 / MacBook Pro / Apollo Twin X / M-Audio BX8a / Plug-ins Live Rig A: Nord Stage 3 Compact 73 / Prophet Rev2 / Various FX pedals (Eventide, Strymon, Lounsberry, Neo Vent II) Live Rig B: Yamaha MODX7 / Crumar D9-X / B3-X (iPad) Amp: MS KP-610s Link to comment Share on other sites More sharing options...
ElmerJFudd Posted December 15, 2020 Share Posted December 15, 2020 I was also thinking that you may prefer to 'channelize'. Hard set each synth to a channel. Very tidy way of doing things and deciding what messages go where. The Yamaha can get Sysex in multi mode on a specific channel too. Quote Yamaha CP88, Casio PX-560 Link to comment Share on other sites More sharing options...
benj2017 Posted December 15, 2020 Author Share Posted December 15, 2020 The plan is to use just the PC4-7 (whenever I get it) along with the B3-x and Neo Soul Keys apps as a completely separate setup from the Yamaha/Nord. Neither the Yamaha nor the Nord have midi thru so I actually used a couple midi solution boxes to route like so: iPad &Nord >>Midi Solutions Merge>>Yamaha>>Midi Solutions Thru>>Nord & H9>>>H9 thru>>>2nd H9 (The Yamaha and Nord each trigger sounds on the other depending on the patch.) I could have eliminated some of this by using the thru on the iRIg2 and the last H9 but I wanted some flexibility to make changes later on and evidently the H9's midi thru has been wonky in the past. Also wasn't sure about the possibility of introducing latency. Regarding the setlist, there are ways to do it in that app but from what the developer says the simple way is just to have both midi presets going at the same time in one song. You don't assign the presets at the setlist level but in the song itself which is where the PDF chart is, etc. So the other way to do it is you create"smart copies" of the song and adjust the presets, but I would rather not have multiple copies of songs floating around as I would possibly like to share some of these playlists and songs with band mates using the same app potentially. Quote Studio: Motif XF8 / MacBook Pro / Apollo Twin X / M-Audio BX8a / Plug-ins Live Rig A: Nord Stage 3 Compact 73 / Prophet Rev2 / Various FX pedals (Eventide, Strymon, Lounsberry, Neo Vent II) Live Rig B: Yamaha MODX7 / Crumar D9-X / B3-X (iPad) Amp: MS KP-610s Link to comment Share on other sites More sharing options...
Markyboard Posted December 15, 2020 Share Posted December 15, 2020 I was also thinking that you may prefer to 'channelize'. Hard set each synth to a channel. Very tidy way of doing things and deciding what messages go where. The Yamaha can get Sysex in multi mode on a specific channel too. Isn"t Sysex midi channel agnostic? Quote Link to comment Share on other sites More sharing options...
ElmerJFudd Posted December 16, 2020 Share Posted December 16, 2020 I was also thinking that you may prefer to 'channelize'. Hard set each synth to a channel. Very tidy way of doing things and deciding what messages go where. The Yamaha can get Sysex in multi mode on a specific channel too. Isn"t Sysex midi channel agnostic? Apparently the Sysex header can also include a MIDI channel number. They did this so several devices on different channels could receive individual sysex messages. A device that"s been hard set to a MIDI channel will ignore sysex coming in on a channel it"s not set to receive on. Quote Yamaha CP88, Casio PX-560 Link to comment Share on other sites More sharing options...
Markyboard Posted December 16, 2020 Share Posted December 16, 2020 After posing the question I did a quick search. My understanding (such that it is) is that Sysex can be further channelized. But it"s not the same channelization that we think of with standard midi channels. And iirc it"s something referred to as universal sysex that has this feature. I may have gotten this completely wrong. Quote Link to comment Share on other sites More sharing options...
MIDI2XS Posted December 16, 2020 Share Posted December 16, 2020 There seems to be some confusion over MIDI Channel versus Device ID. SysEx messages don't include MIDI Channel. The first three bytes of a typical SysEx message might be... F0 43 10 where... F0 = Start of Exclusive 43 = Manufacturer ID (43 is Yamaha) 1n = Device Number, n = 0~F (1~16 decimal) followed by model ID bytes, then data, and finally... F7 = End of Exclusive Device Number isn't MIDI channel, it's an identifier for which of the up to 16 synths of the same model you want to direct the message. I suspect that few of us have multiple "whatevers" in our rigs, so this capability doesn't usually get much use. It may have had more application when synths tended to be mono-timbral, and a bank of them was needed to get multiple sounds simultaneously. By the way, that third byte isn't always "1n" - for Yamaha, that would signify a Parameter/Mode Change message, while "0n" is for Bulk Dump, "2n" for "Dump Request", and "3n" for Parameter Request messages. Universal SysEx, somewhat of an oxymoron, doesn't have Manufacturer ID. Quote Yamaha: Motif XF6 and XS6, A3000V2, A4000, YS200 | Korg: T3EX, 05R/W | Fender Chroma Polaris | Roland U-220 | Etc. Link to comment Share on other sites More sharing options...
benj2017 Posted December 16, 2020 Author Share Posted December 16, 2020 Awesome explanation! I assumed when I put this all together I could just send program changes to the Yamaha like any other keyboard, but they always seem to find a way to make things difficult and non-intuitive. I am interested to see if buying the PC4-7 is going to make me jump ship for all of my live gear. I already sold my MX and am selling my MOX, which just leaves with me a Motif, which is a great studio controller, and the MOXF for live use. Quote Studio: Motif XF8 / MacBook Pro / Apollo Twin X / M-Audio BX8a / Plug-ins Live Rig A: Nord Stage 3 Compact 73 / Prophet Rev2 / Various FX pedals (Eventide, Strymon, Lounsberry, Neo Vent II) Live Rig B: Yamaha MODX7 / Crumar D9-X / B3-X (iPad) Amp: MS KP-610s Link to comment Share on other sites More sharing options...
Markyboard Posted December 16, 2020 Share Posted December 16, 2020 Thanks MIDI2XS. I was aware of the device ID used with Sysex but was referring to this: Universal system exclusive messages There are two universal IDs that can be used by system exclusive messages instead of the specific manufacturer IDs above. Since these two IDs are not specific to a manufacturer, but universal, all MIDI devices should consider responding to those. These IDs are as follows. Hexadecimal value Decimal value Description 0x7E 126 Real time 0x7F 127 Non-real time In other words, 0x7F is carried by system exclusive messages to which all MIDI devices should respond to in real time (immediately) and 0x7E is carried by system exclusive messages to which all MIDI devices will respond to, but not in real time (not necessarily immediately). For example, the MIDI full frame message is a system exclusive message with manufacturer ID 0x7F. This message prompts all MIDI devices to immediately cue up to a certain point in time. The first byte after the real time / non-real time ID is the "system exclusive channel". Normal system exclusive messages do not have a channel, but universal system exclusive messages do have a channel that could be from 0x00 to 0x7F (from 0 to 127). Normally, the system exclusive channel will actually be the manufacturer ID in the table above (e.g., 0x41 for Roland), so that the message can be sent to a specific MIDI device. If the system exclusive channel is 0x7F then this message is for all MIDI devices. The two bytes after the system exclusive channel are sub-IDs and describe what the message is about. For example, the two bytes '0x01 0x01' show that the message is the MIDI Full Frame message and that the rest of the data should be used to discern time to which the MIDI device should cue. Quote Link to comment Share on other sites More sharing options...
MIDI2XS Posted December 16, 2020 Share Posted December 16, 2020 Thanks MIDI2XS. I was aware of the device ID used with Sysex but was referring to this: Universal system exclusive messages There are two universal IDs that can be used by system exclusive messages instead of the specific manufacturer IDs above. Since these two IDs are not specific to a manufacturer, but universal, all MIDI devices should consider responding to those. These IDs are as follows. Hexadecimal value Decimal value Description 0x7E 126 Real time 0x7F 127 Non-real time In other words, 0x7F is carried by system exclusive messages to which all MIDI devices should respond to in real time (immediately) and 0x7E is carried by system exclusive messages to which all MIDI devices will respond to, but not in real time (not necessarily immediately). For example, the MIDI full frame message is a system exclusive message with manufacturer ID 0x7F. This message prompts all MIDI devices to immediately cue up to a certain point in time. The first byte after the real time / non-real time ID is the "system exclusive channel". Normal system exclusive messages do not have a channel, but universal system exclusive messages do have a channel that could be from 0x00 to 0x7F (from 0 to 127). Normally, the system exclusive channel will actually be the manufacturer ID in the table above (e.g., 0x41 for Roland), so that the message can be sent to a specific MIDI device. If the system exclusive channel is 0x7F then this message is for all MIDI devices. The two bytes after the system exclusive channel are sub-IDs and describe what the message is about. For example, the two bytes '0x01 0x01' show that the message is the MIDI Full Frame message and that the rest of the data should be used to discern time to which the MIDI device should cue. Sorry, although my previous post immediately followed yours, it wasn't meant to question what you posted - I only mentioned Universal SysEx at all since you brought up the topic. I was mostly addressing previous comments in the thread which seemed to indicate a small misunderstanding concerning MIDI channels, and I wanted to clarify the issue. Quote Yamaha: Motif XF6 and XS6, A3000V2, A4000, YS200 | Korg: T3EX, 05R/W | Fender Chroma Polaris | Roland U-220 | Etc. Link to comment Share on other sites More sharing options...
Markyboard Posted December 16, 2020 Share Posted December 16, 2020 No worries. Always happy to read your posts and know that you're keeping us in check. Quote Link to comment Share on other sites More sharing options...
AnotherScott Posted December 16, 2020 Share Posted December 16, 2020 It's a funny contradiction in terms, that there are indeed a handful of "universal" system exclusive commands, since by definition, being exclusive to a particular piece or brand of gear (which is what system exclusive was designed for) is the polar opposite of being universal... Quote Maybe this is the best place for a shameless plug! Our now not-so-new new video at https://youtu.be/3ZRC3b4p4EI is a 40 minute adaptation of T. S. Eliot's "Prufrock" - check it out! And hopefully I'll have something new here this year. ;-) Link to comment Share on other sites More sharing options...
Markyboard Posted December 16, 2020 Share Posted December 16, 2020 It's a funny contradiction in terms, that there are indeed a handful of "universal" system exclusive commands, since by definition, being exclusive to a particular piece or brand of gear (which is what system exclusive was designed for) is the polar opposite of being universal... I totally agree - very confusing . I blame Craig. Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.