This is the WSJT Home Page by K1JT

You are at ../tutorial.htm

Last update January 17. 2006

Go back to main page

Current full version: WSJT 5.9.2

Tutorial for WSJT 5.9+ | To use it effectively you must download and install a package of sample WSJT wave files. (22 MB).


If you are new to WSJT or would like to become more adept in its use, the following step-by-step tutorial might help.  To use it you must first obtain the collection of sample wave files available  (Linux version here).
These files are on-the-air recordings of meteor pings in FSK441 mode, pings and ionospheric scatter signals in JT6M mode, and EME signals in the JT65 modes.  The package of sample files is about 22 MB in size. The tutorial's main emphasis is on the decoding of signals received by WSJT.  For other aspects of the program's use, refer to the User's Guide.

Basic instructions for the tutorial follow. 

0. Important pre-requisite: please read and keep at hand the most
   up-to-date WSJT User's Guide and related documentation.  WSJT is a
   complicated program, and you will gain skill with it more quickly
   if you make good use of the manuals.  (Even though documentation
   for the latest WSJT version is not yet available, most material in
   the older manuals still applies.)

1. If you have already installed and used a version of WSJT6, delete
   your WSJT.INI file or rename it to something else, temporarily.
   This will ensure that you start the tutorial with everything in the
   default configuration.

2. To install WSJT6 (version 5.9.0) in Windows, execute the file
   WSJT590.EXE.  The default installation directory is C:\Program
   Files\WSJT6.  (Linux installation instructions still to be
   written...  In the meantime, you must compile it yourself.)

3. Install the sample files to your WSJT6 directory by executing the
   file WSJT6_Samples.EXE (Windows) or by extracting the tarfile
   WSJT6_Samples.tgz (Linux).

4. Double-click on the WSJT6 desktop icon to start the program in
   Windows.  (Position the main WSJT6 window conveniently on your
   screen.  You may ignore or minimize the other two windows for now.)
   In Linux, start the program by typing "wsjt6" or "python -O".

   From here onward, instructions for Windows and Linux are the same.

5. By default WSJT starts in FSK441 mode (yellow label at bottom left
   of status bar).  Select menu item File -> Open and navigate to
   subdirectory RxWav\Samples\FSK441 under your WSJT6 installation
   directory.  Double-click on the first file in this directory,
   K5CZD_050723_134100.WAV.  The file will be opened and a
   2-dimensional spectrogram displayed in the main graphical area.
   Click the Decode button to decode the file, producing the following
   text in the main text box:

   134100 27.4  220  6 26  -21     O1JT 26 K5CZD 2626 K1JT 27 K5CZ #6

   According to the line of decoded text, this file contains a meteor
   "ping" at t=27.4 s, lasting 220 ms, with (S+N)/N = 6 dB.  You can
   see that K5CZD is sending K1JT the signal report "26".  In FSK441
   and JT6M modes it is not uncommon to see incorrect characters near
   the ends of decoded sequences, where the signal became weak.  Refer
   to the WSJT User's Guide for additional details on message
   structure and information reported by the decoders.

6. Hit the F6 key (or select File -> Open next in directory) to open
   and decode successive files in the FSK441 directory.  These files
   contain recordings of K8EB calling KB4BWW, KC0HLN calling CQ and
   then working K1JT, KM5ES working K1JT, KM5PO calling K1JT as a
   "tailender", and finally N9EGT calling CQ.  With any of these files
   you should try left- and right-clicking on the pings to cause the
   program to decode at a particular location in the file.  You can
   also try clicking on pure noise, away from any ping; you should
   then see only garbage as decoded text.  You may click Erase and
   Decode at any time to clear the display areas and decode the most
   recently analyzed file again.

7. Open the first KC0HLN file again.  It produces the message

   001400  6.5  400 15 27  -21     2 CQ KC0HLN EN32 CQ KC0HLN E/31 GQ#GBYLE

   Double-click on the callsign KC0HLN in the text window, and watch
   what happens in the Tx message boxes.  The program is now ready for
   K1JT to answer this CQ.

8. Exit and restart the program, and then hit Shift-F7 to switch to
   JT6M mode.  Select File -> Open, navigate to inside the subfolder
   RxWav\Samples\JT6M under your WSJT6 installation directory, and
   double-click on the AA9MY file.  You should see a message in which
   AA9MY is finishing a QSO by sending "73 DE AA9MY":

   142300 15.1  1.2  -2  -15      9MY 73 DE AA9MF2

   The AA9MY signal is rather weaker than those in the FSK441
   examples.  Try listening to any of the files using Windows Sound
   Recorder, to get a feeling for what they sound like.

