Designing a High-Accuracy Passive Inverse RIAA Filter, Why Build One at All?

[Update] You can find the full IRN project details in posts #1, #4, #35, and #40 if you'd like to follow along.


Hi everyone,

Just wanted to share the start of a project I’ve recently finished, a passive inverse RIAA filter that ended up being surprisingly useful (and a bit more involved than I expected). It’s designed to help with testing both MM and MC phono preamps, staying accurate across the full audio band: 20 Hz to 20 kHz.

Laser-engraved dual-channel filter enclosure:
Laser-engraved dual-channel filter enclosure


The motivation was pretty straightforward. Most IRN filters I came across, whether commercial or DIY, either lacked the precision I needed, didn’t handle MC levels well, or relied on active stages that I wanted to avoid. If you’re building or measuring phono stages, having a clean, analog-domain IRN filter is super helpful, especially when you want to check frequency response or verify your RIAA curve.

The original “The Audio Amateur” article, 1980:
1751391781154.jpeg


This one’s based on the well-known Lipshitz & Jung design from Audio Amateur (1980), with a few ideas borrowed from more modern builds like the Hifisonix Accurate IRN. But it’s been adapted and rebuilt from scratch with the following goals in mind:

•Dual outputs: –40 dB (MM) and –63 dB (MC)

•Fully passive RC topology, no active gain stages

• ±0.11 dB deviation from ideal RIAA (simulated)

•Separate shielded PCBs for left and right channels

•Premium hand-matched components for better tolerance

Resistors and capacitors were carefully hand-picked to ensure high precision and matched performance between boards:
1751392961522.jpeg


I’ll go into the schematic and how I structured the attenuation stages for the next post. Even if IRN filters aren’t part of your regular toolkit, I’d love to hear what other folks here are using when testing phono preamps.

Cheers,
Alan
 
Last edited:
Following up from the first post, here’s a closer look at how the circuit was actually built. The filter uses a fully passive RC topology, simple in principle, but getting the precision right took a bit of effort.

The idea was to create two outputs, one at –40 dB for MM phono stages and another at –63 dB for MC inputs


Both paths follow the same curve, just scaled in level. Getting them to track each other closely required careful impedance planning, and quite a bit of part-matching, to be honest.

Many of the resistor and capacitor values didn’t exist as single parts, so I ended up building combinations (series/parallel) to hit the targets more accurately. All components are 1% metal film resistors and polypropylene caps from WIMA and Nissei. A bit old-school, maybe, but reliable and consistent.

1751392961540.jpeg


The layout is dual mono: each channel has its own board and its own enclosure. That decision wasn’t just aesthetic, having the channels completely isolated actually helped with crosstalk performance when testing stereo phono stages.

Below is the schematic and a close-up from the build process. Would love to know what others here think, especially if you’ve designed something similar, or have tips on improving passive IRNs.

reverse RIAA1.jpg


If resistors R13–R16 are changed to 562 Ω, and R17–R20 are changed to 40.2 Ω, the attenuation levels become:

1) –44 dB at 1 kHz for MM output

2) approximately –68 dB at 1 kHz for MC output


This modification may be useful if your phono stage has higher input sensitivity or if you want more headroom in measurements.
 
  • Like
Reactions: ranshdow
I built mine from the Hagerman article here- https://www.hagtech.com/pdf/riaa.pdf
I admit to being lazy and only building one channel. Never really felt a need for two. I do have a construction advantage- the ability to measure small capacitance values with high accuracy and possession of a GR 1493 decade transformer. It turns out that measuring RIAA accuracy is harder to do than most people realize. If using a DVM, read the accuracy specs carefully.
 
  • Like
Reactions: Ala Electronics
Good job!
I use a different approach: I use a close but lower value component and patch it up with "shims", i.e. the 3.6nF can be a 3.3nF // 270pF // 33pF.
I also use a bridge type LCR meter to sort at least the main components; a 0.5% bridge cost only about $60.
Finally, polystyrene caps have a better tempco than MKP, but you have to hunt them down. I buy the Philips 1% type from eBay.
 
  • Like
