kiwiwfrecorder.py connects both to the 'SND' and the 'W/F' websocket streams. The 'W/F' stream contains sequence numbers for each waterfall line which are used to synchronize the waterfall to the audio data. These sequence numbers can also be used to attach to each waterfall line a corresponding GNSS time tag obtained from the 'SND' stream. As the waterfall data can arrive before or after the audio data, both are combined in a third thread using python Queues for thread-safe communication.
About half an hour of waterfall data was recorded on the AB1LD KiwiSDR using the highest KiwiSDR waterfall speed which turns out to provide waterfall data about for each SND frame, i.e, each 512/12000 seconds. Thanks to the owner for setting up this KiwiSDR and allowing unrestricted access!.
Then the recorded waterfall data (saved in a .npy formatted file) was rebinned in time to 1024/12000 second bins and exported as a .png file. Switching from python to octave, a search for chirp sounders was performed for chirp rates from 80 kHz/s to 130 kHz/sec in steps of 1 kHz/sec: for each chirp rate and for each start time the content of the waterfall bins was summed up along the corresponding line (Hough transform).
Two chirp sounders were found, each having a repetition rate of 720 seconds (12 minutes) with chirp rates of 82 kHz/sec and 100 kHz/sec, respectively. It might be interesting that this list of chirp sounders contains entries for three chirps sounders with 720 second periods located in Norfolk, VA, Kingsville, TX, and in Puerto Rico.
The plots below show zoomed waterfall diagrams around the chirps and on the bottom panel the result of the chirp search, i.e, the sums of waterfall bins along lines with a given slope.
1st chirp sounder detected using the AB1LD KiwiSDR |
2nd chirp sounder detected using the AB1LD KiwiSDD |
4 comments:
Hi,
This looks great.
I was trying to use the kiwiwfrecorder.py but it didn't seem to work.
Note that I have successfully extracted waterfall data from the server of interest using the microkiwi_waterfall.py script.
I have included the debug log output by the script
===================
python kiwiwfrecorder.py -s [server] --log=debug
2020-01-17 10:05:05,112 pid 6592 Failed to connect, sleeping and reconnecting error='Values instance has no attribute 'timestamp''
2020-01-17 10:05:05,112 pid 6592 Failed to connect, sleeping and reconnecting error='Values instance has no attribute 'timestamp''
2020-01-17 10:05:08,138 pid 6592 Failed to connect, sleeping and reconnecting error='Values instance has no attribute 'timestamp''
2020-01-17 10:05:08,141 pid 6592 Failed to connect, sleeping and reconnecting error='Values instance has no attribute 'timestamp''
2020-01-17 10:05:11,164 pid 6592 Failed to connect, sleeping and reconnecting error='Values instance has no attribute 'timestamp''
2020-01-17 10:05:11,167 pid 6592 Failed to connect, sleeping and reconnecting error='Values instance has no attribute 'timestamp''
2020-01-17 10:05:11,569 pid 6592 gc []
===================
Can you advise what im doing wrong, or what the problem might be?
Thanks very much,
Mark
Hi Mark,
which version of kiwirecorder do you use?
Can you try using https://github.com/jks-prv/kiwiclient/tree/jks-v0.1 ?
This kind of error showed up a while ago and was fixed.
Hi,
Yes I downloaded that a while ago.
Other factors might be that I am running python 2.7 from windows 10.
Should I be using python 3 for these scripts?
Please verify that you indeed use the latest version (and the correct branch jks-v0.1). In case it still does not work, please ask your question here: https://valentfx.com/vanilla/categories/kiwisdr-wsprdaemon-kiwirecorder
Both, python2 and python3 should work.
Post a Comment