You are correct that on a mobile client there is no real use for an IQ mode button. However the SAM, SAU, SAL, SAS and QAM modes should be considered. Perhaps just SAM since the others are less frequently used. There is a real advantage to using synchronous AM decoding for weak AM signals.
Just my opinion, but I think using red to outline active buttons has too little contrast. Maybe something like yellow would be better?
The EXT socket you used to open DRM can be used to open any of the extensions. You just change ext_switch_to_client=X where X is the name of the extension as it appears in the extension menu on the Kiwi UI. As mentioned before, you can very easily use the browser debug window "network" tab to see exactly what socket command are being sent by the Kiwi Javascript client code -- commands that you will have to send yourself. This is much easier than reading the code to see what it's doing. Select the EXT socket and HTTP response tab.
A lot extensions can run without any parameters needing to be set. E.g. the cw_decoder,cw_skimmer and FT8 extensions because their default parameters will just work. All you have to do is somehow display their decoding output. In the case of the cw decoders that means processing the cw_chars=... message. And ignoring messages like cw_plot and bar_pct if test mode is active. For FT8 just process the chars=... message.
Send a close or stop and blur messages when done (varies by extension for historical reasons).
You can use the test mode message to debug with to get a strong pre-recorded CW signal that will decode 100%. Similarly for FT8 mode. No tuning to an active CW/FT8 frequency required.
Thank you, I will have a close look at it to understand it first.
The problem with the s-meter is solved, I will implement a standardized S-value. S1-3-5-7-9+10+20+40+60 (values above 9 will have to be read as S9+value), so S20 means S9 + 20 dB.
Standardized S-meter will be ready in next release.
Hi, @XPloRR Johan, I upgraded to v1.41, I note that the '+' button allows to zoom beyond Z14 (with unexpected behaviour).
I come back on the CW mode displayed frequency. Usually (and it is the case in the standard Kiwi UI) this frequency is the center of the default bandpass. Just compare on a western Europe Kiwi, the signal of FAV22, the morse teaching station on 6825 kHz (daylight hours), and you will see the difference with QiwiQ...
@F5AFY Thank you for your feedback. You are right. Zoom 14 seems to be the max zoom level. I will correct this and clamp zoom between 0 and 14.
About the CW frequency I am still in dubio. Technically en conventionally you are right, but logically and mathematically it is inconsistent with my interface, and in contradiction with other modulation modes. Namely the knobs to set the upper and lower band will not be consistent with other modulations like SSB etc. if I correct the frequency display with 0,5 kHz only for CW. The red line is the base frequency and the band denotes the offset from that frequency. The red line always shows the center frequency relative to the upper/lower knobs. I see no logical solution for this other than breaking the logic.
A solution to the user is: when using CW you need to enter your frequency - 0.5 kHz. example: 6825 -> 6824.5 kHz
Any other suggestions that keep the logic of the interface are welcome.
IMO the logic is indeed broken. While other systems may have a 'default' CW offset of 500 or sometimes 600 Hz to create a "pleasing" tone, this may be most often with LSB tuning rather than right-side-up USB tuning. I'm not a heavy CW operator but it has always bothered me. I like to know where I've tuned my receiver and create a mental picture of what I'm hearing based on the mode I've selected. Thus I choose your solution when given a chance. But I am probably in the minority in many other ways, e.g. users seem to prefer WF over Spectrum views, temporal rather than frequency. While there are some cases that WF gives more useful information I think it doesn't remotely compare with a calibrated Y axis. Color simply doesn't provide the same information as a spectral display for me. Caveat emptor, I guess.
On an unrelated note, I did send you a pittance for a cup of coffee but haven't seen a registration key show up anywhere, I'm not even sure one is necessary. Is it?
@n6gn thank you for your feedback. I also read you comment on the coffee registration. Normally you should have been returned to a page with your registration key after PayPal. I have just mailed your key.
@barneyuk did you know you have to simply slide up and down on the knobs, not rotate the knobs. So touch the knob and then slide up and down (not left/right or not rotate the knob). Very easy on mobile. Method is also often used on VST software synths on DAWs.
Yes I know how gestures should work on Android, having been using Android since 2008, but unfortunately on mobile devices it isn't that simple. The gesture often encroaches on another object. Plus not all users know how the rotary controls should work, so they are counterintuitive. In the real world you rotate knobs and you move sliders along their length.
@barneyuk the reasons why I prefer knobs above sliders are: they take less space on the interface, they have a higher resolution when changed, they resemble classic radio's and are more aesthetic imo.
IMHO and my long experience of developing apps for Android, they do look nice, but other solutions work better. To put it in perspective, I wouldn't purchase an app that works in this fashion unless it offered something that wasn't available otherwise. Even then I would lobby for the rotary controls to be changed. Video of using rotary controls, note the lack of full control. https://youtube.com/shorts/9ySX69YuXRE?si=ZAJ-xlgt7WC78zfI
I understand your point. What I may consider is changing the swipe sensitivity. I could make it so the the full range can be reached in one swipe, without lifting your finger, but then I may loose resolution. I will do some checks, to see if all values of f.i. volume can be reached in one swipe. Could be that I have to change volume in steps of 5 or something. Will see what is the best tradeoff.
@XPloRR I perfectly understand the point of keeping your logic of a mode_independant WF display. It's not that important, we just have to know and we'll get used to it.
I am also used to the LSB side for CW, this is not the default on the standard Kiwi interface neither but it's very easy to change with negative bandpass edges (as a default for admin. and with URL options for the users).
I have not seen the erratic frequency change any more, and no other bug detected at present time.
barneyuk I changed the knob behavior so knob sensitivity is now adaptive based on both the finger travel available in the swipe direction and the remaining value range in that direction.
Swiping from the knob start position all the way to the screen edge (top or bottom) now maps exactly to the remaining value in that direction.
i.e. swipe from current position to the top → reach max.
swipe from current position to the bottom → reach min.
That makes the control naturally more sensitive in the middle (because the remaining range to either extreme is smaller) and less sensitive near the edges (because you have to travel the whole remaining range to reach the extreme).
Small disadvantage: the resolution for the band lo/hi knobs is a bit less (that is the tradeoff).
• Option to show frequency memory labels 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.
Another question: has anyone ever found an FM signal on the shortwave bands?
What is most common on shortwave: NBFM or NNFM?
You've no doubt had this question answered by now but, yes, there is significant NBFM activity between 29.5-29.7 MHz. I'm not certain it is well-controlled but it seems pretty comparable to the 'normal' (also varies!) 5 kHz peak deviation I hear on VHF.
@XPloRR Sorry, traveling on vacation. Squelch should work on NBFM/NNFM. I didn't write the squelch code so I can't give exact answers. But the squelch level value seems to change depending on the passband width. So a squelch-close value required for NBFM won't quite be the same as for NNFM. ANd similarly for the non-FM modes. But it should work (it does work if you try using the Kiwi UI).
• 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.
• 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.
I think a Kiwisdr app is a good idea but with this beta version most of the phone screen is taken up with band buttons, number keypad, volume and squelch. Those features should be sub menus so the bulk of the tiny screen is available for waterfall and bandscope.
Right now I think the current web interface on my phone probably looks better than this app.
I only use an iPhone as do 30% of the world so when this app is more polished there needs to also be an iPhone version for it to be successful.
I think the nicest looking IOS radio app is SDR Control by Marcus Roskosch DL8MRE but he only does apps for Icom radios.
Here are two screenshots of his app remotely connected to my Icom 7610. It is easy to toggle between the settings screen and the main viewing and tuning screen.
Thank you for your feedback! The app by Marcus Roskosch indeed looks nice.
It was my explicit intention to bring forward the buttons I use most frequently from the kiwi-submenus. This does indeed reduce the available screen space, but when I use my app myself, I notice that I appreciate having these buttons immediately accessible without having to open submenus—similar to hardware receivers, where the most commonly used buttons are also directly available on the display. I may consider collapsing the band buttons into one button in a future version, but for now I prefer to keep the lower side of the interface as is.
I notice an interesting tuning knob on the app of Marcus Roskosch, but my app can tune every LCD digit, swiping up/down, so you can tune fast and slow on any digit without needing to change tuning speed between coarse/fine.
Besides that, tuning is also possible swiping left/right on the waterfall display or by typing the frequency on the keypad.
Hi, is it possible to enter your own name/callsign instead of the automatically assigned one?
And as a kiwisdr admin, I also notice that the IP location of QiwiQ users is less easily recognized by my device. Overall, it's a great app, and I deserve a coffee...
Comments
You are correct that on a mobile client there is no real use for an IQ mode button. However the SAM, SAU, SAL, SAS and QAM modes should be considered. Perhaps just SAM since the others are less frequently used. There is a real advantage to using synchronous AM decoding for weak AM signals.
Just my opinion, but I think using red to outline active buttons has too little contrast. Maybe something like yellow would be better?
I consider replacing IQ with SAM then.
Will see what I can change to make keys more visible, but want to keep the interface stylish, not cluttered with different colors.
Another question: is there a method or socket to decode cw (similar to drm ext socket)? Any other suggestions are welcome.
another question: my signal meter is now a value from 0 to 100. I found this formula on one of the kiwi demo files:
smeter, = struct.unpack('>H', buffer(body[5:7]))
rssi = 0.1*smeter - 127
My question: is this a calibrated value and is there a formula to convert it to a calibrated S-meter signal: S1-3-5-7-9+!0+20+40+60 ?
The EXT socket you used to open DRM can be used to open any of the extensions. You just change
ext_switch_to_client=X
where X is the name of the extension as it appears in the extension menu on the Kiwi UI. As mentioned before, you can very easily use the browser debug window "network" tab to see exactly what socket command are being sent by the Kiwi Javascript client code -- commands that you will have to send yourself. This is much easier than reading the code to see what it's doing. Select the EXT socket and HTTP response tab.A lot extensions can run without any parameters needing to be set. E.g. the
cw_decoder,
cw_skimmer
andFT8
extensions because their default parameters will just work. All you have to do is somehow display their decoding output. In the case of the cw decoders that means processing thecw_chars=...
message. And ignoring messages likecw_plot
andbar_pct
if test mode is active. For FT8 just process thechars=...
message.Send a close or stop and blur messages when done (varies by extension for historical reasons).
You can use the test mode message to debug with to get a strong pre-recorded CW signal that will decode 100%. Similarly for FT8 mode. No tuning to an active CW/FT8 frequency required.
Thank you, I will have a close look at it to understand it first.
The problem with the s-meter is solved, I will implement a standardized S-value. S1-3-5-7-9+10+20+40+60 (values above 9 will have to be read as S9+value), so S20 means S9 + 20 dB.
Standardized S-meter will be ready in next release.
New version of QiwiQ released: 1.41.10
• 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)
• backup favorites: import/export frequencies from/to clipboard
• support for SAM and NBFM modulation (IQ removed)
• search input field (server+memories) kept during session
• prevent screen from sleeping
• bug fixes + ui-improvements
Download at: https://bit.ly/3I49LfD
Feedback/bugs welcome!
Hi, @XPloRR Johan, I upgraded to v1.41, I note that the '+' button allows to zoom beyond Z14 (with unexpected behaviour).
I come back on the CW mode displayed frequency. Usually (and it is the case in the standard Kiwi UI) this frequency is the center of the default bandpass. Just compare on a western Europe Kiwi, the signal of FAV22, the morse teaching station on 6825 kHz (daylight hours), and you will see the difference with QiwiQ...
Nice app. !
@F5AFY Thank you for your feedback. You are right. Zoom 14 seems to be the max zoom level. I will correct this and clamp zoom between 0 and 14.
About the CW frequency I am still in dubio. Technically en conventionally you are right, but logically and mathematically it is inconsistent with my interface, and in contradiction with other modulation modes. Namely the knobs to set the upper and lower band will not be consistent with other modulations like SSB etc. if I correct the frequency display with 0,5 kHz only for CW. The red line is the base frequency and the band denotes the offset from that frequency. The red line always shows the center frequency relative to the upper/lower knobs. I see no logical solution for this other than breaking the logic.
A solution to the user is: when using CW you need to enter your frequency - 0.5 kHz. example: 6825 -> 6824.5 kHz
Any other suggestions that keep the logic of the interface are welcome.
IMO the logic is indeed broken. While other systems may have a 'default' CW offset of 500 or sometimes 600 Hz to create a "pleasing" tone, this may be most often with LSB tuning rather than right-side-up USB tuning. I'm not a heavy CW operator but it has always bothered me. I like to know where I've tuned my receiver and create a mental picture of what I'm hearing based on the mode I've selected. Thus I choose your solution when given a chance. But I am probably in the minority in many other ways, e.g. users seem to prefer WF over Spectrum views, temporal rather than frequency. While there are some cases that WF gives more useful information I think it doesn't remotely compare with a calibrated Y axis. Color simply doesn't provide the same information as a spectral display for me. Caveat emptor, I guess.
On an unrelated note, I did send you a pittance for a cup of coffee but haven't seen a registration key show up anywhere, I'm not even sure one is necessary. Is it?
Glenn n6gn
Fort Collins, CO
Yes, nice app, works well.
Just one thing I don't like is the rotary controls, very difficult to set on mobile devices. Sliders would be a better choice or drop downs.
@n6gn thank you for your feedback. I also read you comment on the coffee registration. Normally you should have been returned to a page with your registration key after PayPal. I have just mailed your key.
@barneyuk did you know you have to simply slide up and down on the knobs, not rotate the knobs. So touch the knob and then slide up and down (not left/right or not rotate the knob). Very easy on mobile. Method is also often used on VST software synths on DAWs.
Yes I know how gestures should work on Android, having been using Android since 2008, but unfortunately on mobile devices it isn't that simple. The gesture often encroaches on another object. Plus not all users know how the rotary controls should work, so they are counterintuitive. In the real world you rotate knobs and you move sliders along their length.
@jks I noticed that squelch is not working on NBFM? Is that a bug or by purpose?
@barneyuk the reasons why I prefer knobs above sliders are: they take less space on the interface, they have a higher resolution when changed, they resemble classic radio's and are more aesthetic imo.
IMHO and my long experience of developing apps for Android, they do look nice, but other solutions work better. To put it in perspective, I wouldn't purchase an app that works in this fashion unless it offered something that wasn't available otherwise. Even then I would lobby for the rotary controls to be changed. Video of using rotary controls, note the lack of full control. https://youtube.com/shorts/9ySX69YuXRE?si=ZAJ-xlgt7WC78zfI
I understand your point. What I may consider is changing the swipe sensitivity. I could make it so the the full range can be reached in one swipe, without lifting your finger, but then I may loose resolution. I will do some checks, to see if all values of f.i. volume can be reached in one swipe. Could be that I have to change volume in steps of 5 or something. Will see what is the best tradeoff.
Thank you for feedback!
@XPloRR I perfectly understand the point of keeping your logic of a mode_independant WF display. It's not that important, we just have to know and we'll get used to it.
I am also used to the LSB side for CW, this is not the default on the standard Kiwi interface neither but it's very easy to change with negative bandpass edges (as a default for admin. and with URL options for the users).
I have not seen the erratic frequency change any more, and no other bug detected at present time.
barneyuk I changed the knob behavior so knob sensitivity is now adaptive based on both the finger travel available in the swipe direction and the remaining value range in that direction.
Swiping from the knob start position all the way to the screen edge (top or bottom) now maps exactly to the remaining value in that direction.
i.e. swipe from current position to the top → reach max.
swipe from current position to the bottom → reach min.
That makes the control naturally more sensitive in the middle (because the remaining range to either extreme is smaller) and less sensitive near the edges (because you have to travel the whole remaining range to reach the extreme).
Small disadvantage: the resolution for the band lo/hi knobs is a bit less (that is the tradeoff).
Download QiwiQ 1.41.15 at: https://bit.ly/3I49LfD
Let me know if that feels more natural.
New version of QiwiQ released: 1.42.00
• Option to show frequency memory labels 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!
Another question: has anyone ever found an FM signal on the shortwave bands?
What is most common on shortwave: NBFM or NNFM?
You've no doubt had this question answered by now but, yes, there is significant NBFM activity between 29.5-29.7 MHz. I'm not certain it is well-controlled but it seems pretty comparable to the 'normal' (also varies!) 5 kHz peak deviation I hear on VHF.
New version of QiwiQ released: 1.43.03
• 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
• You can now select your local/private Kiwi-server
• 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!
@dl7awl it is now possible to specify/select your private/local Kiwi server.
@XPloRR Sorry, traveling on vacation. Squelch should work on NBFM/NNFM. I didn't write the squelch code so I can't give exact answers. But the squelch level value seems to change depending on the passband width. So a squelch-close value required for NBFM won't quite be the same as for NNFM. ANd similarly for the non-FM modes. But it should work (it does work if you try using the Kiwi UI).
Yes, that is much better, totally useable now. The rotary controls are really easy to use now.
@dl7awl it is now possible to specify/select your private/local Kiwi server.
Thanks! 😊
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!
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.
https://github.com/xplorr/shortwave-schedule
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!
I think a Kiwisdr app is a good idea but with this beta version most of the phone screen is taken up with band buttons, number keypad, volume and squelch. Those features should be sub menus so the bulk of the tiny screen is available for waterfall and bandscope.
Right now I think the current web interface on my phone probably looks better than this app.
I only use an iPhone as do 30% of the world so when this app is more polished there needs to also be an iPhone version for it to be successful.
I think the nicest looking IOS radio app is SDR Control by Marcus Roskosch DL8MRE but he only does apps for Icom radios.
Here are two screenshots of his app remotely connected to my Icom 7610. It is easy to toggle between the settings screen and the main viewing and tuning screen.
Thank you for your feedback! The app by Marcus Roskosch indeed looks nice.
It was my explicit intention to bring forward the buttons I use most frequently from the kiwi-submenus. This does indeed reduce the available screen space, but when I use my app myself, I notice that I appreciate having these buttons immediately accessible without having to open submenus—similar to hardware receivers, where the most commonly used buttons are also directly available on the display. I may consider collapsing the band buttons into one button in a future version, but for now I prefer to keep the lower side of the interface as is.
I notice an interesting tuning knob on the app of Marcus Roskosch, but my app can tune every LCD digit, swiping up/down, so you can tune fast and slow on any digit without needing to change tuning speed between coarse/fine.
Besides that, tuning is also possible swiping left/right on the waterfall display or by typing the frequency on the keypad.
Hi, is it possible to enter your own name/callsign instead of the automatically assigned one?
And as a kiwisdr admin, I also notice that the IP location of QiwiQ users is less easily recognized by my device. Overall, it's a great app, and I deserve a coffee...
LIN