randy's Recent Posts

Dear music makers,

In appreciation for your support, Madrona Labs is having a summer sale this year. Use the code PARTICLES on any of the product pages to get 30% off any Madrona Labs plugin. From now through the end of August.

I've done yet more work on the Soundplane code. In addition to fixing an intermittent error that a few people ran into since version 1.5, this 1.7 release adds new Mac system code to get the lowest possible latency.

link: Soundplane 1.7.0 beta 1 dmg


  • allow running app hidden / in background without added latency
  • fix redundant calibrate on startup
  • fix a stuck notes issue
  • add quick recovery after unplug / replug instrument

OSC has been tested here fully, MIDI less well. Please give it a whirl and let me know about any issues.

Full Kyma functionality may or may not be restored with this release. Unfortunately, I can't test that here. I'll try to get some quality time with a recent Kyma in the near future.

NOTE: the 1.7.0 release is final and available from the "STICKY: Soundplane client for Mac" thread.

version 1.7.0
August 21, 2018
link: Soundplane 1.7.0.dmg, 5.9MB

release notes:

To install this version: move the "Soundplane" application to your Applications folder, then move the directory "ZonePresets" to ~/Music/Madrona Labs/Soundplane.

When you launch the Soundplane application, the menu at the top of the "Zones" page should contain three presets: chromatic, rows in fourths and rows in octaves, followed by a list of all the JSON files in the ZonePresets folder. If the JSON files do not appear, the ZonePresets directory is probably not in the right place.

The format of the zone .json files is human-readable and relatively self-explaining. Take a look to see how to make your own zone maps.

The Soundplane Max/MSP examples require the CNMAT Max externals to run. These can be found at http://cnmat.berkeley.edu/downloads .

The Soundplane application is open-source, available under a permissive license. For source code and more technical information see http://github.com/madronalabs.



  • fixed possible crash starting for the first time with Kyma connected
  • "destination port" menu now allows connecting to other hosts on the local network
  • added wait on startup to resolve ports on other hosts
  • added clear all notes when switching OSC destinations and on shutdown
  • added test pattern mode
  • allow running app hidden / in background without added latency
  • fix redundant calibrate on startup
  • fix a stuck notes issue
  • add quick recovery after unplug / replug instrument


  • improved isochronous USB driver: lower latency, allows restart after pausing app
  • fixed an issue selecting cleanest carriers after "select carriers"
  • fixed possible crashes on startup/shutdown
  • now distributing as signed .dmg


  • new touch tracker algorithm:
    • consumes much less CPU
    • improved latency
    • improved pressure sensitivity
    • improved pressure uniformity
    • improved position accuracy
    • allows better tracking into corners
    • lengthy normalization step no longer required
    • fixed hanging touches
  • fix Kyma connection
  • improve selection of lowest-noise carrier set
  • fix a possible crash when switching zone presets
  • fixed a window-related crash on shutdown
  • fixed latency issue when in background for an extended time


  • fixed a problem with MIDI output preventing slide between rows
  • tweaked pre-touch filtering for lower noise
  • (dev) new cmake-based build system
  • (dev) experimental Linux build
  • (dev) added HelloSoundplane command line app for low-level testing


  • MPE MIDI support. Requires Aalto 1.7 / Kaivo 1.2.
  • Implemented note splits to multiple ports over OSC.
  • Improved stability and sensitivity of MIDI velocity
  • changed "z max" control to more intuitive "z scale."
  • fix crash with uninitialized driver on shutdown
  • allow 1-500Hz MIDI data rate
  • fix bug where pressure wasn't getting set w/o a MIDI connection
  • send quantized pitch bend on MIDI note off
  • fix touch tracker issues including zone-switch bug
  • fix to allow MIDI note 0
  • fix for double note off problem
  • fixes for MIDI glissando


  • [] Fixed a crash on startup if no preferences folder was present.
  • Kyma listener off by default to fix collisions on port 3124. Use 'kyma' toggle on Expert page to turn on.
  • fixed automatic connection to selected OSC service on startup.
  • restored some values from 1.1.2 to improve touch tracking.
  • add automatic saving of window dimensions. This is saved in /Application Support/SoundplaneViewState.txt.
  • fixed a problem resolving OSC services
  • fixed wrong MIDI note offsets in default Zone setups


  • rendering fixes for Retina display
  • make touches easier to get into top and bottom rows
  • code signing application
  • turned Kyma polling over MIDI OFF by default
  • fixed some state issues on startup that required reselecting zone to refresh
  • clamp zone outputs to [0, 1] as documented
  • fix touch rotate bug
  • fix OSC browser
  • made normalizing easier and mre accurate
  • sending out x, y, and z from zones via MIDI.


  • more complete fix to the note-off problem
  • restored the note lock feature for new zones.
  • fixed an odd font-related bug


  • PLEASE NOTE: moved support files to ~/Music/Madrona Labs.
  • fixed a problem where the wrong note value was sent on note-off
  • fixed a potential crash sending MIDI if a MIDI device was not set
  • made benign errors less alarming


  • two new kinds of zones: z (pressure only) and a toggle switch.
  • fixed an error where inactive touches were continuously sending their data
  • shortened some JSON zone names (just remove "controller_" to fix your presets)
  • updated Max/MSP examples
  • moved matrix message into t3d OSC bundle with touches
  • restored some debug printing in the in-app console
  • added error info for JSON parsing
  • fixed possible bug with zone parsing
  • clarified the T3D format in docs
  • fixed an error reading calibration files
  • fix view issues for Retina display

-new Zone features allow mapping notes and controllers to key grid
-changed t3d format for wider OSC compatibility
-OpenGL accelerated graphics
-fixed graphics for Retina display
-fixed a bug where SoundplaneController was initialized twice
-fixed OpenGL errors on quit
-fixed a possible crash in adjustPeak()
-fixed note release when quantized
-new raw matrix output

Note that the docs are not up to date. In short, you can use a .kbm by naming it the same as the .scl you want it to go with (except the extension), and putting it in the same directory. There's a forum thread or two here that should provide more background. Please contact me here or at the support email if you have any questions.


Absolutely. Sorry for the confusion.

Make sure you have Live 10.0.3. The 10.0.2 release is known to be buggy. See a rant thread here: https://www.kvraudio.com/forum/viewtopic.php?p=7093149

You can also try the VST plugins if you are using the AU ones currently.

If you are still finding problems please let me know more specifics. Which patches are not working? If it's a factory one you can tell me or if only your own just copy as text and paste it here.

Yes, sorry this thread is very old!

Since years everything is in ~/Music/Madrona Labs so that people are not confused about which Library folder, or hidden library folders. Feel free to email me at support@madronalabs with any questions.

I'm putting out an update of each plugin soon for stability / compatibility. Meanwhile I'll be releasing a few betas first for Mac and later for Windows.


version 1.8.3 changes:

  • added handling of "all notes off" and "all sound off" MIDI messages
  • fixed bugs with Scala .scl and .kbm handling
  • fixed issue with step sequencer not quantizing to current scale
  • fixed issue with step sequencer UI not reaching maximum when dragging
  • more to come...

There is a known issue with AU plugins in Live 10.0.2. Does the VST plugin work better?

I'm still fighting another bug longer than expected, so here's a DLL to try for Windows: http://madronalabs.com/media/temp/Aalto_x64-1.8.3.zip

It's just a raw DLL so place it into your VSTPlugins folder directly. It's only the 64-bit version with the tuning fix and other fixes.

The crashing bug preventing release currently affects only the 32-bit version. As soon as that's sorted I can make installers and release all the plugins.

I've been working on other bug fixes here as well. It will be out in days rather than weeks. Thanks for your patience.

Just in time for summer, Aalto T-shirts are now in stock! Oft-requested and long-awaited, these shirts are the first physical artifacts besides the Soundplane to come out of the Labs. They start out soft, will wear in gracefully and are likely to give you super patching powers.

We asked our good friend David Chandler to tidy up his Aalto manual cover for a larger reproduction size, and printed it in a subtle aqua gradient on American Apparel’s Sustainable Edition organic cotton shirts in Galaxy Blue. Nerdy yet surfy!

We are selling these nice shirts for $20. Shipping is by US First Class Mail, for $4 within the USA and $16 internationally. PayPal will add these costs automatically when you enter your shipping adress.

Select a unisex size and click to buy:
SOLD OUT except for size small.

These parameters won't do anything useful for you. They are plumbing that makes things work behind the scenes and probably shouldn't be showing but if I removed them then it would mess up existing patches.

There's not currently a way to do this. I was trying to keep things very simple. But a few people have asked the same question so I'll try to provide a good way of moving the folder soon.

It was my plan that just making an alias in ~/Music would be a simple way to do what you want, but the plugins don't follow the alias properly right now when looking for the registration or patches. I'll try to fix this at the very least.

Thanks for the feedback.

Good idea, thanks! Printful (who makes the shirts) doesn't do stickers so I have to think on this a bit but I like stickers too... :-)

I'm excited too. Back to work on updating the other plugs this morning though. it's all part of the fun, as they say, but I can't wait to get back to wild sound experimentation.

Can confirm! It's the LFO, should be an easy fix.

It's been pushed back a little but still moving forward and I am excited to share more when I can. Too early for interface but a sound snippet soon I hope.

I was able to look at the thread on the Live forums and it looks like Ableton is aware of the issue and will fix for 10.0.3.

Thanks dale, got a link?

That's really interesting. And weird. I'll see what is different about the VST and AU versions.

Does this also happen when there is only one copy of Aalto?

You are sending really useful information, I hope I can track this down soon.

My guess is that some MIDI information is getting to Aalto that is messing it up. I have not heard of any bug matching these symptoms before.

If you make a new empty Ableton Live project and add an Aalto and some notes in a new clip to test it, can you get this to happen? What if you make three Aaltos?

Hey, I got into the work on Scala and tuning. I fixed some bugs. With this particular scale you sent though, the problem is in the scale here. Generally you want ratios in between 1/1 and 2/1. Most of these are less than 1, then the last ratio jumps up to 2.

Instead I would start this idea 25/23, 21/19, and so on. The ratio 1/1 before the scale is a given and the rest of them should be monotonically increasing from there.

It's the same as natural latex rubber foam. I'm sure there are a ton of suppliers you can find online.

V2 is a ways off yet, gotta finish sumu first for starters.

you can search this site by typing into google: "site:madronalabs.com" followed by your search.

I haven't seen any sharing of wavetables.

It's not going to be super accurate, because a kora has such a special body. But I bet if you play around with gut string resonators and a large box body you can get something evocative.

My guess would also be CPU use. If you turn the number of voices down to 1 it's an easy way to check this without messing with audio buffer sizes. Increasing the audio buffer size can be an effective fix.