Skip to content

Microstrip Bandpass Filter Design

Building RF filters the way they did before simulation software — with math, intuition, and a razor blade.


A 3-pole edge-coupled microstrip bandpass filter for the 902-928 MHz ISM band. We’ll design it on two substrates — cheap and cheerful FR4, and premium Rogers RO4350B — so you can see how substrate choice changes everything.

Specifications:

ParameterValue
Center frequency (f₀)915 MHz
Bandwidth (BW)26 MHz
Fractional bandwidth (FBW)26/915 ≈ 2.84%
Passband ripple0.5 dB (Chebyshev response)
Impedance50Ω in/out

Why this topology?

Edge-coupled half-wave resonators are the “hello world” of microstrip filter design. They’re easy to understand (just parallel traces with gaps), easy to build on a single-layer PCB, easy to tune by trimming copper, and forgiving enough for hand fabrication. Three resonators (3 poles) give us a good balance between sharp rolloff and buildability.


FR4 is the default PCB material. Every board house has it, it’s cheap, and it works “well enough” at 900 MHz. It’s the perfect choice for learning because its imperfections teach you how to tune.

ParameterValue
Dielectric constant (εᵣ)~4.4 (varies 4.2-4.8 by batch)
Loss tangent (tan δ)~0.02
Thickness (h)1.6 mm (63 mil) — standard
Copper cladding1 oz (35 µm)
CostA few dollars per board

Rogers RO4350B — The RF Professional’s Choice

Section titled “Rogers RO4350B — The RF Professional’s Choice”

Rogers RO4350B is a hydrocarbon/ceramic laminate designed specifically for RF work. It’s what you’ll find inside commercial base stations, radar modules, and satellite equipment.

We’re using a specific product: RO4350B-0100-1ED/1ED — a 10 mil thick, 1 oz copper panel, 12” × 18”.

ParameterValueNotes
Dielectric constant (εᵣ)3.48 ± 0.05At 10 GHz, stripline test method
Design Dk (microstrip)~3.66Rogers notes a Δ of ~0.2 in microstrip
Loss tangent (tan δ)0.0037 at 10 GHz
0.0031 at 2.5 GHzCloser to our 915 MHz
Thickness (h)0.254 mm (10 mil)Very thin — this matters!
Copper cladding1 oz (35 µm)Both sides
Panel size305 × 457 mm (12” × 18”)Plenty of room
CTE (Z-axis)50 ppm/°CClose to copper
Tg>280°CWon’t degrade during soldering
Moisture absorption0.04%Nearly zero

Why the Rogers Board Is Better (and Why It Matters)

Section titled “Why the Rogers Board Is Better (and Why It Matters)”
PropertyFR4RO4350BWhat It Means
εᵣ tolerance±0.3±0.05Rogers hits target frequency first try
Loss tangent0.020.003~6× less signal eaten by the substrate
εᵣ vs temperature~200 ppm/°C50 ppm/°CRogers doesn’t drift when it warms up
εᵣ vs frequencyVaries a lotFlat to 40+ GHzPredictable design at any frequency
Moisture absorption0.15%0.04%Rogers stays stable in humid weather

Bottom line: FR4 teaches you to tune. Rogers teaches you what happens when you don’t have to.


A half-wavelength (λ/2) section of transmission line is a resonator. At its resonant frequency, it acts like a very high-Q parallel LC circuit. Both ends are open (voltage maximum), and the electric field peaks in the middle.

Electric field maximum
↓ ↓
┌───────────●─────●───────────┐
│ ←── λ/2 ──→ │
└─────────────────────────────┘
↑ ↑
Open end Open end
(voltage max) (voltage max)

When you place two resonators close together, energy couples between them through the fringing electromagnetic fields. The gap spacing controls how strongly they couple — and coupling strength controls bandwidth.

Resonator 1 gap Resonator 2
▄▄▄▄▄▄▄▄▄▄▄ ↔ ▄▄▄▄▄▄▄▄▄▄▄
███ ← Fringing fields couple energy here
═══════════════════════════════════ substrate
███████████████████████████████████ ground plane

More resonators = sharper rolloff outside the passband. Smaller gaps = stronger coupling = wider bandwidth.

A 3-pole Chebyshev with 0.5 dB ripple gives us reasonably sharp rolloff, slight ripple in the passband, and a good balance between complexity and performance.

Insertion Loss
0 ─┼─────────┬─────────┬─────────
│ ╱│╲ ╱ ╲
-3 ─┼───────╱─┼─╲─────╱───╲──────── ← 3dB bandwidth
│ ╱ │ ╲ ╱ ╲
-10 ─┼─────╱───┼───╲─╱───────╲──────
│ ╱ │ ╳ ╲
-20 ─┼──╱─────┼────╱╲──────────╲────
│ ╱ │ ╱ ╲ ╲
-30 ─┼╱───────┼──╱────╲──────────╲──
└────────┴────────┴────────┴──→ Frequency
902 915 928
MHz

This is where the two substrates diverge. Same formulas, different numbers.

