Kiwi Raspberry pi and WSPRdaemon

Notes, rather than a tutorial for Windows users who wish to use wsprdaemon on a Raspberry pi.

July 2023 Note the older Buster OS must be used. (I said Wsprdaemon appeared to work on Bullseye but the memory leak problem is still there. It may appear to work but performance degrades.)


For a long time I had been aware of wsprdaemon used with a Kiwi on a Raspberry pi to execute advanced decoding of WSPR and lately also FST4W.  For some reason I never found what I considered to be a true beginner's guide. Too much Linux talk probably put me off. Use of the Terminal is required but is minimal for installation and operation of the daemon.

2023 The Kiwi seems ideal for FST4W and similar modes, said to be stable and accurate to better than 0.1Hz. Unfortunately out of production, not to be repeated. Other radios may be used but I have little knowledge of those. Red Pitaya, even the RTL dongle may be used but you need to check the suitability.

I have a Raspberry pi model 4 with 2GB memory, plenty to decode 8 channels of WSPR and some FST4W simultaneously.

Note the earlier Raspberry pi Operating System prohibited the decoding of FST4W.  Now wsprdaemon has been updated.

I installed the earlier Buster. Oct 2022 update works. It is a lighter build than Bullseye, needs less storage, a 16GB or even 8GB SD card may be used.

The Kiwi simply needs to be configured with 8 channels, all set for "regular use". The Kiwi on its Beagle board connects to the pi via the network, just like the PC. Note its LAN address and port from the "Network" page, example "Private IP address (inside your firewall/router): 192.168.1.103 [port 20001]" The Kiwi web interface is still available on a PC. Set wsprdaemon to 7 receivers then the 8th is available to use independently.


To install Buster on the pi:-

Insert an unused SD card. Connect HDMI, Mouse/keyboard dongle, LAN cable, power.

Hold "shift" when switching on, booting starts rpi-imager, - simple.

Select Buster legacy, SD card, follow instructions. After a while the Desktop appears, the Raspberry on top left opens the start menu, other icons the Terminal, the browser. With updates this can take some time.

June 2023 I said WSPRdaemon  works with "Bullseye", I was wrong.

Closing down the Raspberry Pi:-

Do not simply switch off, the SD card may get corrupted.

In the Desktop mode closing down is simple, by SSH a command is required. sudo shutdown -h now This will perform a system shutdown in a proper way. You can also specify a timer (in seconds), instead of the word "now", for example: shutdown -h -t 30. This will close the Pi in 30 seconds. Wait until the green LED (in same window as brighter  red LED) stops flashing before switching off.  If the Desktop is frozen SSH "Sudo Reboot" or "halt" may help.

If a card gets corrupted Windows will not help until you use "Diskpart", check Google.

Note there is a SD card copier on the Pi desktop or consider using 3rd party "Windows Disk Imager" to backup a working card. Also a backup of wsprdaemon.config is a good idea.

WSPRdaemon.

These notes are derived from http://wsprdaemon.org/index.html all information is there. But I do not find the navigation of those pages too obvious.

Install "Greenfield", first time installation.

https://github.com/rrobinett/wsprdaemon scroll down for info and full install instructions. You may use the pi's browser while you install. These notes are based on this.


Note:- commands may be copied and pasted into the terminal using right clicks. The keyboard up ^ button repeats a previous command so you may edit it without typing the whole command again.


Black icon on Taskbar - Open a terminal, type:- [No brackets]

sudo login [your user name]

[password]


While logged on download wsprdaemon by executing:

cd ~

git clone https://github.com/rrobinett/wsprdaemon.git  

Setup download is quick

cd home/[your name]/wsprdaemon  OR cd wsprdaemon


Use File Manager to rename /home/[your name]/wsprdaemon/wsprdaemon.conf unless you intend to edit it. 

For ease a simple file at, http://wsprdaemon.org/help.html  "an example is available here", The file:- http://wsprdaemon.org/ewExternalFiles/simple_wsprdaemon-1.conf   Edit it, take care to get your schedule formatted correctly.

 Rename and paste into /home/[your name]/wsprdaemon/


Then execute

./wsprdaemon.sh -V 

It will complain if the wsprdaemon.conf file is wrong, otherwise a lot of activity until finally it ends. Another long process.


To get in the correct directory type

cd home/[your name]/wsprdaemon/ OR maybe just cd wsprdaemon

Then when in ~/wsprdaemon:-

./wsprdaemon.sh -a Starts WD running [Note case is important and the leading dot!]

