phoq · src/phoq/instruments.py · SpectrumAnalyzer

ESA Sweep, Line by Line

How phoq's RF spectrum analyzer turns a detector's voltage into the trace on its screen. The walk follows one sweep through record(), acquire(), _signal() and _detect() in the order they run. Every curve on the screen is the array that line produced on the bench below: the lines were replayed with the same random seed and checked against acquire() itself, to 10⁻¹³ dB.

laser 3 dBm, RIN −135 dBc/Hz, 0.2 % intensity sine at 500 kHz → VOA 16 dB → 50:50 → PDB450C INPUT+ (100 kV/A, 4 MHz) → ESA-1
ESA-1: Start 0, Stop 2 MHz, RBW 10 kHz, Avg 10, 201 display points, detector average, trace average, Ref −80 dBm, attenuation auto, DANL −150 dBm/Hz
ESA-1 · BPD-1 RF OUTPUTRUN
1 / 1
record() acquire() _signal() _detect()