Reactions: Drbulj
I built mine from the Hagerman article
Thanks for sharing that. I actually went dual mono mostly to reduce crosstalk when testing stereo phono stages, but I agree that for most cases a single channel works just fine.

Your point about measurement accuracy is spot on. I'm currently using a DVM for quick voltage checks, but I know that's far from enough for validating the full curve. I'm setting up to do proper tests soon with a function generator and oscilloscope, and maybe some REW sweeps through a phono stage when that part’s ready.

And a GR 1493! That’s a serious piece of gear. Would love to see your build sometime if you have photos.

Thanks again for the insight.
 
I also use a bridge type LCR meter to sort at least the main components;

Your shim approach is clever, I actually used something similar in a few spots where exact values weren’t available. Combining caps or resistors gave me tighter results than single parts alone, especially with 1% tolerance limits.

I went with WIMA (FKP2) and Nissei film caps mainly because they’re readily available, and I’ve had good experience with their long-term stability and consistency. Tracking down polystyrene is pretty difficult (and they tend to get expensive too), but I totally agree they’re great for tempco and dielectric behavior.

That 0.5% LCR bridge you linked looks surprisingly good for the price. I’ll definitely keep that in mind for future builds!
 
About the "why build one at all": why don't you just use an inverse RIAA weighting filter in your measuring software?
Good point, and yeah, software-based inverse RIAA filters are definitely useful in many setups, especially when working entirely in the digital domain.

In my case, I wanted something hardware-based that could provide consistent, analog domain output levels for directly testing phono stages. A physical IRN lets me simulate real-world MM/MC signal levels and loading conditions without relying on digital compensation or assumptions.

It’s not exactly a cartridge, of course, but it behaves close enough to help verify frequency response and gain accuracy with tools like an oscilloscope, sweep generator, or REW through a phono input.

And to be honest… I just enjoy building these things by hand 😄
 
The source impedance driving this A-Riaa network will be part of the equation.
When not specified, accuracy will be affected.

When simulating the network in LTspice, and comparing it to a 100% accurate Laplace filtered source, it’s easy to find the correct component values for a given source impedance.

In my case I’m using the 50R impedance signal generator that’s included in my digital scope.

Hans
 
  • Like
Reactions: Ala Electronics
Or if you measure it manually, an inverse RIAA spreadsheet?
Totally fair point, and I’ve definitely seen some great inverse RIAA spreadsheets out there.

I wanted something I could physically integrate into the measurement chain, especially when using sweep generators or REW through a phono input, where I’d rather not rely on post-measurement compensation.

Having a real-time analog filter also makes it easier to check things like channel balance and crosstalk stuff that’s harder to spot if you’re manually adjusting or re-referencing data afterwards.

And honestly, building the actual box was half the fun.
 
  • Like
Reactions: MarcelvdG
When you use a piece of paper and a pen instead of LTSpice, you will soon find out that for resistive sources, the source resistance affects the poles in the exact same way as the load resistance. If you don't care much about the precise attenuation, you can reduce the combined value of R13...R16 to correct for the source resistance.
 
The source impedance driving this A-Riaa network will be part of the equation.
When not specified, accuracy will be affected.
Great point, Hans.
Source impedance is definitely part of the network behavior, especially in passive IRN designs.

In my case, I assumed a 50Ω source impedance (to match typical signal generators), and selected components accordingly. The simulation was done in Multisim rather than LTspice, but I tried to match the RIAA curve with that loading condition as the baseline.

I’ve been thinking about testing the sensitivity of the network to variations in source Z, would love to hear more about how you approached it in LTspice with the Laplace reference.
 
If you don't care much about the precise attenuation, you can reduce the combined value of R13...R16 to correct for the source resistance.

That's a great point, and I actually had an alternate resistor set in mind for that:

If R13–R16 are set to 562 Ω, and R17–R20 to 40.2 Ω, the 1 kHz attenuation shifts to –44 dB (MM) and ~–68 dB (MC), which better accommodates typical signal generator output impedances.

I has been mentioned on post #4 but glad you mentioned it.
 
Last edited: