An easy and informative way to save captured data quickly is to just take a screenshot of the appropriate output.
So far, I did not pay attention to nanovna.py. Playing around with this script I noticed that it is possible to grab screenshots from the NanoVNA over USB (nanovna.py -C screenshot.png), without entering USB measurement mode (where the display turns black, and buttons and touchscreen are disabled).
This looks interesting. I don't do Python, but I just tried downloading it on my Windows 10 machine. Following the Readme.md file, I did the pip3 install -r requirements.txt. So far so good. upgraded pip because it suggested so. When I try the first example "nanovna.py -p" I get:
C:\nanoVNA\python>nanovna.py -p
Traceback (most recent call last):
File "C:\nanoVNA\python\nanovna.py", line 2, in <module>
import serial, tty
File "C:\Users\TD\AppData\Local\Programs\Python\Python39\lib\tty.py", line 5, in <module>
from termios import *
ModuleNotFoundError: No module named 'termios'
I assume it's because I'm not in linux, and the "tty" isn't associated with my COM port. Or is it because I needed to install another module (termios)? Perused the nanovna.py file, but it's not obvious how to edit this for a Windows COM port. Maybe I need to edit the VIDPIDs? Looks like it's supposed to find the COM port automatically.
When one of my kids had a python class in school a few years ago, I got the book and thought I'd learn along with him. I realized that I'd rather gnaw my arm off than use python (no offense to anyone here who likes python).
The image capture code has:
self.serial.write([0x20, 0xee, 0x00])
meta = self.serial.read(2 + 2 + 1)
which is writing 0 to register ee, which I don't see specified in the User Manual. The read (0x20) command isn't supposed to return anything, so I don't know what the self.serial.read(2+2+1) is supposed to be doing.
When I send 0x20 0xee 0x00 in a terminal program, it doesn't respond with anything (like the User Manual says). i have 20200926 firmware