Saturday, January 23, 2016

Minima #2 - Crystal filter construction

Making the crystal filter for the Minima Transceiver has been a challenging but very interesting experience. Challenging because I do not have any fancy test equipment. But I learned a lot, and it was very fun going through all this.

I bought about 50 HC-49 24MHz crystals from different ebay sources and  started out making the G3UUR colpitts oscillator tester from Experimental Methods of RF Design (EMRFD). I used 330pF capacitors for Cf (Ref EMRFD) and measured Cs to 35pF (including the switch).

All crystals were fundamental mode crystals, but they were all over the place frequency-wise. I borrowed an old Phillips PM6671 frequency counter for the characterization, as my own counter does not go all the way to 1Hz resolution.

I used boxes with small compartments to keep the crystals in order during the work.

The frequencies was jotted down in Google Sheets (with the G3UUR switch in both positions), and then I sorted the crystals by frequency.

I found seven crystals within 65 Hz for the QER crystal filter. I calculated Cm for the crystals using the updated formula from the 2015 ARRL handbook, and used Dishal to calculate the crystal parameters.

A 2.8 kHz bandpass resulted in 234pF capacitors and input/output impedances of 22.6 Ohms. I did not use this alternative, however. Instead I constructed the filter for 50 Ohm in/out, which required 109pF (I used 100pF) and an estimated bandwidth of 5.6 kHz. Probably a bit wide, but I wanted to give it a try.

Then I "characterized" a few capacitors and soldered the filter together bravely. In the above picture you see a 6dB pad at the input and a 51 ohm resistor at the output. I have no network analyzer so I had to improvise.

I used a Si5351 controlled from an Arduino. A few buttons let me step the frequency in 100Hz intervals. The Si5351 was connected to the input of the filter and the output was connected to an oscilloscope. For every 100Hz interval, I jotted down the RMS voltage at the input and output, and calculated the loss.

The response is not great, as there is some falloff. The passband ripple is about 2-3 dB. I have no idea whether this is bad or not. The Elecraft K2, for example, is supposed to have 3.2dB ripple, so my filter can not be all that bad although the QER filter is supposed to be very flat. The reason for the passband ripple can be either an error with my measurement technique, or it could be that the output impedance is not exactly 50 Ohm as estimated in Dishal (i have not measured the impedance), or it could be that the individual placement of the crystals matter (I did not care), or that the crystals are crap. The filter is about 5kHz, a bit narrower than estimated.

Anyway, the filter is good enough for initial testing, and I am satisfied. I think I need a simple Scalar Network Analyzer, however, as all these measurements were a bit tedious, and it could be interesting to do them again them with different capacitor values.

Tuesday, December 22, 2015

Building Farhans Minima Transceiver Part #1


I have started my most ambitious electronics project so far. After building my Softrock RXTX I was eager to learn more about RF designs, and HF radios in particular. I came across Farhan, VU2ESE, via Soldiersmoke and decided to build a transceiver based on his Minima.

There are three published versions, and many variations in between that are produced by others. All versions are based on a Si570 PLL Local oscillator and a discrete component BFO.

The first version uses mostly discrete components, KISS-mixer and discrete component audio amplifier, The IF is 20 MHz and it switches between two filters to cover the entire HF band.

The second version uses a FST3253 mixer and a TDA2822 audio amplifier

The third version uses a standard diode ring mixer and a TDA2822 audio amplifier and an IF of 24MHz. I have seen a few versions of the first Minima verison around the web, but I have not seen any of the other two. 

Building my own version

I plan to base my design on the third vesion. It seems to be the simplest of the three, although it does not cover the whole HF spectrum. Since the IF is 24 MHz and it uses only one LPF it is limited to the frequencies below 24 MHz.

To make things a bit more interesting, I have planned to make a few alterations to the Minima 3. First, I will use a Si5351 as the local oscillator instead of the Si570. I used the Si570 in the Softrock RXTX so this gives me the opportunity to try something new. In addition, it contains three oscillators so one can serve as the LO while the other can serve as the BFO. N6QW has advocated for this several times, so why not give it a try.

Further, I will use ADE-1 double balanced mixers for both mixing stages. I will also use a standard LM386 as audio amplifier as I have many of those in the junk box.

Display and front panel

The Minima design and the software from Farhan is based on a 16x2 display.
I have used the standard 16x2 and 20x4 LCD displays in several projects previously: My 3D-printer, my timelapse device, a Shruthi-1 synth, a LXR drum machine, and more recently, my SWR-meter all use this display technology. This time I want to try something different, something more in the spirit of homebrew oldschool radios, and something more difficult. We are talking, Nixie tubes, Dekatrons, tuning eyes and neon indicators. No freakin LCD display or even a single LEDs on this rig.

