VK8MT Status (Last 3 hours)

Saturday, November 01, 2025

Long awaited firmware update for the QMX

Hans has been actively working behind the scenes to address some of the bugs in his QMX firmware. I'm sure that the amount of energy that this project has drained from him has been enormous.  Nonetheless, he keep plugging away, and with amazing results to show for it.

The latest update(version 1_02_006)  addresses the following (sourced from the QRPLabs groups.io site):-
 

1. Bug fix: CAT IF command incorrectly shows VFO B when in TX and in VFO A mode

Reported on this group recently. 

2. Bug fix: When changing band up/down the RF Gain doesn't get changed properly

I noticed this; when you change band by using CAT, the "Gain" in the Band Configuration is properly applied. But when you change band by using the front panel, the gain did not get changed according to the Band Configuration table. Most people may leave the gain in the Band Configuration table unadjusted so may not have noticed this issue. I don't recall it having been reported. 

3.  Bug fix: On the LCD, SWR tool now operates correctly at the displayed VFO frequency

Several people noted that the SWR tool on the LCD operated at the "band center frequency" shown in the Band Configuration screen, not the current VFO frequency. I believe I have fixed this bug. 

4.  Bug fix: TX indicator always under A, even in VFO B and Split modes (means not displayed at all in B)

Now the TX indicator comes under the correct VFO (A or B) depending on the VFO mode (A, B, Split). 

5.  Change "Audio gain (dB)" row name in Band Config to "RF gain (dB)", a more accurate description

There are two gain controls in the QMX. One is the gain defined in the Band Configuration table, per band. It was called "Audio gain (dB)" but this is not really an accurate term for it. More accurate is "RF gain (dB)" because this gain is applied at the Intermediate Frequency, not at audio. The gain is defined before the AGC function and the S-meter (which is related to the AGC function). The purpose of this gain specification in the Band Configuration table was to be able to equalize gain across the bands. There are some variations in sensitivity, due to variations in response curves of LPFs and BPFs, and even due to increased insertion loss in the mixer at the top end of HF. This "gain" parameter should allow the perfectionist to equalize everything; it should be possible for example, to set it up such that an S9 signal generator injected at the RF port, would read S9 on the S-meter, the same across all bands. 

The separate control of "Volume" controlled by the Volume knob on the front panel, applies only to what you hear; it does not affect the audio passed to the USB Sound card, nor the AGC or S-meter. 

Therefore I renamed the row in the Band Configuration table from "Audio gain (dB)" previously, to "RF gain (dB)" now. 

6.  New CAT RG command now gets/sets RF Gain (used to be called Audio gain, and command AG)

This RG command now returns the RF Gain from the currently selected Band Configuration screen. This was previously the function of the AG command. 

7.  CAT AG command now gets/sets AF Gain, which is Volume, in steps of 0.25 dB e.g. AG083; is 20.75 dB.

So now the AG command, instead of Get/Set of the gain specified by band in the Band Configuration table, returns the VOLUME. It is specified as a number from 0 to 799 and is expressed in units of 0.25 dB. 

8.  System wide update to config handling of boolean parameters to prevent accidental enabling

This is an important improvement to usability. A boolean configuration parameter (such as DISABLED/ENABLED, NO/YES, OFF/ON) is stored in the EEPROM as a Byte. Normally the value should be 0 or 1. However in some cases where the user is performing a firmware upgrade and the EEPROM mapping had changed, or the parameter is a new one, and it has not been initialized to zero, then it could be left at some other number. 

The issue here was that some of these "Boolean" type parameters were interpreted differently by the radio systems, than by the configuration menu editing system. Imagine for example that the memory location contains a number such as 5. This is invalid, since boolean parameter locations should either be 0 or 1. The menu system would recognize the invalidity and default that to 0 (which would be displayed as DISABLED, NO, or OFF for example, depending on the specifics of the parameter). The operator may therefore think that the feature is turned off. However the rest of the system would interpret the 5 as being non-zero and therefore "TRUE" and would behave as though the feature is turned ON, which is absolutely NOT the desired outcome - and could lead to a lot of confusion. 

Note that this same problem can also apply to many other parameters having only two values, such as USB/LSB (for Digi mode) etc. 

Some of the configuration parameters contained, on a case by case basis, logic to default them to FALSE (Off, Disabled etc) if the number was invalid. 

What I have done now is made everything consistent system-wide, so that ALL the configuration menu parameters having only 2 possible values, are now always set up so that they are only set to TRUE if the actual stored value is 1. Any other value, defaults the setting to being FALSE / Off / Disabled etc. Therefore the behaviour always matches what the operator sees in the configuration menu, with no nasty inexplicable surprises. 

9. New CAT ML and MM commands provide complete CAT accessible configuration menu interface

These new CAT commands provide complete access, including discovery mode for a host application to discover and replicate the entire QMX menu structure, and Get/Set commands for every configuration parameter in the whole QMX configuration settings menu. Whereas most of the CAT commands Get/Set parameters live, which are valid only for the current operating session, the MM command stores the saved parameters to EEPROM. 

To celebrate - and to prevent the operating manual expanding too much with things which 99% of users won't care about, I have moved the CAT command specification, including the new MM (Menu Manager) command into their own document, "CAT Programming manual" see https://qrp-labs.com/images/qmx/manuals/cat_1_02_006.pdf

10. System config submenu "Experimental" for polar modulation SSB experiments (you can't touch this)

Like I said, you can't touch this. This is for very limited users for experimental purposes, and it is only enabled via a secret access key. So just don't even bother. 

11. Bug fix: CAT Q2 command Set did not work as described (sets VFO A, same as FA command)

I found that the Q2 CAT command, which is for legacy purposes for backward compatibility with QDX, and is actually the same as the FA command, worked only for Get not Set. So I fixed this while there. 

As always, all comments and feedback are welcome. 

73 Hans G0UPL



This was well worth the wait!

No comments:

Post a Comment