rrobinet

I have configured several Kiwis for wifi access by attaching an inexpensive router configured as a Wifi client to the ethernet port of the Kiwi. This $25 TP Link has worked well for me: https://smile.amazon.com/TP-Link-Wireless-Portable-Travel-Router/dp/B00TQEX8BO/ref=sr_1_14?keywords=tplink+wifi+router&qid=1548188019&sr=8-14 In principle one could enable the internal BB Wifi or attach a USB wifi adapter, but I am reluctant to fiddle with the Kiwi's OS.

About

Username
rrobinet
Joined
Visits
1,247
Last Active
Roles
Member
Points
7
  • 8 channel Kiwi WSPR decoding script 'kiwiwspr.sh' using Raspberry Pi or other external server

    Thanks. It is gratifying to be part of such an active and dedicated group.
    Everyone using the Kiwi, especially for WSPR, should upgrade to v 1.242. It corrects a bug which introduced -40dB +/- 23 Hz sidebands to spots of > +10 dB SNR. Even more important, it appears to have improved SNRs by about 2 dB which means the Kiwi will detect low SNR spots which it missed before.
    n6gnG0LUJSWLJO43GeneLX1DQ
  • Some Observations While Using the KiwiSDR to Spot WSPR Stations [fixed in v1.242]

    Thanks Christoph. You have given us all some new insight into the +/- 23 Hz sideband problem and it appears that John is studying it.
    Do you have any insights into the other SNR problem? I suspect the CIC downconversion, but I know very little about digital signal processing.
    WA2ZKD
  • 8 channel Kiwi WSPR decoding script 'kiwiwspr.sh' using Raspberry Pi or other external server

    Version 1.1e has been in reliable service at a number of sites for a week. To summarize a clean installation:

    1) create the directory /home/pi/ham/kiwiwspr

    2) copy kiwiwspr-1-1e.sh to /home/pi/ham/kiwiwspr/kiwiwspr.sh

    3) run "chmod +x /home/pi/ham/kiwiwspr/kiwiwspr.sh"

    4) run: "/home/pi/ham/kiwiwspr/kiwiwspr.sh -h" until you are no longer prompted to install any of the following programs:
    The program will prompt you to install kiwirecorder.py. Download it from https://github.com/jks-prv/kiwiclient/tree/jks-v0.1 to /home/pi/ham/kiwiwspr/kiwiclient-jks-v0.1
    The program will prompt you in install WSJT-x from http://www.physics.princeton.edu/pulsar/K1JT/wsjtx.html
    The program will prompt you to install 'bc' by running: 'sudo apt-get install bc'

    5) Edit the prototype configuration file '/home/pi/ham/kiwiwspr/kiwiwspr.conf' created during step #4 to reflect:
    a) The name for your Kiwi(s), their IP addresses and Grid locator
    b) The schedule of WSPR bands for it to spot. Configure only hour '00:00' if you want the same configuration 24/7

    6) run "./kiwiwspr.sh -j a" to start the capture jobs defined in your kiwiwspr.conf

    7) print the status of your jobs by running "./kiwiwspr.sh -j s"

    Once "./kiwiwspr.sh -j s" lists capture and decode daemons for each of your configured bands:

    8) run "./kiwiwspr.sh -w a" to start the watchdog daemon which will every 2 minutes verify that your jobs are still running and execute the configuration changes defined in your kiwiwspr.conf
    "./kiwiwspr.sh -w a" will also configure your Pi so the watchdog daemon runs every time your Pi is powered up or rebooted.

    Finally, each job writes 200 Kbps of wav data to files in /tmp/kiwi-captures/... If that file tree is at its Pi default location on the microSD, this writing will significantly shorten the lifetime of the microSD. To avoid that wear, configure your Pi's /etc/fstab to make /tmp/kiwi-captures/ a ramdisk file system:

    pi@PiKPH:~/ham/kiwiwspr $ tail -2 /etc/fstab
    ### For kwiwwspr.sh capture files
    tmpfs /tmp/kiwi-captures tmpfs defaults,noatime,nosuid,size=100m 0 0
    pi@PiKPH:~/ham/kiwiwspr
    n6gnPowernumpty
  • 8 channel Kiwi WSPR decoding script 'kiwiwspr.sh' using Raspberry Pi or other external server

    Version 1.1e has been in reliable service at a number of sites for a week. To summarize a clean installation:

    1) create the directory /home/pi/ham/kiwiwspr

    2) copy kiwiwspr-1-1e.sh to /home/pi/ham/kiwiwspr/kiwiwspr.sh

    3) run "chmod +x /home/pi/ham/kiwiwspr/kiwiwspr.sh"

    4) run: "/home/pi/ham/kiwiwspr/kiwiwspr.sh -h" until you are no longer prompted to install any of the following programs:
    The program will prompt you to install kiwirecorder.py. Download it from https://github.com/jks-prv/kiwiclient/tree/jks-v0.1 to /home/pi/ham/kiwiwspr/kiwiclient-jks-v0.1
    The program will prompt you in install WSJT-x from http://www.physics.princeton.edu/pulsar/K1JT/wsjtx.html
    The program will prompt you to install 'bc' by running: 'sudo apt-get install bc'

    5) Edit the prototype configuration file '/home/pi/ham/kiwiwspr/kiwiwspr.conf' created during step #4 to reflect:
    a) The name for your Kiwi(s), their IP addresses and Grid locator
    b) The schedule of WSPR bands for it to spot. Configure only hour '00:00' if you want the same configuration 24/7

    6) run "./kiwiwspr.sh -j a" to start the capture jobs defined in your kiwiwspr.conf

    7) print the status of your jobs by running "./kiwiwspr.sh -j s"

    Once "./kiwiwspr.sh -j s" lists capture and decode daemons for each of your configured bands:

    8) run "./kiwiwspr.sh -w a" to start the watchdog daemon which will every 2 minutes verify that your jobs are still running and execute the configuration changes defined in your kiwiwspr.conf
    "./kiwiwspr.sh -w a" will also configure your Pi so the watchdog daemon runs every time your Pi is powered up or rebooted.

    Finally, each job writes 200 Kbps of wav data to files in /tmp/kiwi-captures/... If that file tree is at its Pi default location on the microSD, this writing will significantly shorten the lifetime of the microSD. To avoid that wear, configure your Pi's /etc/fstab to make /tmp/kiwi-captures/ a ramdisk file system:

    pi@PiKPH:~/ham/kiwiwspr $ tail -2 /etc/fstab
    ### For kwiwwspr.sh capture files
    tmpfs /tmp/kiwi-captures tmpfs defaults,noatime,nosuid,size=100m 0 0
    pi@PiKPH:~/ham/kiwiwspr
    n6gnPowernumpty
  • In case there were any doubts.. [VP6D]

    It is nice to see my two stations are in use! I'll include this in my KPH presentation at today's Pacificon
    WA2ZKD
  • 8 channel Kiwi WSPR decoding script 'kiwiwspr.sh' using Raspberry Pi or other external server

    I have attached version 1-1e in which the watchdog daemon purges zombie wav files. I found that on a number of beta test systems the /tmp directory used to store the 2 minute audio sample files was completely filling the partition when the Pi lost contact with the Internet for minutes or hours. So this version fixes that problem and is in all other ways completely backwards compatible.
    To upgrade: For safety save away your current kiwiwspr.sh, then *Replace* your current .../kiwiwspr.sh with the attached file.
    WA2ZKDKK6PR
  • 8 channel Kiwi WSPR decoding script 'kiwiwspr.sh' using Raspberry Pi or other external server

    I have attached version 1-1e in which the watchdog daemon purges zombie wav files. I found that on a number of beta test systems the /tmp directory used to store the 2 minute audio sample files was completely filling the partition when the Pi lost contact with the Internet for minutes or hours. So this version fixes that problem and is in all other ways completely backwards compatible.
    To upgrade: For safety save away your current kiwiwspr.sh, then *Replace* your current .../kiwiwspr.sh with the attached file.
    WA2ZKDKK6PR
  • kiwirecorder.py crashes

    I run multiple kiwirecorder.py client sessions on one server. At KPH there are two servers, one a Raspberry PI 3b, while the second server is an odroid. Both servers experience the crashes/restarts at about the same irregular rate. Currently both clients are configured to run 11 client sessions on each server. On the Pi, 8 sessions go to Kiwi76 and 3 LF sessions to Kiwi72. On the odroid 8 sessions go to Kiwi75 and 3 sessions to Kiwi72. The crashes occur on both servers and were occurring when only the Pi clients were running. I have experimented with configuring the Pi to run 20 clients, 8 to Kiwi76, 8 to Kiwi75 and 3 to Kiwi72 and the crash frequency went up significantly to several times per hour. I have two beta sites running my code, one on an odroid and a second on a x86 Debian, and both those sites experience crashes, but at lower frequency due to, I believe, both running 8 or fewer clients.
    WA2ZKD
  • V 1.214 WSPR-autorun on 8 channels not so effective as on 4 channels [known limitation]

    You can work around the Kiwi's autowspr CPU limits in both 4 and 8 channel mode by running on a Pi the kiwiwspr.sh script I have just published to the "Problems Solved' forum. I have tested the script on a Pi and it can capture 20+ streams from 3 Kiwis at once and decode and post them using the WSJT-x 1.9.1 'wsprd' application.
    WA2ZKD
  • 8 channel Kiwi WSPR decoding script 'kiwiwspr.sh' using Raspberry Pi or other external server

    The Kiwi's WSPR extension is a marvel and provides a much better view of the WSPR band operation than does WSJT-x.
    However the Kiwi is not quite as good as WSJT-x at decoding spots on crowded and/or noisy bands with many low level signals.
    The attached script addresses many of the Kiwi's limitations as a WSPR decoder by moving the WSPR signal processing to an external server.
    For example, at KPH (http://kphsdr.com/) this script has been simultaneously and reliably decoding 14 WSPR bands from two Kiwis on one Raspberry Pi 3b (not even a 3b+) for several months.
    Once installed on the Pi (or other Linux computer) the script runs automatically in the background after power up or reboot.

    The benefits over using the Kiwi's internal autowspr decoder extension are:

    1) You can decode 8 WSPR bands at once on one Kiwi. The Kiwi can be configured to autowspr 8 bands but its CPU is severely overtaxed and thus very few spots get decoded in that mode.
    2) On busy bands even in 4 channel mode the Kiwi CPU runs out of time, in which case kiwiwspr.sh will decode 1.5-3x the number of spots
    3) I believe that the Kiwi's autowspr decoder is derived from an older version of 'wsprd', so even on quiet bands kiwiwspr will extract 20% more spots than autowspr
    4) My script decodes using the recent 'wsprd' decoder included in the WSJT-x 1.9.1 package and can easily be upgraded to any newer version of 'wsprd'
    5) kiwiwspr.sh supports scheduled band changes, so you can spot on 630 and 160M at night and switch those channels to 15M and 10M during the day
    Times can be specified as HH:MM or 'sunrise/sunset +- HH::MM'

    I have tried to make installation self documenting after you copy it into a directory on your Pi, make it executable (chmod +x kiwiwspr.sh), and execute './kiwiwspr.sh'.
    Of course I will be happy to help with installation and debug and am soliciting more beta testers who will inevitably uncover bugs and feature improvements.

    Since installing this script KPH has become one of the top spotters in the world and second only to K9AN (with his more favorable central USA QTH) in North America. My hope is that more Kiwi owners will join KPH at the top of the lists.

    Many thanks go to John Seamons who provided the extensions to his kiwirecorder.py script upon which kiwiwspr.sh is built.
    WA2ZKD