WSJT-X MSK144 Demodulator – Scicos Simulation


In a previous post (Ref.1), I simulated an MSK144 modulator with Scicos. In this post, I will simulate the demodulator. Recalling the design parameters:

-SSB Transceiver_USB interface (300,2700)Hz = 2400Hz
-Baud Rate = 2000bdps, Tbaud = 0.500msec
-MSK = Minimum Shift Keying, Frequency Shift = 0.5*BdRate = 1000Hz
-Centre Freq = 1500Hz, Lower Freq = 1000Hz, Upper Freq = 2000Hz
-Shift = +/- 500Hz
-s(t)=I(t)cos(wct) – Q(t)sin(wct) I(t) & Q(t) half_sine pulses 1msec
-“1” = pos(+) half_sine pulse “0” = neg(-) half_sine pulse
-I channel = odd bits, Q channel = even bits
-Frame Time = 144bit/2000bdps = 72msec


Fig.1 MSK144 Demodulator Scicos Simulation

Fig.1 shows the demodulator block diagram. The modulator is enclosed in a superblock for simplification. A 144 bit data frame is read into the modulator from the console as before, and Fig.2 shows the modulator waveforms on the left. The top trace shows the I_1msec half-sine pulses and the second trace shows the Q_1msed half-sine pulses shifted by 0.5msec from each other. The demodulator multiplies the receive waveform with cos(wct) on the I branch and -sin(wct) on the Q branch. The LPF Low Pass Filters remove the sum components. Delay of 0.5msec is added in the Q branch to bring the I & Q data back in alignment.

Fig.2 Modulator Encoding & Demodulator Decoding
Fig.3 Integrate & Sample
Fig.4 Integrate & Sample Superlbock

Figure 2 shows the demodulator waveforms on the right hand side. The half sine pulses are integrated and sampled to recover the original pulses as shown in Figure 3. Figure 4 shows the integrator/sampler superblock.

Fig.5 YouTube Video MSK144 Scicos Demodulator
YouTube Channel
YouTube Channel


#1. “WSJT-X MSK144 Modulator – Scicos Simulation”

#2. “The MSK144 Protocol for Meteor-Scatter Communication”, Joseph Taylor K1JT & Steven Franke K9AN, ARRL QEX Magazine Sept/Oct 2017

#3. “Learn Telecommunications by Simulation” EBook

#4. “HF High Frequency Radio Telecommunications Learn by Simulation” EBook