Hi everyone, I spent the afternoon getting down to the nitty gritty. I love my job!
Essentially, it comes down to an ideology that we hold here at Keysight scopes. That is: “Don’t compromise the waveform update rate!”
Keysight auto trigger mode works like this:
0. Assume a stable trigger was found
1. Wait for another valid trigger event
a.wait time = maximum of (4 * total time on screen) or 50 µs
i.note: on the 2000 and 3000A scopes, the wait time = maximum of (1/2 * total time on screen) or 50 µs. This is what we changed in firmware.
b. If a valid trigger event is found before (a) has passed, repeat (1)
c. If no event found, go to (2)
2. Enter “autotrigger” (or free-run) mode: acquire and display signals as fast as possible
a. The “as fast as possible” will be the fastest update rate available at that time/div setting
3. While doing (2), check trigger circuitry every 250ms to see if there was a valid trigger event in the past 250 ms
a. If there was a valid event, go to (1)
b. If there wasn’t a valid event, go to (2)
So here’s what is happening. For the 1 Hz cardiac pulse, because the pulses are so far apart and only happening once, the scope essentially stays in auto trigger mode (2). E.g. if there was a pulse in the previous 250ms period then it will wait for another pulse, but will time out before the required 750ms has elapsed unless the time/div setting is high enough (see 1). For example, put the cardiac pulse on and set the time/div to 25ms. Because the screen is then showing 250 ms of time, the wait period will be 4*250 ms = 1s and you will see the regular trigger.
What Tek and some other vendors do is build in a wait time after every single capture. I think Tek has an initial wait time of 4*time on screen, the switches to 2*time on screen after each subsequent trigger event. We spend the majority of the free-run time (2) acquiring and plotting instead of waiting.
The 3000T, 4000 X-Series, and 6000 X-Series scopes all follow the 1a guidelines, while the older 2000 X-Series and 3000A scopes keep the 1ai scheme. Ultimately, I don’t see this as a bug. I’m not just saying that because I work for Keysight, but as I’ve looked at this closer it seems to be more of a difference in ideologies about how auto trigger mode should work and how auto trigger mode is implemented, especially in the free-run portion of the state machine.
Another thought I had here is that our built-in DVM could run on the side and let you know immediately if the pulse stops because the frequency will change. Our DVM will work on the same channel you are probing, too, so no extra probing is necessary.
I hope this makes sense, I’d be happy to discuss further or clarify if I wasn’t clear enough.