GitHub - ttrftech/NanoVNA: Very Tiny Palmtop Vector Network Analyzer
source link: https://github.com/ttrftech/NanoVNA
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
README.md
NanoVNA - Very tiny handheld Vector Network Analyzer
About
NanoVNA is very tiny handheld Vector Network Analyzer (VNA). It is standalone with lcd display, portable device with battery. This project aim to provide an RF gadget but useful instrument for enthusiast.
This repository contains source of NanoVNA firmware.
Prepare ARM Cross Tools
Requires gcc-4.9 to build firmware from source code. (Not work gcc-5.4 or lator, because of SRAM shortage that those runtime use more SRAM)
MacOSX
Install cross tools and firmware updating tool.
$ brew tap px4/px4
$ brew install gcc-arm-none-eabi-49
$ brew install dfu-util
Otherwise, use toolchains included inside LPCxpresso. Like this.
$ PATH=$PATH:/Applications/lpcxpresso_7.8.0_426/lpcxpresso/tools/bin
Linux (ubuntu)
Download arm cross tools from here. This version is 32-bit binary, so additional lib32z1 and lib32ncurses5 package required.
$ wget https://launchpad.net/gcc-arm-embedded/4.9/4.9-2015-q3-update/+download/gcc-arm-none-eabi-4_9-2015q3-20150921-linux.tar.bz2
$ sudo tar xfj -C /usr/local gcc-arm-none-eabi-4_9-2015q3-20150921-linux.tar.bz2
$ PATH=/usr/local/gcc-arm-none-eabi-4_9-2015q3/bin:$PATH
$ sudo apt install -y lib32z1 lib32ncurses5
$ sudo apt install -y dfu-util
Fetch source code
Fetch source and submodule.
$ git clone https://github.com/ttrftech/NanoVNA.git
$ cd NanoVNA
$ git submodule update --init --recursive
Build
Just make in the directory.
$ make
Build firmware using docker
If you can use docker, you can build firmware without installing arm toolchain.
$ cd NanoVNA
$ docker run -it --rm -v $(PWD):/work edy555/arm-embedded make
Flash firmware
Boot MCU in DFU mode. To do this, jumper BOOT0 pin at powering device. Then, burn firmware using dfu-util via USB.
$ dfu-util -d 0483:df11 -a 0 -s 0x08000000:leave -D build/ch.bin
Control from PC
NanoVNA is able to work standalone, but also be controlled via USB serial interface from PC. There are sample scripts in python directory.
Preparation.
$ pip install numpy
$ pip install scikit-rf
Plot reflection LOGMAG.
$ cd python
$ ./nanovna.py -p
Plot transmission LOGMAG.
$ ./nanovna.py -p -P 1
Plot smithchart.
$ ./nanovna.py -s
Show usage.
$ ./nanovna.py -h
To use NanoVNA from Jupyter notebook, see this page.
Note
Hardware design material is disclosed to prevent bad quality clone. Please let me know if you would have your own unit.
Reference
- Schematics
- PCB Photo
- Block Diagram
- Kit available from https://ttrf.tk/kit/nanovna
- Credit: @edy555
[EOF]
Recommend
-
396
Discontinued Project This project has been discontinued. Please use the new Grapefruit
-
63
README.md Build Time Analyzer for Xcode
-
96
README.md Elsa - Emacs Lisp Static Analyser
-
60
README.md dlayer dlayer is docker layer analyzer. Installation go get github.com/orisano/dlayer How to use...
-
32
README.md
-
8
How to Install Wireshark Network Packet Analyzer on Ubuntu 20.04 Wireshark (formerly Ethereal) is an Open-Source software that is used for capturing and investigating network traffic. It is a very popular packet analyzer among netwo...
-
5
The Pi-based Chonky Palmtop is a laptop-like PC with a fold-in keyboard You can make your own, if you have the skills By
-
2
Network Config Analyzer An analyzer for Network Policies and other connectivity-configuration resources Usage (requires Python 3.8 or above) python nca.py [--scheme <scheme_file>] where
-
0
NanoVNA V2 Plus4 4GHz second generation NanoVNA vector network analyzer, our own design. https://nanorfe.com/nanovna-v2.html The V2 Plus4 is the l...
-
3
NanoVNA V2 Plus4 4GHz second generation NanoVNA vector network analyzer, our own design. https://nanorfe.com/nanovna-v2.html The V2 Plus4 is the l...
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK