Friday, 18 March 2016

WSPR4 issue resolved

Important note: I post this here so that the information is shared with others. It is not mine and I do not claim any ownership of it and share this so that others might benefit from it.


The issue is one where with an upgrade in wspr spots appeared to be being lost.

This was explained:
"...no particular difficulties with earlier versions of WSPR and older 32-bit computers. Now I am running it on a 64-bit machine and there are slightly random problems of uploading spots. I see from the WSPR pages and various blogs that several people have these issues. My difficulty is that, apart from finding no ready-made answers, I cannot find any good write-up or even find any account of which of the myriad files might do what...."

This was how it was 'fixed'.

The process...

A few notes on WSPR-4
Downloading software
Follow George M1GEO: http://www.george-smart.co.uk/wiki/Compiling_WSPR Linux and
Windows.
Another useful site is VK2TPM: http://blog.marxy.org/2014/11/wspr-on-ubuntu-1410.html Linux
only.
I used older instructions as here:
http://www.george-smart.co.uk/w/index.php?title=Compiling_WSPR&oldid=5027 I am using Linux Mint-17 and have no direct experience of running WSPR under Windows.
Issues
WSPR-4 is a bit flaky, particularly in uploading to the database and maps, in both Linux and Windows. There is a newer version, WSPR-X, and this appears to be even more flaky according to various forums.
Uploading Spots to WSPR database:
Spots are held in file ALL_WSPR.TXT. This file is a complete log of all WSPR activity rx and tx.
It can be cleared from the gui. The location of the file is not too obvious:
~/.local/share/WSPR/ALL_WSPR.TXT
They are uploaded to the WSPR database. Confusingly there are references to the “old database interface” although this is the working interface.
1. In real time: check “Upload spots” box in WSPR gui; starts from the time when the box is checked. Sometimes data is not shown in interface, but it is always registered.
2. To upload all new spots manually. Open site http://wsprnet.org; click on “Database” in top right-hand corner; scroll to bottom of Database; click on Link to old database interface. Enter callsign and Maidenhead locator. In the box labelled “Location of ALL_MEPT.TXT” enter the location of ALL_WSPR.TXT. Then click on “Upload spots”.
3. To upload all new spots automatically.
1. Obtain a copy of curl. In linux : sudo apt-get install curl . This is a general program for transferring data to/from a server, with a huge number of options.
2. The key command is, all on one line:
curl -F allmept=@Desktop/ALL_WSPR.TXT -F call=g3udi -F grid=JO02de
wsprnet.org/meptspots.php
Desktop/ALL_WSPR.TXT is the location of ALL_WSPR.TXT, callsign and Maidenhead locator are obvious, allmept is the receiving file at the wsprnet target. The rest of the mumbo-jumbo are curl options.
3. Under Windows the procedure is similar.
4. See attached for my Linux script and the Windows option of N8FQ, taken from the WSPR site. Also screenshot of operation using HiQSDR + Quisk software.
Bob g3udi 18/3/2016

The Linux script and the Windows option noted above:

Linux script:

#!/bin/bash
#Program to run WSPR

printf "\n\n Setup Program for WSPR and SPOTs transfer \n\n"

while true
do
    printf "\n \n Enter: \n\n w to start wspr \n u to upload ALL_WSPR.TXT \n p to ping WSPR database\n q to quit \n\n"
    printf "\n User is  "
    whoami
    printf "\n"
    read com
#    echo $com
    if [ "$com" = "w" ]
    then
        printf "Running WSPR \n\n"
        cd ~/wspr
        ./wspr
    elif [ "$com" = "u" ]
    then
        printf "\nUploading ALL_WSPR.TXT\n\n"
        cd ~/.local/share/WSPR
        curl -F allmept=@ALL_WSPR.TXT -F call=g3udi -F grid=JO02de wsprnet.org/meptspots.php
        printf "\n"
    elif [ "$com" = "p" ]
    then
        printf "\n Pinging WSPR site  \n\n"
        ping -c 3q wsprnet.org
    elif [ "$com" = "q" ]       
    then
        printf "\n Leaving setup routine \n \n"
        break
    fi
done
###
Windows script:

Automatic ALL_MEPT.TXT uploads
------------------------------
To upload a file for processing, you need a way to submit it
as an HTTP POST. The file must be an element called "allmept",
and your callsign and grid must be specified with the "call" and
"grid" elements.

One way to do it is with cURL. Download the cURL Win32 binary from:
http://curl.haxx.se/download/curl-7.18.0-win32-nossl.zip

Unzip to your WSPR directory, then create a batch file with the
following contents:

:A
CLS
@ECHO ON
"C:\Program Files\WSPR\curl.exe" -F allmept=@"C:\Program Files\WSPR\ALL_MEPT.TXT" -F call=URCALL -F grid=AA00aa http://wsprnet.org/meptspots.php
@ECHO OFF
ECHO %TIME%
ping -n 200 127.0.0.1 >nul
goto A

The ping command is used as a delay of approximately 4 minutes.

If you have cygwin, just install cURL if you haven't already, then
enter this at a BASH prompt:

while true;
do
sleep 240;
curl -F allmept=@/cygdrive/c/Program\ Files/WSPR/ALL_MEPT.TXT -F call=URCALL -F grid=AA00aa http://wsprnet.org/meptspots.php > /dev/null;
done

Both of these methods assume you have installed WSPR in the 0.4
default location of C:\Program Files\WSPR. Change the location
of ALL_MEPT.TXT as appropriate.

-Joe, N8FQ



No comments:

Post a Comment