I have a MDO3034 oscilloscope which I need to use to measure a waveform for ten seconds.

This waveform is a PWM whose duty cycle varies every 0.2ms or so, and restarts itself every ten seconds.

I need to measure the duty cycle at those intervals for the whole duration of the waveform (10 seconds), to verify that it does change.

I am not sure I can accomplish this with this oscilloscope, I was hoping to record it to internal memory and then inspect it with the waveform analyzer, or maybe record the waveform to PC via the usb connection somehow.

Pointers are appreciated, in the end I just need to record 10 seconds of waveform somehow to later analyse it. I am still a beginner in this regard as you might have noticed.

  • \$\begingroup\$ try feeding the signal into the microphone input of your PC and use Audacity to record the signal \$\endgroup\$
    – jsotola
    Commented Jun 6, 2021 at 1:16
  • \$\begingroup\$ What is the PWM frequency? \$\endgroup\$ Commented Jun 6, 2021 at 7:27
  • \$\begingroup\$ Wish I could afford $18,000 to have a scope like that! \$\endgroup\$ Commented Jun 6, 2021 at 7:31
  • \$\begingroup\$ Isn’t there a better signal to monitor? \$\endgroup\$ Commented Jun 6, 2021 at 7:35
  • \$\begingroup\$ It is a 0-12 Volts signal, with 220 Hz. No other signal to monitor unfortunately. \$\endgroup\$
    – Wapers
    Commented Jun 6, 2021 at 8:25

1 Answer 1


I don't know how the "record" function of this scope works, but here's how I'd do it with mine:

Set it to record one PWM period per buffer, with a repetition rate that will fill all the scope's memory in 10 seconds. So for example if it has memory for 1 million samples, record 1000 samples per buffer, with a 10ms delay between each. Then view the recorded waveforms and check the duty cycle.

You could also program the micro that generates the PWM to output a trigger pulse every 10 seconds when it begins its cycle, then use the delayed timebase on the scope to observe the signal with a time offset between 0 and 10 seconds.

The idea is to display a few PWM periods on the screen so it's readable and the "measure duty cycle" function can do its job.

But honestly, it would be simpler to use a lowpass filter to average the PWM duty cycle into a voltage, then just measure that with the scope.

  • \$\begingroup\$ Thanks for the pointers, I will look into this. I think I might be able to reduce the timebase to a value like 50s/div and work like that too, as I have seem some other oscilloscopes that have this. I need to double check if the oscilloscope supports that tomorrow. \$\endgroup\$
    – Wapers
    Commented Jun 6, 2021 at 8:29
  • 1
    \$\begingroup\$ Yeah but if you look at the PWM signal at 50s/div all you will see on screen will be a solid block (or worse, aliasing) and you'll have no idea what the duty cycle is. Unless you use an analog filter to turn the duty cycle into a voltage. \$\endgroup\$
    – bobflux
    Commented Jun 6, 2021 at 15:36
  • \$\begingroup\$ I got it working with NI Multisim, which has a Tektronix Oscilloscope simulator, I set the timebase to 2s/div, I set a trigger at single shot at a falling edge, I wait for it to trigger and till the oscilloscope screen is filled with data, at that point the acquisition is complete, and I can "zoom in" by changing the timebase to e.g. 10ms/div and the position knob. I will try tomorrow with the real oscilloscope, but I got this working in the Simulator so I have a certain degree of confidence it might work, The PWM frequency is 220 Hz. \$\endgroup\$
    – Wapers
    Commented Jun 6, 2021 at 19:45
  • \$\begingroup\$ That's nice, I hope it works with the real scope! Mine takes forever to transfer this kind of huge acquisition buffer to the PC, so I'd use the above tricks, but then it's an older Rigol scope. \$\endgroup\$
    – bobflux
    Commented Jun 6, 2021 at 20:46

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.