For microstrip, the width of the trace relative to the substrate thickness determines the characteristic impedance. We need 50Ω.

The formula (for W/h > 1):

377π
Z₀ = ─────────────────────────────────────────────
√εeff × [W/h + 1.393 + 0.667 × ln(W/h + 1.444)]

We solve this for W when Z₀ = 50Ω:

ParameterFR4RO4350B
εᵣ4.43.48
h (thickness)1.6 mm0.254 mm
W (50Ω trace width)3.0 mm0.55 mm
W/h ratio1.882.17

The RO4350B trace is 5.5× narrower — not because of the dielectric constant, but because the substrate is 6.3× thinner. The wave impedance is set by the W/h ratio, and a thinner board needs a narrower trace to maintain the same ratio.

The fields in microstrip travel partly through the substrate and partly through the air above the trace. The “effective” dielectric constant accounts for this mix.

εᵣ + 1 εᵣ - 1 1
εeff = ────── + ────── × ─────────────────
2 2 √(1 + 12 × h/W)

FR4:

4.4 + 1 4.4 - 1 1
= ─────── + ─────── × ─────────────────
2 2 √(1 + 12 × 1.6/3.0)
= 2.70 + 1.70 × 0.37
εeff ≈ 3.33

RO4350B:

3.48 + 1 3.48 - 1 1
= ──────── + ──────── × ──────────────────────
2 2 √(1 + 12 × 0.254/0.55)
= 2.24 + 1.24 × 0.39
εeff ≈ 2.73
c 3 × 10⁸ m/s
λ = ─────────────── = ─────────────────────────
f₀ × √εeff 915 × 10⁶ × √εeff
ParameterFR4RO4350B
εeff3.332.73
√εeff1.8251.652
λ (wavelength)180 mm198 mm
λ/2 (resonator length)90 mm99 mm
Starting length (+5% margin)94 mm104 mm

Counterintuitive: the Rogers resonators are longer despite the lower dielectric constant. The wave travels faster through the lower-εeff substrate, so a half wavelength is physically longer.

These depend only on the filter shape (Chebyshev, 0.5 dB ripple, 3-pole), not the substrate. The prototype element values are:

ElementValue
g₀1.0000
g₁1.5963
g₂1.0967
g₃1.5963
g₄1.0000

Coupling between resonators:

FBW 0.0284
k₁₂ = ───────────── = ─────────────────── ≈ 0.0215
√(g₁ × g₂) √(1.5963 × 1.0967)
FBW 0.0284
k₂₃ = ───────────── = ─────────────────── ≈ 0.0215
√(g₂ × g₃) √(1.0967 × 1.5963)

External Q (input/output coupling):

g₀ × g₁ 1 × 1.5963
Qe = ────────── = ──────────── ≈ 56
FBW 0.0284

These numbers are the same for both substrates. What changes is the physical gap needed to achieve them.

Converting coupling coefficient to gap distance is where old-school meets black magic. The relationship is empirical and depends on trace width, substrate height, and dielectric constant.

ParameterFR4RO4350B
Required coupling (k)0.02150.0215
Gap spacing (S)1.8 mm0.25 mm
Tap offset from end6 mm4 mm

The Rogers gap is 7× smaller — again driven by the thinner substrate. The fringing fields extend proportionally to the trace width and substrate height, so coupling falls off faster on a thinner board.


ParameterSymbolFR4 (1.6mm)RO4350B (10mil)
50Ω trace widthW3.0 mm0.55 mm
Resonator lengthL90 mm99 mm
Starting length (with trim margin)L₀94 mm104 mm
Gap between resonatorsS1.8 mm0.25 mm
Tap offset from resonator endt6 mm4 mm
Effective εᵣεeff3.332.73
Half wavelengthλ/290 mm99 mm
Board width (minimum)-50 mm20 mm
Board length (minimum)-130 mm140 mm

The traces are wide enough to see and work with easily. This is the hand-etchable version.

←──────────────────── ~130 mm ───────────────────→
┌─────────────────────────────────────────────────┐ ↑
│ │ │
│ ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄ │ │
│ █ Resonator 1 W=3.0mm L≈90mm █ │ │
│ ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀ │ │
│ ← S₁₂ = 1.8mm gap → │ │
│ ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄ │ ~50mm
│ █ Resonator 2 W=3.0mm L≈90mm █ │ │
│ ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀ │ │
│ ← S₂₃ = 1.8mm gap → │ │
│ ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄ │ │
│ █ Resonator 3 W=3.0mm L≈90mm █ │ │
│ ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀ │ │
│ │ │ │ │
│ tap │ (~6mm) (~6mm) │ tap │ │
IN ───────┘ └──────── OUT
│ │ ↓
└─────────────────────────────────────────────────┘
Total coupled section width: 3×3.0 + 2×1.8 = 12.6 mm
(visible, workable dimensions)

The traces are hair-thin. The entire coupled section is narrower than a single FR4 trace.