./wsprdaemon.sh -A Starts WD running as a background linux service which will automatically start after any reboot or power cycle of your server

./wsprdaemon.sh -z Stop any running WD, but it will start again after a reboot/power cycle

./wsprdaemon.sh -s Display the status of the WD service

./wsprdaemon.sh -h Help menu

Note ^ up button shows last command, just backspace to change switch. Further use of the up button scrolls back through previous commands.

November 3 2022 update:-

cd ~/wsprdaemon

./wsprdemon.sh -z

git pull

./wsprdemon.sh -a

You can then watch WD uploading to wsprnet.org by executing:

./wsprdaemon.sh -l n [lower case L]

Ctrl-C closes

WSPRdaemon.conf Notes.


### The value of BAND must match one of:

### WSPR bands:            2200 630 160 80 80eu 60 60eu 40 30 22 20 17 15 12 10 6 4 2 1 0

### Noise only bands:      WWVB WWV_2_5 WWV_5 WWV_10 WWV_15 WWV_20 WWV_25 CHU_3 CHU_7 CHU_14


Example schedule:- declare WSPR_SCHEDULE=(

    "00:00 G4ZFQ_1,2200,W2:F5 G4ZFQ_1,630,F5:W2 G4ZFQ_1,160 G4ZFQ_1,80 G4ZFQ_1,40  G4ZFQ_1,30 G4ZFQ_1,22 G4ZFQ_1,10,  "

)

### The optional 'MODE' arguments specify one or more packet decode modes:

###    WO     => for the 'Noise only' bands, which runs the 'wsprd' decoder in its fastest to run mode.  This mode cannot be specified with the other modes

###    W2     => legacy WSPR 2 minute mode (the default if no modes are specified)

###    F2     => FST4W-120  (2 minute) 

###    F5     => FST4W-300  (5 minute)

###    F15    => FST4W-900  (15 minue)

###    F30    => FST4W-1800 (30 minute)

###  For example "00:00   KIWI_0,630,W2:F2:F5 "   specifies that KIWI_0 should tune to 630M and decode WSPR-2,FST4W-120, and FST4W-300 mode packets

###  Specifying additional modes will add to the CPU burden of the system and even more significantly to the peak usage of the /tmp/wsprdaemon tmpfd (ramdisk) file system [The pi 4 is OK]

A quick way of changing the configuration could be to make several required schedule lines like [ "00:00 G4ZFQ_1,2200,W2:F5 " ]

Then comment the unwanted ones like

### "00:00 G4ZFQ_1,2200,W2:F5 "

Then you may stop wsprdaemon, edit the .conf by commenting the now unwanted line and uncommenting another line.

If this is a regular requirement then a schedule will be easier. 

If you have a problem and have to reinstall it might be helpful to have a backup of this file.

RX-888

This shows the basic entries for using an RX-888 with WD 3.1 https://groups.io/g/wsprdaemon/message/2332

To get WD 3.1 (still in beta), execute 'git checkout 3.1.0'


***********

Links

https://www.raspberrypi.com/ Home page

https://www.raspberrypi.com/news/buster-the-new-version-of-raspbian/ Buster, not so new but required for wsprdaemon.

https://forums.raspberrypi.com/viewforum.php?f=91  Forum beginners section

https://forum.kiwisdr.com/index.php?p=/  Kiwi Forum

/dev/shm/wsprdaemon/noise_graph.png 


QDX transceiver and Raspberry Pi etc.

Probably needing a better reference for wsprdaemon research https://groups.io/g/QRPLabs/message/98327 the QDX can provide 5 Watts. Configurations for all bands  up to 10m are being added.

***********

Miscellaneous notes.

Here follow some random notes made while I was learning. 

Check swap file usage https://groups.io/g/wsprdaemon/message/1641

***********

From -h

usage:

    /home/wsprdaemon/wsprdaemon/wsprdaemon.sh -[asz] Start,Show Status, or Stop the watchdog daemon

    -a                            => stArt watchdog daemon which will start all scheduled jobs ( -w a )

    -A                            => install wsprdaemon as a service started at linux boot/reboot/powerup time and then stArt it

    -z                            => stop watchdog daemon and all jobs it is currently running (-w z )   (i.e.zzzz => go to sleep)

    -Z                            => stop any running WD and also remove it from being run by Linux at boot/reboot/powerup time

    -s                            => show Status of watchdog and jobs it is currently running  (-w s ; -j s )

    -l     [e,n,d]                => show log files lines using 'tail -F'.  'e' = new ERROR lines from all logs files.  'n' = wsprnet.org uploading. 'd' = wsprdaemon.org uploading 

    -h                            => print this help message (execute '-vh' to get a description of the architecture of this program)

    

