MAP65: A Panoramic, Polarization-Matching Receiver for JT65
Joe Taylor, K1JT
Presented at Microwave Update: October 20, 2007
MAP65 is a computer program designed as the back end of a wideband polarization-matchingreceiver for JT65 signals. It works together with the Linrad 1 software written by SM5BSZ, andideally takes advantage of RF and IF hardware providing signal channels for two orthogonal
polarizations. As an example, my current 144 MHz station uses dual-polarization yagis andmatched baseband converters. Linrad uses a four-channel 24-bit soundcard to sample I and Q
baseband signals for each polarization at 96 kHz. After Linrad’s superb wideband noise blanking
has been applied, the digitized signals are passed on to MAP65. MAP65 automatically finds all
detectable JT65 signals in a 90 kHz passband, matches the linear polarization angle of each one,decodes their messages, and provides the operator with a “band map” displaying callsigns,
operating frequencies, polarization angles, and messages received over the past 20 minutes or so.
MAP65 provides a companion transmitting facility, and it runs under either Windows or Linux. Its
principal intended application is EME or “moonbounce” on the amateur VHF and UHF bands.
Many of its features will also be useful on the microwave bands, for both EME and terrestrial
contacts.
MAP65 uses the JT65 protocol 2 popularized in the program WSJT 3 . JT65 is designed to enable
EME contacts between moderate-sized amateur VHF/UHF stations. Its high efficiency is due inpart to its use of time-synchronized transmissions, compact, structured messages, and strong
forward error correction. The most important difference between MAP65 and WSJT (when thelatter is running in JT65B mode) is that WSJT receives a single 2 – 4 kHz bandwidth and decodes
one signal at a time. In contrast, MAP65 works with dual-polarization antennas and accepts a full
90 kHz bandwidth. MAP65 scans the entire received passband, automatically determining thefrequency, drift rate, time offset, and polarization state of every detectable JT65 signal, anddecoding each one.
I have been testing various versions of MAP65 on the air since May 2007 — first in receive-onlymode and more recently, over the interval July 3 to August 9, 2007, to make more than 160 EME
QSOs on 144 MHz. MAP65 still needs polishing and will surely continue to evolve, but already atversion 0.8 r502 it is stable, reasonably mature, and a pleasure to use. It’s very exciting to have thewhole 144 MHz digital EME band (144.070 – 144.160) available on one’s computer screen
simultaneously — including the contents of all messages being sent and received. If the moon isup, and especially if it has not yet set in Europe, I generally see ten to twenty EME signals on
MAP65’s waterfall at any time. They originate from anywhere in the world where the moon isabove the horizon, and the program decodes them all. When a new station shows up and calls CQ,
I see his signal immediately and can respond after his first transmission. No advance knowledge,schedules or internet liaison is required.

1

Linrad Home Page: www.nitehawk.com/sm5bsz/linuxdsp/linrad.htm
J. Taylor, K1JT, “The JT65 Communications Protocol”, QEX, September-October 2005, pp. 3–12.
3This paper assumes some basic familiarity with WSJT. If you need more background, the WSJT Home Page can befound at physics.princeton.edu/pulsar/K1JT/
2

