DopplerCalc - An EME Doppler Shift Calculator

DopplerCalc is a small program which reads the azel.dat file created by WSLT and WSJT-X and calculates the Transmit and Receive frequencies for the doppler modes supported by WSJT-X. These modes are:

  • (1) Full Doppler to DX station - If the DX station has no Doppler tracking capability, you can compensate for Doppler shift by using the Full Doppler frequencies on Tx and Rx while the DX station listens and transmits on the "Sked" frequency
  • (2) Own Echo - You transmit on the "Sked" frequency and listen on the frequency of your own echo which is given in the table
  • (3) CFOM (Constant Frequency On Moon) - In the mode both you and the DX station transmit on a frequency such that a station located on the moon would hear both signs on the "Sked" frequency. You transmit and listen on the Tx and Rx frequencies given in the table. You will hear any stations located anywhere on earth who are using this mode and the same sked frequency and all stations will be able to hear each other.
  • (4) On Dx Echo - If a DX station announces that they are calling CQ on the "Sked" frequency and listening on their own echo, you transmit and listen on the Tx and Rx frequencies given in the table
  • (5) Call Dx - If you hear a station calling CQ (and presumably listening on their own echo) and want to reply, you transmit and receive on the Tx and Rx frequencies given in the table.
  • (6) No Doppler - You transmit and receive on the "Sked" frequency. You would use this mode for terrestrial work where there is no Doppler shift, or if working a DX station on EME who is using mode (1)- Full Doppler to DX station (which is you in this case).

Below is a view of the program in operation"

NOTE: Version 1.2 had a bug related to the Windows language setting. In some languages the program wasn't allowing for changes in time/date formating as well as it should have. The current version is 1.3 in which all times and dates are converted from the Windows format to Julian times and dates. This seems to have fixed the bug.

In addition to doppler calculations, DopplerCalc displays other information useful for EME operation as shown above.

IMPORTANT NOTE
In order for DopplerCalc to work, some version of WSJT or WSJT-X must be running and the "Astronomical Data" window must be open. It will not work with the MAP65 azel.dat file which only contains mutual Doppler values. Self Doppler values are required for these calculations. The Doppler shifted frequencies will be correct only for the DX Grid entered in WSJT(-X).

The azel.dat file updates once for second for WSJT-X. Updates seem slightly slower for WSJT. You must have the correct path entered to find the azel.dat file. If you enter the correct path the display will start to update. If you save the path, it will automatically be used next time the program starts. The band which WSJT is set for will be displayed and obviously this should match the band for the sked frequency you enter for the Doppler shifts to be correct.

NOTE: In some modes (Doppler tracking enables, no frequency change during Tx) WSJT-x v1.9 (and possibly earlier) will show incorrect rate of change of Doppler over part of each period. This is due to an error in WSJT-X which writes incorrect data to the AZEL.dat file. WSJT-X v2.0 and 2.1 show a similar rate of change of Doppler error, but in addition may also indicate that AZEL.dat is not updating. This is due to the time always being written to the AZEL.dat file as :30 after the minute (whatever the actual time). In all cases the actual Doppler shift values and indicated Tx and Rx frequency for each Doppler mode should still be correct

You can download the program as an .exe file here Doppler Calc.exe The file can be run from any directory and makes no changes to windows (no registry changes). It creates a small text time called "doppler.ini" if you save the path to azel.dat. The file just contains the path.

The windows can be re-sized to minimize the space it takes up once you have set the correct path and desired resolution and/or if you don't need all the displayed information.

The program is written in Visual Basic 6 and should run on any(?) fairly recent version of windows. Versions of Windows prior to Windows 7 may require installation of the Visual Basic 6 runtime library - see https://www.microsoft.com/en-us/download/details.aspx?id=24417