Tag Archives: MIDI

First Lemur Template

All reety then, after buying Lemur for iPad the other day and sifting the PDF manual for the chunky bits, I spent a few hours today crafting my first Lemur template. It’s a hybrid OSC / MIDI creation that borrows the stock drum pads, adds a sustain latch, and also five bouncing balls with individually adjustable speeds, friction and scaling. 

The scaling turned out to be especially important, as setting the balls loose on their full range of travel then mapping them to Reaktor controls is a bit sloppy. So using the X and Y scale controls, you can specify a range of travel for whatever control you map them to. That way, you can specify that your filter cutoff stays within a useful range, or open it up to the full range of travel for crazy wildness.

The MultiBalls output both OSC and MIDI. The OSC signals look like /Multiball/X1 etc, and the MIDI CCs are in the range 17 to 26. There are X and Y lock toggles to make MIDI learn easier.

There are probably better ways to address the creation of variables and math formulas than what I’ve done here, but give me a break, this is my first try! If you’re a longtime Lemur demigod, I welcome your criticisms.

The HolyBallz template can be downloaded here. I’ll be adding templates more specific to my own ensembles soon.

General MIDI layout for TouchOSC

I was experimenting with TouchOSC‘s new MIDI capabilities and created this layout:

 There are four octaves of keys – it was a bit of a pain to go to one after another and enter the pitches so I figured I’d share the fruits of my labor. The other controls are just X, Y and XY slider controls that send MIDI CC messages. They’re arranged in a “well, let’s use up this space and see what happens” pattern. I figure I’ll fine tune it after playing it for a while.

Download it here.

UPDATE: I lowered the range by an octave so C3 is on the upper row left, which I think is more sensible.  Get it here.

Routing Reaktor MIDI in Ableton Live with a dummy track

I’ve always been annoyed with the way Live disappears the MIDI out menu of a track the instant you drop in an audio effect or instrument. It makes it difficult to route Reaktor’s awesome Spiral instrument, for example, to another instrument track. Or to send LFO controllers from Reaktor to an instrument. You can do it by selecting the Reaktor track as the MIDI in on the destination, but then you lose the ability to also control the instrument from a keyboard or control surface.

Farting around this evening I noticed that you can kludge around this limitation by creating a dummy MIDI track as a MIDI bus:

 

Notice that the MIDI Bus track has its inputs set to the Reaktor5 track, but also to the Reaktor5 instrument in that track. The MIDI Bus track has its output set to the next track, which has an instrument rack. That doesn’t tie up the MIDI from dropdown in the instrument rack’s track, so the track still accepts note and control information from a control surface or keyboard, or what have you.

The other important point is to set monitor to “In” for your two target tracks.

Maybe this is a well known workaround now but a year or two ago when I googled for solutions I found only complaints and no fixes. I hope this helps somebody else because it sure opens up possibilities for me!

Sending MIDI CC with the Channel Message module


I’ve been working with someone on creating custom MIDI controllers for use in Ableton and thought I’d share ideas. The most flexible way to send MIDI in Reaktor 5 is to use the Channel Message module.

The input ports, from bottom to top, work like so:

  • Val: self explanatory. This is where you send the value of the message you want to transmit. By default the range is zero to one, but you can change this in the module properties.
  • Nr: In this case, the number of the MIDI CC to transmit.
  • Ch: The MIDI channel to transmit on. This overrides the settings of the instrument containing the module, but you can go into the module properties and tell it “always use instrument’s send channel”.
  • St: Status – this determines what kind of message will be sent. We’re sending type 3 which is a MIDI controller message. You can also send note on/off information, pitch bend, and so forth.

The tricky bit: this module only sends data when it receives events at the St input. When it receives an event there, it transmits whatever values are at its other inputs. That’s why I’m using the order and value modules, to ensure that every control change is followed by an event with the value “3” at St. Hover over St and the other ports for hints on what values they accept and what the values mean.

I’ve deliberately kept the structure as simple as possible for clarity… some enhancements you might make are to add panel controls to set the MIDI channel and CC#, and to rig up a more interesting event source than a knob. How about the LFO module? Try it but keep in mind the default range of the LFO is -1 to +1, not 0 to 1. You can either compensate with a few math modules or (not recommended) change the default range in the Channel Message module’s properties.

Here’s the test ensemble – build something fun with it!

Modifying Spiral’s Scales

I was talking to someone on the NI Reaktor forums about this and decided to post it here for everyone’s benefit.

The Spiral instrument, which sends algorithmically generated MIDI to other instruments or synths, has a limited number of scales and you might want to customize it to add your own scales. Here’s how to do it.

You have to dig down through the macros into trig note -> pitch correction -> scales and make the “scales” table visible.

Then you can choose the notes you want to be included and excluded from a given scale.

Of course, then the scales won’t match the labels… I’d advise modifying the chromatic scale as your custom one because it’s the easiest to return to its default value (all notes included, none excluded).

It’s interesting programming in Spiral, the way they did this – looks like the instrument retains the previous pitch if the current pitch is not in the scale.