MIDI thru box with filter


#1

Hello,

I plan to use the Axoloti as a MIDI thru box that will filter out some events (among other things).

In a scenario, I want to filter out all clock data, and start/stop messages (I send clock to an Arturia Keystep to sync its arpeggiator but it sends back the clock in the system, which is an unwanted behavior for me). The Axoloti would be at the MIDI OUT of the Keystep. (This is the exact opposite of what's been asked in a similar topic and unfortunately not really answered).

I tried making a patch but I can't test it as I don't have the device yet.

I just want to make sure I understood everything correctly:

  • Bend will be routed to bend (but channel will be reaffected and I don't want that)
  • Same for CC
  • Same for PGM change
  • Same for note (but there's no identity between in/keyb and out/note)
  • Midi in/clock won't be routed to out/clock (and could probably be deleted?)

Some questions:

  • Is there a way to do that without changing MIDI channel ? I plan to play with the Keystep on several channels and don't want that info to be lost in translation.
  • Is the general idea of the patch OK or have I missed something?

Thanks !


#2

Hi,

If you just want to filter out clock I think there's a midi thru object which thru's everything except clock... Not at my laptop so can't check.

Your patch looks ok, to avoid the channel problem you could put all the objects in a subpatch, then duplicate the subpatch for each channel. You can select the channel for the incoming messages for the subpatch, and set the channel on the out objects according to which subpatch it is.

In the subpatch settings there is an option to have a midi selector for it.

Something else to be aware of is that I think the way you've patched the keyboard would only work monophonically, so you'd need to put those in a polyphonic subpatch. And maybe use the gate2 outlet on the keyboard object to trigger the output. I had issues outputting to external synths using the gate output, something to do with legato notes not triggering, if I remember correctly. Gate2 solved it.


#3

Thanks for your answer!

Creating a subpatch for each channel seems a bit overkill. No object is "omni" channel?

Ok for polyphonic input I have to think about it. It will be easier with the module, I'm going to order it.

Edit:

This does seem to do the trick as it doesn't transmit clock. Not sure about other Realtime Messages such as "Start", "Stop", "Reset", etc.


#4

but i think the one you posted actually does...there is another one in the library that indeed does not transmit clock info (or any realtime messages for that matter)


#5

Ah yeah hence the incl_clock. I saw the other one. Thanks!


#6

I finally used an old Raspberry of mine to do what I wanted to do.

Using a iConnectMIDI1 (a simple USB-MIDI cable with an In and an Out)

I launch a simple PureData patch on startup, routing Midi In to Midi Out, excluding Realtime Messages. Then I use aconnect to route the in and out of the MIDI cable to PureData's out and ins.

And voila. Just posting there in case someone want's to do the same, feel free to PM me.


#7

Hi, i'm actually trying to do the opposite thing, a midi thru box, that transmits clock only.
Sadly I haven't got the a773/midithru_incl_clock object to work, it works fine for notes, etc., but not the clock. any tips?

Best, j