←──────────────────── ~140 mm ────────────────────→
┌──────────────────────────────────────────────────┐ ↑
│ │ │
│ │ │
│ ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄ │ │
│ █ Resonator 1 W=0.55mm L≈99mm █ │ │
│ ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀ │ │
│ ← S₁₂ = 0.25mm → │ │
│ ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄ │ ~20mm
│ █ Resonator 2 W=0.55mm L≈99mm █ │ │
│ ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀ │ │
│ ← S₂₃ = 0.25mm → │ │
│ ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄ │ │
│ █ Resonator 3 W=0.55mm L≈99mm █ │ │
│ ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀ │ │
│ │ │ │ │
│ tap │ (~4mm) (~4mm) │ tap │ │
IN ───────┘ └──────── OUT
│ │ ↓
└──────────────────────────────────────────────────┘
Total coupled section width: 3×0.55 + 2×0.25 = 2.15 mm
(the whole filter section fits inside a pencil width!)

The FR4 version is designed for hand fabrication. Here are your options, from most to least traditional:

Method A: Toner Transfer

  1. Print the layout mirrored onto glossy magazine paper using a laser printer
  2. Iron it onto a clean, degreased copper-clad FR4 board
  3. Soak in water, peel the paper — toner transfers to copper
  4. Etch in ferric chloride (warm for faster results)
  5. Clean off toner with acetone
  6. Inspect traces under magnification

Method B: Tape Resist

  1. Apply vinyl tape or Kapton tape as an etch resist
  2. Cut the trace pattern with a sharp blade
  3. Peel away the areas you want to etch (the gaps)
  4. Etch in ferric chloride
  5. Surprisingly effective for 3 mm wide traces

Method C: Direct Milling

If you have access to a PCB mill or a very steady hand with a Dremel:

  1. Mill isolation channels around the traces
  2. Leave the traces as copper islands
  3. No chemicals needed

At 0.55 mm trace width and 0.25 mm gaps, the fabrication options narrow — but there are more than you might think.

Method A: Send to a PCB Fab House

The straightforward approach:

  1. Do all the math by hand (you just did)
  2. Lay it out in KiCad (free, open source)
  3. Send to a PCB fab house that handles Rogers material
  4. Tune it old-school with a razor blade and NanoVNA

Most RF PCB shops stock RO4350B. Typical minimum trace/space capability is 4-6 mil (0.10-0.15 mm), so our 0.55 mm trace and 0.25 mm gap are well within standard capabilities. Expect $50-150 for a small batch.

Method B: CNC Isolation Milling

If you have a desktop CNC mill with mesh bed leveling (3018 Pro, Bantam Tools, etc.), you can mill Rogers in-house. This is absolutely doable — but the substrate fights back harder than FR4.

Why it’s harder than FR4:

RO4350B is a hydrocarbon/ceramic composite reinforced with woven glass. That ceramic filler is extremely abrasive. Rogers themselves note in their fabrication guide that drill bit wear is accelerated on this material. For your end mills, expect tool life of roughly 1/3 to 1/5 of what you get on FR4.

Why mesh leveling is non-negotiable:

At 10 mil (0.254 mm) substrate thickness, you’re milling 35 µm of copper on top of a board that’s only 254 µm thick. Even 0.05 mm of bed unevenness means you’re cutting 20% deeper on one side than the other. Without mesh leveling, you’ll either leave uncut copper in the shallow spots or plunge through the substrate in the deep spots. With good mesh leveling (probe every 10-15 mm across the work area), it becomes manageable.

Tooling and parameters:

ParameterFR4 (for reference)RO4350B
End mill diameter0.2 mm (8 mil)0.2 mm (8 mil) — same
End mill materialCarbideCarbide — mandatory (HSS won’t survive)
Feed rateYour normal60-70% of your FR4 rate
Spindle speedYour normalSame or slightly lower
Depth per passSingle pass OKMultiple shallow passes recommended
Expected tool life50-100 boards10-20 boards
Bit typeV-bit or flatV-bit works, depth control more critical

CNC tips specific to RO4350B:

  • Secure the board extremely well. Double-sided tape is fine but the board is thin and light — any lifting during cutting is catastrophic at these tolerances. Consider vacuum hold-down if available.
  • Run a mesh probe at fine resolution (every 10 mm). The thin substrate can flex and conform to tape bumps underneath.
  • Cut a test pattern first (two parallel traces with a gap) on a scrap piece before committing to the full filter layout. Measure the actual trace width and gap with calipers.
  • Vacuum the dust. The ceramic particles are not something you want to breathe. A shop vac near the spindle is good practice.
  • Expect to burn through V-bits and end mills faster. Keep spares on hand.
  • If you’re getting chipping at trace edges instead of clean cuts, slow down the feed rate further. The ceramic filler makes the material more brittle than FR4.

Realistic assessment: If your CNC is dialed in well enough to do clean 8 mil (0.2 mm) isolation on FR4 with mesh leveling, you have a good chance on 10 mil RO4350B. The 30 mil Rogers would be an even more forgiving first CNC-on-Rogers experience — wider traces, bigger gaps, more substrate depth margin, same electrical benefits.

