HOW-TO GUIDE
How to Use Oscilloscope Persistence to Find Intermittent Glitches
By the OhmSavvy Research Team ·

Hunting glitches safely
- Long glitch hunts mean leaving probes attached for a long time. Clip the ground lead only to circuit ground and secure the probe so it cannot slip and short neighboring pins.
- Glitches on mains-powered equipment are often caused by switching on the primary side. Do not probe there with a ground-referenced scope; use an isolation transformer on the device or a rated differential probe.
What oscilloscope persistence is
Normally a digital scope draws a sweep, wipes it and draws the next. A one-in-ten-thousand glitch is on screen for a single refresh, far too briefly to notice. Persistence changes the rule: old sweeps are kept and new ones are drawn on top, so anything that ever happened at a point on the screen leaves a mark there.
Off
Each sweep replaces the last. Best for normal measurements.
Variable
Sweeps fade after a time you set. Shows jitter and recent drift.
Infinite
Nothing fades until you clear it. The tool for rare events.
Color grading
Color shows how often a pixel was hit: cool for rare, hot for frequent.
Intensity grading
Same idea using brightness: rare events are dim, common ones bright.
Clear
Wipes the stored sweeps. Press it once your setup is final.
Color grading and intensity: reading the heat map
With grading on, the display becomes a histogram drawn on the graticule. The path the signal takes on almost every cycle turns the hottest color or brightest shade. Edges that wander slightly in time widen into a band. A glitch that happened once sits outside that band in the coolest color, which is exactly what makes it easy to spot against a busy trace.
1Trigger on the signal's normal edge
Start with a plain, stable picture. Use an edge trigger on the signal you suspect, the slope that matches its regular transitions, and the level near mid-swing. Set V/div so the signal fills most of the screen and time/div so a few cycles are visible. Without persistence it should look clean; that is the point, since the fault is rare. Normal trigger mode is better than Auto here, because Auto's untriggered sweeps would paint random traces into the persistence buffer.
2Turn on infinite persistence
Persistence normally lives in the Display menu. Set it to Infinite, turn on color or intensity grading if your scope offers it, then press Clear so you start from an empty buffer. From here on, avoid touching V/div, time/div or the trigger: on most scopes any of those clears the stored sweeps and you start again.
3Leave it running through the fault conditions
Now wait, and make the circuit work. If the fault appears when a relay clicks, a motor starts or the board warms up, put it through those conditions while the scope collects. No scope captures continuously: between sweeps there is dead time while it processes and draws, so every model misses some events. That is why rare glitches need a long run.
Zoom in on where faults happen
4Read the outliers
When you come back, look for anything outside the main band. Its shape usually points to a cause:
| What persistence shows | Likely name | Common causes |
|---|---|---|
| Faint pulse that starts but never reaches the full level | Runt | Bus contention, marginal drive, a slow supply rail |
| Thin extra spike between normal edges | Glitch | Crosstalk, ground bounce, a logic race |
| Edges smeared into a wide band | Jitter | Noisy clock source, power supply noise, unstable PLL |
| Overshoot and ringing after some edges only | Ringing | Long traces or wires, poor termination, load changes |
5Isolate it with a glitch or runt trigger and single capture
Persistence tells you that something odd happens and roughly what it looks like. To measure it, you need it alone on screen. Turn persistence off and choose a trigger that fires only on the fault:
- Glitch or pulse-width trigger: fire on pulses narrower than the shortest legitimate pulse. Set the limit a little below the normal width.
- Runt trigger: set two levels and fire on a pulse that crosses the first but never reaches the second.
Put the scope in Single, arm it and wait. When it fires, the frozen capture contains the fault at the trigger point, ready for cursors. Names and options differ between models, and our guide to triggering an oscilloscope covers the basics of Normal and Single mode that this relies on.
01
Edge trigger
Stable view, Normal mode
02
Infinite persistence
Clear, then hands off
03
Run the fault
Minutes to hours
04
Spot the outlier
Runt, glitch, jitter
05
Glitch / runt trigger
Single capture, measure
Combine it with segmented memory
Some scopes can split their acquisition memory into many short segments and store one triggered capture in each, with a timestamp. Pair that with the glitch trigger and the scope collects dozens or hundreds of occurrences instead of just one. Step through them to compare shapes, and read the timestamps: a regular interval often points at a timer, a switching regulator or a periodic firmware task. Not every scope has segmented memory, and segment counts depend on the model and memory settings, so check the datasheet.
What persistence cannot tell you
- When the glitch happened, or how often in absolute terms. Grading shows relative frequency only.
- Accurate measurements of the glitch itself. Measure the single capture instead.
- Whether the fuzz is real. A thick band can be probe pickup from a long ground lead; see why an oscilloscope waveform looks noisy before blaming the circuit.
- Events faster than the scope can resolve. A glitch shorter than the scope's rise time is smoothed and shrunk; see what oscilloscope bandwidth means.
Which oscilloscope you need for glitch hunting
Glitches are short by nature, so bandwidth and sample rate matter more here than for steady signals, and channel count helps when you want to watch the glitch alongside the event that causes it. Check a model's manual for persistence modes, trigger types and segmented memory before you buy; the best beginner oscilloscopes roundup compares the scopes we cover.
Four-channel scopes in our reviews

50MHz, 4 channels, 1 GSa/s, strong community support and documentation.

100MHz, 4 channels, 1 GSa/s, for projects that will get more demanding.
As an Amazon Associate I earn from qualifying purchases. Prices and availability are shown on Amazon.
Frequently asked questions
What is the difference between variable and infinite persistence?
Variable persistence keeps each sweep on screen for a set time, such as one second, then lets it fade, so the display shows recent behavior. Infinite persistence never fades: every sweep since you last cleared the display stays visible. Use variable persistence to watch jitter or drift in real time, and infinite persistence to hunt for a rare event over a long run.
How long should I leave persistence running to find a glitch?
As long as it takes the fault to happen several times. If the glitch shows up once a minute, a few minutes may do; if it is tied to a motor starting or a temperature change, run it through those conditions. A scope only captures part of the time between sweeps, so a very rare, very short event may need a long run.
Why does my persistence display clear by itself?
Most scopes erase the persistence buffer whenever you change a setting that alters the picture, such as V/div, time/div, trigger level or position. Some also clear it when you stop and restart acquisition. Set everything up first, then clear the display once and leave the controls alone while it collects.
Is persistence the same as a digital phosphor display?
They aim at the same thing. Digital phosphor is a marketing term some manufacturers use for a display that stacks many captures and shows how often each pixel was hit, mimicking the glow of an analogue tube. Persistence with color grading or intensity grading on other digital scopes works on the same principle, though update rates differ between models.
Can persistence find a glitch on a slow timebase?
Only if the glitch is wide enough to be sampled. At slow time/div settings the scope's sample rate drops, and a glitch narrower than the gap between samples can vanish entirely or appear at the wrong height. Keep the timebase as fast as the view allows, or use a glitch trigger, which works from the trigger circuit rather than the stored samples.

