The Inexpensive HF Vector Analyser (0 -30 MHz)
Rig Expert AA-30.ZERO PCB ~ About £80.00 from eBay
Arduino UNO ~ About £8.00 from eBay
Plastic case ~ About £4.00 from eBay
For some time I have been looking for a half decent Vector Analyser for some time, having borrowed a colleagues KVE-60C, I was tempted to purchase one, but was put off with the £200 price tag. I then started to browse the RigExpert web site and came across their AA-30.zero PCB. All that is required to make this functional being a 5 VDC supply and an external UART (Universal Asynchronous Receive Transmit) – or the via an Arduino UNO PCB, the latter method is the best way to go in my opinion. A plastic case is also available which protects the Arduino Uno PCB.
Arduino Uno is a micro-controller board based on the ATmega328P . It has 14 digital input/output pins (of which 6 can be used as PWM outputs), 6 analog inputs, a 16 MHz quartz crystal, a USB connection, a power jack, an ICSP header and a reset button. It contains everything needed to support the micro-controller; simply connect it to a computer with a USB cable or power it with a AC-to-DC adapter or battery to get started.. You can tinker with your UNO without worrying too much about doing something wrong, worst case scenario you can replace the chip for a few dollars and start over again.
Above shows the Arduino UNO board with the protective plastic case.
The above diagram shows how the Rig Expert AA-30.zero is connected to the UART – note the connections from the UART RX connects to the AA-30 TX, TX connects to the AA-30 RX A 5 VDC
supply is also required.
Pairing the Rig Expert AA-30.zero to the Arduino Board.
If you want to connect your analyzer to an Arduino board, you should first solder the breakaway headers. After that, simply plug your AA-30.ZERO into your Arduino board:
Completed Analyser Project ~ All that requires is to power up via the computer USB port and install software (Sketch)
Pins usage
- D0 – UART interface 1, TX, data out
- D1 – UART interface 1, RX, data in
- D4 – UART interface 2, TX, data out
- D7 – UART interface 2, RX, data in
You can choose which UART interface to use, by re-soldering jumpers:
By default the AA-30.ZERO is using the UART2 interface.
In order to power the Arduino UNO and the AA-30.zero connect to your computer via the USB connector supplied. In order to connect to the correct port open ‘Device Manager’ – click on ‘Ports (Com & LPT) – if there are several connections unplug the Arduino USB, this will automatically be removed from the list, re-connect and note the Com port associated with the USB connection.
Installing AntScope software
Please download the AntScope software, open the archive and extract files (with sub-directories) into your workplace, then run AntScope.exe:
If the AntScope software does not detect the AA-30.ZERO automatically, please select the type of the connected device in the Configure menu:
Please make sure that the COM port number is set correctly:
Congratulations! Now everything is ready for the first measurement!
Start measuring
Connect AA-30.ZERO to your antenna (or some other load you wish to measure) using a flexible cable adapter, then click the Scan range icon right under the menu bar:
Click the Set full range button and click OK to start:
A few seconds later, the result is displayed:
Installing Arduino IDE and compiling your first project
Compile and run a very simple sketch on your Arduino board. Download and install Arduino IDE.
// UART bridge for data exchange between
// RigExpert AA-30 ZERO antenna & cable analyzer and Arduino Uno
//
// Receives from the Arduino, sends to AA-30 ZERO.
// Receives from AA-30 ZERO, sends to the Arduino.
//
// 26 June 2017, Rig Expert Ukraine Ltd.
//
#include “SoftwareSerial.h”
#define RX0_Pin 0
#define TX0_Pin 1
#define RX1_Pin 4
#define TX1_Pin 7
#define HW_SERIAL
#ifndef HW_SERIAL
SoftwareSerial ZERO(RX1_Pin, TX1_Pin); // RX, TX
#endif
void setup() {
#ifdef HW_SERIAL
pinMode(RX0_Pin, INPUT);
pinMode(TX0_Pin, OUTPUT);
pinMode(RX1_Pin, INPUT);
pinMode(TX1_Pin, OUTPUT);
#else
ZERO.begin(38400); // init AA side UART
ZERO.flush()
Serial.begin(38400); // init PC side UART
Serial.flush();
#endif
}
void loop() {
#ifdef HW_SERIAL
//digitalWrite(TX0_Pin, digitalRead(RX1_Pin));
//digitalWrite(TX1_Pin, digitalRead(RX0_Pin));
if (PIND & (1 << 4)) PORTD |= (1 << 1); else PORTD &= ~(1 << 1);
if (PIND & (1 << 0)) PORTD |= (1 << 7); else PORTD &= ~(1 << 7);
#else
if (ZERO.available()) Serial.write(ZERO.read()); // data stream from AA to PC
if (Serial.available()) ZERO.write(Serial.read()); // data stream from PC to AA
#endif
}
The above ‘Sketch’is the basic required for operation of the analyser – however, there are other ‘Sketches’which can be loaded which give other displays as below:-
Let’s compare the resulting drawings with the chart that the AntScope program draws:
To get the 100% similarity, you will have to play a little with a logarithmic scale.
The above diagrams and description can be found at the following link:-
https://www.arduino.cc/en/Main/Software
rigexpert.com/products/kits-analyzer/aa-30-zero/getting-started-with-the-zero
There is also an excellent You Tube video of how to use the Rig Expert AA-30.ZERO and Arduino UNO option – please see below:-