First signals from WSPR on the Eee PC

Soon after I got interested in WSPR, I was interested in the idea of running it on my Asus Eee PC netbook. Partly because running a desktop PC and an Elecraft K3/100 all day was consuming a lot of power just to generate a 1W signal. And partly because in any case, I was interested in using WSPR to test the effectiveness of some portable antennas, which needs to be done out of doors.

Unfortunately I could not get WSPR to run on the Eee PC. My work laptop runs a similar Linux distribution to the Eee PC so I downloaded the WSPR source code and tried to compile it following OH2GQC's instructions. I didn't have too high expectations of success as compiling complex Linux applications is a nightmare - one of the reasons why my shack PC has reverted back to Windows XP - but I didn't expect to be thwarted so early in the process, by being told there was no FORTRAN compiler even though I had just installed one.

I tried to run the WSPR Windows applications under Wine, the Windows compatibility layer for Linux, but that didn't work either. The Windows GUI version WSPR 1.0 spewed out a lot of Python-related errors to the console and then quit. The old command line version 0.3 - still available from K1JT's site - did work, at least I heard the audio tone coming out of the speaker, but it was subject to a lot of clicky interruptions, I suspect due to the underpowered Eee PC not keeping the sound card buffers topped up with audio samples.

So I decided to write my own WSPR application which would run natively under Linux! After all, I had K1JT's source code and I knew a bit of FORTRAN! Well, it doesn't look so simple, but it will be an interesting exercise in understanding what goes on, as I have to convert it from FORTRAN to Pascal, to use in the open source Lazarus development system that I use.

I used the Windows WSPR.EXE to dump out a list of symbols for the beacon message "G4ILO IO84 30" as described in K1JT's Quick Start file, and then wrote a program to generate the audio signal from that. I then added control code to start the transmission at the start of a 2-minute segment, and to control the rig PTT using the serial port.

The result is on the air as I type this, with the Eee PC connected to my Elecraft K2. I can't receive WSPR signals with this program, of course. Nor can I transmit different text without using WSPR.EXE to generate a new list of symbols. Working out how to do that will probably keep me busy for the next few months!