Wednesday, October 27, 2021

Arduino controller VFO/BFO Test Set

I have done several versions of  VFO/BFO circuits using differentmicrocntrolers.  Any of these would work for the Simple SSB transceiver.  Looking at these, you can see that they are also very similar to some of the test equipment I have previously built.  I know that some people who are interested in building this transceiver, have very little in the way of RF test equipment.  So why not build something that can be used to test the modules as they are being built, and then as the Controller,VFO/BFO to finish off the project.

Doing something similar to the test gadget from a couple years ago, I went with a basic Arduino Nano, the SI5351 module, and a TFT Display.  To this I added header pins to bring out pins for a Rotary encoder and other controlls. To an expansion header I brought out  DC power, analog, I2C , and the SI5351 clock lines.  Since some of the TFT Display modules require 3.3 volt logic levels instead of the 5 volt out of the Nano, I added 1K resistors in the control lines to provide current limit for the display if using a 3.3 v module.  

This also helped make the layout a little easier.  After a number of tries I was able to get the layout to fit on one of the 50 x 70 mm perfboard in the kit I purchased.  When building this module I found that it worked quite well to bring the wired up from the bottom of the board and run them across the top and back down to connect at the other end.   Doing this kept the board fairly neat.  The only insulated jumpers I had to install were to bring the 5V line across the expansion header. This layout would also work well for etching or routing a single sided circuit board.

After building the board, the only thing I had to do to one of the early Arduino sketches I had for a simple VFO/BFO was to change a couple pin definitions for the SPI lines going to the TFT display.  This made a fairly compact board that can be easily mounted, with a connecting cable going to the rotary encoder and several switches on the control panel.

Since I also want to be able to use this as a test_set during construction of the RF stages. I built up a small board with a rotary encoder and 3 push button switches that plugs on to the control header pins on the Arduino controller board. 

 Looking back at the Sweepering Jr., and different versions of the SNA Jr. projects, I decided to go with much of the original SNA Jr. design.  I built a simple add on module that can be used as a Sig.Gen., SNA, RF voltmeter.

I bring out two of the SI5351 clock outputs throughs DC locking capacitors, one of them has a 50 ohm load placed across the output.  This can be used as a two channel signal generator. There is limited level control, but you can build  very simple attenuators to take care of that issue.  Instead of using an AD8307 Log amplifier for RF measurements, it used a 1N60P shunt diode detector feeding a MCP6002 operatinal amplifier.  This two channel op-amp is very nice to work with in microcontroller circuits.  It only requires a single ended power supply, and works well at 5 volts.  It has rail to rail output, so you can use the whole 5 volt input range of the Arduino Nano.  They are readily available in 8 pin DIP and SMD versions, and are less than $1 through most suppliers. This circuit does not have the sensitivity or dynamic range of an AD8307.  But, for use as a RF voltmeter or in a SNA over the range of voltages expected in testing the transceiver it will be very adequate.  One of the detectors has a 50 ohm load on the input for power measurements or use as an input for the SNA function.  The other is configured as a remote RF probe with a x1/x10 voltage divider, for basic RF level checking.   

Just like other parts of the project,
the test set options will be built as simple modules. The test set modules will plug onto the 18 pin expansion header on the VFO/BFO board.  It is built on one of the 50x70 mm. boards in the kit I purchased.  You can use edge mount SMA  connectors for all, but I substituted 3 pin right angle heder pins for the RF probe connection, so I could use it for other possible functions. A 3 pin keeps the layout the same for either, and makes a more solid feeling connection. 

 Adding an adapter board for the TFT display and making a simple 3D printed sleve to hold everything, the modules plugged  together make afairly compact test set.  

Now to finish the software.  It will have parts from the SNA Jr., 2 channel signal generator, and Sweeperino Jr. projects, plus a couple more if I can fit them all in the Nano.

 I hope to have several other modules that such as an antenna nalyzer. SWR power meter. measurement receiver, and possibly a very simple Spectrum Analyzer for up to about 60 MHz.  These will be added as the transceiver project progresses.


  1. Excellent project DuWayne. I still get a lot of use from my SNA Jr.

  2. Hi DuWayne
    Great Blogsite
    I was wondering if you ever finished the Faharan Spectrum Analyzer
    I made all the boards in Eagle Cad, had them manufactured by PCway
    (5$ for 5 boards of each type + $20 shipping. Boards came out nice,
    and I stuffed them all (surface mount). Put the project away after I ran into problems testing and finally back to it 3 years later.
    Andy- KM4TRT