How to Create Bode Plots on an Oscilloscope

Blog Post created by mike1305 Employee on Sep 1, 2016

I discovered a great video the other day by Dave Jones of EEVBlog, in which he “tricks” our oscilloscope into creating a bode plot on screen. So today I’ll share a version of the experiment I ran and some additional improvements to bode plots on oscilloscopes that Keysight has made since 2012.

First, connect a waveform generator to the input of your device under test, and connect the output to the oscilloscope. In this simple example I breadboarded a low-pass RC circuit, so the waveform generator supplies voltage across the RC, channel one is measuring the voltage across RC, and channel two is the output across C. I default-setup the scope and offset the channels so you can see each (yellow and green).

Next, I turned on the first waveform generator to configure the input signal. I want a 200 kHz sine wave with 5 volts peak to peak. These two shots are from the first level WaveGen1 menu.


Then I pressed Settings > Modulation to enter the modulation configuration. To do a bode plot, we need an input signal that sweeps the desired frequency range. I select “ramp” as the modulation waveform, and change symmetry to 100% (making the ramp into a sawtooth waveform, in essence) which will cause frequency to sweep from 0 Hz (200 k-200 k) to 400 kHz (200 k+200 k) in a linear fashion. Then I tapped the modulation key on the left to turn it on.

Whoa, that’s trippy dude.

The FM frequency is set to 1 Hz so that this sawtooth frequency modulation occurs once per second (one sweep per second).

This can be observed when you kick the horizontal timebase to 100 ms/div, or one second across the screen.

The distinctive line in the input (yellow) is where the modulation starts the sweep over. The green waveform is the output of the filter, which is clearly attenuating as the frequency passes its 3 dB point.

Now let’s make it look like a bode plot! At this point the triggering is still setup to rising edges of channel one, which there are millions of on screen, so the trigger is anything but stable at this point. Let’s make a unique trigger, taking advantage of the output’s visible waveform characteristic. Open the trigger menu and turn it to channel 2. Also adjust the trigger level to be towards the crest of the green signal, like so (note the green arrow and T on the left of the screen).

Then, pop into the trigger mode menu, change it to “normal” (it only triggers once a second, causing the oscilloscope to trigger automatically when in auto mode, messing up our display). Also add a holdoff of 200-500 ms so that it waits for the next period before finding another edge.

Now all you have to do is scale the channel 2 waveform as such to make it appear bode-like. Of course this is a linear bode plot, not logarithmic, which is an unfortunate limitation of the waveform generator’s FM modulation schemes. If there were a logarithmic output, the output would be much more familiar. This is another reason Dave Jones used an external generator in his video.

Finally, check the references below for a link to Dave Jones’ video, as well as a white paper on a new application for Keysight InfiniiVision oscilloscopes that can create frequency response plots with the scope and some external hardware. Thanks!


Make Power Supply Control Loop Response (Bode Plot) Measurements Using a Keysight Oscilloscope