g4ixt / QtTinySA

A Python 'TinySA' GUI programme using Qt5 and PyQt5
GNU General Public License v3.0
106 stars 26 forks source link

Python errors while trying to acquire a spectrum scan when F is set above 2 GHz (test under Windows 10) #27

Closed alextsure closed 10 months ago

alextsure commented 10 months ago

Hello Ian, Got an issue with QtTinySA v. 0.9.0.exe while running under Windows 10 x64 (with no Python packages installed)

I have tested the pre-built QtTinySA v. 0.9.0 binary (the latest build for Win11) and see strange behaviour. While the frequency is pre-set for the lower HAM bands (any band below 2 GHz), everything seems to work fine and the spectrum scan run normally on the PC screen. But any attempt to run a scan with the frequency set above 2 GHz returns empty screen with some error messages from the background Python black console screen. i.e., I got these message for "13cm" F band: "measurement thread stopped numpy\core\function_base.py:182: RuntimeWarning: invalid value encountered in cast"

or, in the case if I try to manually set any band above 2 GHz, (i.e. F set from 2100.000000MHz to 2400.000000MHz), I get the following error message from the console screen:

"measurement thread running QtTinySA.py:288: RuntimeWarning: overflow encountered in scalar subtract Traceback (most recent call last): File "QtTinySA.py", line 678, in run File "QtTinySA.py", line 315, in measurement struct.error: unpack requires a buffer of 3 bytes"

May be You have some ideas what might go wrong here or somehow debug this errors?

Thanks in advance, BR, Alex

erikkaashoek commented 10 months ago

Sounds like a problem with using 32 bit signed integers for frequency values.

g4ixt commented 10 months ago

Sounds like a problem with using 32 bit signed integers for frequency values.

Thanks for the suggestion Erik as I had no idea as what might be causing it, and I don't have any Python IDE on my Windows system.

g4ixt commented 10 months ago

Fixed I believe but please confirm, Alex. V0.9.1 published.

ian

alextsure commented 10 months ago

Quick test confirms that it works now as expected, This issue could be closed now.

Thank You , Ian & Erik, for help & prompt responce. Wish You Happy New Year!

Another proposal, for the future versions, - it would be great to add an option to stop slow spectrum scans at any time while they are running, (in case the communication protocol permits to do it). (As for now, the software is waiting until the current scan is finished). Thank You.

erikkaashoek commented 10 months ago

Press the jog button to abort the scan

g4ixt commented 10 months ago

Press the jog button to abort the scan

That does stop it but it crashes the App, although I may be able to fix that with error trapping. I have tried in the past sending a 'reset' command during the scan and that also stops it, but I couldn't get it to work without crashing the App or freezing the TinySA Ultra in some way, or both (I can't remember exactly what I tried, it was a month or two ago).

erikkaashoek commented 10 months ago

When aborted the tinySA will skip sending the remaining 'x' followed by the two byte levelsend and immediately send the closing '}'