Free LinnStrument Update Adds Multidimensional Polyphonic Expression, User Firmware Mode

linnstrument-and-ipad

Developer Geert Bevin let us know that Roger Linn Design has released an update to the firmware for the LinnStrument, adding support for the new Multidimensional Polyphonic Expression specification, a new User Firmware Mode and more.

Multidimensional Polyphonic Expression (MPE) is a specification, designed to provided a standardized way for hardware and software manufacturers to send and receive the expressive musical performance data that multidimensional controllers, like the LinnStrument, can capture.

As a point of reference, here’s Roger Linn demonstrating the three dimensions of expression that can be captured by his LinnStrument controller:

Linn is controlling Bitwig’s built-in synth, Polysynth, with full multidimensional expressive control. This is possible because both the LinnStrument and Bitwig support MPE.

Multidimensional Polyphonic Expression (MPE) is a proposed specification, at this point, but it already has the involvement of people from Moog Music, ROLI, Apple, Bitwig, Haken Audio, Keith McMillen Instruments and Madrona Labs.

Another interesting new feature in the new firmware is the User Firmware Mode. This mode lets the LinnStrument be used as controller for any type of custom software.

Here’s an example, via Tim Thompson, of the LinnStrument being used to control UniLooper:

UniLooper is a four-track MIDI looper that does visuals as well as audio, using the pitch, channel, and velocity of the MIDI notes to control the position, behavior and size of heavily-processed visual sprites.

LinnStrument Firmware 1.2.0 Summary

The firmware installers (.zip) can be downloaded from here:

Here are the changes since v1.1.2:

New Feature: Vibrato chords in one-channel mode.

Formerly if MIDI Mode = One Channel and two or more notes were held, pitch bend was disabled, preventing vibrato or pitch slides. Because Pitch Bend messages apply to all notes on the channel, this is how we prevented the problem of all held notes changing pitch when a pitch slide was performed on only one of those notes. Now, pitch bend is still disabled when sliding a note from pad to pad, but it is enabled for vibrato (pitch movement within the note pad), permitting vibrato of chords or a melody note while a chord is also held.

New Feature: Support for new MPE (MIDI Polyphonic Expression) specification.