Method C: Use Thicker Rogers

If you want the hands-on fabrication experience with Rogers performance, consider sourcing thicker RO4350B:

RO4350B Thickness50Ω Trace WidthGap SpacingHand-Etchable?CNC Millable?
10 mil (0.254 mm)0.55 mm0.25 mmNoYes, with care
30 mil (0.762 mm)1.7 mm0.6-0.8 mmBarelyYes, comfortable
60 mil (1.524 mm)3.4 mm1.5-2.0 mmYes!Yes, easy

The 60 mil RO4350B gives you FR4-like dimensions with Rogers electrical performance — the best of both worlds for a hands-on tutorial. The 30 mil is the sweet spot for CNC milling: traces are wide enough to be comfortable but the board is thin enough to keep the filter compact.

Ground plane: The bottom of the board must be solid, unbroken copper. No slots, no gaps, especially not near the filter traces.

Connectors: Solder SMA edge-mount connectors at the input and output. Center pin to the feed line, body to ground. For the thin Rogers board, an end-launch SMA with a soldered ground tab works well.

Shielding (optional but recommended): A metal enclosure around the filter improves performance by preventing radiation and external coupling. Can be as simple as soldered-on tin sheet.


This section applies to both substrates. The process is identical; only the sensitivity differs.

Minimum toolkit:

  • NanoVNA (or any vector network analyzer — even a cheap $50 NanoVNA clone works)
  • Sharp razor blade or X-Acto knife
  • Fine sandpaper (400+ grit)
  • Magnifying glass or loupe
  • Isopropyl alcohol and lint-free wipes
  • Patience (lots)

Nice to have:

  • Brass tuning screws and nylon nuts
  • Copper tape (for emergency repairs)
  • Calipers (for measuring trace widths and gaps)

Connect the NanoVNA to the filter’s input and output ports. Set up an S21 (transmission) sweep from 800 MHz to 1000 MHz.

What you’ll probably see first:

S21 (dB)
0 ─┤
-10 ─┤ ╱╲
│ ╱ ╲
-20 ─┤ ╱ ╲ ← Filter works, but...
│ ╱ ╲
-30 ─┤───╱────────╲───────── ← Center frequency is too low!
└───┴────┬────┴──────→ Freq
~880 MHz
(we want 915)

This is normal. We deliberately made the resonators long.

If center frequency is too LOW (almost always the case with our deliberate margin):

Resonators are too long. Trim them shorter.

If center frequency is too HIGH:

Resonators are too short. You can try adding a tiny bead of solder to each end to effectively lengthen them, or (more honestly) start over.

Trimming technique:

  1. Remove the filter from the NanoVNA
  2. Using a razor blade, carefully trim 0.5 mm from the end of each resonator (all three, both ends)
  3. Clean the board of copper debris
  4. Reconnect and remeasure
  5. Repeat until the center frequency reaches 915 MHz
Before: ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄ (94mm, resonates low)
After: ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄ (90mm, resonates at 915 MHz)
↑ ↑
trimmed trimmed

Sensitivity comparison:

SubstrateTrim AmountFrequency Shift
FR40.5 mm per end~5 MHz
RO4350B0.5 mm per end~2-3 MHz

The Rogers board is less sensitive because the resonators are longer (99 mm vs 90 mm), so the same absolute trim is a smaller percentage change. This makes Rogers easier to tune precisely.

Once the center frequency is right, check if the 3 dB bandwidth is close to 26 MHz.

If bandwidth is too NARROW: Coupling is too weak (gaps too wide). Carefully scrape copper from the gap edges to make gaps smaller.

If bandwidth is too WIDE: Coupling is too strong (gaps too small). Widen the gaps by removing copper from the resonator edges facing the gap. This is harder to do precisely.

Weak coupling: Strong coupling:
█ █ █ █
█ →← █ █ →← █
█ 2.5mm █ █ 1.0mm█
(narrow BW) (wide BW)

On the RO4350B (10 mil): The 0.25 mm gaps are already very small. You’re unlikely to need to narrow them further. If anything, you may need to widen them slightly if the bandwidth came out too wide.

Step 4: Tune the Return Loss (Impedance Match)

Section titled “Step 4: Tune the Return Loss (Impedance Match)”

Switch the NanoVNA to S11 (reflection) mode. You want S11 < -10 dB across the passband, ideally < -15 dB.

If the return loss is poor, the tap point position needs adjustment:

  • Tap closer to center of resonator = looser coupling to 50Ω = higher Qe
  • Tap closer to end of resonator = tighter coupling = lower Qe

This is the fiddliest adjustment. Small changes (1 mm) make a big difference. On the FR4 board, you can scrape the tap connection and re-solder slightly shifted. On a fab’d Rogers board, you may need to cut the original tap trace and bridge to a slightly different position with a short wire.

RF filter tuning is inherently iterative. Adjusting one parameter affects the others.

