Best Awesome Content
The idea was learned from wsprdaemon by @rrobinett, and a post back to 2018 by @k1ra http://forum.kiwisdr.com/discussion/1377/suggestion-ft8-decoder.
WSPR is good, yet FT8 mode is more and more popular nowdays, more signals, easer to pickup(compared to wspr, some people use maga watt to transmit FT8).
This can be useful in determining propagation conditions or in adjusting antenna. A wide band antenna kiwisdr located in urban area in my case, with 10 bands requests at the same time, can be easily reach over 10,000 spots within 24 hours.
It is also interesting to see how long it takes to spot 100 different DXCC/countries. (A well placed station with a decent antenna can do this within a week of monitoring, but the best systems can do it within a single day).
You can check the code from https://github.com/lazywalker/DigiSkimmer
So the problem here is that FT8 has a much greater time synchronization requirement (i.e. "wall clock" time) than WSPR does. The timing of the audio hitting FT8 must match what time the FT8 program is getting from the host operating system within a second or two at most.
The Kiwi produces a delay in the audio stream because it has some buffering. Buffering is required because it is the only defense against latency/interruption issues in the network, particularly when the audio is being delivered by the Internet over long distances with lots of potential points of interruption. So you are already being disadvantaged by the time delay of this buffering to begin with. Any additional cumulative delay by other software behaving badly (e.g. sample rate compensation by the VAC) may push the total timing over the FT8 limit.
One thing you could try is reducing the Kiwi buffer size to reduce the fixed delay. The penalty for doing this is that you will have much less immunity to short-term network interruptions. That means it's important to make sure there are no highly variable latency devices in the path between the Kiwi and computer running the browser, like a WiFi router or a cheap Ethernet switch that might behave badly with heavy traffic on the other ports.
Add "abuf=n.nn" to the URL where n.nn is a number in seconds of the minimum audio buffer size. Start with 0.5 and experiment with a range from 0.3 to 0.8
It would also be interesting to know on the control panel "Stats" tab what the value of the Audio "Qlen" (queue length) is when you are having problems versus what the value is when starting (this value will vary when the abuf= value is changed)
Thank you for illustrating the whole generational stereotype.
Very funny, made my morning.
OK here is the real answer:
These radios are things people have bought themselves, a few hundred dollars of investment initially, then add, buying and putting up antennas, sorting out noise issues even changing what we do around the house to help the radio perform well. Then we share them for people who are interested, want to listen to radio in another location, or who themselves cannot set up such a radio, we dont get anything back for that other than thinking that perhaps someone has benefited a little.
If the location is good, and the radio set up well then the limited number of slots is soon used up, its not like a streaming radio where numbers are almost unlimited its just a few users at any one time and each one takes up a chunk of our internet bandwidth. The way to allow everyone to get a little for testing is to limit connection time, 30 minutes is pretty extreme but you must be looking at a very popular Kiwi (mine is set at eight hours).
If you come to KiwiSDR with the wrong assumptions it does seem strange, if you realise these are real people trying to help each other for good will alone it may make sense, these are not streaming radio services. You may be able to find a less popular Kiwi that also picks up what you are looking to record they may have no time limit or a much longer one than 30 minutes.
From the CHANGE_LOG file:
v1.455,456 May 19, 2021
Config tab: Added button to reset passband fields to default values.
Connect tab: Improved proxy setup UI.
Right-click menu: Added "snap to nearest" mode. Setting is remembered/restored per Kiwi
visited just like freq/mode etc. Waterfall cursor differs when snap mode active.
When snap is active the freq step keys (j/i, left/right arrow keys) are modified so
the ctrl/alt-key steps the smallest amount and the unmodified key steps the same
amount as the snap (e.g. 9/10 kHz on MW). Usually the unmodified key step the
Changes to more easily support general (even non-SDR) FPGA development.
v1.453,454 May 14, 2021
Added default passband adjustment to admin page, config tab.
As each passband parameter field is changed (low, high, center, width) the other
fields will be automatically adjusted. So if you know you want a USB filter
with a low frequency of 300 Hz that is 3300 Hz wide just enter those two fields
and the high and width values will be derived. An error message will appear if
you attempt to define an invalid passband.
The former "CW offset" field has been removed. To set your desired CW offset
simply set the default passband center frequency of the CW/CWN mode passbands
to the offset value. E.g. If you want to hear a 1000 Hz tone in the CW modes
set the passbands to have a 1000 HZ center.
After the passband is changed on the admin page, existing user connections will have
to reload the page to get the new passband values.
From the CHANGE_LOG file:
v1.441 March 15, 2021
Audio camping bug fixes:
URL redirect now respects URL camp parameter. More work needed for other cases.
Audio now plays on Safari.
Added separate CW AGC threshold control.
Typically a lower AGC threshold is required for very narrow passband settings to
avoid low sensitivity. Since narrow passbands are most often associated with the
CW/CWN modes it was decided to add a separate AGC threshold control active only in
those modes. The original threshold control applies to all other modes.
The two are stored in their own separate browser cookies.
Fixed bugs in the Audio FFT display (the one that appears in 8-channel mode when more
than two channels are busy, or if the URL "no_wf" parameter is given):
The LSB passband is drawn in the same place as the actual FTT output.
The FFT display bins were flipped to be correct (i.e. low vs high frequency).
Autoscale mode works better than before.
Disabled compression ("comp") button in DRM/SAS/QAM modes since it has no meaning
and effect in these modes.
Fixed shift-click in SWBC bands not selecting nearest 5 kHz boundary.
Fix long audio latency on browsers that display "Click to start OpenWebRX" overlay.
From the CHANGE_LOG file:
v1.439,440 March 14, 2021
Channel queuing and camping:
When all the Kiwi channels are busy(*) it is now possible to enter a queue to wait
for the next available channel. The queue is FIFO and multiple parties can
occupy the queue (your queue order will be shown).
If all channels are busy you can also now "camp" on an existing connection and
hear the audio of that channel. The only adjustment is to change the audio volume.
Otherwise you experience all the changes performed by the owner of the channel
(tuning, mode, etc).
You can also be in the queue waiting for your own channel while camping.
It is possible to use camping even if free channels are available by connecting
using the URL parameter "camp", e.g. my_kiwi:8073/?camp
You might want to do this if you know there is already a connection you want to
camp on, but there are also free channels you don't want to unnecessarily occupy.
In theory camping requires only slightly more resources because the audio stream
is simply being duplicated and sent to the camper's network connection.
The Kiwi admin can configure the maximum number of campers allowed, including zero.
Later on we can look at adding audio-related features to camping that only require
(e.g. S-meter, recording, audio FFT waterfall/spectrum display).
These changes are complex and will no doubt have bugs and corner cases to fix.
(*) or unavailable due to password protection on those Kiwis that have split
Added C-QUAM AM stereo mode to SAM mode button which now cycles as: SAM/SAL/SAU/SAS/QAM
Based on the work of Github user MaPePeR, see: github.com/jks-prv/Beagle_SDR_GPS/issues/395
Remember that alt-click will toggle the mode buttons backwards, e.g.
alt-click on SAM wraps back to QAM (faster than clicking forward on SAM 4 times).
The same applies to the keyboard shortcut: shift-A is SAM mode forward to SAL
alt-shift-A is SAM backward to QAM.
Apply ITU region selection to band display (e.g. 40m ham band now stops at 7.2M for R1)
It is possible this change will cause problems if extensive customization of
the kiwi.config/config.js file has been made by the user. Please let us know if
this happens to you.
Here is a very early demonstration of using the Kiwi's synchronous AM detector (SAM) to subtract one sideband from the other. So a strong on-channel signal that is covering up a weaker one (either on-channel or close by) can be attenuated. This is something I'm tentatively calling "channel nulling". There is much work to be done, but this is at least an existence proof.
In the first image there is a local powerhouse on 882 kHz and a much weaker carrier on 880 kHz can just be seen in the RF waterfall (green arrow).
In the second image "null LSB" has been selected from the new menu on the SAM line of the audio tab (bottom right). This puts the SAM detector in "SAL" (synchronous AM LSB) mode such that the USB component is not passed through to the audio. However, just prior to that the USB component is subtracted from the LSB, and, given the sideband symmetry of AM signals, the LSB is effectively nulled (to a varying degree). In the spectrum display above the waterfall you'll note the weak station carrier 2 kHz away now appears above the noise and, sure enough, a Spanish language station can be heard which was impossible previously.
The "spectrum display" in this case is not the usual spectrum data from the RF waterfall but rather a single-sided spectrum of the audio channel (hence symmetry either side of center). Note that an extension called "FFT" has been selected. This is going to be an expansion of the existing "integrate" extension to include more general audio FFT and spectrum capabilities.
The RF waterfall doesn't change between these two images because it is from the RF/IF path and not the demodulated/nulled audio.
This technique is not perfect. Due to the subtraction involved It depends on excellent USB/LSB signal symmetry which can be easily upset by frequency selective fading. A very common problem on shortwave and medium wave at night (at a time when you're most likely to want to use such a feature). But in the presence of fading the nulling effectiveness will vary and it just might give you the chance to "bag a new one" on MW if conditions are right.
As usual, many thanks to Youssef of AirSpy who recently pioneered this idea. A superior implementation is found in SDR# (the "Co-Channel Canceller" https://swling.com/blog/?s=co-channel). Maybe someday I'll understand how he does it (but probably not, lol).
I agree. It should work like a browser. I'll update the bug list. There was something similar on there before.Also already on the list is the idea of having the classic A/B VFO buttons and a "band memory". So when you hop between bands using the select band menu it goes to the last selected frequency in the band instead of the mid-point, which is what it does now.