Monday, May 16, 2022

Built the QRPGuys AFP-FSK Digital Transceiver III kit

A QRP Labs QDX digital transceiver kit is on order but in the mean time I was looking for information on the technique Hans uses to modulate the Si5351 from a computer generating FSK modes, such as WSPR. The manual mentions that the way it works is to measure the frequency of the audio coming in from the computer and then directly set the Si5351 frequency. This means there's no mixing and no opposite sideband. Very clever!

It turns out that this idea is not new and dates back many years, even implemented on a Z80.

While QRP Labs keeps much of their source code secret, another vendor - QRP Guys - have a transceiver that uses the same system and they supply the source code.

I have just finished building and debugging their Digital FSK Transceiver. It's not as neat as the QDX as it uses analog audio in and out. Transmission is by VOX so it's not a huge problem.


The kit went together well but I couldn't get it working even though the display showed the right things. It didn't auto-detect the low pass filter band (there's a resister divider to signal the band by voltage).

I downloaded the source code and wrote to QRP Guys to tell them they linked to the wrong source. I was wrong of course and failed to read the file called README First which explained that the same source file is used for a few different projects.

Ken LoCasale replied with LOL after I realised my error. Nice quick response from the QRP Guys.

Unable to get the kit working, I built the code and flashed an Atmel ATmega328p chip in an Arduino Uno. When I swapped that chip into the VFO board the receiver sprang to life.


As you can hear, SSB reception is good but the 1kHz tuning step is a little large for SSB reception. I haven't calibrated my oscillator so that might help.

Driven with audio from WSJT-X I saw 38V peak to peak into a 50 ohm dummy load running on 13V.

After calibration I had an FT8 contact without any problems.


20m is very active today. For such a simple receiver (Si5351 + NE602), it does a great job:


It's great that QRP Guys have shared their code.

Interestingly the code that made version 3 of this project possible was shared by Kazu Terasaki AG6NS. There's a discussion here. His GitHub page has several projects and there's a branch with the official QRPGuys version.

I'm very much looking forward to the QDX which has a single USB interface to the computer and an apparently very good SDR receiver. This is a good kit and fun to tinker with.

2 comments:

Clifford Heath said...

You know how complex (I&Q) signals can reflect any modulation? Well, Make your I&Q SSB signal using a Hilbert transform as normal, convert I&Q to amplitude and phase (trig conversion to polar coordinates), and then, frequency is just phase rate, so you can reproduce any modulation by rapidly varying the frequency and amplitude. The difficulty is with very high phase rates (the polar signal can pass through the origin producing an instantaneous 180 degree phase shift). Luckily the Si5351 can operate at 300MHz so it's not too bad. Also with amplifiers that aren't very linear, your amplitude envelope gets corrupted. So yeah, it's SSB Jim, but not as we know it. It really needs to run at least 10x the audio sample rate to get a good result, something the Arduino just isn't fast enough to do.

Michael said...

All FSK was originally done by shifting the carrier frequency directly. Often by switchig in a small capacitor. This was done with both crystal oscillators and VFOs.

When SSB rigs came along that continued for a while, lots of Hints & Kinks in QST on specific rigs.

But if you feed a pure audio tone into a good SSB transmitter, the putput is a CW signal, one bit different from a "real" CW signal. If you shift that audio oscillator, the CW signal follows. This isn't about sending "audio tones" but FSK. It works because SSB is about translating audio to RF.

Note there are some kits that use DSB for this. You are no longer sending CW/FSK then, I'm not sure what it is. People seem to get confused, "it's just sending audio tones". No it's not.

In the age of commercial rigs, it's easier to feed an audio tone into the mic jack than modify the rig for FSK. So all this fancy software directly generates tones, rather than DC voltages for keying something else.

Hence this new wave of rigs have to adapt, demodulating the audio tones and using it to shift the oscillator. It's no breakthrough at all, if the fancy software generated DC voltages the connection to the old ways would be more obvious.