To exhibit and advertise the power of MAP65, I have had some fun playing radio hide-and-seekwith other stations. I ask them to transmit arbitrary messages at random frequencies in the range
144.100 to 144.160, using either JT65 sequence (that is, transmitting in either the odd or even UTC
minute) and any polarization. I believe that MAP65 has found and copied all of the resulting test
messages via the moon. A few operators around the world have accepted the implied challenge andsent me random messages when they knew I was monitoring, but without making their own
presence known. As far as I have been able to determine MAP65 copied all of those messages, too.
A screen shot of MAP65 has been posted on the WSJT home page at
physics.princeton.edu/pulsar/K1JT/MAP65_5.JPG. The full-screen snapshot
does not reproduce well in black and white, so is not included here, but two portions that contain
only text are copied below. The snapshot was taken after MAP65 had processed data recorded
between 0745 and 0800 UTC on November 11, 2006, during the second weekend of last year’s
ARRL EME contest. The minutes starting at 07:47, 07:49, 07:51, and 07:53 are absent from therecording because I was transmitting then, working WA8CLT on 144.131. If you were “on themoon” at this time using JT65B on 2 meters, your signal is probably among those found anddecoded by MAP65. My antenna at that time was quite modest: a pair of 21-ft cross-polarizedyagis stacked side by side, some ten feet above my roof.
To gain some operational understanding of MAP65, I suggest that you read the remainder of thisarticle with the full screen dump in view. Point your browser to the URL given above and be sure
to expand the image to full size. Better yet, print a clean copy at full resolution in landscapeorientation, and keep it at hand.
The screen shot shows four active MAP65 windows:
1. The main window, at bottom left of the screen, is similar to the main WSJT window. It is
used for conducting QSOs in nearly the same way as with WSJT. A MAP65 manual has
not yet been written, but many details of the program’s operation are identical to WSJT and
are described in the WSJT6 User’s Guide and Reference Manual, available from the“Documentation” link on the WSJT home page,
physics.princeton.edu/pulsar/K1JT/.
2. At top right is the Waterfall window, showing two separate panels. The upper panel gives
the wideband spectral view, in this case extending from 144.075 to 144.171 MHz (the“144.” part of the frequency scale is suppressed). I live in a densely populated region andthe birdie situation is usually awful, as you can see: the continuous vertical lines are all
birdies of one kind or another. The ones with messy sidebands at 144.091 and 144.140 are
especially annoying. Nevertheless, you can see many EME signals in this display. With
the help of the decoded text starting on the next page, you should be able to find thetransmissions from DK5EW, EA3DXU, and W3SZ at 144.103, LX/PA3FPQ, IW4ARD,
AA7A, and W0HP at 110, HB9Q and LZ1DP at 111, IK3MAC at 114, DL8EBW and
UA9HK at 116, RA3AQ and DJ9CZ at 118, RK3WWF, I1ANP, SV8CS, and N5KDA at
123, K7MAC at 124, YO9FRJ and EB1DNK at 125, K6MYC and RN4AT at 126, KB8RQ,
SP2JYR, and UA9SL at 127, AA1YN at 128, S52LM, WA8CLT, and F6HVK at 131,
EA6VQ at 139, DH7FB at 140—yes, right in the middle of all that garbage! — and DF2ZC
at 152. There are more signals in there, too—and MAP65 sniffs them out and decodesthem. Nearly 50 callsigns are decoded in this 11-minute data segment, about which there isnothing special: it just represents a time that I remembered to turn on Linrad's recording
feature during the EME contest, so as to save the raw data.
The lower waterfall panel gives a “zoomed” view around the operator’s selected QSO
frequency — in this instance 144.128 MHz, where AA1YN is calling CQ. AA1YN is thesignal at frequency offset DF = 220. At DF = – 660 Hz you can see the strong
synchronizing tone of the “big gun” KB8RQ, who was running EME contest QSOs on
144.127. During the displayed time interval he finishes a QSO with someone (you can see
the dual tones of his shorthand RRR and 73 messages near the bottom of the waterfall, at
07:48 and 0750 UTC). Then he comes back to SP2JYR and works him; and finally at 0759
he is called by UA9SL.
3. At bottom right of the full-screen picture, the “Messages” window lists the results of all
decoded transmissions over a time interval set by the user. Messages received in the mostrecent two minutes are displayed in red, while progressively older ones are indicated withyellow and then diminishing shades of gray before they time out and vanish from thescreen. Each message is preceded by numbers giving the nominal frequency in kHz above
the band edge (101 means 144.101, etc.), the additional frequency offset DF in Hz, themeasured polarization angle in degrees, the UTC, and the signal level in dB relative to thenoise in 2500 Hz bandwidth. The full list of messages is sorted by frequency and then by
UTC, and DF is used to group together all transmissions from the same station. The
scrolling Message window’s contents for the 11 recorded minutes look like this:
Freq

DF

Pol

UTC

dB

101 -220
0 0746 -20-21 90 0745 -18
103 -178 135 0746 -19-178 137 0748 -18-178 135 0750 -21-70 140 0745 -24-70 138 0755 -27
36 142 0746 -4
141 63 0746 -22
110 -53 165 0752 -18-53 168 0754 -18-50 165 0756 -19-50 162 0758 -19-12
7 0745 -20-9 64 0746 -19-15 103 0755 -23-15 99 0759 -22155
0 0746 -17
243 95 0756 -20
111 -350 90 0746 -19-98 135 0745 -19-101 135 0755 -18-104 135 0757 -19-101 139 0759 -14-25
0 0750 -24

Message________________
RRR
RRR
RO
CQ EA3DXU JN1173
EA3DXU DK5EW JN47 OOOCQ DK5EW JN47
DK5EW W3SZ FN20DK5EW W3SZ FN20
LX/PA3FPQ IW4ARD
LX/PA3FPQ IW4ARD
FPQ ARD RO
FPQ ARD 73
KDA FPQ RRR
LX/PA3FPQ W0HP
IW4ARD LX/PA3FPQ OOO
AA7A LX/PA3FPQ OOO73
LX/PA3FPQ AA7A
RRR
RRR
RRR
73
CQ HB9Q JN47
HB9Q LZ1DP KN22

