Existe la posibilidad de usar de forma conjunta KiwiSDR con el programa WSPR Daemon instalado en un entorno LINUX (p.e. Raspberry Pi) y conectados por red local, lo cual permite recibir de forma simultánea hasta 8 bandas de WSPR a la vez (por ejemplo: 160m, 80m, 40m, 30m, 20m, 17m, 15m y 10m).
Ademas permite medir el nivel de ruido y almacenarlo en https://www.wsprdaemon.org/grafana y subir adicionalmente a WSPR la información a PSKreporter
Instalación
git clone https://github.com/rrobinett/wsprdaemon.git
remote: Enumerating objects: 9683, done.
remote: Counting objects: 100% (474/474), done.
remote: Compressing objects: 100% (150/150), done.
remote: Total 9683 (delta 384), reused 387 (delta 318), pack-reused 9209 (from 2)
Recibiendo objetos: 100% (9683/9683), 21.47 MiB | 1.07 MiB/s, listo.
Resolviendo deltas: 100% (6289/6289), listo.
Actualizando archivos: 100% (405/405), listo.
cd wsprdaemon
./wsprdaemon.sh -h
Updated user 'pi' to auto-sudo
A reference to '~/wsprdaemon/bash-aliases' has been added to ' ~/.bash_aliases'
Tue 25 Aug 2026 18:05:06 UTC: remote_access_connection_status() wsprdaemon.conf has not yet been configured. Edit it and run this again
-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)
-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
Configurar el archivo wsprdaemon.conf
cp wd_template.conf wsprdaemon.conf
nano ~/wsprdaemon/wsprdaemon.conf
Editar parámetros clave:
- Descomentar la línea borrando '#' y cambiar "<....>" por el valor
- Tu indicativo de radioaficionado (Callsign)
- # WSPRNET_REPORTER_ID="<YOUR_REPORTER_ID>"
- WSPRNET_REPORTER_ID=
- Grid Locator (ej. BP51...)
- # REPORTER_GRID="<YOUR_GRID>"
- Dirección IP de tu KiwiSDR en la red local.
- declare RECEIVER_LIST=( "KIWI_0 192.168.1.27:8073 ${WSPRNET_REPORTER_ID} ${REPORTER_GRID}<SDR_PASSWORD_IF_NEEDED>")
- D e los 8 canales de que dispone KiwiSDR solamente tomamos 6, pero definimos unicamente 4
- declare WSPR_SCHEDULE_only_kiwi=( "00:00 KIWI_0,80,W2:F2:F5 KIWI_0,40,W2:F2:F5 KIWI_0,20,W2:F2:F5 KIWI_0,10,W2:F2:F5" )
- Las 8 bandas/frecuencias en las que quieres que sintonice los canales audio.
- No se da acceso remoto a los desarrolladores de WSPRDAemon
- # RAC=<RAC_INTEGER_ID>
- No se activa para que subida el nivel de ruido a la B.D. de WSPR
- SIGNAL_LEVEL_UPLOAD="no"
- No se activa la subida a Grafana
Ejemplo que funciona para 4 canlaes con KiwiSDR
WSPRNET_REPORTER_ID="EA5JTT"
REPORTER_GRID="IM99kp"
WSPRNET_REPORTER_ID="${WSPRNET_REPORTER_ID-EA5JTT}"
REPORTER_GRID="${REPORTER_GRID-IM99KP}"
ANTENNA_DESCRIPTION="End-fed 16.2m"
KA9Q_WEB_TITLE="${WSPRNET_REPORTER_ID}_@${REPORTER_GRID}_${ANTENNA_DESCRIPTION}"
## The default is to upload extented spot and background noise level data to wsprdaemon.org
## These are small files, so they add little to the site's Internet bandwidth usage
# SIGNAL_LEVEL_UPLOAD="no"
## If "yes" the site uploads a 150 KByte .png file to wsprnet.org
## where it can be viewed at http://wsprdaemon.org/graphs/${WSPRNET_REPORTER_ID}/
## Since better, configurable Grafana graphs are available from the wsprdeamon.org,
## to conserve your site's Internet usage I now discourage the use of this feature
#SIGNAL_LEVEL_UPLOAD_GRAPHS="yes"
declare RECEIVER_LIST=( "KIWI_0 192.168.1.27:8073 EA5JTT IM99kp NULL" )
declare WSPR_SCHEDULE_only_kiwi=(
"00:00 KIWI_0,80,W2:F2:F5 KIWI_0,40,W2:F2:F5 KIWI_0,20,W2:F2:F5 KIWI_0,10,W2:F2:F5")
declare WSPR_SCHEDULE=( "${WSPR_SCHEDULE_only_kiwi[@]}" )
Parametros de decodificacion
W2 WSPR clásico de 2 minutos (el modo "de toda la vida", decodificado con wsprd) — es el que por defecto se usa si no especificas nada
F2 FST4W-120 (variante FST4W de ciclo de 2 minutos)
F5 FST4W-300 (ciclo de 5 minutos)
F15 FST4W-900 (ciclo de 15 minutos)
F30 FST4W-1800 (ciclo de 30 minutos)
W0 Modo "solo ruido" — no decodifica, solo mide nivel de ruido de fondo (no se puede combinar con los demás)
En KiwiSDR
En ADMIN => CONTROL =>
- Number of simultaneous channels available for connection by non-Kiwi apps = 4
En ADMIN => EXTENSION => FT8/WSPR
- Poner todos los canales como "regular use"
Arrancar el servicio
Iniciar el daemon con ./wsprdaemon.sh -a
A partir de ahí, y tras instalar todas las dependencias que faltan que en nuestro caso con ( time, vim, at, gawk) el script se ejecuta en segundo plano, se conecta al KiwiSDR por red, decodifica cada tramo de 2 minutos y envía los datos automáticamente a WSPRnet, PSKReporter y bases de datos de ruido https://www.wsprdaemon.org/grafana, si se ha configurado así en el fichero
Comandos
Parada
./wsprdaemon.sh -z
Arranque
./wsprdaemon.sh -a
Estatus
./wsprdaemon.sh -s
KIWI_0,80,W2:F2:F5: KIWI_0,80 decoding Pid = 363202
KIWI_0,80,W2:F2:F5: KIWI_0,80 recording Pid = 363616
KIWI_0,40,W2:F2:F5: KIWI_0,40 posting Pid = 363223
KIWI_0,40,W2:F2:F5: KIWI_0,40 decoding Pid = 363298
KIWI_0,40,W2:F2:F5: KIWI_0,40 recording Pid = 363811
KIWI_0,20,W2:F2:F5: KIWI_0,20 posting Pid = 363347
KIWI_0,20,W2:F2:F5: KIWI_0,20 decoding Pid = 363455
KIWI_0,20,W2:F2:F5: KIWI_0,20 recording Pid = 364071
KIWI_0,10,W2:F2:F5: KIWI_0,10 posting Pid = 363477
KIWI_0,10,W2:F2:F5: KIWI_0,10 decoding Pid = 363600
KIWI_0,10,W2:F2:F5: KIWI_0,10 recording Pid = 364187
Found 4 running jobs
Tue 25 Aug 2026 21:59:10 UTC: get_status_of_daemon() Daemon ' watchdog_daemon' is running with pid 362800 in '/home/pi/wsprdaemon'
Tue 25 Aug 2026 21:59:10 UTC: get_status_of_daemon() Daemon ' upload_to_wsprnet_daemon' is running with pid 363077 in '/home/pi/wsprdaemon/uploads/wsprnet/spots'
Tue 25 Aug 2026 21:59:10 UTC: get_status_of_daemon() Daemon ' upload_to_wsprdaemon_daemon' is running with pid 363084 in '/home/pi/wsprdaemon/uploads/wsprdaemon'
Comentarios
La versión de KiwiSDR 2 permite configuar directamente hasta 8 canales para recibir WSPR por lo que no es imprescindible usar WSPR Daemon para la decodificación en paralelo. WSPRDaemon aporta el poder subir intormacion sobre el ruido e informar a PKreporter y Grafana de información, y según algunos autores podria obtenerse un porcentaje mayor de decodificación (Se está comprobando).
Ver también
Referencias
Las modificaciones, configuraciones y procedimientos descritos en este sitio pueden implicar riesgos técnicos, legales o de seguridad. El autor no se responsabiliza del mal funcionamiento de los equipos, daños permanentes, pérdida de garantía ni de posibles infracciones legales derivadas del uso de esta información.
El lector asume plena responsabilidad por cualquier acción que decida realizar basándose en el contenido de este blog.
© 2026 EA5JTT. Queda prohibida la reproducción total o parcial sin autorización expresa del autor.


No hay comentarios:
Publicar un comentario