Modular Diary

At the Danskmodular meet-up in Copenhagen last week Konstantine got into explaining how one might approach creating a chaos patch on an analogue modular system without using a random/chaos module.

He demonstrated how the logistic equation k*x*(1-x) might be reformulated as k*(x-x^2) so as to make it easier to patch. (Some source reading on the equation can be found here.)

I had a go at putting it together in Audulus, both using the expression node as well as simply using the multiplication and addition nodes.

It turns out to be a simple way of achieving something similar to the kind of chaos spectrum Rob Hordijk achieves with his Rungler. The logistic equation outputs a constant value when k is smaller than 3, followed by a period of doubling with a second bifurcation at 3.5, chaos shortly after 3.577, and 3-step period around 3.83.

It also reminded me of @biminiroad’s look at the difference between chaos and randomness in one of his Audulus live streams almost exactly two years ago.

I’ve put the patch up on the Audulus forum.

Modular Diary – 099

A few days ago I started experimenting with using Mark Boyd’s 1D Chaos Module to generate small pitch fluctuations. However, since Audulus very conveniently takes care of polyphony behind the scenes, I realized that fluctuations applied to a held chord, for example, would effect all the notes in parallel. I started experimenting a little with splitting the incoming notes into individual voices, each with their own pitch and amplitude fluctuations. There are still some things to figured out with the envelopes, but it’s a start – fun for creating sustained drone-like textures along the lines of the Hyve.

Modular Diary – 098

One thing leads to another. The BBC Archive recently shared a short film clip of Roger Limb demonstrating the EMS Synthi 100 in 1976.

In the replies to that tweet, I noticed a short video demonstrating the unusual dual envelope generator of the Synthi 100, and a search for more information on that led to a manual with a description.

That manual is hosted on the PIN Electronics & Ramcur site, manufacturer of the Hornet – an EMS VCS3 Putney clone. The site also has a blog, and among the entries I was very excited to find a post on the Belgian composer and media artist Peter Beyls, with reference to “the use of two EMS VCS3’s, communicating through a very long tape-delay-loop.” That is of course the Revox-Putney setup that Rob Hordijk has referred to as the inspiration for his Blippoo/Benjolin circuits and since Beyls used it as part of a series of mixed-media concerts we are even lucky enough to have some film documentation of it.1

I find the looseness of the mixed-media context, which reminds me in some ways of a wonderful Metamkine performance that I saw in Amsterdam many years ago, a fascinating insight into the origins of what would later become Hordijk’s ‘patch in a box’.

  1. Beyls was a technician at STEIM and so there’s also a lineage with Hordijk there. 

Modular Diary – 096

Following on yesterday’s thoughts on which models to use when introducing small pitch fluctuations with digital oscillators, I tried substituting the S&H in Mark Boyd’s Drifting Gateable Quantizer with his 1D Chaos module. I find the pitch fluctuations quite satisfying and more subtle than simply providing a micro-offset with a sample and hold value. Perhaps a little closer to the fluctuations one might find with a wind player than the slow drift of an analogue oscillator.

I’ve also been wondering about the stretching at the high and low extremes that occurs with analogue oscillators or when tuning a piano, for example. In the case of piano tuning that stretching makes sense in relation to equal temperament and the slightly inharmonic overtone structure of piano tones. With the relatively ‘pure’ starting point that is possible with digital oscillators, as well as the myriad of waveshaping and filtering possibilities that may follow, that kind of stretching doesn’t makes sense – unless one is deliberately setting out to imitate that kind of behaviour. There’s also the changing sensitivity of our ears at different parts of the frequency spectrum, but perhaps with digital oscillators a single kind of slightly chaotic fluctuation across the entire spectrum is the way to go.

Modular Diary – 095

Mark Boyd (biminiroad) recently teased a little strange attractor on Twitter – and presented it in full detail as part of the Audulus Tutorial Livestream on Chaos & 3D Modules. “A chaotic signal is not a random signal” as Rob Hordijk pointed out in his Leeds Rungler Demo. The tutorial goes on to explain how those chaotic signals can be used to trace paths through a 3D cube that can be applied to mixing, sequencing, and modulation.

It’s a wonderful tutorial covering a lot of material. For now I’m content to let some of the strange attractor chaos sink in – wondering how it might be applied as a modern approach to introducing slight fluctuations with digital oscillators, rather than simply modelling analogue drift.

Modular Diary – 080

