← All projects

Signal-Generation PCB

Compact PCB for delivering 50 Hz, 10 Vpp sinusoidal signal to biosensor chips in automated lab workflows, replacing bench function generator reliance.

Problem

The Yanik Lab biosensing workflow requires a consistent AC signal applied to chips during electrochemical measurement steps. The default approach — connecting a bench function generator by hand before each experiment — introduced variability: connections weren’t always in the same position, settings had to be entered manually each run, and the bench equipment couldn’t be easily integrated into the Opentrons automation pipeline.

The goal was a compact, integration-friendly PCB that could be mounted near the measurement station, produce the correct signal reliably, and be controlled or triggered programmatically as part of an automated workflow.

Requirements

  • Output: 50 Hz sinusoidal waveform
  • Amplitude: 10 Vpp
  • Output impedance: compatible with biosensor chip load
  • Form factor: small enough to mount on lab fixture
  • Interface: simple enough to trigger from automation controller
  • Power: bench supply or wall adapter (not battery-critical)

What I built

A single-board PCB designed in KiCad. The board generates a 50 Hz sine wave at 10 Vpp using an active filter / waveform-shaping approach, with output buffering to maintain signal integrity at the chip interface.

Signal generation

The 50 Hz sine wave is generated using a Wien bridge oscillator topology, which produces a stable sinusoidal output without requiring a lookup table or microcontroller. Amplitude is stabilized using a thermistor-based feedback loop that prevents the oscillation from saturating or collapsing — the standard Wien bridge technique.

Amplification and output

The oscillator output is amplified to the required 10 Vpp swing using an op-amp stage with gain set by precision resistors. The output stage is buffered to drive the chip load without loading the oscillator.

PCB layout

Layout was done in KiCad. Key layout decisions:

  • Ground plane on back copper pour to reduce noise pickup
  • Oscillator components placed tightly to minimize parasitic capacitance affecting frequency stability
  • Output connector placed at board edge for easy cable routing to chip fixture
  • Through-hole components used for components that needed adjustment during bring-up; SMD elsewhere for compactness

Integration

The board is powered by a ±15 V bench supply (standard lab equipment). An enable pin allows the automation controller (Opentrons or external microcontroller) to gate signal delivery without cutting board power, which avoids the startup transient that occurs when powering up the oscillator cold.

Bring-up and validation

After assembly:

  1. Verified DC operating points at each stage before applying signal
  2. Measured oscillator frequency with oscilloscope — confirmed 50.2 Hz (within tolerance)
  3. Measured output amplitude — confirmed 10.1 Vpp at expected load
  4. Ran continuous operation test (8+ hours) to check thermal stability
  5. Measured output into chip fixture cable to verify no significant impedance mismatch

What I would do differently

The Wien bridge thermistor stabilization works but has a slow amplitude settling time after startup (~3–5 seconds). For a future version, a more aggressive AGC (automatic gain control) approach using a multiplier IC would produce faster startup and tighter amplitude regulation.

The enable pin is functional but not fully isolated — a proper hardware enable with relay or analog switch isolation would be cleaner for a production instrument.

The BOM cost is low; this could be assembled as multiple units for parallel experimental stations without significant expense.

Files