MiniVNA ICD

From MyLabWiki
Revision as of 14:09, 6 November 2011 by Alex (Talk | contribs)

Jump to: navigation, search

The miniVNA is a small and inexpensive antenna analyzer from mini Radio solutions. It connects to a computer via USB and it can measure SWR, RL, Rs, Z +/-jx, Phase, Cable length, R/L/C in the range 0.1Mhz to 180MHz. It comes with a quite all right control software for windows. There is also a Gnome version of the software called gVNA. Unfortunately, it depends on GNOME, it hasn't been updated for three years now and I have never been able to build it.

This document describes the miniVNA USB protocol that has been reverse engineered from user manuals and available software. The purpose is to have a control reference for writing a new control application for the miniVNA.

Contents

Connection Details

Baud rate: 115200
Data bits: 8
Parity: None
Stop bits: 1
HW flow: None

In the following, each line is terminated with an enter, i.e. 0x0D character.

Operating Modes

The miniVNA can work in two modes, the difference being what the miniVNA measure at the physical level (TBC):

  1. Reflection mode – used for measuring various parameters on antennas and cables.
    • Opcode: 0
    • Both ADCs connected to the bridge
  2. Transmission mode – used for measuring filters attenuators, etc.
    • Opcode: 1
    • The second ADC is connected to the DET port

Constants

DDSRATIO = 10737.41824
DDS increment for a 1kHz signal. Multiply the desired frequency in kHz with this constant. If the frequency is in Hz, multiply by 10.737414824. This factor is obtained from the frequency calibration in the windows version of the miniVNA control software.
VEL = 0.66?
Velocity factor??? See windows config.

Frequency Generator

To start a frequency generator, i.e. constant frequency with no sweep

Controller → VNA:

0                           # opcode
f(kHz)*10737.41824          # start freq
1                           # number of measurements
0                           # frequency step * DDS_RATIO

VNA → Controller TBD

Reset is done by setting the frequency to 0:

0
0
1
0

Example: