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

XPL0RR

Member
Joined
Sep 3, 2025
Messages
13
Reaction score
4
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 up/down, swipe waterfall left/right.
• Knobs for volume, squelch and bandwidth 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!

screenshot1-s.jpg
 

XPL0RR

Member
Joined
Sep 3, 2025
Messages
13
Reaction score
4
New version of QiwiQ released: 1.39.19

• new audio processor v.19
• DRM support with stereo
• IQ support: rendering I+Q signals to audio
• disabled audio-flush when changing volume, mode, ...
• avoid audio clicks when clicking buttons
• correct back button behaviour
• generate unique connection id from environment fingerprint
• use last mode and frequency when closing/reopening radio (except for drm)
• improved UI behaviour on memory and serverlist
• visual feedback when invalid/valid license key (red/green)

Download at: QiwiQ-1.39.19.zip
Feedback/bugs welcome!
 

XPL0RR

Member
Joined
Sep 3, 2025
Messages
13
Reaction score
4
New version of QiwiQ released: 1.41.03

• CW(Morse) decoding implemented
• standardized signal S-meter implemented: S1-3-5-7-9+10+20+40+60 (values above S9 should be read as S9+..dB)
• support for SAM and NBFM modulation (IQ removed)
• search input field (server+memories) kept during session
• bug fixes + ui-improvements

Download at: https://bit.ly/3I49LfD
Feedback/bugs welcome!
 

XPL0RR

Member
Joined
Sep 3, 2025
Messages
13
Reaction score
4
New version of QiwiQ released: 1.42.00

• Option to show frequency memories on the display (via settings)
• Tune by cycling through frequency memories in the current modulation using <> when waterfall is off
• bug fixes + ui-improvements

The new tuning mode by memories allows f.i. to select AM or USB etc. and cycle through your saved memory entries in that mode using the <> buttons when the waterfall display is off.

Download at: https://bit.ly/3I49LfD
Feedback/bugs welcome!
 

XPL0RR

Member
Joined
Sep 3, 2025
Messages
13
Reaction score
4
New version of QiwiQ released: 1.43.00

• Scan function: auto-cycling through the frequency memory list in the current modulation mode (scan-Interval adjustable in settings)
• Audio compressor switch moved to settings
• bug fixes + ui-improvements

The new SCAN-tuning mode by memories allows f.i. to select AM or USB etc. and auto-scan through your saved memory entries in that current modulation.
Click SCAN again and scanning stops. SCAN can be used with Squelch.
The SCAN interval in ms can be set in settings.
The audio compressor switch can now be selected in the settings.

Download at: https://bit.ly/3I49LfD
Feedback/bugs welcome!
 

XPL0RR

Member
Joined
Sep 3, 2025
Messages
13
Reaction score
4
New version of QiwiQ released: 1.44

• FFT Spectrum Display with adjustable smoothing (averaging adjustable in settings)
• Squelch implementation for NBFM
• Waterfall color improvements
• Bug fixes + ui-improvements

Download at: https://bit.ly/3I49LfD
Feedback/bugs welcome!
Qiwi-Q-Spectrum1.jpg
 

XPL0RR

Member
Joined
Sep 3, 2025
Messages
13
Reaction score
4
New version of QiwiQ released: 1.45

• Auto-Station detection when clicking SET button (repeat for multiple matches)
• Bug fixes + ui-improvements

I have implemented an automatic station detection feature in QiwiQ using the AOKI Shortwave Frequency Database.
To make this possible, I first created a GitHub repository that daily auto-converts the AOKI database into a JavaScript variable, bypassing CORS restrictions. This allows developers to easily use the AOKI frequency database in any project, including HTML-based applications.
GitHub - xplorr/shortwave-schedule: Shortwave Schedule in JavaScript format

