So I am making a testing stand for some equipment and I am using an old TDS3034C Tektronix scope for most of my measuring purposes. I've connected it to the computer via Ethernet and using PyVisa to connect to it and acquire all the data I need automatically. However, I've ran into a problem.

Say, I need to calibrate one of the electronic subsystems. So, I connect a signal generator with variable amplitude both to the system's input and to the oscilloscope to trigger it and the system's output to a separate oscilloscope channel. Then I set the TDS3034C into average measuring mode (since it transfers the measured data to the computer very slowly) and start the test.

If the signal generator's period is smaller than about 50ms, then oscilloscope seems to lose events. I make 100 impulses on the signal generator, while the scope registers anywhere from 20 to 99 triggered events depending on the generator period (from 1ms to 50ms, that's from 1000Hz to 200Hz), and only occasionally all 100.

What could be the problem here and how do I combat it? How do I set the optimal generator frequency/period? What is the tds3034C max trigger rate? I couldn't find it anywhere in the oscilloscope manual. Both it's analog bandwidth and ADC frequency should be more than enough (I do understand that these characteristics have nothing to do with the oscilloscope max trigger rate, but still)

The problem seems to occur regardless of the TDS3034C connection to the computer.

Edit: During the trigger I acquire 500 points, that's the "fast" mode. The horizontal scaling is 10ns, trigger is placed at 50% on the horizontal scale (50% pre-trigger). The whole horizontal scale is 10 divisions * 10 ns / division = 100ns. So, nor the trigger delay, nor the number of points acquired make an impact. If I change the horizontal scaling to 100ns/div, the situation is obviously worsen, but not drastically.

  • \$\begingroup\$ What is the number of points your acquiring during a trigger? How many times do you trigger a second? \$\endgroup\$
    – Voltage Spike
    Oct 7, 2019 at 17:14
  • \$\begingroup\$ @VoltageSpike 500 points, the expected trigger rate corresponds to the signal generator frequency. I don't know the exact actual trigger rate, but it seems to be up to 5 times lower because of the "missed" events. \$\endgroup\$
    – sx107
    Oct 7, 2019 at 20:14
  • \$\begingroup\$ the signal generator frequency needs to be in the post \$\endgroup\$
    – Voltage Spike
    Oct 7, 2019 at 20:17
  • \$\begingroup\$ @VoltageSpike the signal generator period is and was there, however, I've added the frequency as well. \$\endgroup\$
    – sx107
    Oct 7, 2019 at 20:21
  • \$\begingroup\$ What are you triggering on (e.g. sync pulse from the signal generator, or triggering on the signal itself)? Where is the trigger point in the record (e.g. 50% pre-trigger)? What happens when you turn on infinite persistence - do you observe any signals that didn't trigger right? \$\endgroup\$
    – W5VO
    Oct 7, 2019 at 21:18

2 Answers 2


The problem is the scope has 10kpts which means every time it is triggered, it must take 10kpts and then the software must transfer those points out of the scope.

The max trigger time is related to how many points your acquiring, my suggestion would be to use a fast acquisition mode if you have one on your scope (1000 pts).

Another problem is if I'm not mistaken, pyvisa is polling to get the information back from the scope, if the information gets overwritten before the computer can get the trigger, then you won't see it. Part of the problem is PC's aren't meant to do real time operations and do things in the ms range.

I did make measurements with a slightly better scope and matlab visa for making measurements of USB packets, I was getting roughly 5 second with a fast acquisition mode. I couldn't see all the packets, but I had enough information to find what I needed to find.

  • \$\begingroup\$ Edited the question to show that this does not seem to be the problem here. \$\endgroup\$
    – sx107
    Oct 7, 2019 at 20:07
  • \$\begingroup\$ @sx107 which part of the problem, there are two problems which I describe in my post. On you can do something about, the other you have little control over. The PC controls how many acquisitions you get and is the slowest link in the chain. When I tried this, it was the OS that limited me. \$\endgroup\$
    – Voltage Spike
    Oct 7, 2019 at 20:15
  • \$\begingroup\$ Also How many triggers do you expect in a second? \$\endgroup\$
    – Voltage Spike
    Oct 7, 2019 at 20:16
  • \$\begingroup\$ Well yeah, but I dont't connect with the oscilloscope at all (except for reading the number of acquired events) during the averaging acquisition (512 events) and grab the averaged data AFTER the acquisition. The time it takes for the scope to acquire 512 events to average them is way too long because of these missed events and does not change if I disconnect the scope from the computer. \$\endgroup\$
    – sx107
    Oct 7, 2019 at 20:20

The fine print in the manual says...

Do not use the Average acquisition mode if the source signal contains frequencies of interest that are not synchronized with the trigger rate.

p94 https://download.tek.com/manual/TDS3000C-Oscilloscope-User-Manual_071230807.pdf

  • \$\begingroup\$ That's just obvious, they will be averaged out and this is not what the question is about. \$\endgroup\$
    – sx107
    Oct 7, 2019 at 20:02
  • \$\begingroup\$ It seems that the logic for edge trigger detection for triggering capture has a truncated window and scatters the results of events captured. Perhaps scrolling mode engaged depends on trace resolution for 20 to 1kHz events \$\endgroup\$ Oct 7, 2019 at 22:08
  • \$\begingroup\$ Sorry, then I suspect Nyquist criterian is not met somehow and aliased random samples show up with the avg function. So a higher sampling rate is necessary to achieve the averaged results. \$\endgroup\$ Oct 16, 2019 at 23:14

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.