Freq

dB

Message________________-69
0 0745 -22
31 135 0746 -21
34 153 0748 -9
28 152 0750 -9
19 135 0752 -22
16 135 0754 -21
25 151 0756 -8
19 153 0758 -9
116 -115 167 0746 -23-115 169 0748 -22-115 167 0750 -24-112 177 0752 -23-112 168 0754 -21-109 168 0756 -21-109 169 0758 -21-44 104 0757 -25
118 -76 137 0745 -13-76 140 0755 -10-76 143 0757 -11-79 145 0759 -12-26 90 0746 -19-29 90 0748 -20
123 -491 156 0758 -21-309 168 0746 -17-309 166 0748 -20-309 171 0750 -20-309 167 0752 -20-309 173 0754 -19-189
0 0745 -22-189 175 0755 -20-189 175 0757 -20-189 172 0759 -18
139 164 0758 -19
124 244 75 0754 -17
250 71 0756 -16
247 72 0758 -17
125 -255 87 0752 -21-255 89 0754 -24-255 91 0756 -21-255 88 0758 -20
55 178 0745 -13
108 73 0754 -24
126 -221
3 0755 -18-224
1 0757 -21-230
0 0759 -19-42 164 0759 -22
289 179 0746 -14283
0 0748 -21
289 179 0750 -15289
2 0752 -15292
3 0754 -15289
0 0756 -19
292 179 0758 -1473
73
CQ IK3MAC JN55
RA4HCN IK3MAC JN55 OOO
RRR73CQ IK3MAC JN55CQ IK3MAC JN55
DL8EBW UA9HK MO99
DL8EBW UA9HK MO99
DL8EBW UA9HK MO99
DL8EBW UA9HK MO99
DL8EBW UA9HK MO99
DL8EBW UA9HK MO99
DL8EBW UA9HK MO99
UA9HK DL8EBW JO31 OOO
DJ9CZ RA3AQ KO85 OOOQRZ RA3AQQRZ RA3AQ
OH6KTL RA3AQ KO85 OOO
RO
73
RK3WWF I1ANP JN44
RK3WWF SV8CS KM07
RK3WWF SV8CS KM07
RK3WWF SV8CS KM07
RK3WWF SV8CS KM07
RK3WWF SV8CS KM07
RRR
CQ RK3WWF KO72
CQ RK3WWF KO72
CQ RK3WWF KO72
RK3WWF N5KDA EM41
CQ K7MAC DN13
CQ K7MAC DN13
CQ K7MAC DN13
YO9FRJ EB1DNK IN62
YO9FRJ EB1DNK IN62
YO9FRJ EB1DNK IN62
YO9FRJ EB1DNK IN62
CQ YO9FRJ KN34
YO9FRJ W1FKF FN42
K6MYC RN4AT LN29
K6MYC RN4AT LN29RO
KB8RQ UA9FAD LO88
WA8RJF K6MYC DM07 OOO
RRR
UA9FAD K6MYC DM07 OOO
UA9FAD K6MYC DM07 OOO
F6APE K6MYC DM07 OOO
RRR
RN4AT K6MYC DM07 OOO

114

DF

Pol

UTC

Freq
127

DF

Pol

UTC

dB

-99 175 0759 -18
340 90 0746 -18
337 90 0748 -19
340 90 0750 -19
340 110 0752 -13
340 115 0754 -14
335 135 0756 -22
332 135 0758 -23
128 222 77 0746 -22
219 68 0748 -24
219 76 0750 -23
219 72 0752 -25
216 70 0754 -22
216 76 0756 -24
216 64 0758 -23
130
27 41 0755 -15
18 42 0757 -18
1 46 0759 -16
131
44 119 0754 -21
44 114 0756 -19
105 160 0745 -17
111 159 0755 -21
111 155 0757 -17
111 153 0759 -17
313 90 0746 -19
313 90 0748 -19
319 96 0750 -19
322 90 0752 -21
325 90 0754 -19
139
88 148 0745 -1674
0 0755 -18
71 135 0757 -18
71 150 0759 -15
140 -91 95 0752 -25-94 90 0756 -26-68 90 0746 -21-71 90 0748 -21-71 90 0750 -22
141 174 141 0755 -19
171 135 0757 -17
169 140 0759 -19
152 -27 96 0757 -21-30 98 0759 -17
193 119 0750 -25
155 1110 0755 -18454 59 0746 -24
451 57 0748 -24
454 60 0750 -26
454 51 0752 -26
454 45 0756 -21
457 42 0758 -26
156 -221 103 0755 -6-215 104 0757 -5

