Thursday, February 17, 2011

Quick Look at FUNcube Dongle SDR Radio

My candidate for the new radio with the most unlovely name is the FUNcube Dongle.  It is a part of the AMSAT-UK FUNcube satellite project, but it is attracting wide interest (not just for satellite work) as an example of what can be done by a volunteer group to build a very simple, but powerful Software Defined Radio to cover the 60 - 2000 MHz frequency range.  And it's pretty cheap.  The last lot went for £ 108.22 each to the US, about US $170.  They are only being made sporadically, but another batch is supposed to be coming at the end of February.

I have had a chance to borrow an FCD, and I've been trying to figure out what it does and does not do, and whether it's something I need to add to my stable.  Here are some of my lab notes:

My quick tests in my home shack without good signal generation & attenuation showed that the receiver (like any SDR) is sensitive to overload. The only signal source I could use easily was my 2M HT (¼ watt low power) transmitting into a dummy load a foot away from the receiver. I also noted that the dongle radiates at its LO frequency, breaking squelch on the HT. There seems to be little or no shielding on the dongle.  It has a plastic case, and there may or may not be shielding inside.


I used both the basic software combination (FCHid and SpectraVue) and the more user friendly (IMO) WRPlus with the G0MJW adapter DLL. The project's documentation for newbie users is fragmentary and frustrating, but that's understandable at this early stage.

At the ARRL Lab*, I found the FCD's crystal oscillator frequency in this unit is about 119 ppm high, but either software solution allows you to enter a frequency scale factor to correct for this. Warmup drift of nearly 1 ppm was observed from a room temperature start. (Lack of a high stability oscillator or an external sync capability might be a limit in some advanced applications.)

I was able to update the dongle firmware to version 18f, which is current. Surprisingly and unfortunately, I could find no indication in the PC software about what firmware version is actually installed.

I looked at the tweaks available for DC balancing (suppressing the zero frequency peak) and I/Q balance (maximizing image rejection). At 926 MHz, I was able to get 49 dB of image rejection, but the adjustment is critical. Switching to 2000 MHz, the image rejection is down to 30 dB. (Image rejection is typically about 24 dB if you don't do careful tweaking.)

Maximum input level before clipping occurs is about -55 dBm, varying somewhat with frequency.  You can easily reach this level depending on your RF environment.  A preselector filter may be needed.  (Strictly speaking, the -55 dBm limit applies to a simple sinewave input.  It's an instantaneous voltage limit, so a broadband input of greater power might be tolerated.)

A quick measurement of tangential sensitivity gave the following

60 MHz -122 dBm
144    -129
926    -130
1000   -129
2000   -133
Tangential sensitivity is a measure of the the minimum detectable signal. These values are by eye with a particular FFT and filtering setup. Don't hold me to them!

The frequency coverage was at least 60.1 – 2000 MHz.  I did not explore the outer limits of coverage.

The major limitations of the dongle are its limited sensitivity, lack of input filtering or attenuation or AGC, and limited instantaneous bandwidth (96 kHz). The USB dongle package is cheap and effective, but it's susceptible to mechanical damage if it's hanging off your laptop.

For about US $170, it's a steal. It is usable as a wide-coverage VHF/UHF receiver, especially with a low noise preamp, and it provides a good playground for learning about SDR.  I suppose it's even going to be a cheap and effective receiver for satellite work! I would want one as test equipment, but the bandwidth limitation becomes significant if you are searching for a signal with unknown frequency.

Update: The next sale of Dongles will begin Sunday 20 February 2011 22:00UTC.
----
*I volunteer in the ARRL Lab in Newington, CT.  The work here is my own and ARRL is not responsible for my mistakes!

1 comment:

Unknown said...

Sorry about the name! The history is this. It's no secret that we completely underestimated the level of demand for the FUNcube Dongle, and in the rush when trying to take this from a kitchen table project to a manufactured unit, the prospect of thinking up a better name disappeared off the radar. By the time we had any time to catch our breath, the horse had rather bolted, so we just left it as the FUNcube Dongle.

You are right about preselectors, particularly at VHF. The FUNcube Dongle does have programmable filtering, but it's limited at VHF. Things improve significantly at UHF and above. We have some suggestions to alleviate this already docuented and we're working on others too.

Regarding the versioning, you are right, the first couple of versions of firmware did not have a method to expicitly indicate the firmware level, although a smart programmer would be able to code someting up to probe the version.

This was as a result of running out of time before Christmas when our first manufacturer pulled the rug from under our feet, rather dramatically telling us that they weren't up to the job the day after they were meant to deliver. I therefore spent Christmas making the first 100 myself, on the kitchen counter, but we did deliver our first batch as promised in December.

This is a constantly evolving project. Firmware updates are frequently being supplied. I deliberately didn't provide AGC because I was concerned people would think the unit was insensitive. This could quite easily be implemented in firmware, however it would be based on the tuner's IF passband which is several MHz.

I would dearly love to broaden the bandwidth, but key to this project's original concept was to provide a passband wide enough to receive a very few kHz wide BPSK telemetry downlink, and do it as cheaply as possible, and anything else was a bonus.

The key to making this reasonably priced was to use mass market TV set top box tuner chips and audio codecs for the ADCs.

Providing several MHz of bandwidth is expensive in ADC terms.

The first pre production units only had 48kHz. It is possible that we may be able to squeeze out 192kHz and/or 24 bits, but I fear the unit will be panting quite a lot if it is even possible.

The sensitivity of all units is measured to be within a dB of 12dB SINAD NBFM on 2m at 0.15uV. Of course if it's overloaded then the noise floor will rise and you'll see apparent insenstivity.

Certainly I'd recommend using a USB extension cable with the FUNcube Dongle: if you've ever used a TV USB stick, the TV cable will innevitably cause some stress on the USB plug. I am sure though that the form factor has unwhitingly been one the reasons for it's popularity.

Anyway, thanks for the feedback, I welcome it.

73, Howard G6LVB