Am I doing something wrong?? Not sure its a bug but I can't figure it out so putting it in this thread.
SDS2104X+ with V1.5.2R2 firmware (this same behavior existed on V1.3.? firmware I had prior)
Probing a serial bus that sends periodic packets, it seemed obvious that the scope was not triggering on every packet. This problem can be reproduced, for example, by setting up the AWG for a 10ms pulse every 1s. Timebase set to 10ms/div. Trigger normal mode, on rising edge, 8ns holdoff, holdoff start on acquisition start.
When I do this I can see Trig'd LED blinks only once every 2 seconds, or every other pulse. If I set holdoff start on last trigger, It does indeed trigger every second/on every pulse. Am I missing something?
I read the manual and can't really make sense of the difference between holdoff start on acquisition start vs. last trigger, but I wouldn't expect this behavior regardless.
There is very significant difference between these two.
User Manual:
Acq Start--
The initial position of holdoff is the first time point satisfying the trigger condition.
Last Trig Time--
The initial position of holdoff is the time of the last trigger.
This last one is this conventional, usual traditional, but also "normal" trigger Hold off. Easy to use and easy to understand. This was also very important in old analog oscilloscopes. (but still very useful and important in modern oscilloscopes) And implemented in all normal oscilloscopes. Least I do not know any one what do not have this.
Modern digital scope need less this if or when user have enough knowledge and skills how to use modern oscilloscope several different trigger modes with all these parameters. One good (and extremely simple) example is AM modulation where some peoples still use trigger Holdoff for stabilize it for modulating frequency. Today there is lot of better solutions what lead lot of better result including also normal case when modulating frequency is variable. Old foxes just need to learn new ways.
But back to this special Holdoff mode: "Acq Start"
It works well in many circumstances, but then your example is one where it doesn't work well - or least can be confusing. First I think there is one small bug that can be seen using your example but it is not so simple.... When I test it with burst signals (many edges in one acquisition) it seems to work ok. But if your example has one pulse per acquisition memory length, it "looks like" won't work correctly. At least it is easy to think it's wrong, but....
In your example, the first time point that meets the trigger condition is the rising edge of a single pulse. But due to the hold time, this edge trigger condition met condition is now ignored. And then 8ns (in your example) passed. And then the NEXT rising edge happens after one second. Now it will trigger because the hold time has expired. Now this trigger sequence is also complete and reset for the next trigger hold. The next pulse start hold timer and trigger will not occur until it has expired. It follows that only every other pulse can time the trigger cycle. (and every other trigger condition is met, covered by a delete timer).
But is it right or wrong. If, in our opinion, it is incorrect, such trigger delay process shall be reset after this current acquisition end without the next trigger condition being met during this acquisition period.
What will happen if it do this. Well, in your example case, it never trig. Because only one trigger condition met exist in this acquisition for the entire length and this first one is covered due to the Holdoff timer). If this happen then user may be even more confused.
A bit hard to explain without principle illustrations due to my poor English.
Should the oscilloscope display a warning text that there is only one triggering condition in the signal with the length of one sample memory. That the next condition did not occur until the next frame. Grin.
If think carefully and understand how it work, this what happen is just logical but may be confusing in some cases.
Perhaps it need explain much better in the User Manual or make better UI with good on screen illustrations how it works (We do not have full "User
Reference manual" where is every detail deeply and exactly explained).