In QiwiQ, the station-detection works as follows:
• Click the SET button one or more times to cycle through all possible stations for the current frequency (rounded to kHz) and the current UTC date.
• QiwiQ checks the current hour and day of the week to filter out false positives.
• The station-name and ITU country code are displayed (until the frequency is changed).
Additionally, when managing memory presets (MEM), the station-name and ITU code are automatically copied to the first label, allowing you to easily modify or save it.

Download at: https://bit.ly/3I49LfD
Feedback/bugs welcome!
 

XPL0RR

Member
Joined
Sep 3, 2025
Messages
13
Reaction score
4
New version of QiwiQ released: 2.02

• New interface with both Waterfall and FFT Spectrum on the display
• Selection between Color and B/W FFT graph
• FFT spectrum has a scaling grid and a dBm measurement
• Band buttons are available via a dropdown selector
• Dedicated buttons for Station SEEK and Station STEP mode
• Bug fixes + ui-improvements

I have listened to the users feedback and reused the space occupied by the band buttons to show both Waterfall and FFT Spectrum on the screen. The FFT and Waterfall can be switched off to reduce bandwidth and processing power.
The Band buttons are available via a drop-down selector.
The automatic station detection using the AOKI Shortwave Frequency Database now has a dedicated SEEK button.
There is a new STEP mode button, to cycle through the preset memories using < and >.

Download at: https://bit.ly/3I49LfD
Feedback/bugs welcome!

screenshot2-s.jpg
screenshot3-s.jpg
 

XPL0RR

Member
Joined
Sep 3, 2025
Messages
13
Reaction score
4
New version of QiwiQ released: 2.05.20

• New FFT Auto maxdBm adjustment: auto-adjusts the maxdBm value to the maximum signals received (always active)
• New FFT Auto Noise-Floor mode: auto-adjusts the noise-floor value (switch on/off and set offset in settings)
• BASE button replaces SCALE button: drag up/down to shift the base noise floor (when FFT Auto Noise-Floor is off)
• FFT Auto Noise-Floor mode can be temporarily disabled from AUTO to BASE mode (manual adjust)
• Both AUTO and BASE buttons can be dragged to change the noise-floor offset
• mindBm and maxdBm labels (bottom/top values) added to the FFT display
• FFT Grid-lines at 10dBm multiples
• Signal-meter bug fix and + sign for values over S9 (Sx for x <= 9, S+x for x>9)
• Frequency clamping removed for servers > 30 MHz (Fix)
• SEEK now rounds the current frequency to the nearest kHz to make seeking stations in the database easier
• Kiwiservers database auto-updated every 20 minutes in github
• Stations database auto-updated dayly in github
• Faster startup using custom kiwiservers- and stationdatabase in github
• Bug fixes + ui-improvements

Download at: https://bit.ly/3I49LfD
Feedback/bugs welcome!
 

KE4ZNR

Radio Geek
Premium Subscriber
Joined
Jan 21, 2002
Messages
7,515
Reaction score
1,162
Location
Raleigh, NC
Thank you for your continued hard work! Have had some fun with the app so far and will report back if I find bugs/issues.
 

XPL0RR

Member
Joined
Sep 3, 2025
Messages
13
Reaction score
4
New version of QiwiQ released: 2.05.36

• Support for UHF-, VHF- and all servers starting above 32 MHz + extra frequency digit added: 0-999999.99 kHz
• New "Selective Preset Scan/Step" mode (always active): Scan/Step only search results of memory presets
• New "Scan Stop on Squelch Treshold" mode: Stop scanning when Squelch treshold exceeded, restart after 4 seconds of mute
• New "FFT Auto Range Send Treshold (dBm)" setting: sets the delta change treshold before sending new mindBm or maxdBm values to the server
• New "Keep Audio Settings" mode: save/restore audio settings at stop/start of radio (NR, COMP, ADPCM, Volume, Squelch)
• New version check in settings
• Bug fixes + ui-improvements