Typical tuning sequence:

  1. Get center frequency right (trim resonator length)
  2. Get bandwidth roughly right (adjust gaps)
  3. Improve return loss (adjust tap position)
  4. Re-check center frequency (gap adjustment may have shifted it)
  5. Fine-tune center frequency (minor trim)
  6. Re-check bandwidth and return loss
  7. Repeat until satisfied (or until your patience runs out)

On FR4: Expect 5-10 iterations to get a good result. On RO4350B: Expect 2-5 iterations. The tight εᵣ tolerance means your first measurement is already close.

For adjustable, reversible tuning, you can add brass screws above each resonator. This requires a metal shield/enclosure over the filter.

Nylon nut Brass screw
│ │
▼ ▼
╔═══════╧═════════════╧═══════════╗ ← Metal shield/cover
║ ║
║ ↓ ↓ ║
║ ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄ ║ ← Resonator trace
║ ║
╠═════════════════════════════════╣ ← Substrate
╚═════════════════════════════════╝ ← Ground plane

Lowering the screw toward the trace increases the capacitance at that point, lowering the resonant frequency. Raising it decreases capacitance, raising frequency.

The beauty of tuning screws: they’re infinitely adjustable and reversible. No copper lost, no solder added. Just turn and measure. This technique was standard practice in commercial filters through the 1990s and is still used today in high-performance cavity filters.


The dominant loss mechanism is the substrate’s loss tangent eating your signal energy. The formula:

IL ≈ 4.34 × (f₀/BW) × (1/Qu) × n dB
Where:
- f₀/BW = 915/26 ≈ 35.2 (for both substrates)
- n = 3 (number of poles)
- Qu = unloaded Q of each resonator (substrate-dependent)
SubstrateQu (typical)Calculated ILRealistic IL
FR4~1004.6 dB3-5 dB
RO4350B~2501.8 dB1.5-2.5 dB

The Rogers board saves you 2-3 dB of insertion loss. In a receive chain, that’s 2-3 dB better sensitivity. In a transmit chain, that’s 2-3 dB less power wasted as heat in the filter.

ParameterFR4RO4350BNotes
Insertion loss3-5 dB1.5-2.5 dBRogers is ~6× lower loss tangent
Center freq accuracy (first build)±15-20 MHz±3-5 MHzRogers’ tight εᵣ tolerance
Return loss (after tuning)>10 dB>15 dBRogers allows finer tuning
Stopband rejection @ ±50 MHz>25 dB>30 dB
Temperature driftNoticeableMinimalRogers: 50 ppm/°C vs FR4: ~200
Humidity sensitivityModerateNegligibleFR4 absorbs 4× more moisture
Unit cost (substrate only)~$2~$30-60
Hand-etchable?YesOnly at 60 mil thickness

After tuning, your S21 and S11 plots should look something like this:

S21 (dB) S11 (dB)
0 ─┤ ┌──────┐ 0 ─┤──╲──────────╱──
│ ╱│ │╲ │ ╲ ╱
-3 ─┤───╱─┤──────┤─╲─── -10 ─┤────╲──────╱────
│ ╱ │ │ ╲ │ ╲ ╱
-10 ─┤─╱───┤──────┤───╲─ -15 ─┤──────╲──╱──────
│╱ │ │ ╲ │ ╲╱ ← good
-20 ─┤─────┤──────┤───── │ │ match
│ │ │ │ │
-30 ─┤─────┤──────┤───── -20 ─┤────────┤────────
└─────┴──────┴───→ └────────┴───────→
902 928 915

”My filter doesn’t work at all” (no passband visible)

Section titled “”My filter doesn’t work at all” (no passband visible)”
  • Check for shorts — gaps not etched cleanly, copper bridges between resonators
  • Check for opens — traces broken, connector not making contact
  • Verify SMA connectors are soldered properly (center pin to trace, body to ground)
  • Make sure the ground plane on the back is solid and continuous
  • Check NanoVNA calibration — did you calibrate at the cable ends?

”The response is way off frequency” (more than 30 MHz from target)

Section titled “”The response is way off frequency” (more than 30 MHz from target)”
  • Measure your actual substrate thickness with calipers — FR4 boards can be 1.5-1.7 mm
  • FR4 εᵣ varies between batches (4.2-4.8) — your board may not be 4.4
  • Trace width might be wrong — measure it! On hand-etched boards, over-etching narrows traces
  • For Rogers: double-check whether you used the stripline Dk (3.48) or the microstrip design Dk (~3.66)

“I see multiple peaks or a weird lumpy response”

Section titled ““I see multiple peaks or a weird lumpy response””
  • Resonators might be coupling in unintended ways (non-adjacent coupling)
  • Add shield walls (vertical copper or brass strips soldered between non-adjacent resonators)
  • Check for ground plane resonances — your ground plane might have a slot or gap
  • Check that resonators are truly parallel and evenly spaced

”Return loss is terrible” (S11 worse than -5 dB)

Section titled “”Return loss is terrible” (S11 worse than -5 dB)”
  • Tap point position is likely wrong — try moving taps in 1 mm increments
  • Your 50Ω line might not actually be 50Ω — measure trace width carefully
  • SMA connector launch may have impedance mismatch — ensure clean, short solder joints
  • Verify NanoVNA is calibrated with the correct reference impedance