Message________________KB8RQ UA9SL LO71
RRR
RRR
RRR
SP2JYR KB8RQ EM79 OOO
SP2JYR KB8RQ EM79 OOO
RRR73CQ AA1YN FN43
CQ AA1YN FN43QRZ AA1YN FN43QRZ AA1YN FN43
CQ AA1YN FN43
CQ AA1YN FN43
CQ AA1YN FN43CQ IK1UWL JN33CQ IK1UWL JN33CQ IK1UWL JN33
K1JT F6HVK JN27
K1JT F6HVK JN27
WA8CLT S52LM JN65 OOOCQ S52LM JN65
CQ S52LM JN65
CQ S52LM JN65
RO
73
K1JT WA8CLT EN80 OOO
RRR73
CQ EA6VQ JM19
RRR
73
CQ EA6VQ JM19
EA/DJ4UF DH7F
RO
RO
RRR
73
CQ EA3DXU JN11CQ EA3DXU JN11CQ EA3DXU JN11
KA1VHF DF2ZC JO30
KA1VHF DF2ZC JO30
CQ KA1VHF EM89
73
CQ N0AKC EN44
CQ N0AKC EN44
CQ N0AKC EN44
N5KDA N0AKC EN44 OOO
73
TK5JJ N0AKC EN44 OOO
N0AKC W3SZ FN20
N0AKC W3SZ FN20

4. The window labeled “Band Map,” at top left in the full-screen picture, presents a summary
list by frequency of all stations that MAP65 has decoded in the specified time interval.
Again, color codes are used to indicate aging. At the time of the screen dump, the fullcontents of the Band Map were as shown below. You can see that EA3DXU, DK5EW, and
W3SZ were operating on 144.103; IW4ARD, W0HP, LX/PA3FPQ, and AA7A were on
144.110; HB9Q and LZ1DP on 144.111; and so on.
5.
103 EA3DXU
103 DK5EW
103 W3SZ
110 IW4ARD
110 W0HP
110 LX/PA3
110 AA7A
111 HB9Q
111 LZ1DP
114 IK3MAC
116 UA9HK
116 DL8EBW
118 RA3AQ
123 I1ANP

123 SV8CS
123 RK3WWF
123 N5KDA
124 K7MAC
125 EB1DNK
125 YO9FRJ
125 W1FKF
126 RN4AT
126 UA9FAD
126 K6MYC
127 UA9SL
127 KB8RQ
128 AA1YN
130 IK1UWL

131 F6HVK
131 S52LM
131 WA8CLT
139 EA6VQ
140 DH7F
141 EA3DXU
152 DF2ZC
152 KA1VHF
155 N0AKC
156 W3SZThe 2.5 pages of un-edited EME traffic reproduced above contain no decoding errors, and such
performance is typical. JT65 signals contain powerful forward error correction in the form of a
Reed Solomon (63, 12) code. As a consequence, messages are nearly always decoded exactly as
sent, or not at all.
Some amusing peculiarities can be seen in the text copied from the Messages and Band Map
windows. At UTC 0746 you can see that W3SZ was decoded twice at 144.103, with frequency
offsets DF that differ by 105 Hz. Roger is located only 70 miles from my home; the lower
frequency is his tropospheric signal, and the higher one his Doppler-shifted EME signal, some 18
dB weaker. On 144.110, a DXpedition group signing LX/PA3FPQ is working a contest pile-up.
At the time of the snapshot they are working IW4ARD, and the operator is sending messages like
“ARD FPQ RRR” (rather than the shorthand RRR without callsigns) to avoid any possible
confusion over who is being worked. You can see that W0HP and AA7A are queuing up to work
the Luxembourg group next. At 144.140 you can tell that DH7FB is using an old version of WSJT.
He is calling EA/DJ4UF, but the older version did not handle add-on DXCC prefixes like “EA/”
automatically. Therefore WSJT sent his message as plain text, and the last letter of his callsign (the14th character in the message) was necessarily truncated since JT65 plain-text messages are limited
to 13 characters. Finally, you may notice that the polarization of JT65 shorthand messages isalways reported as 0, 45, 90, or 135 degrees. At present, a program shortcut causes thesepolarizations to be measured only to the nearest 45 degrees. This shortcut is unnecessary, and will
be removed.
Like WSJT, MAP65 does a “quick decode” at your specified QSO frequency, starting at t = 52 s ineach reception minute. This enables you to change your Tx message to respond to the message
received, in time to start your transmission at the top of the minute. Over the next ten seconds or so
the program finds and decodes all of the JT65 signals discernible in the 90 kHz passband (or,optionally, some designated portion thereof). The MAP65 decoder is robust and produces very few

