Re: QCX Firmware change request: Validate CAT frequency values. #qcx #firmware #cat


Mike Besemer - WM4B
 

Sheldon,

 

Did you say earlier that you’re polling every ¼ to ½ second?

 

Mike

WM4B

 

From: QRPLabs@groups.io [mailto:QRPLabs@groups.io] On Behalf Of Hans Summers
Sent: Thursday, August 13, 2020 11:54 AM
To: QRPLabs@groups.io Notification
Subject: Re: [QRPLabs] QCX Firmware change request: Validate CAT frequency values. #qcx #firmware #cat

 

Hello Sheldon

 

Yes but you are asking an unreasonable thing. The QCX is not a PC with enormous quantities of RAM. It is a little processor with 2K of RAM. 

 

There is a buffer into which incoming CAT commands are placed. It is a circular buffer, 128 characters big. Incoming text is buffered and waits its turn to be processed. Processing moves around the circle. In the event that you put too many characters in, such that the head of the buffer overtakes the tail, then things will go wrong. 

 

Similarly there is an outgoing CAT buffer too. Again, it is of a finite size (120 characters, this time); and it is not a circular buffer since circular is not necessary in this case. If you issue CAT commands like IF; many times over then you can overflow the result buffer; in this case it will just ignore anything after 120 characters. 

 

These limitations are normal and reasonable; in any reasonable use scenario the buffer sizes should be sufficient. 

 

It is worth noting that even a PC also has loads of buffers for everything. But they are very large and it is very hard to overflow them. As you have seen, it is not hard to set up artificial scenarios in which you can overflow the QCX buffers. 

 

If you feel that the buffer sizes are not sufficiently large for any reasonable use then that is a different matter and I should look at how to increase them. 

 

73 Hans G0UPL
http://qrp-labs.com

 

On Thu, Aug 13, 2020 at 6:34 PM Sheldon Hartling <ve1gpy@...> wrote:

On Thu, Aug 13, 2020 at 12:17 AM, Hans Summers wrote:

Those of you reporting issues with CAT comms on the QCX, are you sure that you are using the latest firmware 1.05? 

Yes, in my case, a QCX+/40M running v1.5.

As a test, I can lock up the QCX CAT port using just a serial emulator program. Using termite (a free download on the Internet), I send this command:

 

FA00007021000;FA00007020000;FA00007019000;FA00007018000;FA00007017000;FA00007021000;FA00007020000;FA00007019000;FA00007018000;FA00007017000;

Followed by an
FA; command to see if the QCX is still responding.  If the QCX is responding, I send the command again. Maybe even multiple times repeatedly until it locks up.  If 40M is open and the QCX is displaying decoded CW it’s much more likely to break quickly.  Which seems to point to some kind of timing issue.

 

NEWS FLASH :-)

I was able to restore a dead CAT port by sending “00;fa;”!  Which definitely makes it look like the firmware is in a state waiting for numeric digits followed by a ; character – and deaf to all other CAT commands until it gets it.

 

73 Sheldon VE1GPY

Join QRPLabs@groups.io to automatically receive all group messages.