Getting Started

  1. Getting Started


Introduction

  • Introduction

    PSK31 is an amateur radio communications mode introduced by Peter Martinez, G3PLX, that uses phase modulation and special character coding. It allows robust narrow bandwidth keyboard "Chat" type communications between two or more stations.

    This document was written to describe how to use the WinPSK program that evolved while experimenting with DSP on a PC soundcard. This program was not intended to be a full featured program for serious PSK31 use, but rather as an example program using the PSKCore.DLL library.


Minimum System Requirements

  2. Minimum System Requirements

WinPSK requires Windows 95,98, or NT 4.0 running on at least a 133MHz Pentium. Some have reported running it on 486DX's but is probably pushing it. It MUST have floating point capability. The screen resolution must be at least VGA 800x600. The program and its help documents eat up several Megs of disk space. The program needs several Meg of RAM.

Note: This program is a processor hog. Screen savers should be disabled and other processor intensive programs should probably be suspended while running WinPSK. If a message pops up saying "CPU Too Slow" then you need to try a faster PC or need to turn off whatever is chewing up CPU time.


Program Installation

  3. Program Installation

The program consists of an executable file "WinPSK.exe" and a single library file "PskCore.dll". These files can be placed anywhere but is probably best to create a new folder(directory) for it say at C:\WinPSK\. If online help is desired then you also need the file "WinPSK.hlp" and "WinPSK.cnt" to also be in the same directory. Windows will create a few other files if Help is used. The dll file can also be placed in the Windows/System/ folder but it's probably best to keep it in the same folder as the main program file Winpsk.exe.


Program Removal

  4. Program Removal

To remove this program, just delete all the files in the folder where WinPSK.exe file resides.

Purists may also want to go into "Regedit" and look in the "HKEY_CURRENT_USER\Software" folder for a registry key called "AE4JY Software", select it and hit delete and your system should no longer have any knowledge of WinPSK. Leaving this key may eat up a few bytes of disk space but will not affect any other programs. If you look at the list of programs in this folder, you will probably find remnants of all sorts of old programs.


Running WinPSK

  5. Running WinPSK

Once the program is placed in the directory you wish, just double click on it in Explorer and it should begin operation.

Hint: while in Explorer, select WinPSK.exe with the mouse and RIGHT click on it. A menu will pop up and select "Create Shortcut". A Windows shortcut to WinPSK will now appear in Explorer and you can drag it off onto your desktop or anywhere else. WinPSK can now be executed by clicking on the new shortcut, even though it is not located in the folder as all the rest of the files.


Tuning in a PSK31 Signal

  1. Tuning in a PSK31 Signal

If your soundcard is working and you already have it connected to your transceiver, then WinPSk should begin running. Clicking the left mouse button in the spectrum display will change the receive frequency marker position. Try clicking it back on a signal to see if you can get it to receive. If the display is not showing anything, you may need to adjust your soundcard Recorder mixer volume control.

Here is a properly tuned in BPSK signal. Note the vertical vector view and that the dotted cursor is at the peak of the signal.

Here is a PSK signal that is not tuned in correctly because the dotted cursor is not at the center of the signal. Left click the cursor on the center of the signal to tune it in. On must be within about 25Hz of the peak in order for the software to find the center.

A squelch control should be yellow as it indicates the quality of the signal. Clicking in the squelch control will set the squelch threshold.

Consult the WinPSK Reference section of this help file for all the gritty details of the program. Don't be afraid to click around and see what happens.


Hardware Interface Setup

  2. Hardware Interface Setup

If your computer is already setup for using one of the other PSK31 programs, then you should be in business. All the soundcard levels and serial port connections should work okay without readjustment.

If this is a new system, then a bit more work is required. An interface from your PC soundcard to your radio is required. Unfortunately, the Soundcard was not designed as a radio interface and this is the trickiest part of PSK31 setup. Not all soundcards have the same inputs and outputs. Few radios have the same connector and signal pinouts, and so the PSK31 operator must be a little creative and dust off the soldering iron, buy a few connectors, and other assorted parts.

The basic setup is shown here. The serial port PTT control is optional. One can also use the radio VOX for control or manually activate the transmitter.


Sound Card / Radio Interface

  1. Sound Card / Radio Interface

Most soundcards that work under Windows should work okay with WinPSK. It needs to be a 16 bit type with preferably a "line IN" jack and perhaps a "line OUT" jack as well. The 16 bits refers to the audio resolution and NOT the PC bus type which can be ISA, PCI, USB, etc. as long as it is supported by Windows. The most expensive sound card is not always the best in terms of audio quality. Many $10 soundcards have better audio specs than the expensive "do everything" soundcards.

First lets look at the radio receive audio to soundcard connection. Most radios have an audio out jack on the back. Try to use a source that does not vary when you adjust the receiver volume. If your sound card has a "line IN" jack all that is needed is to run a shielded cable from the radio audio out to the line IN jack on the soundcard. If the soundcard only has a "MIC" input then you may have to attenuate the signal with a simple 2 resistor divider. Mic inputs vary. Some have a single audio input with the other channel used to supply power for a microphone. Usually the tip is the audio input.

The audio jacks on soundcards are the stereo type with two separate channels. WinPSK operates in the monophonic, single channel mode so either the "Right" or "Left" channel connection can be used. A typical cable wiring scheme is shown here. This is only a starting point. Your rig may require different connectors or attenuation.


PTT Interface

  2. PTT Interface

One can use their radio's VOX control for PTT(be careful because other Windows programs may create sounds and beeps that will key up your transmitter!). Alternatively, one could just manually key their transmitter before placing WinPSK into the transmit mode.

If your computer has a spare serial COM port, a simple circuit such as the one shown can be used to key the transmitter automatically. The parts values are not very critical and you can substitute just about any NPN transistor and diode for the ones shown.


Program Setup

  3. Program Setup

Before going on the air, you should enter your call sign using the "Settings" -- "General Setup" menu. Here you can enter your call and some other program setup items such as the COM port PTT settings. Your call sign should now appear at the top of the WinPSK screen instead of the text "Call Sign Not Set"

Most of the settings including last used TX and RX frequencies, display settings, etc. are saved upon program exit in the Window's registry.

Hint: If you wish to start fresh, run "regedit and find the "HKEY_CURRENT_USER\Software" folder for a registry key called "AE4JY Software", select it and hit delete. WinPSK will start up next time using the default settings.

It's a good idea to make sure your sound card is installed properly and is working correctly before tackling the WinPSK soundcard level setup. Use the built in wave file player and recorder to get familiar with your sound card's mixer settings and capability. It can be activated from within WinSPK by going to the "Settings" menu and clicking on either the Rx or Tx Level adjust item. (If you are using NT or Win95, you will have to manually select the record option in the mixer control to set the receive volume) The mixer control is used to set both the receive audio level to the WinPSK program as well as set the "course" level setting to your transmitter. One should use their radio's mic gain for fine adjustments. The RECORDER mixer settings are used to control the receive audio level while the PLAYBACK mixer settings are used to set the transmitter audio level.

It is also a good idea to disable all the various Windows sounds, especially if you are using VOX PTT control.


Receive Audio Input Level

  1. Receive Audio Input Level

Once the interface is connected, the first thing to do is set your receive audio level. Tune your radio to a loud signal or carrier. Bring up your soundcard's Mixer program (or use the one that comes with Windows). The Mixer's RECORDER settings are the ones to use for adjusting the Receive audio levels. Select either the LINE or MIC IN control and set it mid way.

Click on the WinPSK Signal Display TAB labeled "Input". Adjust your recording Mixer controls for a signal display that is about half screen size on peaks. If the level is too high, the signal display will turn red. Here are some example settings:

Good Input level

Input Signal Too Low

Input Signal Too High

Input Signal Too High

If in one of the spectral signal views, a red message will warn of too high audio.

You should now be able to start receiving PSK31 signals from off the air. Use one of the spectrum signal displays and just left click the mouse cursor close to a signal peak that looks like a PSK31 signal. Make sure the AFC is checked and the correct PSK31 mode(probably BPSK) is selected. Click on the bottom part of the squelch control until it turns yellow. This will "open" the squelch if it is set too high. Text should appear in the RX text window. See the section "Main Screen Overview" for a screen shot of a typical signal display while receiving.


Transmit Audio Level Adjustment

  2. Transmit Audio Level Adjustment

This is probably the trickiest part of PSK31 setup because one cannot see the actual signal spectrum coming out of their transmitter. You must guess at a good level then get someone to give you a critical signal report over the air. The Mixer's PLAYBACK settings are the ones to use for adjusting the transmit audio levels.

Compounding the problem is the fact that the soundcard is producing around 1 volt of audio and the typical transmitter Microphone input needs only a few millivolts to drive it. One must be very careful to attenuate the soundcard signal by about 1/1000 before attempting to drive the microphone input.

A good rule of thumb is to not have any level control near it's extreme. The mixer control should not be at it's maximum or minimum and your radio MIC gain should not be at either extreme. If they are, then you may have to try a different resistor ratio in your cable's attenuator.

The correct setting will vary from radio to radio. In general one should not drive the transmitter anywhere near it's rated power at least not at first. If you must error, error on under driving your rig until you are comfortable that your signal is clean then try bumping it up and see where your signal starts "getting wide" as observed by the receiving station.

Example of a good strong PSK signal. The noticeable sidebands are way down in amplitude.

Example of a PSK31 signal that is "Too Wide", probably from being overdriven. There are sidebands only about 15 dB down and the signal is interfering with another PSK31 station just above it in frequency.


WinPSK Reference

  4. WinPSK Reference

This section contains a detailed description of all the WinPSK features and controls.


Main Screen Overview

  1. Main Screen Overview

Here is a live screen shot showing all the major program controls.


Window Size Setup

  1. Window Size Setup

The size of the overall program frame can be adjusted by clicking and dragging the mouse cursor on the lower right hand "grabber" icon or moving the any edge of the frame with the mouse.

Internally, the vertical size of the receive text window and transmit text window can be adjusted by clicking and dragging the bottom of either frame. These sizes interact so it will take a bit of twiddling to get the three main windows the way you like. Try working from the top window down to the bottom window. The screen settings and position on your monitor are saved so you should only have to do this once.


Menu Items

  2. Menu Items


File Menu

  • File Menu

    This menu is used to exit or to save off the current receive window text as a *.txt file. This is useful for archiving sessions of WinPSK or for logging purposes. The text file that is saved off can be viewed and edited using any text editor such as Notepad.


Edit Menu

  2. Edit Menu

The edit menu is the standard clipboard management menu for copying, pasting, cutting and clearing text from the Windows clipboard. The undo function is quite limited but may restore an accidental cut or paste operation.


View Menu

  3. View Menu

This menu allows one to hide either or both the clipboard toolbar or the bottom time/status bar.


Wave File Setup

  4. Wave File Setup

This menu allows the user to specify the data source for the PSK31 decoder and/or the destination for the PSK31 transmit audio data. Either the soundcard audio or a RIFF wav file can be used as input or output. Only 8000Hz sample rate 16 bit mono wave file formats are supported.

The "Select Input File.." button pops up a file selection dialog box to select the desired input wave file.

After selecting the input file, the file's length in seconds is shown in the status box. Below that, one can specify a time offset in seconds in which to start decoding. This is useful to be able to move to any position within the file.

The "Select Output File.." button pops up a file selection dialog box to select the desired output wave file name. A time limit can be imposed on the output file in order to keep from exceeding ones disk space. Every minute of wave file recording takes roughly 1 megabyte of disk space.

Various combinations of input and outputs can be selected. Either the soundcard or a wave file can be selected as the decoder source.

The "Log Input to Output File" checkbox will save the input audio data to the specified output wave file.

The "Echo Input to Soundcard" checkbox will echo the input audio data to the soundcard output.

The "Log Tx to Output File" checkbox will save the Transmit audio data to the specified output wave file.

The "Disable SoundCard Output" checkbox will inhibit the transmit audio from going to the sound card output.


Settings Menu

  5. Settings Menu

This is the Main menu for all the setup and configuration options. Clicking on one of the main items will bring up another menu or function.


General Setup

  1. General Setup


User Call Sign

  1. User Call Sign

The user's ham call sign should be entered in the edit box. It is converted automatically to upper case letters. This call sign string is used by macros to insert your call sign into macro messages and CW ID. It also is displayed at the top of the program screen.


Duplex Satellite Mode

  2. Duplex Satellite Mode

Checking this box will enable full duplex Rx and TX operation as well as invoke a special fast AFC mode that can track BPSK signals with up to +/-20Hz/Sec Doppler shift.


Echo TX Text in RX

  3. Echo TX Text in RX

If this box is checked, all text that is transmitted will be copied into the Receive text window. If Unchecked, the transmitted text will remain in the TX text window until the program goes back into receive mode.


Use Lower Sideband

  4. Use Lower Sideband

Check this box if you are using lower sideband mode. It is only needed if you are using QPSK mode. BPSK mode does not matter.


Use Slash 'ZERO' character

  5. Use Slash 'ZERO' character

Check this box if you wish text to display a zero with a 'slash' mark through it rather than a standard zero character. This makes it a bit easier to distinguish the letter O from a number (. The actual character transmitted is still the ASCII character zero.


Use Local Time

  6. Use Local Time

If this box is checked, the local time instead of UTC time will be displayed and used by the macros.


Squelch Speed

  7. Squelch Speed

This control allows the user to adjust how fast the Squelch control responds. The bigger the number the slower the action. In poor signal conditions, the slower squelch is better.


AFC Limit

  8. AFC Limit

This sets how far the AFC control will follow a signal. It places boundaries of +/- limit Hz on the AFC operation.


Frequency Display Setup

  9. Frequency Display Setup

This allows the user to select the minimum and maximum frequency range to be displayed. Normally this should be the range of one's IF filter. Displaying spectrum outside the passband of your receiver wastes screen area.

The Waterfall Color button invokes a dialog box to select a palette file( *.pal) that can be used to change the color scheme of the waterfall display. The palette file format is compatible with Nino Porcino's "Stream" program palette files and so one can use them or make their own using a text editor like "Notepad".

The file consists of 256 lines where each line contains three comma separated numbers representing the intensity of RED,GREEN, and BLUE. Each numbers range is 0 to 255, where 255 is maximum intensity.

Each line represents a signal level where the first line is maximum signal strength and the last line represents the minimum signal strength.

The program defaults to a standard color scheme if no file is ever specified or if a filename is given that does not exist.


Sound Card

  10. Sound Card

This allows one to chose an alternate sound card if one has more than one installed.


PTT Comm Port Setup

  11. PTT Comm Port Setup

This dialog is used to enable the use of the PC serial port for turning on and off your transmitter. The RTS or DTR signal pins are set high(+8 to +12 volts) when the transmitter is to be activated and are low(-8 to -12 volts) when receiving. See the hardware setup section for details on using these signals for PTT. If no serial port is available, all the selections will be grayed out.


Sound Card Clock Adjust

  12. Sound Card Clock Adjust

This control is used to compensate for soundcards that are not on frequency. If the majority of PSK31 signals you are receiving have a "Clk ppm" value greater than about 1000ppm as displayed on the lower status bar, then you need to increment(or decrement) this adjustment value by roughly the negative of that value.

Example: If most of the signals you receive are displaying around -1800 as shown above for the "Clk ppm" value, then increment the SoundCard Adjustment value to +1800. Now most of the signals that you receive should be under +/-500ppm.

Remember that the "Clk ppm" value is ONLY valid while receiving a good quality PSK31 signal and it takes 10-20 seconds to get a good average value.

This method makes the assumption that the majority of soundcards on the air are on frequency which appears to be the case in actual monitoring during a busy weekend.

It appears that if a sound card is off it is off by over 2000ppm. Don't be concerned about clock errors under 1000ppm.


Rx Level Adjust

  2. Rx Level Adjust

Activates your sound card's mixer setting program. In Windows 98 this will bring up the RECORDING menu of the mixer program. If you are using NT or Win95, you will have to manually select the RECORD option in the mixer control to set the receive volume.


Tx Level Adjust

  3. Tx Level Adjust

Activates your sound card's mixer setting program. In Windows 98 this will bring up the PLAYBACK menu of the mixer program. If you are using NT or Win95, you will have to manually select the PLAYBACK option in the mixer control to set the receive volume.


Screen Setup

  4. Screen Setup

Several items concerning the way WinPSK displays text can be modified to suit the user. Fonts, size and color can all be selected for the RX and TX edit windows.


Receive Text Font

  1. Receive Text Font

The following dialog is used to select the receive text window font and color. Many fonts are not suitable for PSK31 and may not contain the correct ASCII characters.


Transmit Text Font

  2. Transmit Text Font

The following dialog is used to select the font and color for text that has yet to be transmitted. Many fonts are not suitable for PSK31 and may not contain the correct ASCII characters.


Sent Text Font

  3. Sent Text Font

The following dialog is used to select the font and color for text that has already been transmitted. As text is sent to the transmitter, it's font is changed in order to distinguish it from text that has been typed ahead and not yet sent.

Also this font color is used in the receive window to distinguish between received and transmitted text. ( The receive window font is used, just the color is changed )


Background colors

  4. Background colors

Both the receive text window and transmit text window's background color can be selected using the following dialog box. Some care must be exercised to make sure the font color has good contrast against this background color.


Clear Rcv Menu Item

  6. Clear Rcv Menu Item

This menu item will clear(permanently) the contents of the receive edit window. It can also be activated by pressing Alt-R.


Clear Xmit Menu Item

  7. Clear Xmit Menu Item

This menu item will clear(permanently) the contents of the transmit edit window. It can also be activated by pressing Alt-X.


Tx Tune Menu

  8. Tx Tune Menu

This control will turn on the transmitter and output a single frequency tone. This can be used to tune ones transmitter for best SWR, etc.

Note: This is NOT a useful test signal for setting ones audio output level for minimum IMD. The PSK31 "idle" tones should be used for that. They can be generated by pressing the F12 Rx/Tx button and then not typing any characters. A steady two tone signal is then generated.

Pressing the TX Tune menu item while it is already in the Tune mode will turn it and the transmitter off.


Send File

  9. Send File

Pressing this brings up a file selection menu. Selecting a text file will place the contents of that text file into the TX window. All of the macro keywords are available to use in a text file to be transmitted. This gives an almost infinite number of alternate macros to use.


Help Menu

  10. Help Menu

This menu accesses this document or an "about box" that gives the program version information.


PSK31 Receiver Controls

  3. PSK31 Receiver Controls


Receive Text Window

  • Receive Text Window

    This edit box is used to display PSK31 text as it is received and to display transmitted text after it has been sent. A different font color can be used to distinguish the two types of text.

    The edit box is READ ONLY. This means you cannot type, drag, or paste text into this edit window. You can copy, drag, or save text FROM this box.

    The "Auto Text Select" mode allows callsigns and names to be entered into their respective edit boxes with a simple double-click of the left mouse button over the word in the Rx window. This feature is useful for snagging a callsign or name from the received text and placing it into the appropriate edit box.

    If not using the "Auto Text Select" mode, text can be selected by double clicking in the desired word. It will become highlighted and you may copy this into the clipboard(Ctrl-C) or drag it to the transmit edit box , the "Their call" edit box, or into another application.

    When the text is selected, you have about 10 seconds to act upon it or it will deselect itself and the receive window will go back to normal operation. This prevents the user from accidentally leaving some text highlighted which prevents normal PSK31 text reception.

    The entire edit box can be erased( permanently ) using the Clear Rcv menu item or press(Alt-R).

    The top window shows some received text in green. The yellow text is text that has been sent(including the timestamp information). The bottom window is the Transmit text window with text that has NOT been sent yet in red.


Signal Display Window

  2. Signal Display Window

The Signal display window is a graphical screen that is used for displaying various signal views of the received or transmitted signal. Different views are selected by using the labeled TABs at the top of the display area.


Spectrum View

  1. Spectrum View

The Spectrum view is probably the most useful of the signal displays. The amplitude versus frequency of the incoming receiver audio is displayed giving the user a way to see all the various signals within most of the audio bandwidth of the receiver. The 10 vertical gradient lines on the screen each represent 10 dB steps in amplitude.

This display also has a dotted vertical cursor that represents the current PSK31 receiver center frequency. The mouse cursor changes to a cross while in the signal view screen area. If one left clicks the mouse button, the dotted vertical line will move to the new frequency under the mouse cursor. If the frequency cursor is close to a signal and AFC is enabled, the cursor will move and try to center itself onto the closest signal. If the signal is a PSK31 signal, decoding will begin.

A zoom control at the bottom of the screen can be used to look at smaller or larger areas of the spectrum. The spectrum display will zoom about the current frequency cursor position. If possible, it will also center the display around the frequency cursor as well. The lowest and highest displayed frequencies for the current zoom settings are displayed at the bottom of the screen.

A check box labeled "Slow" can be activated that will smooth out the spectral display. The down side of the slower display is that fast changing signals will not be seen and the spectrum will "Smear" if the transceiver frequency is changed while viewing.

A mini vector display appears in the upper left corner to aid in finding PSK31 signals.

Right clicking the mouse cursor will change the receive frequency just like the left button, but will also "rewind" the received audio data about 25 seconds allowing one to go back in time and decode any signal that was received in the last 25 seconds or so. This feature is more useful in the waterfall view described below.


Waterfall View

  2. Waterfall View

The waterfall view is like the main spectrum view except that the amplitude of the input signal is displayed as the brightness/color of one horizontal line of the display. The stronger the amplitude the brighter the display( color shifts from blue to cyan to yellow to white with increasing amplitude). Also as time marches on, each horizontal frequency sample line shifts down and a new one is placed at the top. The affect is like a waterfall, where the signals seem to be cascading down the screen.

A PSK31 signal will produce a fairly narrow "snail trail" down the screen that can be used for tuning on just as with the spectrum screen using the mouse and dotted line frequency cursor and zoom controls. The advantage of this display is that it gives a history in time of the signal over the last several seconds. The disadvantage is that it is difficult to judge the signal intensity just using its screen brightness and color.

A mini vector display appears in the upper left corner to aid in finding PSK31 signals. A smaller spectrum view is also shown at the top of the waterfall.

Right clicking the mouse cursor will change the receive frequency just like the left button, but will also "rewind" the received audio data to the spot where the mouse cursor is located. This allows one to go back in time and decode any signal that was received in the last 25 seconds or so.


Vector View

  3. Vector View

The superimposed vector view is useful for determining if a signal is a PSK31 signal and what mode is being used. The following examples show what various signals look like on the vector display and what they mean.

Properly tuned BPSK Signal.

Properly Tuned QPSK Signal

BPSK or QPSK "idle" Signal.

Un-modulated carrier

BPSK Signal too low in frequency. .

BPSK Signal too high in frequency

QPSK Signal too low in frequency.

QPSK Signal too high in frequency.


Input View

  4. Input View

The Input view is a scope like view of the raw input signal. The vertical axis is amplitude and the horizontal axis is time. On strong PSK31 signals you may catch a glimpse of the sine shaped signal pulse. The primary use of this view is to adjust the receiver/soundcard input level. If the input levels are too high, the displayed signal turns red. One should adjust the level so that signal peaks don't reach the red state level.


Sync View

  5. Sync View

The sync view shows a histogram of the internal signal used to determine the center of the received bit. An elongated line marks the sample that WinPSK is using which is at the peak of the histogram. This display is useful because it can indicate whether the incoming signals bit clock is off frequency (or the users soundcard is off frequency).

If the bit center position is drifting across the screen about every 15 seconds or so, then either the user's or the senders soundcard is probably off frequency. The program will still receive data but with some degradation. One can go to the General Setup Menu and compensate for off frequency soundcards.


RX Frequency Control

  3. RX Frequency Control

The RX frequency edit control consists of a small edit box where a new frequency can be typed in, or the frequency can be moved up or down using the spin controls just to the left of the edit box. When typing in a new frequency, the new number will not take affect until the cursor has moved out of the edit box by clicking somewhere else on the screen.

Turn AFC off if you wish to manually adjust the receive frequency. Clicking the mouse left button while the cursor is in one of the spectral displays will change the RX frequency to the value under the mouse cursor position in the spectrum.

The vertical yellow dotted receive frequency cursor will reflect the value of the new RX frequency.


AFC Selection

  4. AFC Selection

This control activates the Automatic Frequency Control function. It is activated by clicking on the control or pressing the up/down arrow keys. WinPSK will try to adjust the receive frequency to the center of the PSK31 signal.

Distorted PSK31 signals due to propagation or poor transmitting stations may not allow the AFC to lock correctly at their center frequency. If this happens, then deactivating the AFC and manually tweak the RX frequency spin controls until the signal is tuned in correctly as indicated by the little vector display in the signal view screen.


Program Start/Stop Control

  5. Program Start/Stop Control

A control button next to the Rx/Tx control button is used to start and stop the program operation. This feature is needed to be use wave files as input and output instead of the usual soundcard. The button toggles the program ON and OFF by clicking on it.

If the program is stopped, the RX/TX button is grayed out and the Start/Stop button is a green arrow. Clicking on it will start the program.

If the program is running, the Start/Stop button is a red block. Clicking on it will stop the program.

or


PSK31 Mode Selection

  6. PSK31 Mode Selection

Two PSK31 modes may be selected using the check boxes at the lower left part of the screen.

BPSK---Binary PSK mode that does not have forward error correction but is probably the most common mode on the bands. It can be identified by it's two vertical lines in the "Vector" signal view window.

QPSK---Quadrature PSK mode that has forward error correction but is a little harder to tune. It can be identified by it's two vertical lines and two horizontal lines in the "Vector" signal view window. It is also sideband sensitive. If you need to use lower sideband, then check the "Use Lower Sideband" box in the "General Setup" menu.

A double speed(PSK63) mode can be invoked by checking the PSK63 box. This mode is identical to PSK31 except is twice as fast, twice as wide, and needs twice the power to be as good as PSK31.


Squelch/Quality Control

  7. Squelch/Quality Control

The squelch control can be used to set a signal quality threshold and inhibit reception until the signal exceeds a specified level. This can reduce a lot of "garbage" characters from cluttering up the screen. The control consists of a vertical bar that grows longer from the bottom depending on the signal quality. A small bluish horizontal bar indicates the current squelch threshold. If the signal level exceeds this bar, then the received characters will be shown on the screen. It also changes color from gray to yellow when the squelch opens.

Squelch ON

Squelch OFF

The squelch threshold is set by simply placing the mouse cursor inside the control at the desired level and clicking the left mouse button. (Don't try to drag the bar, just click to the desired new position.)

Before left clicking.

After left clicking.


PSK31 Transmit Controls

  4. PSK31 Transmit Controls


Transmit Text Window

  • Transmit Text Window

    The transmit edit box is where text is typed, pasted, or dragged to be transmitted. As characters are transmitted, a user selectable font and color can be used to distinguish the sent text from text that has not yet been sent.

    If a macro is invoked, it will place it's text in this edit box as well. Text cannot be copied or dragged FROM this edit box. Text can be selected in the middle of the message and new text pasted or deleted but is not recommended since it can mess up the transmitted text order. If you make a mistake in typing, the backspace key should be used to delete and then retype the text. This works even if the text has already been sent. A backspace character will be sent so the receiving end will get the corrections as well.

    The entire edit box can be erased( permanently ) using the Clear Xmit menu item or press(Alt-X).


PTT Button

  2. PTT Button

This is the main control for toggling between the transmit and receive mode of operation. The user can click on it with the mouse or hit the F12 key to switch between modes. An "LED" like indicator blinks red while transmitting and is a solid green when receiving.

Changing from Transmit to Receive is performed by pressing the flashing Tx button. The button will then change to a flashing "Finish" state which means that the transmitter is finishing sending any remaining text and CW ID. Pressing the button again while in this state will immediately abort the transmission without waiting for remaining characters.

If the "TUNE" button is activated, the PTT button displays this state and the LED turns RED indicating the transmitter is active but just sending a steady carrier for tuning purposes.


TX Frequency Control

  3. TX Frequency Control

The TX frequency edit control can take on two different modes. Clicking on the button just below the AFC checkbox will toggle between either the direct transmit frequency or a mode where an offset frequency from the Rx frequency can be specified.

The TX frequency edit control consists of a small edit box where a new frequency can be typed in, or the frequency can be moved up or down using the spin controls just to the left of the edit box. The new frequency will not take affect while transmitting.

When typing in a new frequency, the new number will not take affect until the cursor has moved out of the edit box by clicking somewhere else on the screen.

The Tx Offset mode is useful for transceivers that may have an offset of several Hz between the transmit and receive frequency. This can be entered into the edit box and the program will remember this offset and adjust the transmit frequency relative to the current Rx frequency when transmitting.


NET Function

  4. NET Function

The NET function forces the transmitter to use the current Receiver frequency. The transmitter grabs the latest RX frequency when the PTT control is activated at the beginning of a transmission. At this time, the TX frequency edit box will be updated to the new value as well. If both the transmitting and receiving station have this NET function enabled, there is a tendency for both stations to slide in frequency across the band. If neither station uses the NET function, the affect is operating split frequency, which is not normally desirable.

Perhaps the best solution is for the station that is initiating a contact or calling CQ to leave the NET function off and be the master frequency and let the called station always track the master. The signals can still drift if the "master'' transmitter wanders around but at least it is limited to one stations drift which should only be few Hertz. If in doubt, make sure both the AFC and the NET boxes are checked.


QSO Information Edit Boxes

  5. QSO Information Edit Boxes

The QSO information edit boxes provide a quick means to enter current QSO information for use by the macros. Information such as call sign, name, and general text such as their QTH can be quickly entered into these edit boxes by selecting the text from the Receive window.


Their Call Edit Box

  1. Their Call Edit Box

The "Their Call" edit box is a small text edit box that is used by the WinPSK macros as the call sign of the station that you are contacting. Any text typed, dragged, or pasted into this box will be transmitted by the macros 'theircall' keyword for the other stations call sign. Probably the easiest way to use this box is to use the "Auto Text" mode where double clicking the left mouse button on a call sign in the Rx Window will automatically place it in the Their Call Box. It will be converted to upper case and used until another call is entered into it. The way the program distinguishes a call sign from a name is by whether the text contains a numeric value.

The text in this box is not saved upon program exit.


Their Name Edit Box

  2. Their Name Edit Box

The "Their Name" edit box is a small text edit box that is used by the WinPSK macros as the name of the person that you are contacting. Any text typed, dragged, or pasted into this box will be transmitted by the macros 'theirname' keyword for the other stations name. The easiest way to use this box is to use the "Auto Text mode. Double click the left mouse button on the person's name if it appears in the Rx Window and it will automatically be placed in the Their Name Box. . The way the program distinguishes a call sign from a name is by whether the text contains a numeric value.

The text in this box is not saved upon program exit.


Text Grab Edit Box

  3. Text Grab Edit Box

The "Text Grab" edit box is a small text edit box that is used by the WinPSK for inserting any small text string such as QTH information. Any text typed, dragged, or pasted into this box will be transmitted by the macros 'textgrab' keyword. The easiest way to use this box is to use the "Auto Text mode. Select the text to be captured using the mouse and holding down the left mouse button. Once selected, just press the right mouse button and it will automatically be placed in the "Text Grab" Box. The text in this box is not saved upon program exit.


Auto Text Select

  4. Auto Text Select

Checking this button enables the auto text feature for capturing text from the RX window. Disabling it allows normal clipboard text selection.


Clear QSO Info

  5. Clear QSO Info

Pressing this button will clear the "Their call", Their Name", and "Text Grab" edit boxes.


Macros

  6. Macros

Forty WinPSK Macros are available to aid in transmitting commonly used text phrases and for performing some program control functions such as sending a CW ID and terminating the transmission. After a macro has been set up, just by clicking on a macro button( or pressing F1 - F10), a user defined text string can be sent without having to type it each time.

Ten macros are active at any one time and their title is displayed along with their associated activation Function key. Pressing the left or right arrow buttons(or pressing F11) allows the user to activate another independent "set" of macros. There are four sets available giving a total of 40 macros. A Home key gives a quick way to return to the first set of macros.

If the mouse cursor is left motionless on any of the macro buttons, a help string pops up displaying the macro text. This is useful for identifying macros without having to enter their setup menu.


Macro Setup

  1. Macro Setup

The following menu pops up if you RIGHT-Click the mouse on the macro button you wish to examine or modify.

The top edit box is where you can place a short name for this macro that will show up on the macro button.

The big edit box is where you just type in the text you wish to send when the macro button is pressed. It has a 200 character limit. For long macro text, use a separate text file and the <filename.txt> keyword.

Eight keywords are used to insert special commands into the text. These keywords MUST be surrounded by single quote marks and MUST be all lower case. They perform the following functions:

'mycall' will place the Users call sign that was entered during program setup into the text stream.

'theircall' will place any text that was placed in the "Their Call" edit box into the text stream.

'theirname' will place any text that was placed in the "Their Name" edit box into the text stream.

'textgrab' will place any text that was placed in the "Text Grab" edit box into the text stream.

'start' will force WinPSK to start the transmitter and send any text in the TX text window.

'stop' will force WinPSK to stop the transmitter after the remaining text in the TX text window has been sent.

'cwid' will force WinPSK to add a CW id at the end of the current transmission.

'datetime' will place the time and date into the text stream.

Text files can also be sent by placing the filename in the macro text box encompassed with the < and > characters such as <brag.txt>. Don't get too carried away with this function. A large text file could take a long time to send. The text file can be created using any text editor such as notepad. Keywords are now recognized if they are INSIDE the text file. Also you can have several files in one macro. Example: 'start'<file1.txt><file2.txt>'stop'

Note: The text files MUST reside in the directory where WinPSK.exe file is located. Path names are not allowed in the filename.

There is some help located on the macro setup menu that shows some examples and also all the keywords that are supported.


Macro Use

  2. Macro Use

Once a macro has been setup, it's best to try it out before going on the air to make sure it does what you want. When a macro button is clicked, its text is immediately placed in the TX text window for transmission. If not in the transmit mode, you must activate the PTT button(F12) to start the text transmission or use the 'start' keyword in the macro itself..


Status bar

  5. Status bar

The bottom line of the program contains the UTC time and date, soundcard clock error and IMD reading. If a wave file is being processed, it displays the percentage of completion.


IMD Readings

  1. IMD Readings

One of the problems with PSK31 transmission is that most amateurs do not have the test equipment needed to measure the distortion in their transmitted signals. A spectrum analyzer is required to accurately measure the distortion products present in the transmitted signal. Currently one must rely on received signal reports to determine the quality of their signals. One method used is to calculate the IMD(InterModulation Distortion) on the received signal. Although not the ideal way, this method can be useful if one is aware of the limitations to this method.

If one examines the PSK31 idle signal, it can be shown that the constant phase change of 180 degrees and the cosine shaped envelope of the signal generates two tones that are at the PSK31 center frequency +/- 15.625Hz. These tones can be used to measure the IMD of a transmitter.

The following shows a PSK31 idle signal with a center frequency of 100Hz. The two tones are at 100+/- 15.625Hz or 84.375Hz and 115.625Hz.

The third order product frequencies are (2F1 - F2) and (2F2-F1) or 53.125Hz and 146.875Hz. The following shows a PSK31 idle signal with some 3rd (and 5th) order IMD.

By measuring the power difference between the original tones and the 3rd order IMD tones, one can provide a measurement as to how much distortion is on the signal. In this case, the IMD is -40dB since the original tones are at 0dB and the 3rd order tones are at -40dB.

This works well with a strong received signal but look what happens if the signal is weak in the presence of noise.

Note that if one measures the signal level at the 3rd order frequencies, then erroneous results are obtained because the noise level is higher than the distortion product. An IMD reading of -20dB will be obtained even thought the signal is actually -40dB.

This is why it is important that the received signal be well above the noise floor before trying to obtain an IMD reading. Another factor is the HF propagation effects that also introduce errors into this measurement method. Remember, IMD readings are ONLY valid when the PSK31 "idle" signal is being sent.

Even though the IMD measurement is actually a negative number, WinPSK displays it as positive to eliminate confusion over whether a number is higher or lower. The bigger the positive IMD number the better the IMD.


Tool Bar

  6. Tool Bar

This tool bar, which can be hidden using the view menu item, contains tools for copying, cutting, and pasting to the clipboard. The RX text file save menu can also be activated as well as help from here.


Keyboard Shortcuts

  7. Keyboard Shortcuts

The following table lists most of the keyboard shortcuts that can be used with WinPSK. Some are inoperable or have different meanings depending upon where in the program the user is.

    Key | Function
® | Move to next highest frequency signal peak
( | Move to next lowest frequency signal peak
( | Enable the AFC
( | Disable the AFC
Page UP | Increase Signal view ZOOM factor by one
Page DN | Decrease Signal view ZOOM factor by one
Ctrl+A | Select ALL in the RX text Window
Ctrl+C | Copy any selected text into the clipboard
Ctrl+P | Brings up a print menu but does not print anything
Ctrl+S | Brings up RX Text Window file save menu
Ctrl+V | Pastes clipboard contents into activeText window.
Ctrl+X | Cuts selected text into clipboard
Ctrl+Z | Undo last clipboard operation
Alt+T | Turns on TX tune mode
Alt+E | Brings up Edit Menu
Alt+F | Brings up File Menu
Alt+H | Brings up Help Menu
Alt+R | Clears(permanently) all text in the RX Receive text window
Alt+S | Brings up Settings Menu
Alt+V | Brings up View Menu
Alt+X | Clears(permanently) all text in the TX Receive text window
Alt+N | Brings up transmit text file window
Alt+TAB | A windows hot key useful for flipping between programs
F1-F10 | Invoke corresponding Macro in current set
F11 | Increments through the Macro Sets
F12 | Toggles the Transmit/Receive Button


Operation Hints and Tips

  5. Operation Hints and Tips

The best way to get familiar with WinPSK is to start playing with it and clicking away on things. In actual operation, learning to use the left, right, arrow keys for moving to the receive signal frequency is very handy. There usually is never a need to touch the mouse to be able to tune in a PSK31 signal.

The actual Transmit/Receive frequency is your USB radio dial frequency setting plus the audio frequency displayed in WinPSK. If using LSB, you subtract the audio frequency from your dial setting. For example if your transceiver is in the USB mode and reads 14070.00 KHz and your audio frequency is 1500 Hz, then your actual transmit/receive frequency is 14071.50 KHz.

The TX and RX frequencies are limited between 200 and 3500 Hz.., however it is best to stay away from the edges because transmitters may have some frequency limitations as well as some soundcards. (This may explain some of the weird asymmetric signals observed from time to time )

Don't send all your text as UPPER CASE letters. PSK31 was designed to send the most commonly used letters such as 'e' and 't' much faster than lesser used letters such as 'z'. Uppercase letters take a LOT longer to send and just slow down your transmission. Type as you would normally and capitalize letters as needed. A common practice is to send callsigns in upper case. WinPSK converts your call and "Theircall" to upper case automatically when using macros.

Make sure your PC time and date are set correctly. WinPSK assumes your PC's date, time, and time zone settings are correct.

If you need more screen area, go to the View menu and un check the toolbar and status bar views. This will give a bit more area for the program. Adjust the screen size so the bottom part of the screen does not have a scroll bar since that wastes room as well. Also if try using the small display fonts option in the Window's Display Setup.

Use the drag and drop capability of WinPSK with care. Dragging text into the transmit edit box while transmitting or into the middle of the transmitted text is asking for trouble. It's best to do all the "draggin and dropin" BEFORE starting a transmission. The same goes for pasting text from the clipboard into the TX text window while transmitting. If you must do it, make sure you paste at the end of the text.

Try using the QPSK mode when conditions get rough. In many circumstances, using QPSK will greatly improve reception due to it's error correcting capability. WinPSK was designed to tune in QPSK signals as easily as BPSK.

IMD measurements are only guidelines at best. They are ONLY valid when the incoming signal is VERY strong, only during several seconds of PSK31 "idle" transmission, and the propagation path is free of QSB.


Known Problems

  6. Known Problems

The AFC sometimes does not lock precisely on frequency. This seems to happen on signals that are distorted or with lots of multipath distortion. Several PSK31 signals have been observed with asymmetric frequency spectra. Perhaps these signals are generated by being on the sloping edge of the transmitter audio pass band or maybe passing through a soundcard tone control function.

The receive Window scrolling function leaves a lot to be desired. The current line many times goes out of the scroll view. This requires clicking on the scroll bar to get it back inside the view window.

The colors of the receive and transmit text sometimes get mixed up.


Further References

  7. Further References

Several sources are available on the WEB that give more details and information on PSK31.

Peter Martinez G3PLX. "PSK31: A new radio-teletype mode with a traditional philosophy"

Peter Martinez G3PLX. "PSK31 Fundamentals"

Peter Martinez G3PLX. "Description of the Half-Rate QPSK code proposed for the QPSK/FEC Extension to PSK31"

Steve Ford, WB8IMY "PSK31-Has RTTY's Replacement Arrived?" QST May,1999

The "Official" PSK31 web site is http://aintel.bi.ehu.es/psk31.html

3