”Performance is much worse than expected” (high insertion loss)

Section titled “”Performance is much worse than expected” (high insertion loss)”
  • On FR4: 4-5 dB insertion loss is normal. If you’re seeing 8+ dB, check for a resistive solder joint, cracked trace, or poor connector
  • Check that your substrate isn’t some other material labeled as FR4
  • Look for solder flux residue bridging gaps (clean with isopropyl alcohol)
  • Make sure you’re measuring S21 magnitude, not S21 phase

This section is about the tricks that never make it into textbooks — the improvisational techniques that RF engineers have used in labs for decades. None of this is “production quality.” All of it is useful for learning, prototyping, and getting a filter working when you’ve trimmed 1 mm too much and don’t want to start over.

The standard tuning advice says “start long, trim short.” But what happens when you overshoot? In the old days, you’d curse and start over. Today, you have options.

Products like MG Chemicals 841AR, CircuitWorks CW2200, or similar conductive pens contain silver-loaded conductive ink. They’re designed for PCB trace repair, but they work for RF tuning experiments too.

What’s actually in the pen:

Silver particles suspended in a solvent/binder system. When applied and dried, the silver particles form a conductive path. The result is a trace with significantly higher resistivity than copper, but still conductive enough to carry RF current.

Typical specs:

PropertyCopper TraceSilver Ink (single pass)Silver Ink (3+ passes, cured)
Resistivity1.7 µΩ·cm50-200 µΩ·cm10-50 µΩ·cm
Conductivity vs copper100%1-3%3-15%
AdhesionExcellentModerateGood (if cured properly)
Skin depth at 915 MHz2.2 µm~5-10 µm~3-7 µm

How to use it for resonator tuning:

Say you trimmed a resonator 2 mm too short and the frequency came out too high. Paint silver ink onto the end of the resonator to extend it:

BEFORE (trimmed too short):
▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄║ ← 86mm, resonates at 930 MHz
║ cut
║ here
AFTER (silver ink extension):
▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄░░░░░ ← 86mm copper + 3mm ink = ~89mm effective
├── copper (low loss) ──┤█ink█ resonates at ~915 MHz
(with slightly higher loss)

Application technique:

  1. Clean the copper end with isopropyl alcohol — any oxidation or flux residue prevents adhesion
  2. Apply the first layer of ink, extending beyond the copper trace end onto bare substrate
  3. Make sure the ink overlaps the existing copper by at least 1-2 mm for good electrical contact
  4. Let it dry completely (5-10 minutes at room temperature, or 2 minutes with a heat gun on low)
  5. Apply a second and third layer for lower resistance — let each layer dry fully
  6. Optional: bake at 60-80°C for 10-15 minutes to improve conductivity and adhesion
  7. Measure on the VNA. Repeat if you need to go further.

What happens to filter performance:

The silver ink extension has higher loss than the copper it replaces. The resonator now has two sections — a long low-loss copper section and a short high-loss ink section. The result:

  • Frequency shifts down (which is what you want) — the resonator is electrically longer
  • Unloaded Q drops — the lossy ink section increases the resonator’s effective loss tangent
  • Insertion loss increases — typically 0.3-1.0 dB extra, depending on how much ink vs. copper

For a small extension (1-3 mm out of 90+ mm total), the Q degradation is tolerable. You might lose an extra 0.5 dB of insertion loss. The filter works, it’s tunable, and you didn’t have to start over.

Adhesive-backed copper foil tape (the kind used for EMI shielding, guitar pickups, or stained glass work) is arguably better than silver ink for RF tuning.

Why it’s better:

  • Real copper — essentially the same conductivity as the original trace
  • Precise — you can cut it to exact dimensions with a razor blade
  • Removable — peel it off if you went too far, try again
  • Immediate — no drying or curing time
  • Cheap — a roll lasts forever

How to use it:

  1. Cut a strip of copper tape to match the trace width (3.0 mm for FR4, 0.55 mm for Rogers — use a straight edge and sharp blade for the narrow one)
  2. The strip length = the amount you want to extend the resonator
  3. Apply it to the end of the resonator, overlapping the existing copper by 2-3 mm
  4. Press firmly, especially at the overlap joint
  5. Solder the overlap if you want a guaranteed connection (recommended for final results)
▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄┊┊┊┊┊┊┊┊
├── original copper ────┤├ tape ┤
overlap zone
(solder here for best results)

The adhesive layer:

The conductive adhesive on quality copper tape adds minimal loss at 900 MHz. Cheap craft-store copper tape may have non-conductive adhesive — look for “conductive adhesive” specifically, or plan to solder the overlap.

For gap adjustment:

Copper tape can also bridge a gap to experiment with stronger coupling:

BEFORE: AFTER (tape bridge):
█ █ █████████████████
█ gap █ █ tape across █
█ 1.8mm █ █ gap █
█ █ █████████████████
(weak coupling) (strong coupling — too strong?)