LinnStrument now supports the new MIDI Polyphonic Expression (MPE) specification (http://bit.ly/mpe-spec) for simple connection between sound generators and polyphonic expression instruments like LinnStrument, Seaboard or Continuum. MPE mode is a subset of LinnStrument’s Channel Per Note mode and is enabled by holding the Channel Per Note pad, causing it to change to the accent color. While active, the Left split’s Main channel is always 1 and its Per-Note Channels are a contiguous block from 2 to as high as 16, and Right split’s Main channel is always 16 and its Per-Note Channels are a contiguous block from 15 to as low as 1.

New Feature: User Firmware Mode.

A new User Firmware Mode has been added, which when enabled causes LinnStrument to only send basic touch messages. This is useful for software writers who wish to write computer applications for LinnStrument without LinnStrument’s functions hampering their application. Details about this are explained in user_firmware_mode.txt in the source code.

Enhancement: Strum feature now also strums “open” strings (rows).

Before when using the split-keyboard Strum feature (Per-Split Settings > Special column), you could only strum touched rows. Now if an untouched row is strummed, its lowest note pitch will play, similar to strumming open strings on a guitar.

New feature: Left-Hand mode.

For left-handed players who prefer to play standing with a guitar strap, a new left-handed mode changes the direction of increasing pitch from the normal left-to-right to right-to-left. To enable this mode, turn on Global Settings > 1st column > 4th pad from the bottom.

New Feature: CC Faders mode now supports any CC number for each fader.

The CC FADERS feature (Per-Split Settings > Special column) now permits each of the 8 horizontal faders to use any Control Change number. In Per-Split Settings, hold down CC FADERS and the screen will display a large number and 8 blue lights on the right edge, one of which is lit in green to indicate which of the 8 faders is selected. Select one of these 8 lights to select a fader, then adjust its CC number by swiping left or right. Note that these 8 assignments are unique for the left and right splits. Press Left Split or Right Split to view/edit the left or right split’s 8 assignments.

New Feature: Low Row’s “X=CC1” option now supports any CC number, as well as new Fader operation.

Select Per-Split Settings and hold “X=CC1”, then the screen will display large characters. Swipe up or down to switch between the following two settings, and left or right to edit each setting’s value:
Hold/Fader select: Select “HLD” (Hold mode) for same operation as in previous version wherein you must hold the low row to send the CC value, and a zero value is sent when you release. Or select “FDR” (Fader mode) for sample operation as CC FADERS, in which pressing on the Low Row changes the length of the light bar and sends a value between 0 and 127.
CC#: 0 though 127. If other than 1, the “CC=1” pad’s light will change to the Accent color.

New Feature: Low Row’s “XYZ=16-18” option now supports any CC numbers, as well as new Fader operation.

Select Per-Split Settings then hold “XYZ=CC16-18”, then the screen will display large characters. Swipe up or down to switch between the following four settings, and left or right to edit each setting’s value:
Hold/Fader select: Select “HLD” (Hold mode) for same operation as in previous version wherein you must hold the low row to send the CC value, and a zero value is sent when you release. Or select “FDR” (Fader mode) for same operation as CC FADERS, in which pressing on the Low Row changes the length of the light bar and sends an X-axis value between 0 and 127.
X CC#: Select CC for X axis (X0 – X99).
Y CC#: Select CC for Y axis (Y0 – Y99).
Z CC#: Select CC for Z axis (Z0 – Z99).
If any of the CC numbers are not set to the default values, the “XYZ=16-18” pad will light in the accent color.

New feature: Panel/Foot Switches’ CC65 option now support any CC number.

Select Global Settings and in the Assign Switch column, hold “CC65”, then the screen will display “65” in large letters. Swipe left or right to edit the value between 0 and 127. If set to any value other than the default 65, the “CC65” pad will light in light blue instead of the normal blue.

UI Change: To select any Bend Range, now hold “+/-24” pad instead of pressing 5th pad from top.

Before, you could select any Pitch Bend range by selecting the 5th pad from the top in the Per-Split Settings / Pitch Bend column. Now, the “+/- 24” selection can be changed to any value from 1 to 96. Select Per-Split Settings then hold Bend Range > “+/- 24”. The screen will display “24” in large numbers. Swipe left or right to edit the value. If set to any value other than the default 24, the “+/- 24” pad will light in the accent color.

UI Change: To select any CC for Timbre/Y, now hold CC74 pad instead of pressing 5th pad from top.

Before, you could select any Control Change number for Timbre/Y control by selecting the 5th pad from the top in the Per-Split Settings > Timbre/Y column. Now, the “CC74” option is editable to use any CC number. Select Per-Split Settings then hold “CC74”. The screen will display “74” in large numbers. Swipe left or right to edit the value. If set to any value other than the default 74, the “CC74” pad will light in the accent color.

UI Change: To select any CC for Loudness/Z, hold CC11 pad instead of pressing 5th pad from top.

Before, you could select any Control Change number for Loudness/Z control by selecting the 5th pad from the top in the Per-Split Settings > Loudness/Z column. Now, the “CC11” option is editable to use any CC number. Select Per-Split Settings then hold “CC11”. The screen will display “11” in large numbers. Swipe left or right to edit the value, including CHNPR (MIDI Channel Pressure messages) or PLYPR (MIDI Poly Pressure messages) at the end of the list. If set to any value other than the default 11, the “CC11” pad will light in the accent color.

Change: CC Faders messages now sent over Main channel.

The CC FADERS feature formerly sent its CC messages over all enabled Per-Note or Per-Row channels. Now these messages are sent over the Main channel, which is more consistent with Channel Per Note or Channel Per Row operation, in which messages that apply to all voices are sent on the Main channel.

Enhancement: Quantize Hold now responds faster and more naturally to fast playing.

UI Change: Selecting Quantize Hold Slow mode now requires pressing QNT HOLD and QHOLD FAST together. This is now more consistent with other parts of the UI that require pressing 2 note pads.

Enhancement: Low Power mode now consumes less power and has slightly faster playing response.

Bug Fix: “Some notes not working” bug is fixed.

Previously, in rare cases a LinnStrument would turn on with some note pads not working correctly or not working at all. This was caused by disconnecting power during or immediately after changing a setting, which interrupted a save to the interval flash memory, sometimes resulting in corruption of the internal Calibration settings. Now, whenever power is connected, the internal flash memory is checked for corruption and if found, all internal settings (including Calibration) are reset to default values and a warning message is displayed. If this occurs, check “Global Settings > Actions column > Calibration” to see if it is red. If so, you must perform a Calibration, described in the Panel Settings pages under “Global Settings > Actions column > Calibration”

Bug Fix: Lighting note pads from MIDI now light only the correct split.

Formerly, if Split was on and MIDI CC messages 20-22 were received to light the note pad lights, messages received on either split’s channels would cause lights on both splits to light. This is now fixed so that these messages received on one split’s channels will only light that split and not both.

Bug Fix: If Channel Per Row mode is active, lighting note pads from MIDI now lights only the correct row.

Formerly, if MIDI Mode = Channel Per Row and MIDI CC messages 20-22 (to light the note pads) were received on a specific row’s channel, the same note number would be lit on other rows. This is fixed.

Bug Fix: Settings saved after Reset.

After performing a Reset Command (Global Settings > Actions column) then disconnecting and reconnecting power, LinnStrument would wake up with the settings as they were before the reset. This is fixed.

If you’re upgrading from an earlier version, you can find the complete change history on the LinnStrument Support page.

13 thoughts on “Free LinnStrument Update Adds Multidimensional Polyphonic Expression, User Firmware Mode

  1. Roger and Geert – you guys rock!

    I’ve had my Linnstrument for months now, and while I haven’t filed any maestro performances out on YouTube – not my “thing” – I play with mine every day. There are any number of musical ‘toys’ out there, but the Linnstrument isn’t a ‘toy’ – it’s a real musical instrument.

      1. Time to fight pedantry with pedantry: An instrument is a tool. Nothing more. Monkeys use instruments.

        Now, if it were called the LinnSynth, then you would have a point as a synth “synthesizes” sounds.

        Controllers AND synthesizers are instruments. So is a conductor’s wand, the guitarist’s tuner, and the acoustical engineer’s oscilloscope. all instruments, none actually create sound.

          1. The issue here is that an “instrument” and a “musical instrument” are two different things by definition. Roger Linn Design doesn’t call this a “musical instrument”, I have never seen it refereed to by them as such. But it is undeniably an “instrument” under the real definition of a “device used as a control system”. I can see how some people could get confused on such a simple issue, as it is an “instrument” designed to input musical information yet doesn’t generate a musical sound – but it really isn’t hard to get past such a basic misunderstanding. This is not a “musical instrument” but it is an “instrument”, is that such a hard concept to grasp?

          2. Max, I agree with that definition, and still think it applies to this instrument, and again with all controllers.

            A musical instrument – an object or device for producing musical sounds.

            I would absolutely use this device to produce musical sounds… out of a separate device, of course. But I’d still be using the LinnStrument to produce and shape those sounds.

  2. Any recommendatons for sound generators that take advantage of Linnstrument not on the support page?

    Gosh i can only drool over Omnisphere, Rapture or Massive/Absynth or the reason synths taking full advantage of this thing.. I know there are many others out there too.

    One thing i’ve found Linnstrument does well is help create useful arpeggios in omnisphere ..its easier than a keyboard for me because once i memorized the shapes i can chord things out really quickly.
    Once i got used to it, i really really like the standard tuning of it…(guitarist here)

  3. he had so many nice alternative layouts, what happened to them?
    the double keyboard and the hexagon thing looked interesting
    guitar grid and polyphonic fingervibrato isnt for me

    1. I think in the development of this product two things happened, they realised that it needed to be a solid tool with a focused layout that is consistent – if you are to learn and share that. Then, once they built this grid layout the conclusion is that it is the only way it can be, if you want to use it as a 3D controller. I personally have never had a good relationship with standard keys layout, it is a bodge that happened over hundreds of years, similar to how we got stuck with that offset qwerty layout because typewriters were built like that. Since I moved to the grid music and playing makes logical sense.

Leave a Reply