SSTV Demodulation.

Forum for discussion of SSTV topics. Slow Scan television (SSTV) is a picture transmission method used mainly by amateur radio operators, to transmit and receive static pictures via radio in monochrome or colour.

Moderators: Dave Moll, Andrew Davie, Steve Anderson

Re: SSTV Demodulation.

Postby Steve Anderson » Wed Jun 23, 2021 11:50 am

kd2bd wrote:...Next, DC offset the LPF output with an OP-AMP so that with the PLL VCO centered at ((1200+2300)/2) Hz, a 1200 Hz input provides a 0v DC output.

Well, your own demodulator already does exactly that, at J2 (Sheet 2 of your schematics) the signal is a DC-coupled signal. Presumably 1200Hz equates to some fixed DC level. If you wanted 1200Hz=0V then a simple dc-shift applied would be all that's needed...though possibly requiring a negative supply rail.

My modified version of the Robot 70 demodulator does exactly that, as it uses the same demodulating method. As it used split supplies I was able to get 1200Hz to equal zero volts. (Later) The terminology I was looking for was 'Travis Discriminator'.

Steph A.

In fact the output on J3 (same schematic) could be altered such that sync-tips are at zero volts rather than (presumably) black...maybe just a change in the values of R36-39? I'm assuming U5c is currently used as a sync-stripper...

John, if you want to provide a link to your article and schematics, please do so...
User avatar
Steve Anderson
"Fester! Don't do that to 'Thing'"
 
Posts: 5357
Joined: Fri Mar 30, 2007 10:54 pm
Location: Bangkok, Thailand

Re: SSTV Demodulation.

Postby kd2bd » Thu Jun 24, 2021 12:43 am

Yes, sync pulses are certainly present at the Composite SSTV Output test point (J2), and the demodulated waveform at this point could be used for tuning purposes.

However, there's a minor "catch". Knowing that my plan was to employ a separate 1200 Hz sync detector, I chose to optimize the tuning of the video discriminator in my scan converter for maximum linearity between 1500 Hz and 2300 Hz. This decision resulted in the detected sync being a little compressed when the signal is properly tuned. I'm not sure how well it would fare under mis-tuned conditions.

This is what the Composite SSTV Output at J2 looks like when driven by a white-to-black linear ramp composite SSTV signal:

sweep.jpg

This is waveform is further processed by U5C, an LMC6484 rail-to-rail I/O op-amp. The resistors surrounding U5C not only scale the demodulated SSTV video from 0 to 5 volts, but the op-amp also effectively clips the overshoot and ringing seen at the top of the waveform as well as the sync below. This permits the full dynamic range of the A/D converter in the PIC16F88 to be dedicated to SSTV video, only.

73 de John, KD2BD
User avatar
kd2bd
Mad Scientist
 
Posts: 65
Joined: Wed Sep 28, 2016 5:47 am
Location: New Jersey

Re: SSTV Demodulation.

Postby Steve Anderson » Thu Jun 24, 2021 2:01 pm

Hmm, I wonder where that ringing is coming from? Seems like something is nearing instability, and why only on the positive-going signals, not negative. Odd.

...an observation, not a criticism...

Steph A.
User avatar
Steve Anderson
"Fester! Don't do that to 'Thing'"
 
Posts: 5357
Joined: Fri Mar 30, 2007 10:54 pm
Location: Bangkok, Thailand

Re: SSTV Demodulation.

Postby kd2bd » Fri Jun 25, 2021 10:33 am

Steve Anderson wrote:Hmm, I wonder where that ringing is coming from? Seems like something is nearing instability, and why only on the positive-going signals, not negative. Odd..


I don't know, but the positive-going transition is where the maximum dV/dt is taking place. Maybe the balance between the two active filters in the discriminator is thrown off temporarily by such a large (nearly an octave) and rapid transient? :?

73 de John KD2BD
User avatar
kd2bd
Mad Scientist
 
Posts: 65
Joined: Wed Sep 28, 2016 5:47 am
Location: New Jersey

Re: SSTV Demodulation.

Postby kd2bd » Tue Jul 20, 2021 5:18 am

Here is some "Food for Thought" -- some ideas I recently developed for improved SSTV sync detection that I don't believe have been addressed in the past, and might be worthy of discussion and/or consideration.

My TriplePIC scan converter employs 1200 Hz bandpass filters, full-wave detection, and post-detection low-pass filtering that aim to achieve "matched filter" performance. Despite these efforts, some minor line-to-line jitter can still occur under certain circumstances. I recently looked into this issue to see if any design improvements could be made to further reduce the instability.

It should come as no surprise that some of the basic assumptions we have made about sync detection are less than ideal. We assume that sync, and sync alone, occupies 1200 Hz. It doesn't. There is ingress by noise, interference, and video sideband energy that extends well below 1500 Hz. These effects modulate the amplitude of the raised-cosine pulses coming from the horizontal sync low-pass filter.

