The information provided here is primarily intended for home brewers that want to build the analyzer or want to design their own based on the principles of the design. It is not intended for use in commercial applications !

If you want to build the analyser a warning is in order: First make sure you can get hold of all the components. One of the design objectives was to use easily obtainable components. Well I must admit I failed miserably because I used components I had in stock and did not check for their availability. It turns out that some of the key components are obsolete and hard to get. The table below may help you find equivalents and/or possible sources.

Component Equivalent Supplier Comment
MC145170 Barend Hendriksen
NE5230 LTC1152CN8 Conrad Not tested, should be OK
BA592 Conrad
Display AV1640 Conrad Use type with ILED (white light) back light
Rotary encoder Voti SW-ROT-01

You also need to understand how the analyzer works and having some experience with building HF circuits is a benefit.
During testing and alignment (and maybe troubleshooting) you would probably need an oscilloscope.

Detailed circuit description

The VCO is a Hartley oscillator tuned by a BB212 varicap. Its frequency is controlled by a MC145170 synthesizer. The clock frequency of the synthesizer is 10.240 MHz. It is divided by 1024 to produce a 10 kHz reference frequency. So the VCO is tuned in increments of 10 kHz. The controller software allows you to select the actual step size from a 10,20,100,200,500,1000 kHz sequence. The VCO signal is fed to two NE602 mixers. The LO signal for the mixers is generated by a Colpitts X-tal oscillator at 48 MHz. Two RC combinations of 100Ω \\ 33pF provide the +45° and -45° phase shift. The output of each mixer is buffered by an emitter follower. The second mixer also provides the measurement signal. (the NE602 outputs are used as single ended outputs)
Either I or Q is selected by a diode switch and fed to a fifth order LPF at the LO input of the synchronous detector. This is also a NE602. Another diode switch selects either Voltage or Current to be connected to the input of the detector. The differential output of the detector is fed to a differential amplifier on the controller board. The output is connected to one of the ADC inputs of the controller. The first amplifier is followed by a second one with a gain of 11. Its output is connected to a second ADC input. The controller uses the second 11* signal to achieve a simple way of auto scaling. A rotary encoder is used to set the frequency. A pushbutton acts as a Function key. When pressed and hold down the encoder selects the step size. When released it will control the frequency. Pressing and releasing the function key will select the menu items. The display mode allows the impedance to be represented in a series equivalent (Rs + jXs) or parallel equivalent (Rp // jXp). In addition to complex impedance the analyzer also calculates the equivalent Inductance (in μH) or capacitance (in pF)  as well as the SWR.

The bottom line of the display shows step size, display mode and battery Voltage.
The back light intensity is controlled by Pulse Width Modulation. The PWM signal is generated by one of the timers in the controller. Its a very efficient way to control the current supplied to the LED back light
The controllers build in UART is used to communicate with a PC. This function is used primarily to implement a frequency scan. The command send by the PC contains 3 numeric values; Start frequency, End frequency, step size all in units of 10 kHz. For example "400 900 10" tells the analyzer to perform a scan from 4 MHz to 9 MHz in steps of 100kHz. The results are reported in the following format : Frequency in kHz, R in Ω and X in Ω (either in series or parallel representation, depending on the display mode)  An example is shown here on the right. After a scan the frequency will return to its original setting. The controllers UART is designed to work with level shifters like the MAX232. Therefore the polarity of the in- and output is reversed compared to the polarity of the RS232 TX and RX lines. Simple transistor inverters will work well in most cases. The baud rate is fixed at 4800 bd. This is the highest rate that will work reliably with the internal RC clock  generator.                                      


I used an isolated panel mount BNC connector. The picture on the left shows how to connect it to the PCB.
Basically the collectors of all transistors need to be decoupled directly to the ground plane using 1n or 10n chip capacitors. (far left) These are not shown on the PCB layout.


A slight modification on the controller board is needed to run version 2. This has to do with the way some of the settings are stored in EEPROM. In V1 frequency and back light level were written to EEPROM every time these settings changed. This is not very elegant since the number of times you can write to EEPROM is limited (it will ware out). With the introduction of the Mega168 it was possible to generate an interrupt on any of the I/O pins. One of the pins (PC0/ADC0) was already used to monitor the battery voltage through a 2*10k voltage divider. Although this pin is setup as an ADC input it is still possible to read its logical level and generate an interrupt when the logical state changes. So the settings are now stored in an interrupt routine just after the unit is switched off. Therefor we need to keep the controller alive long enough to write to EEPROM. This is done with a 100μF storage capacitor at the output of the 5V regulator. To prevent reverse current flowing through the regulator a diode needs to be inserted in series with the regulators input.

Testing and alignment

The controller PCB can be tested separately and should be tested first. The first time the controller is powered up (well it has to be programmed first of course) the display will show a strange frequency and step size (000 kHz) and the back light will be dimmed. First set the step size, change the frequency and set the back light level. Then switch off and on again to see if these values were retained in EEPROM. If not, increase the value of the storage capacitor. All functions should work as will be evident on the display.

Now connect the HF PCB (please do use connectors) and test the Synthesizer first. If the MC145170 is initiated properly by controller you should be able to measure a 10kHz pulse train on pin 9 (Fr). Then check the VCO and make sure it covers the whole frequency range from 49-78MHz. If not compress or pull the coil windings. The coil is made from 1mm silver coated wire, 5 windings on 6mm ID 10mm long and centre tapped.

Subsequently test the 48MHz oscillator and mixers. The frequency at the mixer outputs should be equal to the displayed frequency. Adjust the VCO output level to get 300mV pp at the output of the Low Pass Filter. (indicated by 1)

The best way to check the 90° phase shift is to trigger a scope to the output of the analyser and measure the output of the LPF while you switch the control signal between 0V and 5V. The LPF output should shift 90°. You can use the trimmer capacitor to set it to 90°. It is not very critical. If you hard wired pin 27 of the controller to the 4.7k resistor disconnect it at the controller side and apply 0V and 5V to it. 

To set the potmeter at the input of the detector: observe the signal at the output of the first amplifier (connected to pin 24 of the controller) With a scope set on 2V/div and DC coupling and no load connected you should see a baseline of around 2.5V (half supply voltage) with excursions (positive or negative depending on the frequency) about every 100ms. These excursions should be within the range of 1V to 4V (absolute DC voltage)
If not reduce the input voltage of the detector. (test it for the entire frequency range) 

Finally let the analyzer calibrate itself by switching it on while holding the function key. Do not release the function key until the calibration message disappears. Calibration should be done with no load connected to the analyzer. After calibration the measured values of R and X should be well over 10k. Now try some known impedances. 


The Firmware is written in BASIC using the Bascom AVR compiler.  The controller is programmed and may be reprogrammed through the in-circuit programming connector on the controller board. A simple connection to the LPT port of a PC is all that is needed to program the controller. Please refer to the Sample Electronics cable programmer for more information. Note that the resistors are already incorporated on the controller board. The freeware version of Bascom AVR has a 4k memory limit. But I am not sure if this prevents you to use the programmer part to load the binary image into the controller. An alternative may be PonyProg  and set it to "LPT1 using Avr ISP I/O" The controller should be programmed with the default fuse settings. (as it is shipped)

Open line measurements

  • Can I really measure impedances on symmetrical (open) line while the analyzer is essentially asymmetric?
  • Do I need to use some sort of BALUN?

To begin with the last question, no you don't need a balun. In fact a balun will distort the measurement and is not effective if the line impedance is high. The simple trick is to keep the analyzer floating. That is why it should be battery operated. Although the analyzer circuit itself has some capacitance (with respect to ground) in most cases it is low enough to prevent any problems. I would advice to build the analyzer in a plastic housing (not a metal one) and keep it away from big metal structures during measurements. 
A special case however is when you want to connect the analyzer to a computer to do a frequency scan. The RS232 connection will prevent the analyzer from floating and will cause measurement errors if no measures are taken to isolate (for HF) the instrument from the computer. I have done this by winding the (internal) wiring to the RS232 connector on a ferrite core. The best practice is to use a high permeability (μ) core. This will insert a HF resistance rather then an inductance into the RS232 connection. The resistance is almost constant over the entire frequency range and in my case exhibits a resistance level of well over 1kΩ. This is normally high enough to keep the analyzer properly floating.

Download documents
Download Zip file
  (Please ask PA7DA)