My initial front panel is made in Front panel express. I have printed a test version on paper and glued it to a piece of cardboard. The purpose is to verify that all the bits and pieces fits to the panel before I order the final panel from Schaeffer.
In the above picture, the eight nixie tubes, one dekatron and one tuning eye is mounted temporary.

I think it will look great when the front panel is all finished. For the time being, we have to use our imagination, but nothing beats the warm glow from nixie tubes and dekatrons. The nixie-board from the above picture is one of my previous creations.


Moving to the radio itself, I started out building a LM386 audio amplifier. Homebrew hero N6QW always recommends to get the audio part going first, so here we go. The circuit has only 20dB gain at the moment, and I will have to increase the gain to at least 40dB later on, but it is enough to get started.

The sound from the little chip is not bad, and I hooked it up to my iPhone for testing. The speaker is a simple 8 ohm 8cm speaker from

Low pass filter

The next stage I built was the low pass filter.

As there are no build manuals for homebrew projects, I decided to simulate some of the circuit modules. This is simple in LTSpice and gives valuable insight.

The simulated frequency response seem reasonable for a sub 24MHz receiver.

I used 0805 surface mount capacitors for the LP filter. I made some room on the PCB for a second LP or BP filter, should I have the urge to go above 24 MHz in the future. I hooked up the ADE-1 to the Si5351 via a 6dB pad. The output is terminated to a 51 Ohm resistor for testing. I am not sure whether the 6dB pad is necessary, since it is possible to adjust the Si5351 output power to drive the required 7dBm to drive ADE-1 from the Arduino software.

Future work

There are many parallel projects going on in this build, there are dekatrons and neon tubes that should glow, there are front panels and mechanics to resolve, and there are amplifiers to solder, and crystals to characterize. Hence, I did not want to collect everything in one big and totally confusing posting at the end (will it ever end?). The next stage is to finish the IF amplifiers and the crystal filters. I hope that others will take on building the third version of the Minima as well. If you are one of them, I would like to know. Stay tuned.

Saturday, December 5, 2015

Homebrew SWR and power meter

First of all, this SWR meter in this article is not exactly homebrew, as I based the circuit on the schematic in the excellent book Arduino Projects of Amateur Radio. Although I bought the book and respect the copyright of the authors I will share my own schematic here. Why? First, the design in the book is not completely original and is based on similar designs from others. One example here.  Second, I changed a few things, removed some stuff,  and added some other things, to my own liking, so the design is not identical anymore.

The circuit is based on two AD8307 log amplifiers, which are connected to the forward and reflected ports on a directional coupler.  The AD8307 amplifiers gives a DC voltage of about 25mV/dB of the input signal, which is amplified using an opamp (LM324). The opamp also provides the reference voltage to the Arduino (AREF) to ensure that the full ranges of the A/D converters are used.

I used the fourth opamp in the quad LM324 to provide input voltage reading. That is why the PCB in the picture has two power jacks. One input and one output. That way I know the drive voltage for the radio. I primary plan to use this device for my Softrock.

I created the schematic and the board in Eagle, and submitted the gerbers to Elecrow. I received 10 PCBs after about 25 days.

The board is not much larger than a standard 20x4 LCD.

I choose to use an Arduino nano rather than populating a AVR328 on the board and messing with USB converters. I am glad I did. I did one mistake on the board however. The Arduino was not powered from the 5V rail. The problem was that it was an error on the Eagle footprint for the Arduino Nano. I just downloaded the footprint file uncritically from the Internet without checking it. Other than that, It was fine.

Another problem was that I got oscillations on the LM324 opamps connected to the AD8307. The oscillations were around 40KHz and about 400mVpp on top of the DC signal. Hence it was impossible to calibrate the device. The solution was to desolder the output capacitors on the LM324. I do not think they are really needed on a DC design.

This was my first SMT design, and I am fairly happy with the result. The SWR and the power measurements seems accurate. I used the Arduino software from the book, and modified it to include a larger display and some other things. As you may notice, there are no buttons on the device. Originally I planned to use a rotary encoder and a bunch of menus, but as they say in the Soldersmoke podcast, menus are for restaurants. I totally agree. Besides, programming all kinds of features to the device is totally insane. This is a simple SWR meter and thats it. 

Sunday, October 18, 2015

Nixie tube experimentation with IN-12


I have always wanted to try out Nixie tubes in one of my projects, and here we go. Nixie tubes come in many different sizes and there are both top view and side view nixie tubes out there. I settled on some russian IN-12 top view nixie tubes as they are cheap, and should fit nicely on a front panel (for example on a radio).

The IN-12 was originally used in russian multimeters, radios, frequency counters. This R-155A Brusnika Radio Station serves as a good example on how nixie tubes were used in the cold war era.

Recently, this particular tube has been used for many hobby purposes such as clocks, geiger counters, etc. While I am mentioning it, the major page for steampunk and Nixie-fans is Bad dog designs having loads of excellent clocks using nixie tubes. Ok, enough drooling over other designs. Back to my modest attempts.

Testing a nixie

I purchased a 110-180V power supply kit from ebay. I highly recommend this kit from seller lumos-sk. It comes with an excellent build manual and was very easy to assemble.

The assembled power supply was set to 170V...

...and the IN-12 glows fine.

A PCB for four IN-12 tubes.

To control the nixies, I made a PCB in Eagle. The circuit uses two 74HC595 shift registers to drive four K155ID1 decimal decoders.

The schematic is shown above.

It is possible to cascade several of these boards to drive eight, twelve, sixteen, etc Nixies from just three pins on the microcontroller. I ordered the PCBs from OSH-park, and they were excellent.

However, I should have read Kevin Ryes blog before creating the PCB. I just took it for granted that the Eagle IN-12 part was correct, but as Kevin Rye found out, it is not. The pin numbering on the silk screen is wrong and the anode is connected to pin 5 instead of pin 1. However, if one ignores the numbering, my PCB works if the IN-12 is mounted on the back side of the board (i.e. mirrored). 

Originally I planned to use IN-12 sockets (purchased from Ukraine) but since the IN-12 part was mirrored, the mounting holes were on the wrong locations and it made no sense to use the sockets. In addition, the parts I got were used, so I had to desolder chunks of 30 year old wiring. Totally boring work. So instead, I went back on Ebay and ordered some pins from the old Soviet Union (see picture above). They were excellent for this purpose.

To test the shift registers, I copied the Arduino code made by Imperkins over at Instructables. The only change was to add support for an additional shift register.

The above film shows the Nixie PCB in action.
As mentioned, it is simple to cascade several PCBs to control more nixie tubes. My secret plan for the future is to use eight nixie tubes as a frequency display for a HF radio, such as Farhans Minima.

Further Reading

2. KiCAD library
3. IN-12 datasheet (in Russian)
4. IN-12 geiger counter (with laser cutted parts).
5. IN-12 clock (shares Eagle files and svg of front panel cutout)

Sunday, September 13, 2015

Directional coupler


I have been struggling to understand how my simple dipole antenna works (or doesn't work). The diycrap way to understand stuff is usually to read, build and measure, and then read some more. The key factor here is the measuring part, as I need to measure the standing wave ratio (SWR) on the feed line, as this is a key parameter. To measure the SWR, I need a directional coupler. And it is going to be homebrew.

Later, the coupler is going to be the basis of a SWR-meter, but for now, lets just look at the coupler.

The directional coupler design is classic and well known. Notice the input port and the output port on the upper line and the forward port and the reflected port on the bottom line. (My graphics software is Field Notes.)

Some theory

The principle of the coupler is based on two toroid transformers. The first is a current transformer and the second a voltage transformer. Each taking samples of the signal on the main line. The two transformers are equal, reducing the current and the voltage to the same level, meaning that the impedance is constant. The two transformers are connected in such a way that for a forward signal, the signal cancels out on the reflected sample port, but adds up on the forward sample port. And vice versa, a reflected signal adds up on the reflected sample port but cancels on the forwards sample port. Since we now have a sample of both the forward signal and the reflected signal, it is straightforward to calculate the SWR.

For a deeper understanding on how the coupler works, I recommend this web page, or the excellent YouTube video from W2AEW.


It is simple to construct the directional coupler. The transformers are FT50-43 toroid cores with 32 turns of 24 AWG enamel wire. The primary winding is simply a piece of RG58 through the torioid (i.e., one turn). Different designs use different toroids and number of turns. I settled down on a design found in Arduino projects for amateur radio.

I used a aluminum box and BNC connectors. I used copper clad boards as shielding here and there. I did not have any 50 ohm resistors in my junk box so I used two 100 ohm resistors in parallel. They are all 2W resistors, which is totally unnecessary and overkill.

Rudimentary testing

Testing the forward port. The output port is connected to my 50 Ohm dummy load. As signal source I used my GW Instek GFG-8255 signal generator, which unfortunately maxes at 5.5 MHz. 

8.2 Vpp on the input port resulted in about 244 mVpp on the forward port. Hence, the coupling factor is about -30dB. The signals are not in phase, but that does not matter for voltage measurements in a SWR-meter.

Testing the reflected port

8.2 Vpp on the input port results in 1.60 mVpp on the reflected port. This translates to a reflected signal of -74dB. The directivity is the reflected signal (-74dB) minus the coupling factor (-30dB) which equals -44dB.

Testing over the HF band

Later I borrowed a TTi TG2511 function generator which goes all the way up to 25 MHz. I tested with 10 Vpp on the input port and got these results:

frequency coupling factor return loss
1.8 MHz -30 dB -84 dB
3.5 MHz -30 dB -80 dB
7 MHz -30 dB -75 dB
10 MHz -30 dB -72 dB
14 MHz -30 dB -69 dB
18 MHz -30 dB -66 dB
21 MHz -30 dB -65 dB
25 MHz -30 dB -62 dB

The directivity is between 54 dB and 32 dB. The numbers seem reasonable, but indicates that the coupler should not be used for VHF/UHF.

Future work

The plan is to build a power meter and SWR meter using AD8307 logarithmic amplifiers and an Arduino. I will probably base the device on the design from the book Arduino projects for amateur radio.

Further reading

Sunday, August 16, 2015

Homebrew dummy load

I have created a simple 50 Ω dummy load to test transmitters. I also added a simple RF diode detector so I can measure the peak voltage, and calculate the power.


The dummy load consists of eight 100 Ω resistors rated at 2 W so the load should handle 16 W, at least for short periods. I constructed the dummy load using a combination of ugly construction and Manhattan style, by gluing pieces of PCB  (as isolation pads) on top of a ground plane PCB.  Then I soldered the components directly on the copper without drilling holes.

RF Probe

The RF probe part consist of a simple 1N4148 diode and a 0.01 uF ceramic capacitor. I only had a 50 V capacitor in my junk box, but it should be sufficient given that this is a 16 W dummy load and 16 W translates to 40 V peak.

I added female banana connectors, which connects to a multimeter. The power can be calculated by Ohms law by subtracting the forward voltage on the diode from the measured voltage, then multiply by 0.707 (to get RMS), then square the result and finally divide by 50 Ω. Some homebrewers add a voltage divider to their RF probes using a 4M7 resistor to get RMS voltage directly. I did not bother since I am sure the input impedances on my multimeters varies.

The calculations might seem a bit cumbersome, but I might print out a small lookup table and glue it to the box to have some ballpark figures. However, this is not a precision instrument. The forward voltage on the diode varies with load and can be somewhere between 0.4 and 0.7 V. I simply use 0.5 V in my measurements.

So far, the dummy load has been very convenient when testing my Softrock RXTX and its low pass filter,

Further reading

1. Jeelabs, Forward voltage drop on a diode
2. NXP, 1N4148 data sheet
3. N5ESE, Classic RF Probe

Thursday, August 13, 2015

Lowpass filter for 30m

I just finished a 30m lowpass filter for the Softrock Ensemble RXTX tranceiver.

I used the schematic provided by WB5RVZ

L200 and L201 is wound to about 0.9uH, whereas C200 and C202 is 100pF and C201 is 330pF. Everything is soldered to a PCB (ugly construction) and I added two switches and a coax to enable on and off switching of the filter.

Ugly construction...

I tested the filter using a 25 MHz function generator and my Rigol 1052 scope. The filter was connected to a dummy load. The first two pictures below show 1 Vptp at 10 MHz with the filter off and on respectively. The two pictures thereafter show 1 Vptp at 20 MHz (on and off).

10MHz lowpass filter switched off

10MHz lowpass filter switched on

20MHz lowpass filter switched off

20MHz lowpass filter switched on

As a three pole filter it should have a roll off at 18db/octave. This seems about right when I compared 12 MHz and 24 MHz (9.3V and 0.9V ptp respectively). I measured the -3dB point to be around 14.7 MHz. The purpose of the filter is to reduce the the 2nd harmonic when transmitting in the 30m band (10.1 MHz). The second harmonic is down about 13dB.

Function generator on burst mode, Oscilloscope on FFT, center frequency is 10.5MHz and filter is off

Same as above, but lowpass filter is switched on

I also looked at the FFT on the Rigol scope while using burst mode on the function generator. In the pictures above, the center frequency is 10.5MHz and the grid is 12.5MHz in the X axis and 10dB in the Y axis. Here it seems like the filter contributes to 20dB attenuation at 23MHz which is about right.  I have not measured the second harmonic while using the Softrock, since I have no real spectrum analyzer. However, as the filter is working, I guess I can legally transmit on 30m. 73!