tiny Spectrum Analyzer
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
Go to file
TT 807afd8511
add schematics, block diagram and pcb photo, update README.md
9 years ago
ChibiOS@fe0ba1049c use static buffer but stack buffer in chvprintf 9 years ago
NANOVNA_STM32_F072 initial commit 9 years ago
doc add schematics, block diagram and pcb photo, update README.md 9 years ago
python set scale and refpos temporally 9 years ago
.gdbinit add hard_fault handler 9 years ago
.gitignore initial commit 9 years ago
.gitmodules import ChibiOS as submodule 9 years ago
Font5x7.c add menu item of marker all off 9 years ago
Makefile re-enable dump command 9 years ago
README.md add schematics, block diagram and pcb photo, update README.md 9 years ago
STM32F072xB.ld add save and restore dac value in flash 9 years ago
adc.c arrange code, add notice at head of each file 9 years ago
chconf.h omit unused chibios features from chconf.h 9 years ago
dsp.c fix correlation detection 9 years ago
ffconf.h initial commit 9 years ago
flash.c add clearconfig command 9 years ago
halconf.h change adc driver not to use chibios hal 9 years ago
ili9341.c omit unused code 9 years ago
main.c change keypads on scale, scale handling 9 years ago
mcuconf.h change adc driver not to use chibios hal 9 years ago
nanovna.h fix jump of touch sense, add touchtest command, draw on touch cal, fix gap of drag marker position 9 years ago
numfont20x24.c add keypad for freq and scale, add save menu 9 years ago
plot.c change keypads on scale, scale handling 9 years ago
prog.sh initial commit 9 years ago
si5351.c expand frequency range 40kHz 9 years ago
si5351.h add argument rdiv in si5351 setupMultisynth 9 years ago
si5351_low.c arrange code, add notice at head of each file 9 years ago
tlv320aic3204.c implemented correlation detection, worked, but no good result 9 years ago
ui.c change keypads on scale, scale handling 9 years ago
usbcfg.c initial commit 9 years ago
usbcfg.h initial commit 9 years ago

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

Install cross tools and firmware updating tool.

$ brew tap PX4/px4
$ brew install gcc-arm-none-eabi
$ brew instal dfu-util

Otherwise, use toolchains included inside LPCxpresso. Like this.

$ PATH=$PATH:/Applications/lpcxpresso_7.8.0_426/lpcxpresso/tools/bin

Build the firmware

Fetch ChibiOS submodule into tree.

$ cd nanovna
$ git submodule update --init --recursive

Just make in the top directory.

$ make

Burn the 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.

Reference

[EOF]

Powered by TurnKey Linux.