Very Tiny Palmtop Vector Network Analyzer
Find a file
DiSlord f90b920d5e More comments
Rewrite flash.c for less size
Add cache for check checksum (more faster interpolate, used in multi segments sweep)
More fixes for font and select size of marker icon
More debug functions
2020-08-01 19:44:34 +03:00
.circleci update golang 1.10 2019-09-14 20:15:27 +09:00
.vscode style: uniform code style and untabify 2020-03-21 09:33:33 +09:00
ChibiOS@669d4bbc8d revert chibios fix 2019-09-03 08:06:59 +09:00
doc add schematics, block diagram and pcb photo, update README.md 2017-02-03 21:25:02 +09:00
FatFs Use original fatFS lib 2020-06-28 18:17:13 +03:00
NANOVNA_STM32_F072 Use some constants for pad definitions 2020-07-05 12:27:22 +03:00
python doc: update notebook example 2019-11-17 20:26:43 +09:00
.clang-format style: uniform code style and untabify 2020-03-21 09:33:33 +09:00
.gdbinit add hard_fault handler 2017-01-22 13:03:40 +09:00
.gitignore env: ignore png files 2019-10-14 09:03:26 +09:00
.gitmodules env: replace git submodule url as http to prevent failure to fetch without github account 2019-09-26 09:06:43 +09:00
adc.c Small code fixes 2020-07-13 06:56:49 +03:00
chconf.h Add compact RTC library (only 500 bytes for all, default RTC lib req ~ 2kB) 2020-06-20 12:07:38 +03:00
chprintf.c Enable CHPRINTF_USE_SPACE_FLAG in printf 2020-06-21 08:02:40 +03:00
dsp.c Add sin_cos table for 6 or 12kHz offset for dsp 2020-06-04 20:26:06 +03:00
dsp.h Add dsp.h, and fix header in rtc.c 2020-06-21 08:05:00 +03:00
fft.h Little speedup and less size fft 2020-03-30 20:01:51 +03:00
flash.c More comments 2020-08-01 19:44:34 +03:00
Font5x7.c Remove usage blit8BitWidthBitmap, blit16BitWidthBitmap and cell_drawchar 2020-07-22 22:24:00 +03:00
halconf.h Update header file for future fixes: 2020-04-29 13:40:53 +03:00
ili9341.c Add LCD send command for debug 2020-07-22 23:03:06 +03:00
main.c More comments 2020-08-01 19:44:34 +03:00
Makefile Add part of SD card code (need some cleanup), disabled (not added diskio part!) 2020-07-01 12:29:25 +03:00
mcuconf.h More comments 2020-08-01 19:44:34 +03:00
nanovna.h More comments 2020-08-01 19:44:34 +03:00
numfont20x22.c Remove usage blit8BitWidthBitmap, blit16BitWidthBitmap and cell_drawchar 2020-07-22 22:24:00 +03:00
plot.c More comments 2020-08-01 19:44:34 +03:00
prog.sh initial commit 2016-09-05 07:29:43 +09:00
README.md doc: add ssci to README.md 2020-06-12 05:50:55 +09:00
rtc.c Add dsp.h, and fix header in rtc.c 2020-06-21 08:05:00 +03:00
si5351.c Format fixes for frequency value string 2020-07-29 19:41:51 +03:00
si5351.h Decrease delay after band change 2020-06-21 08:04:04 +03:00
spi.h Update SPI lib 2020-07-12 15:42:07 +03:00
STM32F072xB.ld add save and restore dac value in flash 2017-01-02 22:03:20 +09:00
tlv320aic3204.c Add sin_cos table for 6 or 12kHz offset for dsp 2020-06-04 20:26:06 +03:00
ui.c Add base support for dynamic button text 2020-07-29 20:39:47 +03:00
usbcfg.c initial commit 2016-09-05 07:29:43 +09:00
usbcfg.h initial commit 2016-09-05 07:29:43 +09:00

NanoVNA - Very tiny handheld Vector Network Analyzer

GitHub release CircleCI

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

UPDATE: Recent gcc version works to build NanoVNA, no need old version.

MacOSX

Install cross tools and firmware updating tool.

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

Linux (ubuntu)

Download arm cross tools from here.

$ wget https://developer.arm.com/-/media/Files/downloads/gnu-rm/8-2018q4/gcc-arm-none-eabi-8-2018-q4-major-linux.tar.bz2
$ sudo tar xfj gcc-arm-none-eabi-8-2018-q4-major-linux.tar.bz2 -C /usr/local
$ PATH=/usr/local/gcc-arm-none-eabi-8-2018-q4-major/bin:$PATH
$ 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

Using this docker image and without installing arm toolchain, you can build the firmware.

$ cd NanoVNA
$ docker run -it --rm -v $(PWD):/work edy555/arm-embedded:8.2 make

Flash firmware

First, make device enter DFU mode by one of following methods.

  • Jumper BOOT0 pin at powering device
  • Select menu Config->DFU (needs recent firmware)

Then, flash firmware using dfu-util via USB.

$ dfu-util -d 0483:df11 -a 0 -s 0x08000000:leave -D build/ch.bin

Or simply use make.

$ make flash

Companion Tools

There are seveal numbers of great companion PC tools from third-party.

Documentation

Reference

Note

Hardware design material is disclosed to prevent bad quality clone. Please let me know if you would have your own unit.

Authorized Distributor

Credit

Contributors