The threshold assigned for the voltage comparator that follows the LPF is set to a fixed level (ideally at half the peak amplitude of the pulse) because we think that amplitude matters. It doesn't. Noise causes the pulse produced by the comparator to become pulse-width-modulated. The horizontal sweep gets slightly retarded and advanced as a result, which leads to the mis-registration problem.

Sync is the clock that drives the whole system. What we need is circuitry that is sensitive to sync timing, not amplitude.

So, instead of setting a comparator threshold somewhere on the rising or falling edge of the raised-cosine pulse where it is sensitive to pulse amplitude, how about detecting the time where the pulse reaches it's peak amplitude, regardless of what that peak voltage may be?

One of the easiest implementations might be to take the time derivative (dV/dt) of the raised-cosine pulse. dV/dt will rapidly transition through zero volts when the filtered sync pulse (plus noise) reaches its maximum amplitude, whatever that specific amplitude may be:

raised_cosine_derivative2.png
raised_cosine_derivative2.png (45.3 KiB) Viewed 9460 times

I admit that I have never seen or heard of this approach before, but tests I have conducted thus far show essentially jitter-free differentiator zero crossings under conditions where a tried-and-true comparator-sliced sync pulse shows instability.

More news to come. In the meantime, I welcome comments, and offer the following supporting evidence.

Here is a spectrogram plot of PA0KLS's Testbeeld image as an 8.5 second, 128 line, 60 Hz SSTV image. The SSTV video was generated using software of my own design, using 16 bits and a sampling rate of 44.1 kHz:

Testbeeld-spectrogram.png

Next, in order to illustrate how much video sideband energy falls across the sync frequency, I altered my SSTV generation software to move the 1200 Hz sync pulses to 1750 Hz, placing them in the nominal center of the SSTV passband. The black lines illustrate the 3 dB sync detection bandwidth used in my scan converter. It is easy to see what parts of the image where the "QRM" and the corresponding sync instability occurs:

Testbeeld-spectrogram-sync_window.png

A "real-world" image containing fewer high-frequency components. It almost looks as though there is an intentional guard-band around the sync frequency, even though there isn't:

jenni-spectrogram.png

Finally, for clarity, a simple ramp from black to white in 8.5 seconds:

vramp01-spectrogram.png

Remember, don't fault the image contents for having video sideband energy that clobbers the sync frequency. We need to be able to tolerate that just as much as noise and QRM would do the same over-the-air.

73 de John, KD2BD
Attachments
Testbeeld.wav
(735.04 KiB) Downloaded 257 times
jenni.wav
(735.04 KiB) Downloaded 250 times
vramp01.wav
(735.04 KiB) Downloaded 243 times
User avatar
kd2bd
Mad Scientist
 
Posts: 65
Joined: Wed Sep 28, 2016 5:47 am
Location: New Jersey

Re: SSTV Demodulation.

Postby Klaas Robers » Sun Jul 25, 2021 6:40 pm

John, it is good to see that my Testbeeld generates frequencies (side bands) from 800 to 3000 Hz. I expected that already. So an SSB-fiter with a bandwidth of 2,4 kHz can pass the complete SSTV spectrum. However then the carrier should be placed 800 Hz below the lower edge. I also see that the definition lines, or video frequency blocks, generate side bands of 1200 Hz in the FM spectrum. The sync detector can trip on these, however they are side bands of the 1900 Hz center frequency, so they are weaker than the 1200 Hz carrier of the sync pulse itself.

Yes, it is difficult to extract a jitter free sync pulse from the SSTV signal. I decided to add a sync flywheel on the extracted sync pulse, programmed in a PIC controller. However I have not yet made the programming for it.
User avatar
Klaas Robers
"Gomez!", "Oh Morticia."
 
Posts: 1655
Joined: Wed Jan 24, 2007 8:42 pm
Location: Valkenswaard, the Netherlands

Re: SSTV Demodulation.

Postby kd2bd » Tue Jul 27, 2021 5:27 am

Thank you, Klaas.

While examining the sync pulses coming out of my post-detector LPF, I realized that while the amplitude of the pulses were being altered slightly by video sideband energy, their position in the time domain was not affected at all. That led to my current round of experiments.

I am currently experimenting with a PIC containing a comparator with multiplexed inputs (essentially behaving like two separate comparators). The first comparator slices sync from the post-detection LPF, and detects the presence of sync in the classic, time-honored tradition. The LPF also feeds an RC differentiator. After sync has been detected by the first comparator, the second comparator detects zero-crossings from the differentiated sync pulse. The output of this comparator is now being handled as "horizontal sync" by the remainder of the scan converter circuity. After correcting for its time delay, the results look encouraging:

pa0kls-improved.png
pa0kls-improved.png (31 KiB) Viewed 9363 times

It isn't perfect, but it is showing promise.

Incidentally, I made an error in my previous posting and uploaded SSTV video of your test pattern with the 1200 Hz sync pulses shifted into the center of the SSTV passband. The attachment below contains SSTV with sync at the proper frequency. Sorry for the confusion. :oops:

73 de John, KD2BD
Attachments
Testbeeld.wav
(735.04 KiB) Downloaded 249 times
User avatar
kd2bd
Mad Scientist
 
Posts: 65
Joined: Wed Sep 28, 2016 5:47 am
Location: New Jersey

Re: SSTV Demodulation.

Postby Klaas Robers » Tue Jul 27, 2021 7:10 pm

Dear John,

yes, this looks quite good. I think I understood how it works, with a picture some posts above in mind. However I can't imagine how this works out on SSTV signals under QRM-conditions. A differentiator tends to boost the higher frequencies, so increases the influence of QRM.

My plan was/is to use a 8-pins PIC that receives the clipped sync pulses from the low pass filter, and tries to synchronise a running oscillator to that pulses. The oscillator generates the outgoing sync pulses, while a separate process measures the time difference between the two pulses. When the time difference is large, a large correction is given to the line oscillator (= free running timer); when the time difference is small it gives a small correction. This could give a fast synchronisation in case of large mis-synchronisation, and a good stability for small timing differences. It even could ignore small timing differences, so the normal occuring sync jitter can be made completely invisible. It is a kind of line flywheel.

The advantage of a micro-controller is that you can do things that are impossible in the analogue world. I could simply reset the running oscillator to the incoming sync pulse when the timing difference is large, and do nothing if the timing difference is small. I could even do the reset action only if the timing difference is large and almost equal for two successive sync pulses. In the analogue or hard wired digital world these things are almost impossible.
User avatar
Klaas Robers
"Gomez!", "Oh Morticia."
 
Posts: 1655
Joined: Wed Jan 24, 2007 8:42 pm
Location: Valkenswaard, the Netherlands

Re: SSTV Demodulation.

Postby Steve Anderson » Tue Jul 27, 2021 8:14 pm

I'm watching guys, interested in what you come up with...a concept is all I need, I'll take it from there if need be...

Steve A.
User avatar
Steve Anderson
"Fester! Don't do that to 'Thing'"
 
Posts: 5357
Joined: Fri Mar 30, 2007 10:54 pm
Location: Bangkok, Thailand

Re: SSTV Demodulation.

Postby kd2bd » Sat Jul 31, 2021 2:57 am

A few random thoughts to stir the pot...

Yes, a differentiator acts as a high-pass filter, possibly negating some of the benefits of the preceding low-pass filter. However, depending on the cutoff frequency of the differentiator, maybe the overall response is more like that of a bandpass filter. After all, to extract 15 Hz (or 16.666 Hz) sync, we really don't need a frequency response down to DC, and a differentiator easily blocks DC and other low frequency components.

And what is jitter, anyway? Low frequency noise? Perhaps a bandpass filter might do a better job of rejecting low frequency noise than a simple differentiator. A PLL or smartly triggered free-running oscillator would exhibit behavior similar to that of a bandpass filter. Maybe I'm re-inventing the wheel.

At any rate, here is what I am seeing at the present time:

waveforms.png
waveforms.png (476.21 KiB) Viewed 9300 times

The upper waveform is low-pass filtered horizontal sync, while the lower waveform is differentiated sync. Although the sync level can (and does) vary in amplitude (due to video sideband noise), the zero crossings of the differentiated waveform remain amazingly "consistent" with respect to time.

And that's what we're looking for... an accurate time reference, not necessarily a voltage reference.

73 de John, KD2BD
User avatar
kd2bd
Mad Scientist
 
Posts: 65
Joined: Wed Sep 28, 2016 5:47 am
Location: New Jersey

Re: SSTV Demodulation.

Postby Klaas Robers » Sat Jul 31, 2021 6:43 pm

John, how was your oscilloscope synchronised? On which signal? Because only if THAT signal is free of jitter, you can judge the jitter of the zerocrossing of the differentiated sync pulse. I think that you make the SSTV signal yourself, so you may have used the H-sync of the generator. In that case you have indeed a reliable reference.

But any way, the sync in my monitor is less stable, as I have used just one tuned LC-circuit on 1200 Hz, then rectification and a 3rd order Butterworth low pass filter to reconstruct the sync. Yours is better and I wish I did that too better. But now I have no access any more to the Philips ferroxcube pot cores.I attach the circuit diagram and a picture of the PCB.

Schema syncdetector.gif
(6.66 KiB) Not downloaded yet