Apply the tape, measure. If coupling is too strong (bandwidth too wide), peel it off and try a narrower tape bridge. This is completely reversible experimentation.

The most primitive technique, but surprisingly useful in a pinch:

  • Add a small bead of solder to the end of a resonator to extend it by 0.5-1 mm
  • Solder has higher resistivity than copper but much lower than silver ink
  • The blob shape is imprecise, so this is really only good for fine-tuning (< 1 mm extension)
  • Easy to remove with solder wick if you overshoot
TechniqueReversible?PrecisionLoss PenaltyBest For
Razor blade trimNoHighNonePrimary tuning (making shorter)
Copper tape extensionYes (peel off)Medium-HighVery lowExtending 1-5 mm
Silver ink extensionMostly (solvent)MediumModerate (0.3-1 dB)Extending 1-3 mm
Solder blobYes (wick off)LowLowFine-tuning < 1 mm
Tuning screwsFullyHighNoneFrequency adjustment ± 5 MHz
Sandpaper on gap edgesNoLowNoneNarrowing gaps (increasing BW)

Here’s a practical workflow that uses these techniques together:

Phase 1: Rough tuning (razor blade)

  1. Build the filter with resonators 5% long
  2. Measure on VNA — note center frequency (probably 20-40 MHz too low)
  3. Trim all three resonators equally, 0.5 mm per end per iteration
  4. Stop when center frequency is within 5 MHz of 915 MHz

Phase 2: Fine tuning (additive techniques)

  1. If frequency is slightly too HIGH: apply copper tape extensions (0.5-1 mm)
  2. If frequency is slightly too LOW: one more small razor trim
  3. Adjust gaps if bandwidth needs work

Phase 3: Optimization (reversible techniques)

  1. Apply copper tape to experiment with different tap positions
  2. Use tuning screws (if you have an enclosure) for final frequency centering
  3. Iterate between S11 and S21 optimization

Phase 4: Lock it down

  1. Once happy, solder all copper tape overlaps permanently
  2. Replace any silver ink extensions with copper tape + solder if possible
  3. Apply conformal coat to protect the tuned filter

Old-school RF engineers kept meticulous lab notebooks. For each tuning iteration, record:

  • What you changed (trimmed 0.5 mm from resonator 2, left end)
  • The VNA screenshot or S21/S11 values at key frequencies
  • Center frequency, 3 dB bandwidth, insertion loss at center, return loss at center

This data is gold for building your intuition. After tuning a few filters, you’ll develop a feel for how much a 0.5 mm trim shifts things, how gap changes affect bandwidth, and how tap position affects match. That intuition is what made old-school RF engineers so effective — and it’s something no simulator can give you.


Once you’ve mastered edge-coupled resonators, try these:

Hairpin filter: Fold each resonator into a U-shape. Much more compact — the filter shrinks to about 1/3 the length. Same coupling principles, just tighter layout.

Interdigital filter: Resonator fingers alternate direction, grounded at one end. Excellent stopband performance, very compact.

Combline filter: Like interdigital but all fingers point the same way, grounded at one end, open at the other. Combined with tuning screws, this is the topology used in most commercial tunable filters.

Need sharper rolloff? Add more poles:

PolesStopband Rejection @ ±50 MHzInsertion Loss (FR4)Insertion Loss (Rogers)
3~25-30 dB3-5 dB1.5-2.5 dB
5~45-50 dB5-8 dB2.5-4 dB
7~65-70 dB7-12 dB3.5-5.5 dB

The loss adds up fast on FR4. This is where Rogers really shines — a 5-pole filter on Rogers has less loss than a 3-pole on FR4.

If you want to verify your hand calculations before cutting copper:

  • Qucs — Free, open source, handles microstrip nicely
  • OpenEMS — Free, full 3D electromagnetic simulation
  • Sonnet Lite — Free limited version, excellent for planar circuits
  • KiCad + RF plugins — For layout and basic impedance calculation
  • Rogers MWI Calculator — Free online tool specifically for Rogers substrates

But where’s the fun in that? There’s something deeply satisfying about trimming copper with a razor blade and watching the frequency shift on the VNA.