9. Hit F6 to open and decode successive files in the JT6M directory.
   You should see AC5TM working K1SIX, AF4O working K1JT, and WA5UFH
   working K0AWU.  In several files the signals are frequently
   inaudible or barely audible, yet decodable.  The second AF4O file
   produces no decoded text by default, but try right-clicking at
   t=17.6 s.  (The file time corresconding to the location of the
   mouse pointer is displayed in a green label at lower left of the
   plot area.)  You should be able to find several other examples of
   decodable text in flat regions on the green curve.  For example,
   try left-clicking at t=7.4 s or t=10.8 s in the first AF4O file, or
   t=12.8 s in the second AF4O file.

10. Hit F8 to switch to mode JT65A.  You should now pay some attention
   to the SpecJT screen as well as the main WSJT6 screen; select View
   -> SpecJT if you have minimized or deleted it.  (If the SpecJT and
   WSJT6 windows overlap on your screen, you may reduce the size of
   the SpecJT window so that only the top half shows.)  Select speed 3
   on the SpecJT screen and check the following items on the SpecJT
   Options menu: Mark T/R boundaries, Flatten spectra, Mark JT65 tones
   only if Freeze is checked, JT65 DF axis.  Select File -> Open on
   the main screen, navigate to inside the JT65A directory, and
   double-click on the F9HS file name.  The SpecJT screen will show a
   messy spectrum cluttered with birdies at 100 Hz intervals and other
   interfering signals.  However, the red curve in the main-screen
   graphical area suggests a possible JT65 sync tone amongst the
   clutter.  No decoded text appears, but the program does report a
   possibly significant detection at sync=1 and signal level -23 dB.
   The reported width of the sync tone is 5 Hz, which is larger than
   optimum for the JT65A mode.

   To examine further, check AFC and then click Decode.  You will see
   F9HS answering the CQ of K1JT:

   074800  1  -23  2.7  363  5 *      K1JT F9HS JN23

   Double-click on F9HS in the text window.  You should see F9HS
   copied into the To Radio box; the database will be searched and the
   grid locator entered, if available; Tx messages will be generated
   for a QSO with F9HS, and the Tx message pointer will be set to
   message number 2 so that a signal report will be sent.  During real
   operation, all of this can take place in the few seconds near the
   end of a reception interval, before you start transmitting again.

11. Uncheck AFC and hit F6 to open the next file.  A smaller red spike
   appears, but again there is no decoded text.  The SpecJT waterfall
   clearly shows a weak signal, and this time there is no significant
   interference.  Go to the menu Decode -> JT65 and change the
   "Normal" decoding option to "Exhaustive", then click the Decode
   button again.  This time WSJT will "think" a bit longer, and you
   will see that G3FPQ is calling W7GJ:

   131900  1  -25  1.5   42  3 *      W7GJ G3FPQ IO91

   Exhaustive decoding can take up to twice as long as Normal
   decoding, but it is more sensitive.  If your computer has a 1.5 GHz
   or faster CPU, you will probably want to use Exhaustive all the

12. Hit F6 again to select the third JT65A file.  The waterfall shows
   a clear signal that drifts upward by about 15 Hz during the
   transmission.  Again no decoded text appears.  Perhaps AFC will
   accommodate the drift?  Click AFC and then Decode; still no good.
   In desperation (perhaps you need Montana for 2m WAS?) clear AFC and
   click "Include" to instruct the program to do its best, even though
   it may consider the synchronization to be sub-par.  Voila!  W7GJ is
   sending K1JT the OOO signal report.

13. Hit Shift-F8 to select JT65B mode.  Then select File -> Open,
   navigate to inside the JT65B directory, and open the DL7UAE file.
   The waterfall shows a strong birdie at DF=783 Hz and several weaker
   signals.  The ones at DF=223 and DF=244 Hz look most interesting
   because they show the "speckled" QSB typical of EME libration
   fading at 2 meters.  WSJT chooses the signal at DF=223 Hz as the
   most promising, and decodes it to reveal DL7UAE answering a CQ from

   The red curve shows a second spike that looks almost as good as the
   DL7UAE signal.  Experiment to see if you can determine who else
   might be calling.  (The answer and how to find it are given below.)

