# Ribbet!

2017-11-12 MSK 007 math electronics design

The Leapfrog VCF does not actually go "ribbet," at least not without some effort. But after being told by one friend I showed it to that most people don't want to make real music with their modulars but just want something that goes "uuuuuuuuuuuLAAAAAAAAAAAAARGH" (which, let's face it, is *true*) I've added a demo highlighting that. Uulargh? Yeah, we've got this.

And as you may have guessed from the hype, the Leapfrog VCF is now available for sale. I'm really glad to have hit that milestone; it was always the focus of my plan for this company, and it took a lot more time and money than I expected when I started down this path even *with* an allowance for unexpected events. Believe it or not, the first version of my business plan called for selling my first modules in the last quarter of 2016, and the first Leapfrogs in the first quarter of 2017 - and I thought that timeline was aggressive, but possible. It wasn't. The business plan also called for sales of the first two modules to fund Leapfrog development, and that hasn't happened, so I'm now far enough in the hole that I won't be able to launch any more new designs for a while.

One lesson learned on the first two North Coast module launches was to absolutely not have "coming soon" modules in the Web shop. I might still comment here from time to time about possible future plans - in fact, that's exactly what I do below - but having modules that are not for sale yet listed in the Web shop with a "coming soon" label only ends in tears. Another lesson is that "PCB+panel" doesn't work business-wise. I knew that when I was writing the business plan, and so I didn't initially offer "PCB+panel" sets, but then I let myself be swayed by public comment after the launch of the first two designs, added a "PCB+panel" option for those as an experiment, and it wasn't a good thing. I won't be doing it for the Leapfrog.

A happier lesson from the Leapfrog launch is that press releases seem to work well. I wrote one for the Leapfrog launch, sent it around on Thursday morning, and then I got a nice traffic spike starting in the afternoon when Synthtopia ran the story. Soon Sonicstate and Gearnews ran items on the Leapfrog as well, and Matrixsynth even reached into the back catalog and ran items about all three North Coast modules. That's a better reception than I was hoping for. Traffic here is still elevated above background levels, and I'm hoping it will remain so.

I'm talking to some people about getting video demos done. I have mixed feelings about those because they're not something I, personally, like all that much. But I know videos are popular. So we'll see how that goes. It also remains on my list to explore opportunities for retailers around the world to carry North Coast modules - which could make it easier for buyers to get their hands on North Coast Synthesis modules without needing to pay the costs of shipping and importing them one at a time. If you're a retailer and you want to stock these modules, contact me.

To immediately break my own rule of not talking about future projects, I'd like to discuss the Leapfrog's transfer function and possible "mods" for it a bit. Without going into a whole lot of mathematical detail, the behaviour of an analog filter when you put in a signal is typically described by the ratio of two polynomials with real coefficients. For instance, the Leapfrog VCF as I currently sell it, with the "musical near-elliptic" filter curve, is described by the following expression.

One important way to classify these functions is by how many "poles" they have, which in practice is almost the same thing as the maximum exponent on *s* in the polynomials involved, in this case 5. (There are details here I'm not going into, including limitations on exactly which polynomials are and are not allowed, and that poles correspond more technically to zeros of the denominator, which are not the same thing as the polynomial degree but are limited by the polynomial degree.) Evaluating the polynomial ratio over the complex numbers and taking a slice along the imaginary axis gives the frequency response we usually think of as what the filter does.

This way of describing filter behaviour has some subtleties to it. For one thing, poles are related to the complexity of the curve. They loosely correspond to the number of positive bumps or hills in the frequency response. In the one shown above, there are marked bumps at normalized frequencies of 0.666, 1.000, 2.289, 5.506, and an unmarked pole off to the left at zero frequency. Here they're carefully arranged to keep the response more or less flat in the filter passband, and shape the curve in the cutoff region. But we can design other curves by arranging the poles for other purposes. Many synth filters use what's called a Butterworth response, which arranges the poles so that they create a single smooth slope without visible bumps - and then the steepness of the slope increases with additional poles. The near-elliptic filter sacrifices some smoothness of the shape in order to achieve a steeper cutoff for the same number of poles. If you have a curve in mind, you can play a game of estimating how many poles you need to achieve that curve to a desired level of accuracy.

As you may have learned in high school algebra, polynomials over the real numbers can always be factored down to products of linear and quadratic terms, but some quadratics cannot be broken down further without departing from the real numbers. And *that is why* people tend to build filters with even numbers of poles. Whatever filter curve you want, you can break it down into a product of at-most-quadratic terms, and then you can use a well-known and thoroughly-debugged circuit to realize each term separately. Usually it's a "biquad section" that handles the ratio of two quadratics. Putting several biquads in series has the effect of multiplying together their transfer functions, to build up whatever overall function you want. Because all polynomials over the reals can be factored down to terms that are at most quadratic, you never need any sections more complicated than biquads. This is a nice concrete physical consequence of a very abstract theorem in algebra. Why would you ever care about the fact that real polynomials can always be factored down to quadratic terms? Because it means you never really need filter sections more complicated than biquads. Why would you care that real polynomials can't necessarily be factored any *further* than quadratic terms? Because it means you do in fact need biquads and can't make do only with something even simpler.

You tend not to want to use linear terms because the circuit for one of those costs almost as much as a biquad circuit, so even if your desired function actually can be factored into linear factors, you multiply pairs of them to get quadratic terms, and then even in a complicated filter, you only need at most one single-pole section and you only need it at all if your function had an odd number of poles to begin with. That creates an incentive for choosing even numbers of poles in active audio filters - which does reflect people's choices in practice. The leapfrog topology (which I didn't invent or name, but I think I'm the first to build into a Eurorack VCF) breaks with custom by using just a single five-pole section of multiple feedback loops (it's not a composition of biquads), in some sense choosing *not* to factor the polynomials. It has both advantages and disadvantages compared to doing it with biquad sections. One important advantage is reduced sensitivity to component tolerances; one disadvantage is the complexity and therefore expense of the circuit.

