Buchla Music Easel Simulator
Cross-posting this from Patchstorage here: https://patchstorage.com/buchla-music-easel-simulator/
Where to start…..?
Want a $7,200 synthesizer but all you have is an iPad and $14.95? Well I’ve got a deal for you…
I have been poking at this project for a while and finally decided I would share it out. It really began just as an experiment and a way to teach myself about synthesis in general, but it’s reached a point where I am enjoying making music with it, so I decided it might be fun for all of you to poke at and perhaps contribute to.
Some caveats up front:
– I am not an experienced synthesist or programmer. This has been a teaching tool as much as anything for me.
– I do not have a real instrument, and I’ve actually never even had my hands on one. In fact, I do not own any modular gear.
– I’ve done my best to reverse-engineer the functionality and behavior based on watching demos, performances, reading forum posts and user guides, but I am confident I have missed a bunch of stuff, large and small.
– I’ve largely tried to replicate the original 208 rather than the more modern 208C or Command.
– I’ve tried as best I could to translate the real instrument’s interface into Drambo’s control scheme, but there are some obvious limitations, differences and compromises made.
– In keeping with the performance-oriented spirit of the original instrument I’ve tried to balance usability in the translation. Patching a Drambo instrument as complex as this on the fly is very cumbersome, so I’ve added some additional input selection switches to make it easier and less error prone. Also, I’ve liberally sprinkled Transpose modules through the CV chain for my own convenience.
– Despite having never touched a real Music Easel, I can confidently say that this is far more challenging and frustrating to use than the real instrument. I play this primarily using an Arturia Minilab mkII midi controller, which I find is a huge improvement.
– BIG ONE: At least passing familiarity with the actual Easel is probably mandatory to be able to use this. I’ve replicated some of the instrument’s oddities, and I’ll try to note them below, but I’d encourage you to watch an Easel video or two before trying to play this if you’re not familiar with the real thing.
Layout and notes:
I’ve organized the tracks largely by function, with a few tracks dedicated just to controls.
MAIN track: This is the main output for the instrument, and also houses the Sequencer track(s). I’ve used Drabmo’s built-in track sequencer rather than a CV or Gate/Velocity Sequencer because it’s less cumbersome to edit and perform with.
– There is an AU slot in the “MAIN OUTPUT” rack for a Spring reverb. I’ve used both the reverb from iVCS3 and Eventide’s standalone AUV3. I’ve found the Eventide more stable.
– There are a few other open AU Processor slots cued up after the “MAIN OUTPUT” rack for delays, shimmers, modern reverbs, etc.
SWITCHES track: This houses…. switches (and a few knobs). These are almost all N-1 remote controls for other N-1 modules buried down below in the SIGNAL track, using the “Index” patch points. The controls correspond roughly to the top row of controls on the real instrument, but also includes a number input and other controls to enable easier patching.
SLIDERS track: Again… sliders… like it says on the tin. Like the switches, these are all just remote controls for modules down in the synth engine on the Signal track. One note here: the Envelope sliders are reversed from what you would expect, just like on a real instrument.
CV: This is what you’ll want to keep selected as you perform and play, and there’s a LOT going on here. I’ve tried to break the functionality into sections so they are easier to follow, but it’s still a beast.
This track houses the functionality of both the 218’s keyboard controls, as well as the patch row of the hardware instrument. Tip: jacks in this row are enabled by selecting by the “Jack” settings on the switches above.
– Sequence CV section– this is receiving Midi from the MAIN track (where I house sequences). There’s a SEQ CV Voltage UP module to step up the pitch signal into something powerful enough to modulate things like the LPG.
– Keyboard CV: This section contains all of the Keyboard-related controls.
KEY CNTL takes midi in from the track, and performs a few midi-only functions (mainly the arp).
PRESET VOLTAGE SRC (or PVS for short) partially replicates functionality of the 4 buttons on the far right side of a real instrument’s 218 touch keyboard. It allows selection of 4 pre-tuned CVs, either as a modification of the keyboard pitch, or as a separate pitch control for one of the two oscillators. If you expand it, you’ll see a couple of modules (labeled Midi) used to scale midi note signals from the drum pads of my Artuiria Minilab midi controller to select the 4 different voltages. To play with it, route Midi from your controller of choice to the MIDI CH 10 FROM SLIDERS component and reconnect the ‘index’ input of the “Select” module to the MIDI CV Scaler module. That took a while to figure out…
KEYBOARD CV OUT add portamento, and also allows you to more easily split the keyboard CV from the PVS to play both oscillators separately.
PULSER is my attempt to replicate some of the flavor I hear in performances of the real instrument.
RANDOM VOLTAGE SOUCE uses as LFO and a second SH as a cheap substitute for the Buchla uncertainty circuit. An inverter and a Feedback send help with more complex routing.
ENVELOPE is mostly self-evident, though you’ll see 2 Inputs next to the rack. The first is a trigger input which is remoted into other modules inside the rack. The second is a patch point to allow CV modulation of any of the 3 stages (in combination with the ENV MOD TARGET switch up in the SWITCHES row)- a bit of functionality I had to steal from the Easel Command because it’s cool.
One thing I haven’t tackled successfully yet is getting the envelope to self-trigger. Pointers would be awesome.
The rest of the row are patch points for the Oscillators and LPGs, again pointing down to the guts of the instrument in the SIGNAL track.
I could write a whole other novel on the SIGNAL track, but let’s just say it is functional rather than elegant.
Thanks for looking and I'd love any pointers, tips, suggestions to improve it.
Comments
Wow! Brilliant work! Will be trying this later. I don't have a Buchla Easel either but this looks like it'll be fun to explore.
@Tumbleweed
havent tried it yet,
from reading this :
"PULSER is my attempt to replicate some of the flavor I hear in performances of the real instrument.
RANDOM VOLTAGE SOUCE uses as LFO and a second SH as a cheap substitute for the Buchla uncertainty circuit. An inverter and a Feedback send help with more complex routing."
I think you are trying to replicate the source of uncertainty
(these click click click on off patterns ...? )
have a look here
Doepfer A-149-1 Quantized Stored Random CV
Envelopes that trigger itself ? You are looking for looping envelopes
It’s kind of like an lfo …
at the end of decay it starts with attack again…
in loop mode u can think of it as rise and fall time
Thanks for the pointers, lala!
I completely missed the loop setting in the ad mod- I’ll implement that soon and post an update, along with a few other additions.
Re the source of uncertainty, yes I think that’s what would be required to truly replicate what’s going on in the real instrument. My earlier digging lead me here: https://modwiggler.com/forum/viewtopic.php?t=106545 then to here: https://en.wikipedia.org/wiki/Linear-feedback_shift_register
It seems that would be possible to build using Drambo logic modules, but I haven’t yet stretched my feeble brain around it.
hope this helps
hehe, yes the the source of uncertainty is interesting
didnt have the time to do something about it yet
i hoped somebody else would figure it out ;)
to abuse the envelopes like that is just a weird way to get "more lfos" ;)
EMS & Buchla did that iirc
Yea it's been a fun and kind of funny exercise to build in limitations like that on purpose. It's Just another reminder to me of how insanely powerful Drambo is, but also how creative and crafty the early pioneers were.
hm maybe u can drive the arpeggiator with with the looping envelope as clock ?
something in that thing must generate "time" I think ?
im not sure what
looking at the picture again
it looks like it is spread across different tracks?
can u layer it into one instrument rack?
I'm referencing the Drambo master clock to drive time. The sequences (again- I'm using the native drambo sequencer rather than a CV sequencer), arp, "pulser" and other LFOs all reference the master clock, then I'm using beat-based time divisions to achieve different rhythms that stay in sync.
The project is spread across multiple tracks, and I've actually rebuilt it a few times trying different variations of layout. A previous version had the relevant controls housed within the functional racks, but I found that was in many ways even more complex to perform on in real time. Here's what that looks like - I'd be happy to share that version as well if there's interest.
In this more current version, I've got pretty much all of the CV happening in one track (labeled CV) and all of the sound generation happening on the Signal track. The 'switches' and 'sliders' tracks are all essentially just remote controls for the actual functional modules buried down in the CV and Signal tracks. I did that so that I could have more controls visible at one time, and a more logical layout that didn't need to follow Drambo's signal path as closely. It also allows me to come closer to replicating the layout of the actual instrument within the limitations of Drambo.
I don't know whether I could rebuild the entire thing into a single instrument rack. I could probably combine the oscillators and the dual LPG into a single instrument rack, but the biggest limitation I found with all of the rack module types is the inability to access/patch more than one type of signal from outside the rack (e.g. gate and velocity signals seem to be inaccessible from outside an instrument rack). I could build it in such a way that it required an outboard midi controller for everything, but I wanted something I could play using just the iPad itself, even if it is clunky. Or maybe I misunderstood the question?
For the source of uncertainty, did you figure out the probability distribution? I tried patching that before, using a combo of filters and EQs to bias the probability of random numbers either high, mid, or low. As I recall, low pass filtering (white noise) allowed me to low bias, but highpass filtering didn’t give me much of a high bias. EQing and peak filtering also helped, but I was never 100% satisfied.
I didn’t pursue it much further than that, but maybe you got closer?
haven’t checked out the Buchla project yet, as I’ll probably fumble a bit. Do you happen to have any screen recordings or audio performances you could share? :)
I was trying to use before but not getting any sounds? I was inputting notes on the main track, is that right?
I haven’t tried to build a source of uncertainty yet. The random source in this is just an LGO set to s&h
@auxmux you have to input keyboard notes on the CV track- make sure Key is selected in the Mod and or Complex Osc . Raise the levels in the LPG slides to hear audio.
I haven’t don’t any screen recordings yet but I will try to get one together.
I can imagine why haven't had much fun yet,
the "lfo" was missing
@aleyas What exactly do you mean by "bias"?
Would inverting or subtracting the low-passed signal help to get a "high bias"?
(If you'd build a histogram display with different value ranges fed into integrators into oscilloscopes, would that show it?)
more weight of random in high area ...
u want to select between focus on low, high, mid area -
I dont know, but if lowpass works, hi and bass pass should work 2?
on the other hand if lowpass works and u frequency shift it up ... makes a high bias? (take the part of spectrum left and shift it up) to be tested
@lala I think what @aleyas means is rather the numerical distribution and my suggestion was about adapting the scale instead since we can't control the statistical distribution property of the source.
im not sure if this works without the shift register noise?
guys, have u listened to that noise? I just did 😂
@aleyas @rs2000
have you tried the downsampler instead of an lowpass filter?
this aint filtered noise
its downsampled noise 😁
lol, after all I read about it I thought it would be the most exotic thing in the world 🤣
mystery solved 😎
who would have thought they do click click click with reducing analog sample rate 😁
Just a quick note to let everyone know I'm back at it and just uploaded a major revision to patchstorage. Take a look/play/listen here: https://patchstorage.com/buchla-music-easel-simulator/
and a nearly hour-long how-to video is here:
I don't know if he's here, but I wanted to send a big shout-out to Temaniak, who's LPG patch gave this an edge I'd been trying to find for 3 years!
Excellent!
Many thanks for contributing to the Drambo community 😃
My pleasure!
A few performance videos using the patch:
Scappa by Alessandro Cortini:
https://www.youtube.com/watch?v=z5Lsx_HUsYE
Sensa Aria, also by AC
https://youtu.be/xQ5kUe3xvjg
both from his album Forse 3
Re: source of uncertainty
I’ve been playing with that myself, tried several designs but I’m still not there yet.
The things I’m trying to simulate are the probability distribution (if signal should be biased towards low mid or high values), and correlation (limits the “jump” the signal can make over time).
For the probability distribution, I can separate the rectified noise signal into 3 ranges, using functions and multipliers. So I have a knob that fades through three signals (<.333, >.333<.666 and >.666), the low-mid-high buckets values from the random noise.
But what is needed is not a crossfade (not an attenuation but a power redistribution), it must let each signal pass through at full power, but distributed across the setting of the probability knob. So even with the knob at 0 (low values between 0-.333) it should occasionally output from mid range (.333-.666) and less occasionally from hi range (.666-1)
I’m thinking of combining the three signals using a many-to-poly, and scanning a voice selector according to a random distribution, biased by the distribution knob. Haven’t tried yet.
Regarding correlation, I’ve been doing some experiments with shift register. I subtract two outputs, rectify and compare with a threshold value. Only let those values in range pass through to a second shift register. This last SR is what provides the stored random voltages.
I could surely use some advice regarding these approaches…
Re: looping envelopes with EOC trigger
I built one myself after much studying here and around. Just two linear graphic env’s, trigger conditions use functions to determine =1 and =0, and feedback module sends EOC signal back in the chain. You can just slap a slew afterwards if you want curves.
The EOC is one of the rack's outputs so you can feedback send it back to the beginning of track 1 and have it trigger all sorts of randoms and envelopes.
I’m sure my design has many flaws that could benefit from your feedback, but it works and I’ve built a few krell patches with it, so I’ve had my fun.
Btw, I’m building everything inside the “rack” module. I create inputs and outputs as needed. Is this the way?
And has anyone had a rack simply disappear? iPad air 2, probably showing it's age, like it's owner...
@pedro That's a very interesting subject and just recently, while building a melody generator, I stumbled over exactly this: Pure randomness - or let's better say the random numbers coming out of Drambo's random generators - is not exactly desirable for, in my case, creating random melodies. Like you say, bias to certain ranges and limiting "jump distance" can help generating more natural sounding melodies.
Inspired by a suggestion from @giku, I've built a modified random generator.
Instead of triggering a random LFO at fixed intervals, I'm now discriminating the random number to achieve a 1-bit signal with random pulse length, fed into an integrator. The integrator is of course still fed by the periodic clock but it integrates the 1-bit signal which now gives me a pseudo-random signal that always goes either up or down by only one interval.
So I now have 2 different random signals: The former jumps arbitrarily and the latter jumps by 1 unit, up or down randomly.
Now you have the chance to combine both as desired.
"I’m sure my design has many flaws that could benefit from your feedback, but it works and I’ve built a few krell patches with it, so I’ve had my fun."
Don't worry about it, if it works then it's all good :)
I never had a rack disappear btw, so if you find a way to reproduce that then please report it! I have Drambo running on an old iPad Mini 2 and an iPhone 6 and it's stable.
Super-interesting discussion! The randoms in my easel patch are really simplistic- it’s just an LFO set to S+H, then a series of scale and offset modules to shift and constrain the voltage ranges for the 4 other variations. The same is true of the self-cycling envelopes- I’m just using a Env AD mod set to loop. I did have to get a little more creative to model the off/once behavior or the easel pulser. That was a nightmare for me and I still don’t fully understand how it works- and I built it :-)
@pedro - your mention of the rack module allowing for multiple inputs and outputs just blew my mind. That was an addition I never noticed and it’s going to be life-changing for this patch. Thank you!!!
Hi all,
Just wanted to drop a line to let you know I’ve uploaded another fairly big update to patchstorage: https://patchstorage.com/buchla-music-easel-simulator/
This update is the result of a lengthy collaboration with Josué Arias who owns two Easels of different vintages. He contacted me to help through the Audiobus forum, provided me samples and detailed feedback on countless behaviors, and his patient collaboration allowed me to refine the simulation’s accuracy to a degree I would never have been able to achieve without his help and patience. At this point, I consider him a co-author of the patch.
Please check out (and support) his work here: https://josuearias.bandcamp.com , in particular his albums LIMIT(l)ES(s) and LA´SPERA which were performed with his Easels.
@rs2000 - I hope you don’t mind but I integrated your RAT08 peddle into the effects section for this version. It adds a phenomenal flavor :-)