2019-08-30 07:55:32 +00:00
NanoVNASaver
============
2019-08-28 08:20:58 +00:00
A small tool to save touchstone files from the NanoVNA, and to allow sweeping frequency spans in sections to gain more than 101 data points.
2019-08-30 07:55:32 +00:00
2019-08-28 08:20:58 +00:00
Copyright 2019 Rune B. Broberg
2019-08-29 11:42:02 +00:00
2019-08-30 07:55:32 +00:00
### Introduction
This software connects to a NanoVNA and extracts the data for display on a computer, and for saving to Touchstone files.
Current features:
- Reading data from a NanoVNA
- Splitting a frequency range into multiple segments to increase resolution (tried up to >10k points)
2019-09-02 14:06:15 +00:00
- Displaying data on Smith charts and LogMag-charts for both S11 and S21
2019-08-30 07:55:32 +00:00
- Displaying two markers, and the impedance and VSWR (against 50 ohm) at these locations
2019-09-01 13:18:35 +00:00
- Exporting 1-port and 2-port Touchstone files
- TDR function (measurement of cable length)
2019-09-02 13:22:03 +00:00
- Reading and displaying Touchstone files as reference traces
2019-08-30 07:55:32 +00:00
Expected features:
- Mouse control of markers
2019-09-01 13:18:35 +00:00
- Further data readout for markers, such as return loss/forward gain
2019-08-30 07:55:32 +00:00
2019-09-06 10:54:13 +00:00
0.0.6:
![Screenshot of version 0.0.6 ](https://i.imgur.com/YnotmVw.png )
2019-09-02 14:06:15 +00:00
0.0.3:
![Screenshot of version 0.0.3 ](https://i.imgur.com/Cyp4gax.png )
2019-08-30 07:55:32 +00:00
### Windows
2019-09-01 13:18:35 +00:00
The software was written in Python on Windows, using Pycharm, and the modules PyQT5, numpy and pyserial.
2019-08-30 07:55:32 +00:00
2019-08-29 11:42:02 +00:00
### Linux
In order to run this app in Linux environment, you'll need the following packages:
* `python3-serial`
* `python3-pyqt5`
2019-09-01 13:18:35 +00:00
* `numpy`
2019-09-06 16:23:44 +00:00
## Ubuntu 18.04
### Installation and Use with pip
1. Install python3.7 and pip
- `sudo apt install python3.7 python3-pip`
2019-08-30 07:55:32 +00:00
2019-09-06 16:23:44 +00:00
2. Clone repo and cd into the directory
- `git clone https://github.com/mihtjel/nanovna-saver`
- `cd nanovna-saver`
3. Run the pip installation
- `python37 -m pip install .`
4. Once completed run with the following command
- `python3.7 nanovna-saver.py`
## Windows
### Installation and Use with pip
2019-09-04 16:12:38 +00:00
1. Clone repo and cd into the directory
- `git clone https://github.com/mihtjel/nanovna-saver`
- `cd nanovna-saver`
2. Run the pip installation
2019-09-06 16:23:44 +00:00
- `pip3 install .`
2019-09-04 16:12:38 +00:00
2019-09-06 16:23:44 +00:00
3. Once completed run with the following command
2019-09-04 16:12:38 +00:00
2019-09-06 16:23:44 +00:00
- `NanoVNASaver`
2019-09-04 16:12:38 +00:00
2019-09-01 15:32:45 +00:00
### Using the software
Connect your NanoVNA to a serial port, and enter this serial port in the serial port box. Click "Open serial" to connect.
The app can collect multiple sweeps to get more accurate measurements. Enter the number of sweeps to be done in the
sweep count box. Each sweep is 101 data points, and takes about 1.5 seconds to complete.
Marker frequencies are entered in Hz. Press enter after typing the frequency for it to take effect.
To get accurate TDR measurements, calibrate the device, and attach the cable to be measured at the calibration plane -
ie. at the same position where the calibration load would be attached.
2019-08-30 07:55:32 +00:00
### License
This software is licensed under version 3 of the GNU General Public License. It comes with NO WARRANTY.
You can use it, commercially as well. You may make changes to the code, but I (and the license) ask that you give these changes back to the community.
2019-09-01 15:13:09 +00:00
### Credits
Original application by Rune B. Broberg (5Q5R)
TDR inspiration shamelessly stolen from the work of Salil (VU2CWA) at https://nuclearrambo.com/wordpress/accurately-measuring-cable-length-with-nanovna/
2019-09-05 18:44:48 +00:00
Thanks to everyone who have tested, commented and inspired.