Reality check: HP
Modular hobbyists love to invent fantasy modules. We'll sit down and sketch out just exactly the modules we wish we had in our racks, and then either show the mock-up images to their friends and leave it at that, or take it a little more seriously and try to actually build and sell our dream modules. All good clean fun.
But once you have in fact built a few modules in real life, you quickly find yourself looking at fantasy module designs and thinking, "Oh, they haven't built that and they can't really build it, let alone play it once built" for a very simple reason: the fantasy module designers always want to squeeze far more knobs, jack sockets, and other goodies onto the panel than make sense. Fantasy designers think they need to minimize module width over all other concerns; and fantasy customers encourage them by constantly demanding modules squeezed into fewer and fewer HP - maybe because they believe that when you make a module more difficult to manufacture by shrinking it, that will also make it cheaper to manufacture. I don't know, man. If it's never going to really be built, then it doesn't have to be realistic anyway. (I always want to read HP as "hit points" but it's really Horizontal Pitch, the standard unit of Eurorack module width equal to 1/5 inch or 5.08mm.)
Eyes smaller than your fingers
A lot of people seem to have eyes smaller than their fingers. For example, I built this discrete VCA module last year. It's three VCAs in 10HP. It was one of the first complete modules I designed and built, and I'd been reading a lot of Web forum postings, and I thought at the time that this was a reasonable way to lay out the panel.
Along the left you can see that the underside of one of the boards sticks out a little bit past the edge of the front panel into space that should belong to the next module on the left, but let's assume that in a production version, I could stop that from happening one way or another. The more interesting thing is that I'm quite sure if I posted this panel design on a Web forum, or heaven forbid as a "coming soon" module here in my store, I'd get plenty of complaints about the panel design. It's too many HP! Look at all that wasted space above the knobs, below the jacks, and in between the jacks! It would be easy to redesign it to fewer HP! I think the general consensus of fantasy designers is that a module with as much functionality at the one shown ought to fit easily in about 4HP with a panel design something like this:
There are no tricks in play here. I used exactly the same LaTeX/TikZ template to make that that I use for my real modules. There are plenty of fantasy designs floating around with knobs and jacks spaced about as much as they are here; I don't give examples only because I don't want to start fights, but honestly, they are easy to find. (I will delete "citation needed" comments.) It looks pretty good in 4HP - so 10HP is way too much, right? Now look what happens when I try to turn the knobs on the 10HP version in real life:
Sorry about the poor image quality - it's not easy to take a good macro photo with the camera in one hand while trying to manipulate a module with the other - but what I'm trying to demonstrate there is that my fingertips cannot fit between the knobs when they're spaced like this 3.33HP apart. The only reason I can turn the knobs at all is because there's plenty of vertical space above and below them, a fact which will become less true as soon as there are cables plugged into the jacks. And I can only get about a quarter-turn of control on the middle knob before my fingers collide with the neighbouring knobs and I have to reposition them, and it's basically impossible to avoid bumping other knobs when I turn one of them, making careful, fine control impossible. The overall effect is that at 10HP this module is not a joy to use, and that's at 10HP. If I were going to build it for real, for production, I wouldn't want to make the module any less than 12HP. Standard fantasy module design procedures, as I mentioned, would aim to fit it in 4HP.
On this particular module, but only because of the empty space that I griped about earlier, I could improve the knob spacing by pushing the middle one upward so they aren't all three in a row. I could also make things a little less cramped by getting rid of the knobs. These are Davies 1900H clones, about the thinnest standard knobs you can get, so the next step would be no knobs at all, fingers directly on the bare potentiometer shafts. Maybe I could use pots with no bushings and knurled plastic shafts that function a little like knobs, such as Intellijel sometimes uses. It's probably realistic to hope that I could make a pot's panel space consumption as small as that of a jack socket that way and still have them at least sort of finger-accessible. But those knob-less bushing-less pots do have significantly lower perceived quality. People complain about their being "wobbly" whether they really are or not; there's always a tradeoff.
So how close can we safely put jack sockets? Well, 2HP modules exist. Put two or more of those side by side and you've got jack sockets spaced 2HP apart. So it's safe to put them at that distance within a module panel too, right? Not so fast!
If jack sockets are spaced in a row at 2HP horizontally or vertically, then you can get your fingers in on either side of the row pretty easily to grab the body of the plug on your patch cord. Much the same applies to the skinny pots used in 2HP modules. But you have to have that space for your fingers. Build a grid of sockets spaced 2HP both horizontally and vertically, and you have no hope of being able to grab one in the middle when they're all patched. Your only option is to pull on the cable, which will eventually destroy it. When people build 2HP modules with jack sockets closely spaced vertically on them (eight sockets is routine, and some 2HP modules push it to nine or ten), they are depending on the fact that the user will probably not install such high-density modules right next to other similar modules. Like the sticking-out board on my 10HP VCA prototype, 2HP modules trespass on the space to either side that should belong to other modules; and one module can only get away with that as long as most other modules do not do it. (See "Prisoner's Dilemma.")
Even Doepfer is not immune to the "l3ss HP plz" disease. Their older panel designs are great, but here's an 18HP they recently announced:
Vertical rows of ten jacks each! Even the 2HP crowd usually don't go above eight or nine. And yet I've still heard complaints that this is sadly "much bigger" than an earlier-announced 16HP version. It sounds like a neat module and if y'all buy my own products so that I can afford one, I'll probably buy it; but even if I can afford the money, I'm not sure I can afford the rack space for such a narrow module. Something like 24HP for this number of jacks and knobs, would be a much better fit.
Learning from the masters
What then is the best practice? It's not right to build modules that force the user to destroy their cables, and it's also not right to claim that one's modules are "space-saving" when that's only achieved by stealing space from the neighbouring modules in a way that would be a problem if everybody did it. We're probably never going to satisfy fantasy designers who don't build real modules, nor their fantasy customers who don't buy and use real modules; but maybe then it would make sense to look at some real modules from manufacturers we respect and see what kind of spacing they really do use for knobs, jack sockets, and other things. I especially admire Émilie Gillet's sticking to her guns on designing Mutable Instruments modules for usability instead of density, even though it has created a market for "shrunk" third-party imitations sold to customers who think reducing HP is more important; so Mutable is one of the manufacturers on the list to look at.
Does it all have to be subjective? I can look at a module and say, "I like that one," or "No, that's way too crammed," but it might seem that any idiot with unrealistic ideas has an opinion just as good as mine. There ought to be a more objective way of measuring, not just saying, which modules have appropriate spacing for the things on their front panels.
Suppose we made a list of modules from various manufacturers who are worth imitating, and measured how many things they try to fit on panels of different sizes. As a first approximation, we might assume the number of jack sockets is a decent measure of how much stuff is in the module, and scatter-plot that against HP panel width. (Data for this plot extracted from the "consensus" page of the spreadsheet linked later, details of the sampling procedure also given there).
It's clear that there's a lot of variation in the panel size for a given number of jacks; no surprise, since two modules with the same number of jacks may differ a lot in how much other stuff, such as knobs and buttons, they may have. The two 34HP modules at the top of the plot are killer examples: those data points happen to represent the Mutable Instruments Elements and the Makenoise René, each of which has many user controls (knobs for Elements, touch pads for René) not counted in the jack totals.
Even so, we can still see some interesting things in this plot. The data cloud doesn't fit the linear approximation really well, but it does fit well enough that there meaningfully is a linear approximation. That line has a slope of almost exactly 1.000: in other words, the average module with one more jack socket will be 1HP wider, including space for the other things besides jack sockets that people tend to put on module front panels. And my MSK 006 design mentioned above, with 9 jacks in 10HP, is almost exactly on the linear-fit line. It's neither much narrower, nor much wider, than what's sold by other manufacturers who are worth comparing against.
What about trying to take into account the knobs, buttons, and other things on a panel?
A more detailed study
It doesn't fit so well in a two-dimensional diagram, but it's possible to generalize the scatterplot above to more variables. Imagine that a module designer were to say "Okay, I need a basic amount X of panel area for having a module at all, then I will add amount A for every jack socket, amount B for every knob or button, amount C for every miscellaneous control such as a toggle or slide switch, and amount D for every LED. Then I'll make the panel the width that comes from adding together those amounts." Module designers of course don't really choose widths that way, but this linear model may give some kind of approximation; and we can look at the choices module designers really do make in practice, use statistical techniques to infer the numbers X, A, B, C, and D that cause the linear model to give the best approximation, and then we can hope that those numbers will provide interesting information about how module designers work in real life. With me so far?
There are a lot of details to work out. First, which manufacturers should be included? I chose five: Doepfer, Mutable Instruments, Makenoise, Cwejman, and Intellijel. These are basically large and respected outfits. The inclusion of Makenoise may be controversial because many people (including me) don't like the Makenoise panel designs, but they remain popular and it'll be interesting to see whether their designs turn out to be different from the others in the statistical analysis. In the case of Doepfer I'm particularly interested in what I call "classic" designs, that is, those that date from before Doepfer started shrinking their panels to pander to the current market fashion.
For each manufacturer I tried to put together two Eurorack rows worth of modules. Doepfer was easy: I just used their Basic System 1, which seems to be nicely balanced, eliminates any room for criticism of my own subjective module choices, and is made up of their earlier modules (serving my goal of avoiding debased modern panel designs). For Makenoise, I similarly used their Shared System as the sample, excluding the blank panels and 1U CV bus row. That makes a sample a little on the small side in number of modules (given how many variables I hope to fit to the data) but it makes sense to use the manufacturer's preselected system, and in terms of total HP it's actually the largest sample in the bunch, even after dropping the blank panels, because it's designed for a wider-than-standard case.
For the other three, I tried to put together two-row systems in ModularGrid that would at least sort of represent what people would actually buy, while hitting a decent sampling of the panel manufacturer's panel designs. Here (and in the Doepfer basic system) there are some duplicate modules, which I went ahead and counted multiple times on the theory that that most accurately represents how these modules are sold and used; a more popular module should count more toward defining what's a typical design. Click on the thumbnails for close-ups.
Although it doesn't really make a difference given that all Eurorack modules are the same height (what about 1U tiles? They're not Eurorack! But that's a topic for another day...) I think it makes sense to measure panel area, not panel width. The space centre-to-centre between mounting holes at the top and bottom of a Eurorack panel is 122.5mm, per the Doepfer mechanical specifications. Most popular mounting rails are 10mm wide. So figuring half a rail's width is consumed below the mounting hole centre line at the top, and half above the mounting holes at the bottom, we can subtract 10mm and get 112.5mm as the absolute maximum amount of usable distance between the rails. That is just 0.74mm greater than 22HP (111.76mm), so it makes sense to say that each 1HP of module width gives 22HP^2 (square HP) of usable panel area, and I'm doing all my calculations with square HP on that basis. If we tolerate a 2HP vertical spacing for jacks, then in principle we could have not only 10 but even 11 jacks vertically on a Eurorack module - and you bet some fantasy designer is going to plan on it!
Counting the things on the panel is tricky because manufacturers use a wide variety of different components. The Doepfer modules I'm looking at stick to jacks, knobs, toggle switches, and LEDs, and that's the basis for my classification. But then Mutable has 16-segment LED displays, pushbuttons, and big DIN MIDI connectors; Cwejman and Intellijel use a lot of slide switches; and Makenoise has weird stuff including touch controls built into the laminated material of the panels. I settled on four categories: "jacks" (which means only 3.5mm standard Eurorack jacks); "controls" (which includes all types of knobs and pushbuttons, but not toggle or slide switches because they tend to take up more space); "misc" (which includes toggle and slide switches, big non-3.5mm jacks, each 16-segment Mutable display digit counted as one unit, and other things that don't fit in any other category); and "LEDs" (counting each single LED as one unit). Some of these classifications are obviously subjective, and I may have made a few counting errors collecting my sample, but the hope is that the sample size will be large enough to average out such issues.
I put all the data in a Gnumeric spreadsheet and did a least-squares fit to the earlier-described linear model by means of the Moore-Penrose pseudoinverse. (Everybody knows how that works, so I don't need to explain it, right?) Note that that file is in Gnumeric spreadsheet format and you probably cannot read it with Microsoft Excel. Instead, you might want to look at the PDF file showing the data and results. Here's a screenshot clipped from the PDF of the final linear-model coefficients, all in units of HP^2:
The "Consensus" column represents a linear model fit to the union of all five per-manufacturer samples, ten rows of modules in all. Note it's not just exactly an average of them; it's the result of doing the more complicated "fitting" calculation on the combined sample.
One caution I have to put in before getting into discussion of the results is that I suspect an overfitting problem. Some of these samples are as small as ten data points (modules), which is not a lot of data to give accurate fitting of five parameters. In the Mutable sample, for instance, only two distinct modules (Yarns and Braids, with Braids duplicated) have anything in the "misc" category; so most of the information in the counts for those two panels will be captured in the "misc" coefficient for Mutable, effectively taking them out of the sample for determining the rest of the coefficients. I suspect that this kind of effect accounts for a lot of the surprising values in the table, in particular the negative values, and we can't really trust these numbers to anything like their stated precision. It calls for more work and a much larger sample, but doing that would have other obvious problems...
But with that caution in mind, one thing worth looking at is the top row, the amount I'm calling "(base)." That represents the starting point for the calculation: every module starts with (base) amount of area needed and then we add or subtract other amounts for the controls. I'm surprised that this isn't close to zero across the board. Doepfer, Makenoise, and Cwejman all seem to have significant positive values; the largest, for Cwejman, is slightly over 4HP of width (recalling that 1HP of width is 22HP^2 of usable area). One way to imagine this effect is that it is as if Wowa starts by laying out a 2HP margin at both sides of the module and then designs the panel to fit inside that margin instead of to fit the actual chunk of metal; but understand I'm saying that the area consumed in the final design is equivalent to that, not that it's how his design process works nor that such a margin exists in any specific location.
Mutable does not seem to have any significant (base) amount like this; and I'm not at all sure what to think of the fact that for Intellijel, the amount is negative. Maybe that's an overfitting effect, or maybe it suggests Intellijel tends to put controls closer to the edges than to each other on the same panel. One thing worth remembering is that my Intellijel sample is the only one that contains 2HP modules, and "negative margin" is very close to the "trespassing on neighbouring modules' space" effect that I think is typical of 2HP module designs.
The "jack" row represents the amount of space in square HP that each manufacturer can be said to allocate for each jack, and it's nice that here the numbers do seem to make sense with one's subjective impressions of the manufacturers' panel designs. If a manufacturer put jacks on a square grid with this much area per jack and nothing else on the panel, then the grid spacing would be the square root of this number. For Makenoise it's 1.63 (square root 1.28), which does not really mean that Makenoise spaces jacks a physically impossible 1.28HP apart, but may suggest something we can guess looking at their panels: Makenoise seems to lay out the user controls like knobs, and the flashy graphics, and then just drop in jacks wherever those fit without allocating more space to them. Note that Makenoise's coefficient for knobs, at 25.96, is the largest of any manufacturer sampled, although there's not much variation among manufacturers on that. Makenoise is careful to allocate plenty of space for knobs, which may be one reason people still like playing Makenoise modules despite their visual ugliness. Looking at other manufacturers, the numbers in this row do seem to give a reasonable understanding of the typical spacing they use between knobs, from 2.15HP (square root of 4.61) for Cwejman up to 3.49HP (square root of 12.20) for Mutable, Intellijel effectively the same as Mutable.
Not many useful comparisons can be made in the "misc" category because what things go into that category vary so much manufacturer to manufacturer, but I would like to flag the value -4.85 for Cwejman. That category for that manufacturer basically counts slide switches. I don't seriously believe that he deliberately makes his panels smaller whenever he adds a slide switch, but it is visible looking at the panels that Wowa sticks pretty closely to a consistent grid for knobs, and then the slide switches where used seem to be just dropped into the spaces of that grid without moving anything else. The fact that the number is small is probably more important than the fact that it's negative.
For LEDs, I think all the numbers except 19.29 for Cwejman should be regarded as effectively zero. Most manufacturers seem to just drop in LEDs after designing their panels for other components, without adding space especially for the LEDs. That may make sense because the user doesn't need to get fingers onto the LEDs as they would the other components; LEDs can be regarded as just panel graphics (which I haven't counted) that happen to light up. But if the numbers are to be regarded as meaningful, it seems like Cwejman panels treat LEDs as first-class objects, each costing almost as much as an entire 1HP of width. Sadly, I think that may really just be an overfitting effect that would disappear in a larger, more careful sample; I hesitate to conclude that that 19.29 really proves anything interesting about Cwejman panel designs.
One other thing I'd like to observe that's not in the table screenshot above but is in the spreadsheet and PDF (read them!), has to do with how closely these linear models actually fit the data. I computed the ratio of calculated to actual square-HP area for each module in a column of the spreadsheet, as a percentage. Low percentages describe modules that are less crammed than we'd expect from the model, and high percentages, more crammed. For the modules in my Doepfer sample, the range is from 85.4% for the A-145 LFO which has a lot of blank space on its panel, to 116.4% for the A-140 ADSR, which doesn't. That right there suggests that for Doepfer modules the model actually works pretty well, because it's not a wide range. For other manufacturers it's a little less reliable. Mutable is noteworthy because the two high-density 4HP modules, Links and Kinks, stand out at 142.0% density. Those panels are meaningfully different from other Mutable panels, which range from 81.5% for Clouds to 113.9% for Rings.
By the way, that 18HP quad-VCO Doepfer module I highlighted above? Using the model computed on their older modules, its density percentage is 197.5%. If it were designed the same way as their older modules, it ought to be 36HP!
There is a lot more that can be said about panel design, and there are important considerations behind the panel that can shape what appears on the front. In particular, if you want your modules to be "skiffable" then you can't have the circuit boards go back very far into the depths behind the panel, and that may mean mounting other components, invisible from the front, on the board behind the panel. My octave switch (due to be released a few days after this article goes live) is a good example: there's a gap of about 2HP between the two channels and any good fantasy designer would insist that it should be easy to just remove that and make the whole module that much narrower (and they'd expect a proportionate reduction in price, too). In fact, the reason it's laid out that way is clear once you see the circuit board layout:
That gap exists to fit a DIP IC in between the rows of jacks; and in order to eliminate it I'd have to sacrifice some combination of skiff-friendliness (by going to a third board or perpendicular boards); hand-construction friendliness (by going to surface-mount); or other worthwhile things. Similar considerations apply to other panel design choices - such as whether you can fit high-quality potentiometers into the amounts of space that look reasonable from the front.
When writing this I went back and forth several times on whether I wanted to make it a single long posting or split it into a series, and my decision was to call it a single posting, but stop at this point. If there's interest in the behind-the-panel issues too, I may someday put those in a separate posting.
EDIT: Of course, panel size matters more to some of us than others...