┌────────────────────────────────────────────────────────────┐
│ 902-928 MHz BANDPASS FILTER │
│ FR4 — 1.6mm (63 mil) │
├────────────────────────────────────────────────────────────┤
│ εᵣ = 4.4 εeff ≈ 3.33 λ/2 ≈ 90 mm │
│ tan δ ≈ 0.02 Qu ≈ 100 │
├────────────────────────────────────────────────────────────┤
│ Trace width (50Ω): 3.0 mm │
│ Resonator length: 90 mm (start at 94 mm, trim down) │
│ Gap spacing: 1.8 mm (adjust for bandwidth) │
│ Tap offset: 6 mm from end (adjust for match) │
├────────────────────────────────────────────────────────────┤
│ EXPECTED: IL = 3-5 dB RL > 10 dB Rej > 25 dB │
├────────────────────────────────────────────────────────────┤
│ TUNING: │
│ • Freq too low → trim resonators shorter │
│ • BW too narrow → reduce gaps (scrape edges closer) │
│ • Poor S11 → adjust tap position (±1 mm) │
│ • Sensitivity: ~5 MHz per 0.5 mm trim │
├────────────────────────────────────────────────────────────┤
│ FABRICATION: Hand-etchable. Toner transfer recommended. │
└────────────────────────────────────────────────────────────┘
┌────────────────────────────────────────────────────────────┐
│ 902-928 MHz BANDPASS FILTER │
│ Rogers RO4350B — 10 mil (0.254 mm) │
├────────────────────────────────────────────────────────────┤
│ εᵣ = 3.48 (microstrip design Dk ≈ 3.66) │
│ εeff ≈ 2.73 λ/2 ≈ 99 mm │
│ tan δ ≈ 0.003 Qu ≈ 250 │
├────────────────────────────────────────────────────────────┤
│ Trace width (50Ω): 0.55 mm (22 mil) │
│ Resonator length: 99 mm (start at 104 mm, trim down) │
│ Gap spacing: 0.25 mm (10 mil) │
│ Tap offset: 4 mm from end │
├────────────────────────────────────────────────────────────┤
│ EXPECTED: IL = 1.5-2.5 dB RL > 15 dB Rej > 30 dB │
├────────────────────────────────────────────────────────────┤
│ TUNING: │
│ • Same process as FR4, finer adjustments needed │
│ • Sensitivity: ~2-3 MHz per 0.5 mm trim │
│ • First build will be closer to target than FR4 │
├────────────────────────────────────────────────────────────┤
│ FABRICATION: Professional PCB fab required for 10 mil. │
│ For hand-etch: use 60 mil RO4350B (similar dims to FR4). │
└────────────────────────────────────────────────────────────┘

Microstrip Characteristic Impedance (W/h > 1)

Section titled “Microstrip Characteristic Impedance (W/h > 1)”
377π
Z₀ = ─────────────────────────────────────────────
√εeff × [W/h + 1.393 + 0.667 × ln(W/h + 1.444)]
εᵣ + 1 εᵣ - 1 1
εeff = ────── + ────── × ─────────────────
2 2 √(1 + 12 × h/W)
λ = c / (f × √εeff)
L = λ/2 = c / (2 × f × √εeff)
IL ≈ 4.34 × (f₀/BW) × (1/Qu) × n dB
FBW
k(i,i+1) = ─────────────
√(gᵢ × gᵢ₊₁)
g₀ × g₁
Qe = ──────────
FBW

n (poles)g₁g₂g₃g₄g₅g₆
21.40290.70711.9841
31.59631.09671.59631.0000
41.67031.19262.36610.84191.9841
51.70581.22962.54081.22961.70581.0000
n (poles)g₁g₂g₃g₄g₅g₆
31.03161.14741.03161.0000
51.14681.37121.97501.37121.14681.0000

ItemQuantityApproximate Cost
FR4 copper-clad board (single side), 100×150mm1$3-5
SMA edge-mount connectors (female)2$5-10
Ferric chloride etchant1 bottle$8-12
Glossy magazine paper (for toner transfer)A few sheetsFree
Razor blades / X-Acto knife1$5
Total~$25-35
ItemQuantityApproximate Cost
RO4350B-0100-1ED/1ED panel, 12”×18”1$40-80
PCB fabrication (or CNC mill if doing it yourself)1$50-150
SMA end-launch connectors2$10-20
Razor blades / X-Acto knife1$5
Total~$100-250
ItemQuantityApproximate Cost
0.2 mm (8 mil) carbide end mills5-10 pack$15-30
V-bits, 30° or 45°, carbide2-3$10-20
Double-sided mounting tape (thin, strong)1 roll$5-10
Total add-on~$30-60
ItemQuantityApproximate Cost
Conductive silver pen (MG Chemicals 841AR or similar)1$15-25
Copper foil tape with conductive adhesive, 5mm wide1 roll$8-12
Fine solder (0.5 mm / 0.02”)1 spool$8-12
Solder wick / desoldering braid1$5-8
Isopropyl alcohol (99%)1 bottle$5-8
400-grit and 600-grit sandpaperA few sheets$3-5
Calipers (digital, 0.01mm resolution)1$15-25
Magnifying loupe (10×) or headband magnifier1$10-15
Total~$70-110
ItemApproximate CostNotes
NanoVNA (clone)$50-80Essential — this is your eyes
NanoVNA-Saver softwareFreeBetter display and data export
SMA cables (2×)$10-20Quality matters — cheap cables lie
SMA calibration kit (SOL)$15-30Short, Open, Load standards
Total~$75-130


Happy filtering! There’s something deeply satisfying about computing a filter by hand, cutting copper, and watching the response appear on a VNA. Modern EM simulators are powerful, but they’ll never replace the intuition you build by physically trimming a resonator and seeing the frequency shift in real time.

73 de the old-school RF community