garbage decodes, even in the presence of messy QRM. Once set up properly it finds, synchronizes,
matches polarization, and decodes JT65 signals entirely on its own — even amidst a jungle ofbirdies — without operator intervention. It does not make QSOs by itself, however. An operator
must make all decisions about what message to send and when a QSO has been completed. It
should be obvious that operator skill is required in many other ways, as well.
MAP65 is still in the process of development, but is already generating considerable excitement.
I shall turn now to answering a few of the many queries I have been receiving about it.
1. MAP65 runs equally well under Windows and Linux. WSJT runs on the FreeBSD andMacintosh platforms, as well, and I expect this will be true of MAP65 — but it has not yet
been tested because I do not own machines running those operating systems.
2. The Linrad “front end” of the Linrad-MAP65 wideband receiver can run on the same
computer as MAP65, or on another computer connected to the same local area network.
The network need be nothing more than an RJ45-style crossover cable between the twocomputers. If you use a single computer you will probably want to outfit it with twomonitors, since there is a lot of information to display.
3. MAP65 is memory hungry: the present version requires about 670 MB of RAM in addition
to that used by the operating system. I use a five-year-old 1.4 GHz machine with 1 GB ofmemory and its performance is acceptable, but a faster machine would be even better.
Linrad can be run on a slower computer with 256 MB of RAM or even less. Your monitors(one for Linrad, one for MAP65) should each display at least 1024 × 768 pixels. The soundcard on the MAP65 machine is used only for output of your transmit audio. All MAP65
input signals come in the form of ethernet packets sent by Linrad. You can listen to
narrow-band output from the receiver via the output sound card on the Linrad computer.
4. The present version of MAP65 assumes that you have a cross-polarized antenna and thatboth polarizations are available simultaneously on receive. In other words, you should have
two tower-mounted preamps and separate Rx feedlines for each polarization. My system
uses the WSE converters designed by SM5BSZ, especially for use with Linrad. My Linrad
computer runs Linux (the Kubuntu 6.06 distribution) and uses a Delta-44 soundcard tosample a pair of I/Q channels (four analog signals in all) at 96 kHz. With other receiving
hardware you could use real rather than complex sampling, with two channels being
sampled at 192 kHz.
5. In the future I will probably provide a MAP65 option for single-polarization use. You
should note, however, that on the VHF and lower UHF bands where EME conventionallyuses linear polarization, some of the power of the Linrad-MAP65 combination will be lost.
It’s hard to overstate the advantage gained by having both polarizations available
simultaneously for receiving EME signals on any band where linear polarization is thenorm. On 1296 MHz and above, where circular polarization generally prevails, a single
channel will be fully effective.
6. It should be possible to use the SDR-IQ and SDR-14 receivers from RFspace with theLinrad-MAP65 combination. This will require some modifications in MAP65 toaccommodate sample rates other than 96000 Hz; I hope to make the necessary changes
before long. Interfacing to FlexRadio’s SDR-1000 and SDR-5000 should also be possible,
but I have not yet explored the detailed requirements.
7. Like WSJT, MAP65 is an “open source” program. I hope and expect that others interested
in this newly developing area of amateur radio experimentation will contribute to its future
evolution. Please let me know if you have an interest! The most important qualifications
are enthusiasm and a willingness to learn. I knew essentially nothing about digitalcommunication techniques when I started the WSJT project six years ago. For me, as I
think for many of us, learning is a major part of the fun.
In summary, let me point out that many hundreds of operators are now using JT65 for making EME
QSOs. The highest levels of activity are on 144 MHz, but JT65 QSOs are being made regularly on
all of the worldwide amateur bands from 50 MHz through at least 2.3 GHz. Most stations use
conventional SSB transceivers with bandwidths around 3 kHz, and for them the narrow-band
WSJT program is suitable for transmission and reception of JT65. However, broadband softwaredefined receivers are becoming easier to build and more readily available commercially. Together
with software like the Linrad-MAP65 combination, they open a wide and very exciting range of
new possibilities for amateur communication.
The MAP65 program is available for free download on the WSJT Home Page,
physics.princeton.edu/pulsar/K1JT/. Its source code is available atdeveloper.berlios.de/projects/wsjt/.