Best Content of All Time

  • What an impressing radio the KiwiSDR really is.

    I bought my first KiwiSDR in the autumn of 2016. It has been on 24 hours all days and years since. That is over 70000 hours without any problems. It has been an amazing journey with a constructor that really stands behind his product. The continuous evolution of the firmware is itself impressive enough. I have many radios after 50 years as a licensed ham radio operator. KiwiSDR is by far one of my best investments ever. Many many thanks John. 73 de Hans LA9LT

    F5AFYHB9TMCIK8SUTTremolatnitroenginestudentkrabensonFrankinAusmgG8JNJand 1 other.
  • FT8 Skimmer base on kiwirecoder

    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.
    image

    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

    BD7MQB Michael
    jksrz3dvpHB9TMC
  • v1.813

    From the CHANGE_LOG file:

    v1.813 June 14, 2025

      SNR measurement changes: (thanks VA3ROM et al)

        Additions to admin control tab, SNR section:

          New measurement intervals: 1, 5, 10 minutes and custom interval.

          Remaining minutes to next measurement shown.

          One custom band definition with frequency/zoom fields.

          Checkbox to also measure ham bands and AM broadcast band.

          Checkbox to force measurement after an antenna change.


        Discussion:

        The custom band, if setup, is added to the current default bands appearing in the

        my_kiwi:8073/snr query JSON result. There is no user interface feedback if you enter

        invalid values into the custom band fields. So check your combination of freq lo/hi and zoom

        carefully to make sure they result in a freq range that fits entirely within a single

        waterfall span. Otherwise the custom band will be ignored and not appear in the JSON result.

         

        The ham/AM band checkbox adds all 12 ham bands and the AM broadcast band to the JSON result.

        The ITU setting determines the upper freq limit of some bands (e.g. 40m 7200 vs 7300 kHz,

        AM BCB 1602 vs 1700 kHz).

         

        When "measure on antenna change" is active there is a 5 second delay after the last antenna

        selection before the measurement starts.

         

        JSON output changes to the /snr URL interface:

        The measurement interval field "ihr" (hours) is now "imin" (minutes).

        A new field "ant" shows the antenna that was selected when the measurement was made.

        A value of zero means antennas are grounded or the antenna switch is not configured.

        Note that for antenna mixing setups only the last antenna switched is given. Not all the

        antennas cumulatively.


      Changes to support camp mode by kiwirecorder: (thanks Ben)

        You may know that when all channels are full, and you try to connect, you are presented with

        a camp/queue panel that allows you to "camp" onto another listener's channel and hear what

        they are hearing. But without being able to control anything (except volume/mute).

        Kiwirecorder now has this capability. Changes were needed on the Kiwi side to support this.

         

        The envisioned use case is as follows. You have an application running on another computer

        that processes streamed audio via the netcat option of kiwirecorder. But you want to use

        a regular Kiwi connection and its full user interface. You just want the netcat stream to

        "follow" what the Kiwi UI is hearing so your external application can process the same audio.

        An example of such an application might be a modulation classifier that could never run on

        the Kiwi itself due to the limited processing power of the Beagle. To achieve this you

        simply tell kiwirecorder which Kiwi channel number to camp on. In camp mode kiwirecorder

        will do this instead of making a new, separate connection to the Kiwi. Communication over a

        separate stream back to the Kiwi with application results is still to be implemented.

       

      Fixed problem with Debian 11 upgrade function on admin backup tab. (thanks 2E0SXX)

      DRM extension: Improved sorting when station schedules are displayed by time.

      Fixed bug preventing timezone setup when only source of lat/lon was IP address geolocation info.



    nitroenginestudentkraHB9TMCsmgIK8SUTG4ZFEjimjackiiTremolatG8JNJF5AFY
  • QiwiQ a KiwiSDR client for Android: looking for feedback, testers and comments

    Hi all,

    I’ve been programming a mobile client for the KiwiSDR protocol, and I finally have something worth sharing: QiwiQ. 

    It’s a dark-theme, portrait-mode KiwiSDR app for Android.

    Instead of running in the browser, my app processes the KiwiSDR stream locally on your phone.

    With no official KiwiSDR protocol documentation available, I relied on example Python code and reverse-engineered browser clients to piece together how the protocol operates.

    Features:

    • Connects to the public shared KiwiSDR network of servers.

    • Built-in waterfall FFT display with zoom and pan.

    • Direct band buttons for fast hopping between ham/shortwave bands.

    • Frequency logging and memory list.

    • Audio options: noise reduction, compressor, ADPCM compression.

    • Gestures for tuning: swipe digits, waterfall

    • Knobs for volume, squelch and filters.

    • Theme colors for the LCD display

    It’s still early days, but it’s working pretty well, I guess ;-). 

    Download my QiwiQ.apk at: https://vanbarel.eu.org/tools/qiwiq/

    Side-load on Android, feedback/bugs very welcome!


    bwilsonstudentkraHB9TMCdl7awlF5AFYdreamsonNate_Rjolo22Tremolat
  • v1.805

    From the CHANGE_LOG file:

    v1.805 March 9, 2025

      Mobile improvements:

        Keyboards shortcuts work again, e.g. a Bluetooth keyboard connected to iPad. (thanks DL3LED)

        Popup keyboard dismissed properly after "return" key pressed (e.g. on "ident" fields)

        Disabled input field auto complete, auto correct, auto capitalize.

       

      Antenna switch:

        Buttons now turn green for Kmtronic-2ch switch. (thanks Fernando)

        Multiuser/mixing denial notification working again. (Thanks Steffen)


      CW Skimmer extension: New. But consider it experimental as there are a number of problems.

      SSTV extension: Fixed MP mode height issue. (thanks VK3HK, VK3KHZ)

      DX label filter panel: Reset button now clears ident & notes fields.

      Update to satellite table to reflect recent Galileo changes. (thanks F4FPR)


    TremolatstudentkraHB9TMCWA2ZKDG4ZFEjimjackiinitroenginebensonG8JNJ
  • v1.801

    From the CHANGE_LOG file:

    v1.801 February 5, 2025

      Admin page: Now works on small-screen devices. The admin page will now scroll left/right and

        up/down to display the full content that you would normally see using a desktop browser.

        The layout of the admin content is the same as for desktop. The browsers on older devices

        (e.g. iPad 2) will not work with this scheme and cannot be fixed. Please use a newer device.

        There will no doubt be small problems and details to be worked out with this new feature.

        Small-screen support for user connections is much more difficult and still TBD.


      Added support for iframe content to tune Kiwi (i.e. frequency, passband, mode, zoom).

    Try new entry "DX spots" in extension menu.

        Added SK6AW.net DX spots as the default iframe content if no prior iframe configuration

        had been setup. When you click on a spot frequency the Kiwi tunes and sets the mode.

        If your Kiwi needs to be configured for this open the admin extensions tab and select

            the iframe entry. Enter "URL" in the Source menu. Enter "https://spots.kiwisdr.com" in the

        URL field. Enter "DX spots" in the Extension menu entry field. Check the box

        "Allow iframe to tune Kiwi". If you already reference SK6AW.net directly please change to

        spots.kiwisdr.com to get the new tuning functionality. (thanks HB9TMC, DF6DBF)

       

      Select default antenna if antenna grounded from "ground when no users" mode when:

        1) Connection made from a non-Kiwi app like kiwirecorder, TDoA etc.

        2) SNR measurement occurs, including via URL or measure button on admin page. (thanks F5LFE)

       

      Option for RF attenuator slider/buttons to send arbitrary shell command instead of adjusting

        internal attenuator. E.g. a curl command to control external attenuator hardware.

        Attenuator UI permissions still apply. See admin config tab for details. (thanks S57RW)

       

      Fixed bad bug that restarts the proxy client when a non-proxy (e.g. local) admin connection

        switches from any non-connect tab to the connect tab. This causes all user connections

        using a proxy connection to get dropped. Can't believe this wasn't discovered sooner!

       

      ALE:

        During scanning the browser user interface focus will remain with the ALE extension.

        This means changes to the controls and cut/paste in the output window will not be disturbed.

        (thanks DK9FI)

        Added "KFOR" to milcom frequency list. (thanks Mark W)


      SSTV:

        Added "save images" button. Saves current image bar as a browser .jpg download file.

        (thanks barneyuk)


      FT8:

        Show total decode count. Cleared with "clear" button.

        Fixed broken ft8_lib URL on control panel.


      FSK:

        Fixed broken custom shift menu setting.

        Added SUBCOM VLF freqs to DX community database and FSK Milcom menu.

        (thanks Paulus via x.com/ParssinenPaulus/status/1865520723298533678)


      IBP:

        Added URL parameters and help button content. This means IBP DX label entries can

        specify these parameters to customize the IBP function when the label is clicked.

        For example, enter "ibp,all" in the label "extension" field to make IBP select the

        "All bands" menu entry when any IBP label is clicked. (thanks VK3KHZ)


      Fixed URL used for short-wave.info from right-click menu SWBC database lookup. (thanks smg)

      Fixed grid layout of DX label control panel.

      Fixed display of community database labels that have time/day-of-week info.

      Show Debian version in user control panel, stat tab.

      IP address blacklist update. (thanks Thierry et al)

      Added code to remove latest Linux virus. (thanks Mike)

      Added QZSS sat QZS-6. (thanks Yogicat)


    HB9TMCTremolatnitroenginejolo22studentkraG8JNJYogicatHolgersmg
  • Audio timing walkabout [FT8 decoder problems solved with tighter limits on audio buffering]

    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)
    G0LUJWA2ZKDKA7UHB9TMCrz3dvp
  • v1.822

    From the CHANGE_LOG file:

    v1.822 September 28, 2025

      Antenna switch:

        Use the "\+" escape sequence where you need a plus sign ('+') to appear in the curl fields.

        Example "192.168.1.222?cmd=ant+1\+2+on" gives "192.168.1.222?cmd=ant 1+2 on"

    Note that '+' alone gives a single space as before. (thanks IW2NKE)

         

        Debugging mode added to ant-switch-frontend script. Preface any command with 'd' to enable.

        E.g. "d s" to query switch status with curl debugging ("--verbose") enabled. Also sets

        script "DEBUG" variable which individual scripts can use to trigger debugging actions.

        The "ad" alias helps with this e.g. "ad s" instead of "./ant-switch-frontend d s"

       

      SSTV extension: Works on 3-channel mode Kiwi again. (thanks nitroengine)

       

      The server will now run and allow you to connect as admin even if the Kiwi board is broken

        (e.g. FPGA not responding) or not installed. The FPGA communication failure LED pattern is

        then appended to the IP address LED pattern in this case (see: kiwisdr.com/info/#id-fpga)


    studentkranitroengineiw2nkeIK8SUTjimjackiiG4ZFEjolo22
  • v1.807,808

    Instructions for the Debian 11 upgrade procedure described below are here: http://kiwisdr.com/quickstart/index.html#id-D11-upgrade

    From the CHANGE_LOG file:

    v1.807,808 April 10, 2025

      Admin backup tab: Added button to create a Debian 11 upgrade SD card which includes all

        customizations from the current Kiwi. Intended to be used by Kiwi's still running Debian 8.x


        Greatly simplifies the upgrade process by automating these formerly manual tasks:

          Checks for sufficient free disk space.

          Downloads Debian 11 image file from kiwisdr.com with integrity check (checksum).

          Writes image to SD card.

          Copies configuration from Kiwi's kiwi.config directory to SD card.

          SD card is now ready to be use to re-flash this Kiwi to Debian 11 on the next restart.

          Including if you were to immediately restart after the sd card creation completes.


        => Everyone is strongly advised to upgrade to Debian 11 from Debian 8.

          At some point we will no longer provide software updates to Kiwi's running Debian 8.

       

      Complete rewrite of the admin webpage grid & location processing code. (thanks studentkra)  

      FSK extension: Added preset menu. Complements the existing ability to set presets in the URL.

      Reduced minimum name/callsign (ident) length from 16 to 8 characters. (thanks LIN)

      Admin status & antenna switch configuration page now displays antenna status. (thanks LIN)

      Updated to EiBi-A25 database. (thanks jgreentn)

      External extensions being present will always cause a compile from source. (thanks DL3LED)


    HB9TMCTremolatnitroenginestudentkraIK8SUTjimjackiiG4ZFE
  • Find your Kiwi using my.kiwisdr.com

    Got a Kiwi (running v1.330+) on your local network with an unknown local IP address? Like a new Kiwi out-of-the-box? Now from a browser on the same local network you can connect to my.kiwisdr.com and be automatically redirected to the Kiwi. The local IP address of the Kiwi will then show in the browser address bar.

    This feature is similar to that provided by other IoT devices. It requires that the Kiwi have access to the Internet when it starts up. And that the computer running the browser is on the same local network as the Kiwi. If there are multiple Kiwis on the network the browser will display a table of Kiwis by serial number and a link that will connect to each one.

    Our documentation lists 5 different methods of determining a Kiwi's IP address. But each has its limitations and disadvantages. Now there is a sixth method that is particularly convenient.

    If you want to opt-out of your Kiwi sending this information to kiwisdr.com each time it starts then set the switch on the network tab of the admin page to NO: "Register this Kiwi on my.kiwisdr.com on each reboot?".

    This feature has not been tested with IPv6 or mixed IPv4/IPv6 local networks. So there is likely some debugging required.
    rz3dvpJimoJIsenhart