A little side note on octaves. I noticed at the end of Hordijk’s Rungler Demo at Modular Meets Leeds (at around 14min) that he actually has the Rungler (stepped) out set to cover a range of 9 octaves. I also noticed in a post of his on the electro-music forum that the Benjolin oscillators cover a range of 18 octaves! And that led to a discussion with stschoen on the Audulus forum, who explained the reasoning behind setting the oscillators in his Audulus Rungler to cover a range of 14 octaves:

As far as the oscillator range is concerned, I realized this morning that when I mentioned 14 octaves for my copy, I had taken 2Hz as the lower bound. The real bottom limit for the oscillators is 0.001 Hz, so the actual range is approximately 25 octaves, although I’m not sure that this has much meaning when applied to something running at sub-audio rates. I choose 2^14 as the upper limit for the oscillators since that’s slightly above 16K and that seemed high enough. 2^15 would have been 32K which is well above the Nyquist limit and so couldn’t be produced in any case at a 44.1k sample rate.

There was also further discussion on whether the rungler output should be set as a bipolar audio signal or a (standard) unipolar control signal, with STS eventually deciding to leave it as the latter since it could easily be adapted to an audio out by means of a simple expression, should the need arise.

I did notice in the Mallorca Rungler video though that it seems that the pulse output is also scaled to 9 octaves (in the video attenuated to about 4) and set about trying that out on the STS’ Audulus Rungler. It seems to help with creating a more ‘noisy’ noise when rungling at audio rates.

Modular Diary – 078

I remember a comment by Robert Henke that Max users should spend at least two months of the year playing with the patches they build. I suppose that could be a little of a danger with Audulus as well – that the play ends up being in the process of building, and not so much the sense of using the patch as an instrument. But something like the Blippoo is meant to be played with (or not), and so I spent a little time this evening doing exactly that – and felt much happier with it than I did yesterday. It is a little instrument that one needs to get to know, and the fact that one has to spend some time with it and sometimes learn how to coax things out of it ends up being part of the fun. I posted a little spot I reached with it this evening on the Audulus forum – with a dual version of STS’ All-Pass reverb.

Modular Diary – 077

Here’s the current state of my Audulus Blippoo – now all collected in a box. I’m not sure if I’m quite happy with it yet. There were many things that I enjoyed in previous versions that I miss a little here. Having access to more of the TwinPeak filter for example. I’ve kept to the classic 12 knob setup for a start – perhaps I can play around with some alternatives later. The rungler core is now also in its perhaps most simple form – a simple kind of delay with no density or looping settings as in the Benjolin or Modular System Rungler Module. One of the tricky things is keep it from getting stuck for long periods of time. This happens for example when VCO A is running at a much slower rate than VCO B – and it’s in those situations that the S&H to Rate A is a handy dial to have.

I’m also not sure about all the internal sub-patches. They’ve been a very useful way of building it up, and even now when I’m still unsure about a lot of things and still thinking about possible changes, it’s handy to have it set up that way. But perhaps once it’s all figured out it could be worthwhile going back and rebuilding the patch with fewer sub-modules and a little less spaghetti.

Modular Diary – 076

Following up on yesterday’s z-1 UnitDelay considerations: STS discovered that his shift register design was unstable at audio frequencies and found a fix for it by including a z-1 node between each of its flip flops. He also mentioned some details of a fix in Hordijk’s Benjolin cicuit that helps avoid some of the more static sequences that the original Rungler could generate in certain cicumstances. Quite a learning experience this all has been!

Rob Hordijk in his Rungler Demo at Modular Meets Leeds:

If you design stuff, very quickly it becomes complex, then you have to simplify again, before you come with the final thing… if you make it too complex it becomes a pain in the ass to use…

Piecing a version of the Blippoo together step by step has made clear to me how many choices there are along the way, especially when choosing which controls to surface so that one has a playable instrument at the end of the day. It’s interesting to consider the Benjolin as a follow up on the Blippoo in that light too.

Modular Diary – 075

I spent the bits of time I had today further exploring the details of STS’s Audulus Rungler. The next step was to take his new shift register design and implement it in the Audulus Blippoo I’ve been putting together. I was wondering how to best implement the looping feature of the Rungler (even though it’s not actually featured in the Blippoo) when I noticed that STS had posted his take on recreating the Benjolin – in which he implements that feature beautifully!

Audulus helpfully pointed out to me that using the Audulus z-1 UnitDelay node in my Blippoo FM feedback loops would help improve the sound by processing them at audio rate. I first came across this node in the fascinating thread on non-linear filters and perhaps for that reason it stuck in my mind as a filter thing. The tip on using the UnitDelay was a good reminder that the Hordijk cicuits make good use of the blurred line between both oscillators and filters as (potentially chaotic) feedback systems.