Osmose Expressive E

two days ago I got a mail that preodering for the Osmose Expressive E keyborad (a MIDI MPE controller with integrated sound) has opened again.


That looks a sounds like a lot of fun. Are you going to purchase one?

First I want to put my hands on it. And I got my LinnStrument. But there are interesting features I want to implement in my MPE module:

  • tap and press - at 1:16 (already implemented in my MPE module)
  • strum - at 3:09 (could be done with already existing modules)
  • pressure glide - at 3:39 (imagine a glide over mor than 2 octaves on the LinnStrument - something that isn’t possible yet)
  • note off - at 4:38 (could also be done with already existing modules)

The only thing I’m missing on this MPE controller is the Y-axis.

1 Like

It’s still there :wink: but in the form of “pressing the keys harder” similar to aftertouch on classic keyboards (done with great feel of control)

I know, this “y”-axis replaces the z-axis, and because of that it is impossible to change the value of both at the same time. Touchkeys https://touchkeys.co.uk used a better approach here.

1 Like

no MPE here yet - would poly aftertouch come out of those connectors too @Ahornberg or is the VCV midi module still the recommended way to go for poly AT ?

CME Xkey Air 37
Ableton Push2

What do you mean by “those connectors”?

I meant on your new MPE module. wrong thread, my mistake.

MPE needs one MIDI channel for each note when played polyphonically. My module maps those MIDI channels 1:1 to the poly-CV-channels in the outgoing rack cables. So if you use a non-MPE controller that sends all notes on the same MIDI channel, I would recommend the core MIDI module.

1 Like

Pressure-weighted portamento from Osmose sends same sort of MPE messages as other MPE gestures do for pitch manipulation. So in terms of what midi this generates, its indistinguishable from other MPE pitch messages. Caveats:

Haken have a patent on this, so watch out if tempted to make this feature available for other non-Haken MPE instruments.

Osmose has two different midi layers:

One outputs standard MPE (or even simple non-MPE midi) and is configurable via Osmoses own screen. But pressure-weighted portamento is not implemented in this layer at this time, and they mention the patent when saying why in their online documentation.

Other layer is Haken midi and outputs MPE+. A lot of the configurable options for this are built into the different EaganMatrix synth patches so depend which one you are currently playing on the Osmose. This layer does output pressure-weighted portamento. Bend range is typically set to +/- 96.

For MPE+ the resolution of MPE Y and Z messages is higher, 14 bit, by making use of additional CC87 messages that can be sent immediately before each CC74 and channel pressure message. Haken page on MPE+ explains how this works. If your module ignores the CC87 messages then everything still works, you just dont get the 14 bit resolution. If you do implement it then the required code logic is basically: store value from latest CC87 message received on each channel. Next time you receive a CC74 or channel pressure message on the same channel, use their value as the most significant bits and use the previously stored CC87 value as the least significant bits. Then reset the stored CC87 value on that channel to 0. In theory MPE+ also allows CC87 to do the same thing to make pitch bend messages 21 bit, but some of us have been trying this and havent found a circumstance where Osmose actually ever sends CC87 for use with pitch yet.

Some other differences between the two midi layers on the Osmose:

The normal MPE output sends pitch data from the global pitch fader control on the Osmose to MPE global channel 1.

The Haken MPE+ output doesnt do that, it incorporates any pitch changes that come from the global pitch bend fader to the per-channel MPE pitch messages of any note that is currently being pressed.

The Normal MPE output tends to send standard cc1 messages from pedal 2 and the mod fader to the global MPE channel 1. Although I think which message it sends when using this control can be changed via built in Osmose settings.

The Haken MPE+ output doesnt send cc1 from the mod fader. What it does send may depend on some EaganMatrix settings for the currently loaded patch in the Osmose, I havent figured this out properly yet.

see US20070234884A1 - Method and system for providing pressure-controlled transitions - Google Patents

I think, doing a linear interpolation between two CV signals inside the VCV Rack won’t violate this patent.

On the LinnStrument (the only MPE controller I have access to) you can select between having a global channel or not.

Here’s the official MPE specification:

M1-100-UM_v1-1_MIDI_Polyphonic_Expression_Specification.pdf (622.7 KB)

The Hakenaudio MPE+ specification: MPE+ — Haken Audio