GOWEBCounter by INLINE
Thomas Braunstorfinger und Martin Hisch, GbR

Home Analyzer2000 GuitarTuner Analyzer2Go Contact

FSK/FM
CW PSK31 FSK/FM PSK

FSK (frequency shift keying) is used by many stations as a simple but effective way to modulated a carrier with digital information. The modulation takes place only in the frequency parameter of the carrier. The amplitude carries no information. Thus the modulation parameters for FSK are:

Shift

The difference between the two frequencies of the carrier

Baudrate

The time of one information element (bit) specifiying one or the other carrier frequency

There are many sub modes of FSK which are more complex than normal FSK with two frequencies. To make it as simple as possible, the following paragraphs apply only to normal FSK.

Analyzer2000 is well suited for analyzing FSK signals of unknown shift and baudrate. The shift can easily be measured by using the peak hold feature. After a short period of time two peaks should appear in the spectrum display. The shift is the difference between the highest two peaks (200 Hz in the example below).

In FSK with low modulation index, the two peaks may not be visible. In this case other analyzing methodes using the FM demodulated signal must be applied (see below).

In normal FSK the modulation index is high enough to see the two modulation frequencies.

After fixing the shift problem, the baudrate is the next parameter which can be measured. To do this open the FM Analyzing Dialogbox.

Additionally select Show Mixer Frequency as the Big Display Mode. Then, set the green ruler between the two peaks of the FSK signal.

Now we have to adjust the bandpass filter applied to the signal. Look at the FM Analyzing Dialogbox and change the setting called bandwidth. As a thumbrule, the shift of the FSK signal + baudrate should fit into the bandwidth. For example: shift 800 Hz, baudrate 100 Bd -> Bandwidth = shift + baudrate = 800 Hz + 100 Hz = 900 Hz -> adjust bandwidth control to 1000 Hz

The first part of the dialogbox window shows the time domain signal after the FM demodulator. As we deal with digital signals (FSK), there should be something like a rectangular waveform. To improve the signal, a post demodulation filter can be applied to the signal. It is a special filter called median filter which is very effective to smooth signals without changing the sharp edges needed to discriminate the digital information (bits). Change the length of the median filter with the filter control box. Look at the time domain signal while adjusting the median filter length. Try to use the longest filter, which does not swallow information bits! A kind of playing around is needed here.

After adjusting the FM demodulator to the signal, we have to adjust the bit discriminator. To do this, first select FSK with the mode controlbox. The bit discriminator sets the bit decision threshold in the middle of the time domain window. Try to adjust the mixer frequency (the green ruler in the spectrum window), so that the rectangular wave is centered around the vertical mid of the time domain window (shown as gray line in the picture below).

Now every bitlength is measured to calculate the baudrate. Besides this, the bitlengths are painted with there respective bitvalue (red for 1, green for 0) into the second part of the dialogbox.

The time needed to paint one line is adjusted via the width of the dialogbox itself. The actual line length is shown in the respective editcontrol. To get a benefit of this "chaotic" picture, the line length has to be adjusted according to the frame length of the code used by the unknown transmitter to code the digital information. Frame lengths of typical codes are: 7.5 bit used in the Baudot code, 10, 11 or 12 bit used in ASCII code

As the frame length is adjusted in units of seconds, the baudrate has to be taken to get the time length. A Baudot coded signal with 100 Bauds [1 Baud = 1 Bd = 1 Bit/sec] has a frame length of:

7.5 Bit / 100 Baud = 7.5 / 100 sec = 75 ms

If the line length (in ms) is adjusted to a multiple frame length, the "chaotic" picture will get some periodic aspects. The periodic bits used to code the frame (start- and stopbits) can be seen as vertical bars.

To get some help to adjust the line length, the frame length of the signal is derived from the autocorrelation function of the FM demodulated signal. The value found by the algorithm is shown in the frame length editcontrol. If there is no periodic frame in the code, the autocorrelation function jumps between arbitrary lengths. This can also be seen in the third part of the dialogbox. The curve seen is the autocorrelation function calculated of the demodulated signal.

In the above picture, a baudot signal is show. The autocorrelation function has a peak in multiple distances of the frame length. The baudot signal has got a baudrate of 45.45 Bd resulting in a frame length of 165 ms (7.5 / 45.45).

The baudrate estimation is the last analyzing step of this introduction tutorial. At first, 100 bitlengths are collected to estimate the first value of the baudrate. After that, this first value is taken to refine the baudrate via some complex algorithm. In this state, the baudrate is only changed in very small steps, so if the signal baudrate changes dramatically (because the operator changed to another signal), the estimation process has to start from scratch. To do this, the reset button can be pushed. Some kind of automatic reset is also available, but it take some time for the automatism to check for a baudrate jump.

To evaluate the baudrate correctly, the code used by the unknown transmitter must have equally spaced bitlength (1, 2, 3, 4, 5,... bits). The baudrate of a code with fractional bits cannot be evaluated correctly. This is especially a problem, when asynchronous codes like Baudot or ASCII codes are used. There stopbit length is just limited to a certain minimum (eg. ASCII codes with 2 stopbits). The maximum stopbit length is not determinable. With Baudot coded signals, there exists a second problem coming from the 1.5 stopbits as a minimum stopbit length. If every character is send one after the other without a time gap between them, the estimation process will readout a baudrate that is a too high. Due to the fractional stopbit length, which is unknown to the baudrate estimation process, the statistical algorithm tries to find a baudrate which fits into every bit of the signal. The baudrate error can be so high, that the baudrate readout is twice the correct baudrate. Normally the error lies in between 5...10 % of the baudrate.

 

Please direct questions or comments regarding this website to  webmaster@brownbear.de 
Copyright © 2010 Brownbear Software GbR
Last Update: Aug 10