14. When you are ready to continue, clear Freeze (you may also want to
   invoke Erase and Clr Avg) and hit F6 to open the next file.  The
   green curve shows some nasty SSB QRM starting at t=5.3 s into the
   file.  (Again, you might want to listen to the file.)  Some
   rhythmic broadband noise is also present, showing clearly on the
   green line.  Fortunately, the waterfall looks nearly clean in the
   important JT65 spectral region, and WSJT has no problem decoding
   the signal at DF=-46 Hz.  EA5SE is sending K1JT the OOO signal

   Try double-clicking on the sync tone in the waterfall, or on the
   red spike in the main-screen graphics area.  Either action will
   automatically set DF to the selected frequency, Freeze ON and
   Tol=50 Hz, and will then invoke the decoder.  You can see on the
   red curve that the sync-tone search range has been reduced to a
   range +/- 50 Hz around the selected frequency offset, DF.

   Take note of the colored tick marks on the frequency scale at the
   top of the SpecJT screen.  The leftmost vertical green mark shows
   the selected DF, and the horizontal band below it shows the range
   searched for a sync tone.  The other green tick marks the upper
   limit of the JT65 data tones, and red ticks mark the upper
   frequencies that would be used for shorthand messages.

15. Hit F6 to open the next file.  You will see EA5SE sending K1JT the
   shorthand message RRR.  Magenta and orange curves in the
   main-screen graphics area plot the measured spectra for the two
   phases of the shorthand message cycle.  In the waterfall display
   you should see the alternating tones for RRR accurately aligned
   with the sync-tone marker and the second red marker.  Hit the F6
   key once more to decode the final transmission of this QSO, with
   ES5SE sending 73 to K1JT.
16. Uncheck Freeze and hit F6 again.  The waterfall shows a likely
   sync tone with deep libration fading at DF=-22 Hz.  The program
   decodes EI4DQ sending K1JT the OOO signal report.  Double-click on
   the sync tone in either window to lock him in, and hit F6 to open
   the next file.  Evidently he has received my OOO report, and is now
   sending RO.

17. Clear the Freeze box and hit F6 again to open the next file.  Two
   birdies are in the passband, but WSJT ignores them and finds a
   valid sync tone at DF=223 Hz, decoding IK1UWL sending an OOO report
   to K1JT.  Double-click on the sync tone to lock him in, and wait
   for the next transmission (i.e., hit F6).  He has copied my RO, so
   he is sending RRR.  Note that this shorthand message is barely
   visible on the waterfall, but it is still decoded correctly.  K1JT
   would now send 73 to signify that the QSO is complete.

18. Clear the Freeze box and hit F6 to find RU1AA calling CQ.  Alex is
   always loud; these signals are easily audible.  In the next several
   files we work him quickly, despite two birdies that are drifting
   down through his JT65 signal passband.  Notice that as a reminder,
   decoded shorthand messages are always flagged with a "?" mark
   unless you have turned Freez ON and set Tol to 100 Hz or less --
   which you should always do, for best results. 

   Alex ends the QSO by sending the message "TNX JOE -14 73" to tell
   me that my signal peaked at -14 dB.  Since this message does not
   start with two callsigns (or CQ or QRZ plus one callsign) it is
   treated as a plain text message.  Such messages can convey only 13
   characters, so in this case the final "3" was truncated.

19. Clear the Freeze box and hit F6 to show another big Russian
   signal: RW1AY/1 is answering a CQ from K1JT.  Double-click on the
   sync tone (on either window) to lock it in, and then hit F6 to see
   the "RO", "73", "-19TNXQSO 73" contents of the next three

20. Were you able to decode the second station answering my CQ in the
   DL7UAE file?  If so, congratulations!  If not, clear Freeze and go
   back to File -> Open and select the first file again.  Left-click
   on the smaller red spike, check Freeze ON, and reduce Tol to 10 Hz.
   Then hit Decode, and you will see SP6GWB calling with an excellent
   signal.  The DL7UAE and SP6GWB signals are separated by only 22 Hz,
   so most of their tones overlap in the 355 Hz passband of JT65B.
   Nevertheless, the decoder copies perfectly through the resulting
   QRM with the help of its robust error-correcting code.

21. While you have the DL7UAE file in memory, Freeze ON, Tol=10 Hz,
   and DF set on the smaller red spike, hit F2 to open the Setup ->
   Options screen and enter your own call (or some other call) in
   place of K1JT in the "My Call" box.  Then dismiss the Options
   screen and try to decode the SP6GWB signal again.  You will surely
   fail, because for this message successful copy was obtained as a
   result from the Deep Search decoder.  (Callsigns in the CALL3.TXT
   database are paired up with CQ and with the "MyCall" entry,
   encoded, and compared with the received information.  If the
   signals match to within a specified minimum confidence level, the
   matching message is displayed.)  If no good match is found, there
   is a small chance that you will see a low-confidence false decode.
   It will usually be flagged with a "?" mark to remind you to
   exercise your own judgment, based on signal strength, sync level,
   displayed graphical information and your accumulated JT65
   experience, as to whether the message can be accepted as valid.