The MSK 007 Leapfrog VCF in particular is designed carefully to put all the components that determine the coefficients of the transfer function on a single board, Board 3 at the back of the module. So if you substituted different components there,
*you would get a different filter curve* - high pass instead of low pass, Butterworth instead of near-elliptic, or whatever. The board, as you'll note if you read the build instructions, is even designed with empty footprints to accommodate components that might be needed for other curves.

In principle you could have several different instances of the MSK 007 Board 3 built with different component values, and swap them to switch between different curves. I think it'd be really inconvenient to have to take the module off the rack and the back off the module just to switch between curves; that would put wear on connectors not designed to be frequently mated and unmated; and it's not realistically possible to switch it from the front panel because of the number of different connections that need to change. (But maybe with a board full of relays? This deserves further thought...) Doing it all under solid state voltage control with interpolation *à la* Rossum Morpheus except analog would be *very* cool but likely prohibitively expensive and space-consuming. However, I do think there's some possibility for offering different curves simply as "mods" for the MSK 007. There's a whole chapter in the manual going through the calculations for the musical near-elliptic low-pass design. One could start from any other desired fifth-order filter curve and follow the same process to get a different list of component values for building Board 3, and then probably with no other changes, build an MSK 007 to the new spec and have a different filter curve.

So it has long been on my mind to run through that process, calculate some component values for other filter curves, and suggest them as mods for the MSK 007. It seems like it could add some value to the design and (always important) give people a reason to buy more of them. One thing I wonder about is what other curves modular synth users actually want. I went for the sharp-cutoff low pass first because low pass filters tend to be most useful in synthesis, and I wanted one that would definitively sound different from other filters on the market, using the leapfrog topology's unique properties to do something other filters cannot do. But there are plenty of other ideas worth considering.

- Some other low pass, either a smooth Butterworth or some
*other*kind of non-smooth shape that might sound different instead of an elliptic. - High pass? I'm not sure how useful these are in modular synthesis but it's a fact I've never owned one as a module, so maybe I just don't know what I'm missing. And as with the low pass responses, there are multiple choices for the shape of the curve.
- Band pass - needing to cut off on both sides means there aren't as many poles to spare for each, so the slopes can't be as sharp as the high pass or low pass, but it could still make sounds that the standard two-pole bandpass filter cannot.
- Double band pass - maybe a bit specialized in application, but a single filter with two band pass responses could produce some interesting format-like effects. It would still only have a single tuning/cutoff control, so there wouldn't be as much flexibility as we usually expect from a digital formant filter, but it might be fun.
- All pass - I don't think these are at all popular, but I'm fascinated by the effects possible from a filter that only changes the phase without boosting or cutting the amplitude, and a Leapfrog all pass filter could produce some interesting phasing effects even if it's an expensive way to achieve them.

I'd been toying with running some kind of contest or promotion related to the choice of which filter curves to officially announce next - maybe some kind of thing where each purchase of an MSK 007 product gives you a vote, or even just offering to calculate one new filter curve chosen for each person who buys an assembled module. That's probably all too complicated, though. Instead it may be better to solicit suggestions from readers and then just do whichever curves make sense to me. So whether you've bought your own Leapfrog filter yet or not, what other response curves would you like to hear? Let me know here, or in the usual other places.

◀ PREV Leapfrog press release || Free MIDI software rundown NEXT ▶

Rico - 2024-04-11