Foto print 5.jpg
Foto print 5.jpg (113.88 KiB) Viewed 9283 times
User avatar
Klaas Robers
"Gomez!", "Oh Morticia."
 
Posts: 1655
Joined: Wed Jan 24, 2007 8:42 pm
Location: Valkenswaard, the Netherlands

Re: SSTV Demodulation.

Postby kd2bd » Sat Jul 31, 2021 11:19 pm

Klaas,

I am generating 15 Hz SSTV through software, and triggering the scope sweep using my local line voltage (60 Hz) as an independent timing reference.

Doing this, I can clearly see the demodulated sync (upper waveform) increase slightly in amplitude, and the pulse increase in width, depending on the video content. This would normally produce small timing errors in SSTV horizontal sweep in images containing a lot of high frequency video components.

While this is happening, the zero crossing of the differentiated pulse (which is determined solely by the slope of the demodulated pulse rather than its amplitude) remains incredibly steady with respect to time. The timing isn't perfect (yet) because I can still see a small amount of jitter in some images, but it is showing promise.

What I would like to try next is to feed the demodulated sync (upper waveform) through a 15 Hz active bandpass filter and examine the timing of the zero crossings of the generated waveform.

The good news about your monitor is that your sync separator is neatly contained on a single circuit board, so you could simply replace the existing board with a new circuit using modern (low-voltage, rail-to-rail) op-amps. It would be a simple matter to make the active bandpass filters tunable as well, just as you are doing now with the frequency switch.

73 de John, KD2BD
User avatar
kd2bd
Mad Scientist
 
Posts: 65
Joined: Wed Sep 28, 2016 5:47 am
Location: New Jersey

Re: SSTV Demodulation.

Postby Klaas Robers » Mon Aug 02, 2021 3:03 am

John, how is this line sync detection working on the 30 ms frame sync? A detection on half height will give as well a line sync on the beginning of the frame sync. This will not interfere with the continuous following line pulses.

However, I can see no "top of picture" missynchronisation in the testbeeld. May be that is because I made the first half line, the line that contains the V-sync black and if you use the line sync as a hard sync on the line oscillator, line 2 is again correctly synchronized.

I also observed that your low pass filter, after single side rectification, is a 2nd order (2 caps) low pass filter. I should once make the same oscillographs that you did. Should not be too difficult.
User avatar
Klaas Robers
"Gomez!", "Oh Morticia."
 
Posts: 1655
Joined: Wed Jan 24, 2007 8:42 pm
Location: Valkenswaard, the Netherlands

Re: SSTV Demodulation.

Postby kd2bd » Mon Aug 02, 2021 7:47 am

Klass,

My current test circuit completely ignores vertical sync pulses.

The test SSTV images I am currently using follow the 30 ms vertical sync pulse with 0.031666 seconds of black, followed by a 5 ms horizontal sync pulse. That is a new change for me. In the past, I immediately followed the 30 ms vertical sync with a new line of video, followed by a 5 ms pulse, and so on.

By the way, the rectification following my 1200 bandpass filter is actually a full-wave design. The rail-to-rail nature of the LMC6484 (and other similar) OP-AMPs makes rectification very easy:

rect1.png
rect1.png (108.65 KiB) Viewed 9244 times

rect2.png
rect2.png (31.24 KiB) Viewed 9244 times

The only problem is that the output impedance is very high, so a voltage follower must be used to drive a low-impedance load. In my circuit, I adjusted the resistor values slightly to improve the symmetry of the output waveform.

73 de John, KD2BD
User avatar
kd2bd
Mad Scientist
 
Posts: 65
Joined: Wed Sep 28, 2016 5:47 am
Location: New Jersey

Re: SSTV Demodulation.

Postby Steve Anderson » Mon Aug 02, 2021 6:25 pm

kd2bd wrote:The only problem is that the output impedance is very high, so a voltage follower must be used to drive a low-impedance load. In my circuit, I adjusted the resistor values slightly to improve the symmetry of the output waveform.

73 de John, KD2BD

There's two factors at play here, 1) the load which you isolated via a unity-gain stage, 2) the source impedance (not the 10k, the real source of the signal) which sees two different loads depending on the output polarity of this circuit. A schoolboys assumption of zero source impedance and infinite load impedance. With the device used you can almost forget the load presented by the op-amp inputs. A bit of hand-waving and a fag-packet sketch and you'll see it...

If you can keep the op-amp stable, have a look at the inverting input of the op-amp...or simulate it...

Steve A.

In the UK 'fag' = cigarette...
User avatar
Steve Anderson
"Fester! Don't do that to 'Thing'"
 
Posts: 5357
Joined: Fri Mar 30, 2007 10:54 pm
Location: Bangkok, Thailand

PreviousNext

Return to SSTV

Who is online

Users browsing this forum: No registered users and 3 guests