Jump to content

Modify MIDI-ROUTER from external


daemonik
 Share

Recommended Posts

sooooooooon I will have finished my SEQ V4... everything is working now, last thing to do is the enclosure

Now as it comes to an end, I'm thinking about how to integrate this AWESOME piece of equipment into my setup....

I plan to use the SEQ V4 as MIDI 'control center':

  • all synths are connected in (4) chains to the sequencer
  • a keyboard controller is hooked to the midi-in of the sequencer
  • MIDI-ROUTER is used to connect keyboard/USB-MIDI with synth chains


    Within the MIDI-ROUTER:
    • 4 nodes are used to connect USB-MIDI (1-4) to 4 synth chains (IIC-Midi connectors)
    • 1 node shall be used to connect the keyboard (MIDI-In 1/2) to the 4 synth chains (IIC-Midi connectors)

    since I want to be able to switch the output (chain 1..4) that is hooked to the keyboard input, this configuration needs the ability to modify the MIDI-ROUTER settings from external. By reading the changelog I found that this might be possible by using MIOS terminal commands. But I rather want to be able to modify it directly from my keyboard.

    2 possibilities come to my mind:

    [*]change the settings of a node (the keyboard to synth-chains node) with a sysex-string (thus i can assigne appropriate sysex-strings to 4 buttons on my controller-keyboard)

    [*]introduce presets for the router, which can be switched from external

    First option is prefered. Seems to be more easy. All I had to do is to add a function in seq_midi_sysex.c which calls a node-setting-function using the parameters received in a sysex-string.

    Right?

    Can u follow my explanations?

    Better ideas? Workaround?

    Did I miss something?

    How do you do it? controlling a synth with the SEQ and a keyboard in parallel without booting the PC?

    Any ideas/recommendations/warnings/hints welcome!

    btw. YES i thought about using external Midi-Mergers (it's not an option - I DO WANT to implement it in the code :drool: )

Edited by daemonik
Link to comment
Share on other sites

Hi there,

you could simply switch the MIDI OUT channel on the keyboard

and setup a route for every inbound channel to the respective outbound synth chain:

FROM IN1, CHN1 TO IIC1, CHN1

FROM IN1, CHN2 TO IIC2, CHN1

...

you have 16 router nodes at your disposal, of course you could also route USB MIDI IN in a similar way...

Enjoy the SEQ - it is awesome, the MIDI router functionality alone seriously rocks :)

Bye,

Peter

Edited by Hawkeye
Link to comment
Share on other sites

Yes you are right! but...

that way I can only drive 16 midi channels in total from SEQ and keyboard (when setting up nodes for USB-MIDI to midi-out and midi-in to midi-out in parallel its reduced to 8)

However I need:

  • 4 for NordModular
  • 4 for NordModular G2
  • 4 for MB6582
  • 4 for MIDIBOX CV (4 analog Synths)
  • also ther is a x0xb0x / a Microwave1 / a Machinedrum / ...

Enjoy the SEQ - it is awesome, the MIDI router functionality alone seriously rocks

Well... definitely... awesome... I'm blown by it :frantics:

and I guess I should first start with ENJOYING and think about the possibilities/options later

at least it also doesn't need a lot of button hits to chang routing within the menu

Link to comment
Share on other sites

Using terminal commands is the way to go - these are common SysEx commands which contain ASCII informations.

If you are working on a Mac, you could use the "Spy" feature of the Snoize MIDI Monitor to find out how the SysEx string looks like.

E.g. "set router 1 OSC4 all USB1 all" is:


00 F0 00 00 7E 32 00 0D 00 73 65 74 20 72 6F 75 74 | ~2 set rout|
10 65 72 20 31 20 4F 53 43 34 20 61 6C 6C 20 55 53 |er 1 OSC4 all US|
20 42 31 20 61 6C 6C 0A F7 |B1 all |
[/code]

Best Regards, Thorsten.

Link to comment
Share on other sites

ahh... nice! thank you Thorsten

but I doubt that I can apply such long Sysex-Strings to buttons on my controller-Keyboard.

My idea was that I can change the input (MIDI-Keybord) to output (all SEQ-Outputs) routing by one fingertip on the keyboard....

For the moment I'm fine with changing the routing in the menu! But I will definitely keep an eye on that...

btw: i guess 0x00 0x00 are manufacturer- and device-ID? Does the second corespond to the MIOS-Core-ID? or how can i ensure only the intended device reads a SYSEX-DUMP?

I've built a Midi_Processor (CC to SYSEX conversion for Waldorf-Microwave1) years ago based on the 'MIDIfilter/processor'. the matching of CC# and SYSEX-Parameters can be changed with SYSEX-DUMPS to the Processor. The Device is also adressed with 0x00 0x00, but I guess this can cause problems when using other gear with no specific ID's

cheers, Nick

Link to comment
Share on other sites

The 6th Byte ist the Device ID which matches with the MIOS32 ID that can be changed with the "mios32_bootloader" update package.

It allows you to address up to 128 different devices over a single MIDI Interface. :)

Best Regards, Thorsten.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
 Share

×
×
  • Create New...