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 69a55c8b7e
script: add requirements.txt and usage to capture in README
6 years ago
.circleci ci: add workflow for release 6 years ago
.vscode env: add vscode configulation 6 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 script: add requirements.txt and usage to capture in README 6 years ago
.gdbinit add hard_fault handler 9 years ago
.gitignore env: update .gitignore 6 years ago
.gitmodules fix: correct branch of submodule ChibiOS 6 years ago
Font5x7.c view: add left arrow on menu items 6 years ago
Makefile chore: omit unused source file 6 years ago
README.md doc: separate python README 6 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 gain adjust for frequency 6 years ago
ffconf.h initial commit 9 years ago
flash.c add interpolation on cal 8 years ago
halconf.h change adc driver not to use chibios hal 9 years ago
ili9341.c implement capture command 6 years ago
main.c optimize protocol of capture function 6 years ago
mcuconf.h change adc driver not to use chibios hal 9 years ago
nanovna.h implement capture command 6 years ago
numfont20x24.c feat: add 'n', 'p' and pad symbol 6 years ago
plot.c ui: enable and all off in marker selection 6 years ago
prog.sh initial commit 9 years ago
si5351.c feat: adjust gain and frequency band, enpower LO drive strength. 6 years ago
si5351.h add argument rdiv in si5351 setupMultisynth 9 years ago
tlv320aic3204.c fix: omit adc filter 6 years ago
ui.c ui: enable and all off in marker selection 6 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

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

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

See python directory.

Note

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

Reference

[EOF]

Powered by TurnKey Linux.