xaxaxa-dev / Vna
Licence: gpl-2.0
a simple and cheap vector network analyzer, including support software
Stars: ✭ 121
Programming Languages
c
50402 projects - #5 most used programming language
Projects that are alternatives of or similar to Vna
iceskate
A low cost FPGA development board for absolute newbies
Stars: ✭ 15 (-87.6%)
Mutual labels: fpga, pcb
Riscboy
Portable games console, designed from scratch: CPU, graphics, PCB, and the kitchen sink
Stars: ✭ 103 (-14.88%)
Mutual labels: fpga, pcb
basic-ecp5-pcb
Reference design for Lattice ECP5 FPGA. Featuring Raspberry Pi interface and 6 PMODs
Stars: ✭ 71 (-41.32%)
Mutual labels: fpga, pcb
Beagle sdr gps
KiwiSDR: BeagleBone web-accessible shortwave receiver and software-defined GPS
Stars: ✭ 300 (+147.93%)
Mutual labels: fpga, pcb
Awesome-Retro-Docs
A curated collection of technical documentation for Arcades, Handhelds, Consoles, Computers and MCU’s.
Stars: ✭ 128 (+5.79%)
Mutual labels: fpga, pcb
Fpga Soc Linux
FPGA+SoC+Linux+Device Tree Overlay+FPGA Manager U-Boot&Linux Kernel&Debian10 Images (for Xilinx:Zynq-Zybo:PYNQ-Z1 Altera:de0-nano-soc)
Stars: ✭ 106 (-12.4%)
Mutual labels: fpga
Awesome Mechanical Keyboard
⌨️ A curated list of Open Source Mechanical Keyboard resources.
Stars: ✭ 1,294 (+969.42%)
Mutual labels: pcb
Tf2
An Open Source Deep Learning Inference Engine Based on FPGA
Stars: ✭ 113 (-6.61%)
Mutual labels: fpga
Neorv32
A small and customizable full-scale 32-bit RISC-V soft-core CPU and SoC written in platform-independent VHDL.
Stars: ✭ 106 (-12.4%)
Mutual labels: fpga
Systemrdl Compiler
SystemRDL 2.0 language compiler front-end
Stars: ✭ 95 (-21.49%)
Mutual labels: fpga
Jlcparts
Better parametric search for components available for JLC PCB assembly
Stars: ✭ 114 (-5.79%)
Mutual labels: pcb
Kactus2dev
Kactus2 is a graphical EDA tool based on the IP-XACT standard.
Stars: ✭ 82 (-32.23%)
Mutual labels: fpga
Livehd
Live Hardware Development (LiveHD), a productive infrastructure for Synthesis and Simulation
Stars: ✭ 110 (-9.09%)
Mutual labels: fpga
vna
A simple and cheap vector network analyzer, including support software.
As seen on kickstarter: https://www.kickstarter.com/projects/1759352588/xavna-a-full-featured-low-cost-two-port-vna
Directory layout
- libxavna: C & C++ library for accessing the hardware, see README.md in subdirectory for more info
- vna_qt: QT GUI
- pcb: schematics, pcb layouts, and simulation files
- vhdl: circuitry implemented on the fpga
Specifications
- Frequency range: guaranteed 137MHz - 2500MHz, typical 135MHz - 3500MHz
- Output signal level (configurable in software): -20dBm to 10dBm, with 1dB increments
Interfacing
- The main board connects to a PC through usb and communicates via a virtual serial port device; the PC software sets the frequency and other parameters by sending two-byte register write commands, and the device sends averaged vector values representing magnitude and phase of measured waves.
Table of Contents
Downloads
For pre-compiled executables go to: https://github.com/xaxaxa-dev/vna/releases
Building the software
Building on linux
Build libxavna (required for QT GUI):
sudo apt-get install automake libtool make g++ libeigen3-dev libfftw3-dev
cd /PATH/TO/vna
autoreconf --install
./configure
make
cd libxavna/xavna_mock_ui/
/PATH/TO/qmake
make
Build & run QT GUI:
sudo apt-get install libqt5charts5-dev
cd /PATH/TO/vna
cd vna_qt
/PATH/TO/qmake
make
export QT=/PATH/TO/QT # e.g. ~/qt/5.10.1/gcc_64
../run ./vna_qt
Building on mac os
brew install automake libtool make eigen fftw
cd /PATH/TO/vna
./deploy_macos.sh
# result is in ./vna_qt/vna_qt.app
Cross-compile for windows (from linux)
Download and build MXE:
cd ~/
git clone https://github.com/mxe/mxe.git
cd mxe
export QT_MXE_ARCH=386
make qt5 qtcharts cc eigen fftw pthreads
Edit mxe/settings.mk and add i686-w64-mingw32.shared to MXE_TARGETS.
Build
cd /PATH/TO/vna
export PATH="/PATH/TO/MXE/usr/bin:$PATH"
./deploy_windows.sh
Pictures
Main board (release 2)
Calibration standards (Short, Open, Load)
Screenshots
Open circuited coax stub
Antenna
Time to fault (measuring coax cable)
Block diagram
Overall architecture
Receivers & interfacing
Signal generator
FPGA logic
Parts selection
T/R version
- fpga: XC6SLX9-2TQG144C
- adc: AD9200
- mixer: AD8342
- synthesizers: ADF4350
- rf switches: BGS14GA14
- programmable attenuator: PE4312
Full two port version
- fpga: XC6SLX9-2TQG144C
- adc: ADC10080
- adc driver: ADA4932-1
- mixer: AD8342
- synthesizers: ADF4351
- rf switches: RFSW6024, BGS12PL6
- programmable attenuator: PE4312
Note that the project description data, including the texts, logos, images, and/or trademarks,
for each open source project belongs to its rightful owner.
If you wish to add or remove any projects, please contact us at [email protected].