Based on a forum post, I created a quick and dirty (and very inelegantly coded) Max patch to allow control of the individual LED cells on a Linnstrument – both versions should work on either the Linnstrument 128 or 200. Both standalone versions will work with other DAWS and softsynths running (tested with Reaper running UVI’s Falcon, and Ableton Suite running a bunch of Max4Live devices).


Linnstrument Lights – MaxMSP version of the two below

  • Linnstrument Light Controller – Let’s you set the LED color for any individual cell in a Linnstrument and save/recall presets.
  • Linnstrument Light Matrix – A slightly less CPU intensive version, but limited to only one color of LED.

Update – due to the need for a developer signature for Apple MacOS 10.14 and above, I’m removing the application versions. The MaxMSP versions will work, you just need to download MaxMSP from, and run it either in the full version or in demo mode.

27 comments on “Linnstrument LED Controls

  • Ben, please forgive my ignorance! I have downloaded and installed the LED Maxpatch for PC. It seems to have installed ok and I can open it up. Set midi device as the LinnStrument, both input and output. Set me keypad lights and believe I have written a preset file to a folder in my pc. However I can’t seem to get the Linnstrument to “play” in Bitwig. I believe the device settings in Bitwig are correct. What per-split, preset and global settings do I need to have on the Linnstrument? Also not sure if the maxpresets file needs to be in a particular folder to function correctly? Any help would be greatly appreciated. Thanks, Bruce

    • Hi Bruce-
      I’m not personally a Bitwig user, but I’m pretty sure that you’re running into an issue with two different programs fighting for control of the Linnstrument. I’ve replicated the same behavior in Ableton Live and Reaper. Unfortunately, it looks like you can’t use both at the same time.

      As for per-split and global settings on the Linnstrument, they don’t really have any effect on changing the LED color. The maxpresets file can be anywhere on your computer as long as you know where it is. I usually leave it in the directory with the Max patch itself.

  • Well let’s try again…I just tried to post a comment and got a 404error…

    Several things seem to happen when using your program. 1) when I open the app and read a saved preset file I seem to be able to consistently change the Linnstrument’s lighting pattern. Still not sure exactly the best order of operations to do this, but I do eventually get the lights adjusted. I exit your program and am able to launch Bitwig and use the Linnstrument perfectly. 2) when I’m finished and turn off the Linnstrument, the next time I fire it up, a random pattern of cyan LEDs appear (looks like the Cs, or something). this pattern will not go away until I reset the Linnstrument, to retrieve the default lighting scheme. 3) I believe that you and Roger are suggesting that lighting schemes cannot be saved on the Linnstrument, so apparently I need to run your program every time I wish to use a custom pattern. Am I understanding you correctly? So I need to develop the most efficient way to setup these LED patterns…any suggestions you can offer to minimalize keystrokes here would be greatly appreciated. I am very excited to use your program as it is extremely helpful in working with my atypical scale of 16 tones per octave. Thank you for your efforts here! Best wishes.

    • Hi Bruce-
      Glad that it opens and you can read the preset to adjust the lights. I’m not able to replicate the cyan LED change – possibly since I don’t have Bitwig and have no idea what data that’s sending to the Linnstrument or what your setup is. All I can tell you is that something is sending the Linnstrument a value of 4 on CC 22 to those cells. The only solution is to reset the Linnstrument – on mine, that just requires unplugging it.

      Correct that there is no way to save the lighting schemes to the instrument. That would involve updating the code in the firmware, which I have not tried as of yet (too many classes to teach!). Maybe in the summer – I’d love to be able to load scala files in place of the default [hidden] scales!

      Best of luck!

  • Great! Please keep this updated. Thank you. I note that changing the name from Linnstrument_Light_Controller_Mac to anything else (no underscores, e.g.) seems to prevent the LinnStrument from appearing.

    • Definitely have no plans to stop this one – in fact, I’m working on a new/advanced version for microtonal tuning that I’ll release if it ever gets to a stable point. It mostly works pretty consistently, but when it doesn’t, it’s a huge pain. And the Max4Live version keeps running into a lot of issues that I hadn’t anticipated…

      As for removing the underscores in the name, that’s due to the fact that it’s a compiled MaxMSP application – change the name, and you break internal links to included code.

  • Thank you for your kind reply and explanation. I fulfilled a life-long dream by means of your delightful application: coloring each degree of the scale uniquely — based on charts for scales and chords that I made aeons ago. Fantastic visual aid for learning the LinnStrument.

  • Unfortunately, the Linnstrument can save only one light configuration — across all/any of its 6 preset slots. Still, we can fire up your Light Controller any time and store light settings reliably that way. Thank you.

    • Works fine for me on Mojave, but I’d definitely run the actual MaxMSP code and not the standalone app due to how they won’t allow unsigned apps anymore.

      If it opens, make sure you select your Linnstrument from the drop down menu, then try new colors on the LEDs, and of course “Clear Grid” to reset it to normal.

    • The apps are 64-bit. The issue is that Apple requires a developer signature for all apps on Mojave and beyond, which MaxMSP doesn’t create. As a result, I’m removing the apps, and leaving the MaxMSP code. You can get MaxMSP at and run all of the code in demo mode without having to purchase it.

  • Hi Ben,
    I am currently trying to use the CC20-22 mechanism to light the Linnstrument Pads for a little Reaper X0X sequencer project. As you seem to be the expert on the topic ;-):
    I am 95% sure that the CCs leave Reaper (I could send a screenshot with a MIDI logger and the MIDI routing). However, the LS does not react. Do you know of anything that could be in the way on the LS side? MIDI is set to USB. Is there any other MIDI message that can be used to test whether the LS receives the signals?
    Edo (yes, that happens to be my name)
    PS: I don’t have MaxMSP so I can’t use that to test.

    • Hi Edo-
      Hmm… There are a few things to try. First, make sure that MIDI output to the Linnstrument is enabled in Reaper. Next, you’ll want to make sure that you have each CC sending to the Linnstrument’s Global Channel (I’m using channel 1) – click on the Route button in each channel to do this. Finally, you’ll want to send CC’s perfectly synced up, so that CC20, CC21, and CC22 are sent simultaneously. For this, I use the Event List View in each MIDI Item to set the bars/beats explicitly. Note that the bars/beats are identical for all three event views.

      That should do it, but if it doesn’t, fully quit Reaper and unplug the Linnstrument to reset any stuck CC values and try it again.

      Photo of the Event List is attached, I’m also emailing you a copy of the Reaper set.


      • Hi Ben,
        thanks a lot for your assistance! I tried your Reaper setup. At first, it did not work. Then I thought of the OSX Audio MIDI Setup app. In that app, in the “MIDI Studio”, I double-clicked the “Linnstrument MIDI” box, and under “Properties”, enabled all 16 channels for Input and Output. (I am not sure why or when this is necessary. It wasn’t necessary for normal use of the LS.) Anyway, this did the trick, now it is working!
        Thanks again,

        • Glad to hear that worked. I just checked on my Mac and it looks like the 16 I/O channels on my Linnstrument were already enabled, so I wouldn’t have guessed that.

          • Hi Ben,
            to keep you and the occasional reader updated: it helped once, but it still does not work 9 out of 10 times, and I could not identify yet what causes the problem. I will post here again, if I find the solution.
            Cheers, Edo

  • This app is exactly what I’ve been looking for, but I’ve been unable to get it to work yet. I’m completely new to Max MSP, perhaps I’m missing something obvious?
    I’ve installed and registered MAX MSP 8, opened the app, in the “Patching Mode” view, I selected “LinnstrumentMIDI” from the dropdown menu, then I choose colors but I don’t see any change my Linnstrument 128. Should I be seeing the colors change as soon as I select them, or do I need to “set” them somehow? I’ve made sure the X has a color selected and it’s highlighted, but I don’t see a change and I’m wondering if I need to publish the change.
    I don’t have any other software open when attempting to change the colors.
    Any help appreciated, thanks!

    • There’s no need to publish a change. It should be immediate. Two things to do: first is to make sure the LinnStrument is using USB MIDI (Global Settings -> Power/MIDI -> USB) and that it’s plugged in before you start MaxMSP (which really doesn’t like MIDI connections of any sort after it’s started). Second, in MaxMSP go to Options -> MIDI Setup, and make sure that the LinnStrument MIDI is turned On (left most row checkboxes) in both the input and output areas.

      From there make sure the patch is locked, select Linnstrument MIDI from the patch menu, select a color for a cell in the grid from the drop down menu, and then click the X to change the cell. It should happen immediately.

      • I did everything listed here. Steps 1 and 2. Still, the linnstrument doesn’t do anything. It works flawlessly in bitwig and Ableton. Is this software still usable?

        I notice in the midi tester in MAX, I can hit a note and it reflects a change on the input side. But nothing I do on the output side ever does anything to the linnstrument. Please advise.

        • Are you using USB MIDI on the Linnstrument, and are you going through any type of USB hub? Those tend to be the biggest issues – especially using a hub. Directly connecting the Linnstrument to your computer via USB is best. Another one to check: make sure the Linnstrument is plugged in and on before you start MaxMSP then go to the Options Menu and MIDI Setup. In there, makes sure that it shows the Linnstrument in the Output section, and that it’s the left most checkbox (the “On” column) is checked.

  • Hi Ben,

    I’m new here, and I just read your comments from earlier about a microtonal version. Can you let me know if this exists? I’m considering buying a linnstrument but want to know if I’ll be able to get the lights to match the scales I want to use (non-EDO, >12 notes). Thanks!

    • Hi Barry-
      There is a 2-24 EDO version that exists. Here’s the page.

      For custom scales, you might want to combine my Linnstrument Light Controller with the new MTS-ESP (mini or suite) from OddSound or the classic Universal Tuning Editor from Hπ. That would let you set the lights however you desire, and then retune to any custom scale.

  • Awesome work!. I was able to customize my layout in the max/msp presets but had no luck having the linnstrument be recognized for midi input in FL with the light controller running at the same time. do you have any ideas or suggestions for getting this to work while i run this alongside fl studio 20? Or because its a max preset, it only works in Ableton? (and even in that case, am i able to route it to fl studio from there)

    • Hi Tyler-
      No idea! I don’t use FL Studio, so I can’t really speak to why it wouldn’t work. The big suggestion would be to try it by opening the Max Patch first, then opening FL Studio. You can also get a virtual MIDI loopback driver like loopMIDI and use that to send the Linnstrument to both programs at once.

  • I’ve been having an issue where using this (awesome) patch sometimes seems to wreak havoc on the Linnstrument’s calibration, causing particular areas of the keyboard to begin to drop or hang notes. It’s resolved temporarily by recalibrating but then upon re-setting the lights with this patch again – frequently recreates the same error. Has anyone else encountered this? Any ideas for how to avoid?

    • Hi Aaron-
      Hmm… a particular area of the grid dropping out and requiring recalibration sounds like a hardware issue, not software. I’d guess it’s probably a tensioning issue of the silicone grid on the Linnstrument not being evenly distributed. That’s happened before for me with extreme temperature changes in the summer and travel between very different climates. Fortunately, Roger Linn has instructions on how to reapply and tension the surface.

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.