Triggering setup on NTSC video does not seem to work as I expect it?

Triggering setup on NTSC video does not seem to work as I expect it?, a forum discussion on Cleverscope Mixed Signal USB Oscilloscopes. Join us for more discussions on Triggering setup on NTSC video does not seem to work as I expect it? on our Questions forum.

Back to Forum Index : Back to Questions   RSS

9 Oct 2009

I am a pretty new Cleverscope user and was trying to follow the published example on how to do advanced trigging with a PAL video signal.
Well, in the United States we have NTSC, so I thought it would be a good learning experience to try to setup a trigger on the NTSC sync frame instead.
For the life of me, I can't get this to work as I expect it too.

As I understand the triggering example on PAL video, I should be able to setup a two level trigger in which the first trigger is going to trigger on a dropping edge of the line sync pulse, and then by using the T1~T2>max Trigger 2 option, I should be able to setup a rising edge trigger on a colorburst signal that is 577 uS later since there are no colorbursts for the 9 lines that make up the NTSC sync frame.

Well when I set this all up on Cleverscope, the scope never triggers. If I turn off the Trigger 2 setup it will trigger on every line of the video, so I know trigger 1 is setup right. I also tried to reduce the max time on trigger 2 and found strangely that if I set it to around 100 uS that it starts triggering on the 6th line of the sync frame, which makes no sense to me at all why that is working and setting max to 572 uS does not cause it to trigger on line 1 of the sync frame?

Am I doing something wrong, or did I find a bug in the software?

Here are screen captures of my signal, and my two trigger setups:

Please help, thanks

9 Oct 2009
Posts: 477

Hello Jerry,
Thanks very much for this post, and the nice pictures. You are in fact right - things have changed since we wrote the triggering document. We had to change the way the triggers work for a number of reasons. The method we initially had turned out to have difficulties that led to considerable overhead in our FPGA which we could not sustain after we added in further capabilities (moving averaged filtering, new trigger methods) later, and let to spurious triggering effects which were unwanted.

The problem is this - to be able to trigger as we initially did, and as the example shows, you have to keep a list of trigger 1 time occurrences (we kept 128), and then compare every time on the list with trigger 2 when it occurs, or when the trigger time expires (for trig1~2 > max). Then if you get a match, you trigger. However, this can lead to some very interesting spurious, and unintended effects, and so we abandoned it. Instead we just keep the time for the latest Trigger 1, and compare this with the Trigger 2 time or the timer expiry, whichever occurrs first.

Now with your example (and our original one), Trigger 1 occurrs on every sync pulse, and as your example shows, there are many sync pulses from the first sync pulse in the synch period to the color burst. As each new Trigger 1 happens, the Trigger 1 time is updated, and so we never get the 572 us timeout period.

The solution is to trigger on other features of the sync period. Several examples come to mind:
1. You could trigger on the color burst to color burst time. I measured an NTSC signal (out of a camera), and saw a period of 633us. So I used a falling trigger trigger 1 (in your case at 1.5V) with a rising trigger 2 also at 1.5V (you could just use Trigger 1 inverted). Set the period to say 500us and it works fine.
2. The sync pulses at the start of the sync period are narrower. Instead of being about 4.7us, they become 2.4us. So you could trigger on Trig1~2 being in the range 2-2.6us for example.
3. The period between sync pulses changes from 63.5us to 31.8us. So you could trigger with Trig 1~2 in the range 30-35us for example.
If you want to find a particular sync pulse you could trigger on one of the above features, and then count synch pulses. With my camera, I saw that there were 30 synch pulses to the first active video line. So using 'in T1~2 : Count T2' with min = 2, max = 2.6us, count = 30 I put the trigger at the synch pulse just before the first video line. To select the 10th video line, I set the count to 40.

We will change the triggering document.

I hope this helps.

10 Oct 2009

That explains alot and it all makes sense to me, thanks for taking the time to explain it all.
My biggest confusion was that the trigging document said one thing, and my scope was doing a different thing.
Now that you have explained was it does now, it makes sense and I can work with it.

Thanks again,
Back to Forum Index : Back to Questions   RSS
You must be logged in to post a reply

You need to Register or Log In before posting on these forums.


Your shopping cart is empty.