Device Details

Device Overview

Name/Version: Probability-Based MIDI Router 2.0
Author: lorena  
Description: A variation of the classic MIDI blocker. When a note is blocked by ChanceSend, it can be routed to one of 12 receive objects distributed wherever you want in your patch. Modulating the probability makes MIDI more or less likely to be routed to different places across the patch. I made this specifically with drum sequencing in mind, but I imagine it could be used melodically as well.

Channel # is set in the ChanceReceive object by the 4 x 3 grid - ordered left-right, top-down

Note: The patch is set up with 16 channels, but I removed the last 4 from presentation mode because it was getting unwieldy. It would be very easy to edit the modules once you download them and expand up to 16 channels if you want to!

Device Details

Downloads: 552
Tags utility, other
Live Version Used: 10.15.1
Max Version Used: 8.1.5
Date Added: Aug 04 2020 16:05:17
Date Last Updated: Aug 23 2020 21:06:53
Average Rating (3) 5
Rate this device: (must be logged in to rate devices login)
Device Type: midi_device
URL (optional):
License (more info): None

Device Files

Device File:


Excellent patch, thanks for sharing!

It'd be useful if the receiver had an option to merge regular MIDI data rather than exclusively play what is received from the sender.

Nice useful device.

Hi, how do I route the devices, exactly? I have been trying with an instrument rack and yet nothing seems to get past the receiver.

My setup is:
Live 10.1 + Max 8.1

Midi clip
Chancesend sending to 1 and 2 (50%)
Instrument rack
--Chain 1: receiver listening on 1 -> Instrument 1
--Chain 2: receiver listening on 2 -> Instrument 2

With the clip playing, there is midi activity at the entry point of both chains but no note reaches the instruments. Am I doing something wrong?

Thank you in advance for your assistance.


Nevermind, I think I have it sorted out:

I thought the probablility dial in the sender device was meant to act as a global note probability - that is, 100% = everything gets routed to the receivers.

Instead it's the exact opposite: at 100% all the notes go _through_ the sender to whatever is placed directly after it; at 0% all the notes are blocked and routed to the receivers, depending on the weight set by the sliders - and of course anything in between blends the probability between the direct route and the receivers.

Works like a charm on both separate tracks and instrument racks. Keep up the great work!

Proposed improvement:

I think the random integers that are checked against the note probability dial should be normalized from 1 to the upper range included, instead of 0 -> upper range-1, which is the behavior of the random object.

Otherwise, even with the note probability at 0%, there's still a slight chance (1 in 100, unsurprisingly) that a note could go through every time the random object outputs a zero as well.

Hope this makes sense.


Proposed improvement #2:

I was experiencing what I thought was a weird pitch discrepancy between the instrument placed after the direct midi out of the sender, and the ones after the receivers, and yet, on further inspection, the note values were exactly the same.

What happens is: on load, the receivers correctly initialize the pitch bend to 64; that, however, gets quickly overridden to 0 as soon as the notes start coming in. resulting in a pitch difference equal to the bend down range of the instrument.

A quick and dirty workaround is to move the pitch wheel on the track with the sender, and then bring it back to center; this way, apparently the sender uses the center value as the default pitchbend pushed to the receivers.

A cleaner solution is, probably, to force the initialization value as soon as the sender loads.



Login to comment on this device.

[ browse device library ]