**********

/home/alan/wsprdaemon/uploads.d/wsprnet.d/spots.d   Shows accepted uploads? About 8 hours... 

**********

In the future to update daemon:- If your wsprdaemon install was done per the instructions then 

cd ~/wsprdaemon

should move you its directory and then type

git pull 

alan@raspberrypi:~/wsprdaemon $ git pull

Jan 2023:- This did not work, a warning that wsprdaemon.conf would be overwritten. I saved it and found 

~/wsprdaemon $ git reset --hard origin/master 

But be careful!

***********

SSH

Go to: Raspberry->Preferences->Raspberry Pi Configuration->Interfaces and enable SSH

Allows remote access/file transfer to a terminal.

ping raspberrypi.local

Shows pi lan address  

64 bytes from raspberrypi.wightfibre.local (192.168.1.112): icmp_seq=133 ttl=64 time=0.075 ms

Ctrl-z stops

FTP using SSH (SFTP) with File Zilla or similar.  https://www.makeuseof.com/tag/copy-data-raspberry-pi-pc/

To access terminal I used puTTy.

Set it for SSH

alan@192.168.1.112  Port 22

type in [your name's] password, nothing seen on terminal until it opens with "Enter"

Then you are in the pi's terminal and may use commands.

You are in /home/[your name]/

cd ~/wsprdaemon/

As a beginner all I can do is the basic start/stop/check

If not installed:-

 Type command: $ sudo apt-get install openssh-server.

Enable the ssh service by typing: $ sudo systemctl enable ssh

user whoami   


***********

VNC

From https://pimylifeup.com/raspberry-pi-vnc-server/ After installing Tight VNC I realised there was already a VNC server installed, it was uninstalled during the process. I have not yet checked what this was or how to use it.

sudo apt install tightvncserver

cd /

name@raspberrypi:/ $ ./bin/vncserver :1

You will require a password to access your desktops.

Password:    [It only seemed to accept 8 characters]

Verify:   

Would you like to enter a view-only password (y/n)? n

New 'X' desktop is raspberrypi:1

PC:-  

Install VNC I used "Tight VNC". Ignore registration, it installs as free. Or VNC-Viewer-6.22.826-Windows.exe

SSH may be used to start the VNC server and close it afterwards if you wish. 

alan@raspberrypi:~/wsprdaemon $ vncserver

vncserver -kill raspberrypi:1  [vncserver -kill :1 ?]

The server could be set to start a boot time. SSH and VNC may be used at the same time with SSH giving you terminal usage.

Connect to LAN address [eg 192.168.1.112:1 (the :1 matches the VNC server start instance.)]

***********

WSJT-X Install and using with VNC

If you can successfully install and run WSJT-x from Sourceforge on the Pi's desktop, then WD should install and run fine.

It is possible to rum WSJT-X on a Raspberry Pi. I used a Pi4.

The .deb on the WSJT-X site did not work for me, probably a "simple" way to fix the error message but not for me.

With no ides how to compile I tried the Hamradio app by KM4ACK, this is a script making it easy, WSJT-X just worked.

https://github.com/km4ack/pi-build is where it is.

The first video is detailed, possibly covering some things you know. After 15 minutes installing the OS and getting VNC/network installed has been covered. Then installing the script is detailed.

To save time when the script starts there is no need to select any more than WSJT-X. More apps may be installed at any time from the start menu. The rest of the video details app configurations, WSJT-X about 25 minutes in.

A support group https://groups.io/g/KM4ACK-Pi


WSJT-X with VNC:- The problem I encountered was audio selection, it was not obvious which to select. My QRP Labs QDX is identified  as "QDX Transceiver" in Windows or Linux desktop but with VNC that ident is not seen.  Another problem I had is scaling of the WSJT-X setup pane, there is overscan and the "OK" at the bottom is not seen. I eventually realised that the "Return" key does this. First try inputs that look similar when you get it right the receiver will work and hopefully a similar name will work for transmit. Mine was "Plughw:CARD=transceiver,DEV=0". Note with VNC there are two desktops, apps started on one are not seen on the other.


FST4W:- Eventually this may replace WSPR, the -120 mode is slightly better than WSPR. May 2023, FST4W is being used to investigate propagation modes on bands up to 17m. Provided the transmitted signal is very stable, and a stable receiver WSJT-X and WSPRdaemon can report the "Spectral Width", a measure of atmospheric disturbance. To get it to read Spectral Width put an empty file named "plotspec" in the working directory. To display the location of your current working directory, enter the command pwd.  The figures are not saved, they have to be copied and saved.

"Stable" is important. The standard Kiwi, and many other receivers will not really be good enough. Proper GPS discipline is essential for the higher frequencies.

**********

Check operation errors https://groups.io/g/wsprdaemon/message/1588

**********

Test FST4W decodes and FST4-W Notes. Frequency accuracy/stability. QDX, Kiwi.

Message 1586 [G3ZIL]  https://groups.io/g/wsprdaemon/message/1586   2. I've attached a wav file with an FST4W-120 signal of mine. Assuming the jt9 is in the default location, if you download the wav file into your Pi's home directory for user wsprdaemon then execute the following:

I put the .wav into the/bin directory and:-

./wsprdaemon/bin/jt9 --fst4w -p 120 -f 1500 -F 100 220719_1418.wav

or alan@raspberrypi:~/wsprdaemon $ ./bin/jt9 --fst4w -p 120 -f 1500 -F 100 220719_1418.wav

It should produce a decode

1418  11  1.1 1511 `  G3ZIL IO90 30                                   

<DecodeFinished>   0   1        0

where 1418 is the UTC time, 11 the SNR, 1.1 the delta time, 1511 the frequency, and 30 the power in dBm.

**********

June 2023:- FST4W is being used for advanced ionospheric propagation analysis. G3ZIL http://wsprdaemon.org/presentations.html has much of interest about this, and Grafana shows charts from uploaded data. For this analysis a very stable and accurate reference is required for transmitter and receiver to make accurate measurements of a signal's spectral width and frequency. Wsprdaemon measures to 0.1Hz, enough to show doppler on 20m. 

3 January 2024:- Note any Kiwi updates after this date require a 66.672 000 MHz clock due to the correction of a long-standing adjacent channel alias problem of the Kiwis. This frequency change is to maintain the accurate frequency measurement of WSPRdaemon.  For anyone with the automatic updates enabled my methods below will not work. My intention is to use a CTI OCXO, probably GPS disciplined to produce 25MHz as a reference for a QRP Labs Progrock 2.

At present very cheap used CTI OCXOs are available from Ebay. Testing one of these with my Kiwi I think for HF use a good one does not need GPS discipline for HF use except if extreme accuracy is required. Be careful and test, one of the seven I have purchased was faulty and could not be adjusted to exactly 10MHz. The adjustment voltage range is very small, experimenting with resistors and 10 turn potentiometer is necessary. I actually ended up with two ten turn potentiometers, one with a calibrated dial.

I used one of these 10MHz OCXOs, GPS disciplined, multiplied to 25MHz for the reference of a QRP Labs QDX transceiver.  https://turnislandsystems.com/qdx-external-clock-reference-interface/   I actually removed the TCXO of the QDX and feed the buffer with coax. When received by a local GPS disciplined RX it looks spot on. If WSJT-X is ever modified to read to 0.1Hz and measure spectral spread this modified QDX would also make a good receiver.

Another idea I have is to use this GPS disciplined 25MHz as a reference for a Si5351 set to 66.660MHz for a Kiwi reference. The QRP Labs Progrock should be suitable. (I think a standard GPS-controlled Progrock is unsuitable due to interference from the PPS.) If you use a GPS disciplined 66.6600MHz reference wsprdaemon.conf needs an entry to correct the frequency by 0.1Hz.

My tests show 27MHz produced by this method gives an accurate 27MHz, suitable for an RX-888 reference. 66.660MHz was not exact, about 0.3Hz off. Possibly due to the registers the Progrock selected?

OCXO

In my standard Kiwi receiver the GPS controlled system for making corrections to its local oscillator is just not good enough. I made an improvement by using a 10MHz  OCXO multiplied up to 66.666667MHz. (Two multipliers as above, seems good!) Comparing with another station that is actually GPS disciplined this looks very stable and with spectral width measurements down to 0.05Hz. Careful tweaking gets it spot-on. GPS discipline of the 10MHz will not work. Ideally a 66.6600000 GPSDO is needed but right now July 2023 I think my OCXO tweaked by observing a reference in the Kiwi IQ Display would suffice for 20m FST4W-120.

My method of setting 66.666667MHz with the 10MHz OCXO and two 3N502 multipliers *2*3.33 (recurring) using the IQExtension as described at the bottom of the Config tab of the Kiwi Admin page:-

The LO setting of Kiwi can only be set to the nearest Hz so to actually produce the rounded figure of 66.666667MHz the OCXO needs to run at 10.000000050MHz, that is 0.05Hz higher than nominal

Required, receive a known accurate reference, I used a Neo7 set to 14.998MHz, about the highest mine go to. Set the IQ extension as described, tune to 14.998. You will see the rotating dot, set the OCXO so this dot is stationary, matching GPS controlled signals exactly. Over the course of a day this will vary slightly, set it so the observed clockwise and anticlockwise rotations are equal. Of course the Kiwi/daemon measurement resolution is only 0.1Hz, far from the potential accuracy of GPS.

The IQ display of a Kiwi can give very precise indications of frequency. One revolution of the spot per second represents 1Hz, ten seconds 0.1Hz. Clockwise means the observed signal is higher than the Kiwi's tuned frequency.

***********

Other RPi OS Installation Methods:-

Do not use a faulty SD card... 

***********

To install Buster on Pi:-

To install on Raspberry Pi OS, type

sudo apt install rpi-imager

in a Terminal window.

***********

In Windows

This downloads the OS you choose and puts it on a SD card.

Official W32 SD burner https://www.raspberrypi.com/software/ 

**

OR

Download Buster legacy from 

https://www.raspberrypi.com/software/operating-systems/#raspberry-pi-os-legacy

Use 7zip to extract to .img >3GB


Install https://sourceforge.net/projects/win32diskimager/ disc imager.


Format SD FAT32, give it a recognisable Volume name.

Select image file. Ensure target is correct, volume name quoted. Write.

A successful write will show the files in File Manager.


***********

Upgrade on Pi:- https://www.raspberrypi.com/documentation/computers/os.html

BUT https://groups.io/g/wsprdaemon/message/1592

***********

(cp ~/wsprdaemon.save/wsprdaemon.conf ~/wsprdaemon/" copy/paste command)

***********

    To return to the home directory immediately, use cd ~ OR cd

    To change into the root directory of Linux file system, use cd /

    To go into the root user directory, run cd /root/ as root user.

    To navigate up one directory level up, use cd ..

    To go back to the previous directory, use cd -


Ctrl-C stops if terminal appears to freeze

**********

alan@raspberrypi:~/wsprdaemon $ ./wsprdaemon.sh -a

Thu 03 Nov 2022 07:16:02 UTC: setup_wd_auto_ssh() ERROR: there is no '~/.ssh' directory.  Run 'ssh-keygen' to create and populate it

alan@raspberrypi:~/wsprdaemon $

After Nov 3 update

 4 files changed, 157 insertions(+), 38 deletions(-)

alan@raspberrypi:~/wsprdaemon $ ./wsprdaemon.sh -a

Thu 03 Nov 2022 07:07:00 UTC: setup_wd_auto_ssh() ERROR: there is no '~/.ssh' directory.  Run 'ssh-keygen' to create and populate it

alan@raspberrypi:~/wsprdaemon $ ssh-keygen

Generating public/private rsa key pair.

Enter file in which to save the key (/home/alan/.ssh/id_rsa):

[Do not type anything, just "Enter" And for the following two times.] 

Enter passphrase (empty for no passphrase):

Enter same passphrase again:

Your identification has been saved in key.

Your public key has been saved in key.pub.

The key fingerprint is:

SHA256:uEcPnISgIcrOVUcDmnC6rM5bGDXWndbjbsRseJkCfuA alan@raspberrypi

The key's randomart image is:

+---[RSA 2048]----+

|.....oo+         |

|o.+o=.o.+        |

|.o.B +.+.o       |

|+ = + ++=.+      |

| *   E.+SX       |

|. o   .o*o       |

|.. .  . .o.      |

|o .    ..        |

| +.              |

+----[SHA256]-----+

***************************


Extract:-

###    Copyright...

This is VERSION = 3.0.5

     This program reads the configuration file wsprdaemon.conf which defines a schedule to capture and post WSPR signals from one or more KiwiSDRs

     and/or AUDIO inputs and/or RTL-SDRs.

     Each KiwiSDR can be configured to run 8 separate bands, so 2 Kiwis can spot every 2 minute cycle from all 14 LF/MF/HF bands.

     In addition, the operator can configure 'MERG_..' receivers which posts decodes from 2 or more 'real' receivers

     but selects only the best SNR for each received callsign (i.e no double-posting).


     Each 2 minute WSPR cycle this script creates a separate .wav recording file on this host from the audio output of each configured [receiver,band].

     At the end of each cycle, each of those files is processed by the 'wsprd' WSPR decode application included in the WSJT-x application

     which must be installed on this server. The decodes output by 'wsprd' are then spotted to the WSPRnet.org database.

     The script allows individual [receiver,band] control as well as automatic scheduled band control via a watchdog process

     which is automatically started during the server's bootup process.


alan@raspberrypi:~/wsprdaemon $ ./wsprdaemon.sh -h

usage:

    /home/alan/wsprdaemon/wsprdaemon.sh -[asz] Start,Show Status, or Stop the watchdog daemon

    -a                            => stArt watchdog daemon which will start all scheduled jobs ( -w a )

    -A                            => install wsprdaemon as a service started at linux boot/reboot/powerup time and then stArt it

    -z                            => stop watchdog daemon and all jobs it is currently running (-w z )   (i.e.zzzz => go to sleep)

    -Z                            => stop any running WD and also remove it from being run by Linux at boot/reboot/powerup time

    -s                            => show Status of watchdog and jobs it is currently running  (-w s ; -j s )

    -l     [e,n,d]                => show log files lines using 'tail -F'.  'e' = new ERROR lines from all logs files.  'n' = wsprnet.org uploading. 'd' = wsprdaemon.org uploading

    -h                            => print this help message (execute '-vh' to get a description of the architecture of this program)


    These flags are mostly intended for advanced configuration:


    -i                            => list audio and RTL-SDR devices attached to this computer

    -v                            => Increase verbosity of diagnotic printouts

    -d                            => Signal all running processes as found in the *.pid files in the current directory to increment the logging verbosity

                                     This permits changes to logging verbosity without restarting WD

    -D                            => Signal all to decrement verbosity


    Examples:

     wsprdaemon.sh -a                      => stArt the watchdog daemon which will in turn run '-j a,all' starting WSPR jobs defined in '/home/alan/wsprdaemon/wsprdaemon.conf'

     wsprdaemon.sh -z                      => Stop the watchdog daemon but WSPR jobs will continue to run

     wsprdaemon.sh -s                      => Show the status of the watchdog and all of the currently running jobs it has created


    Valid RECEIVER_NAMEs which have been defined in '/home/alan/wsprdaemon/wsprdaemon.conf':


        Index    Recievers Name          IP:PORT

          0           G4ZFQ_1       192.168.1.103:20001


    WSPR_BAND  => {2200|630|160|80|80eu|60|60eu|40|30|22|20|17|15|12|10|6|2|1|0}


    See the file wd_template.conf for more details about configuration options

VNC and ssh are not enabled by default on the Pi and it isn't at all clear how to do that on the Pi:

To do that 

Configurations of up to 14 bands run fine on 1GB Pi4bs, but you probably need to disable the graphical desktop.  


  https://groups.io/g/wsprdaemon/message/1641 Boot to Terminal mode to have more memory available.

To do that goto:

           Raspberry->Preferences->Raspberry Pi Configuration->System 

and select:   Boot to CLI. 

Memory Usage:-

alan@raspberrypi:~/wsprdaemon $ swapon -s

Filename                                Type            Size    Used    Priority

/var/swap                               file            102396  5632    -2

alan@raspberrypi:~/wsprdaemon $ free -m

              total        used        free      shared  buff/cache   available

Mem:           1872         382        1038         150         450        1246

Swap:            99           5          94

alan@raspberrypi:~/wsprdaemon $ top

top - 10:04:40 up 18 days, 22:37,  5 users,  load average: 2.17, 1.81, 1.82

Tasks: 258 total,   2 running, 256 sleeping,   0 stopped,   0 zombie

%Cpu(s):  5.4 us, 10.0 sy,  0.0 ni, 84.1 id,  0.2 wa,  0.0 hi,  0.3 si,  0.0 st

MiB Mem :   1872.2 total,   1041.5 free,    376.8 used,    453.9 buff/cache

MiB Swap:    100.0 total,     94.5 free,      5.5 used.   1250.1 avail Mem

Output continues in detail until Ctrl-C

This is with 7 receiver, 8 overnight W2 and 3 F5, seems to be the maximum, 4 F5 stopped upload when tried..

July 2023 quite a few on 20m FST4W-120 including OZ0RF on 20 m and FST4W-120.

KD2OM, KP4MD and N6GN 20m FST4W-120

October 2022 with updates, see i