The new "Selective Preset Scan/Step" mode allows to scan/step only search results of memory presets (filtered by search).
This allows interesting new features, depending on how you name your presets, like:
• scanning/stepping only certain countries if you name your presets like "presetname (countrycode)" and search on (countrycode)
• scanning/stepping only on stations that have certain strings in their name: f.i. "BBC".
• scanning/stepping only on certain channels of a band and a certain mode: f.i. if you named your 40m band channels "40m Chan #".
If you want to search all stations (in the current mode), simply clear the presets search field or reset the search results to all.

The new "Scan Stop on Squelch Treshold" mode allows to simulate a scanner function.
It has some complex features but simply said it pauses scanning when squelch treshold is reached as long as there is audio. When audio mutes for 4 seconds, scanning is resumed.
Typical example could be: select Airband server. Create a set of frequency presets and name them consistenly like AIR C1, AIR C2, etc.
Make sure Scan Stop on Squelch Treshold is active, set Scan Interval to 1000 ms (1 second) and set Squelch level to desired value.
Search for presets "AIR" and start scanning. Scanning will switch the AIR channels every 1 second until audio. Scanning resumes after 4 seconds of silence otherwise scanning stays paused for smaller mutes.

The new "FFT Auto Range Send Treshold (dBm)" setting sets the delta change treshold before sending new mindBm or maxdBm values to the server. Helpfull to reduce server requests when your station signal fluctuates alot (like f.i. on VHF/UHF airband server), you could set it to 10 or 20 dBm, so it only sends a new range to the server every second when either mindBm or maxdBm deltas exceed that treshold (default 5 dBm).

Download at: https://bit.ly/3I49LfD
Feedback/bugs welcome!
 

XPL0RR

Member
Joined
Sep 3, 2025
Messages
13
Reaction score
4
New version of QiwiQ released: 2.05.44

• Private servers can now be added/deleted as favorites ("Select" button replaced by "Add" button)
• Fix for large "text size" setting in Android
• Fix for big screens
• More robust switching of servers: new server is connected after all sockets and asynchronous functions are closed from previous server
• Bug fixes + ui-improvements

Download at: https://bit.ly/3I49LfD
Feedback/bugs welcome!
 

XPL0RR

Member
Joined
Sep 3, 2025
Messages
13
Reaction score
4
New version of QiwiQ released: 2.05.52

• Support for legacy servers (version <= 1.690)
• Fix while switching servers
• Fix offset bug on legacy servers
• Bug fixes + ui-improvements

Download at: https://bit.ly/3I49LfD
Feedback/bugs welcome!
 

grahampaull

Member
Joined
May 31, 2013
Messages
122
Reaction score
0
This is a phenomenal little app, works great in my S24 Ultra.
Suggestion would be for a Tablet View which allows greater use of the real estate on larger screens when in landscape mode.
 

XPL0RR

Member
Joined
Sep 3, 2025
Messages
13
Reaction score
4
Could consider that, but then the buttons get very unnaturally looking enlarged. Do you think this is acceptable?CropperCapture[317].jpg
 
Last edited:

grahampaull

Member
Joined
May 31, 2013
Messages
122
Reaction score
0
Could consider that, but then the buttons get very unnaturally looking enlarged.
Maybe have a larger spectrum view in tablet/landscape mode? and also bring in the presets to the front end?
I know a quick Photoshop is easy to do compared to refactoring Android Layouts, but this is just as a suggestion. You could bring some stuff onto the front end like memories and even some of the settings, that way buttons wouldn't need to be stretched too much.

All just food for thought. :)

1761649747155.png
 

grahampaull

Member
Joined
May 31, 2013
Messages
122
Reaction score
0
Could consider that, but then the buttons get very unnaturally looking enlarged. Do you think this is acceptable?View attachment 191667
Didn't see this when I posted my mockup. I think brining in Presets to the front end could be handy and would allow the buttons to be tightened up. Although, the mockup you have done actually doesn't look too damn bad and is more than acceptable.
 
Top