Calibration of FUNCube Pro Plus.
Having developed a program (FUNScanner) to use the FUNCube Pro Plus (fcpp) as a swept RF spectrum analyser I decided that a set of measurements to calibrate the device would be useful. This page reports the results in case they are of use to other users.
RF sensitivity and input-output conversion gain
To calibrate the sensitivity I used an HP8648C RF signal generator, set to output 300 microvolts (matched into 50 Ohms). This level was chosen as it generates outputs from the fcpp lare enough to measure accurately, but avoids outputs close enough to the 0dBFS level to risk some samples being clipped at output. Throughout the sensitivity measurements I set the fcpp IF/mixer gain to 0dB.
I then used qthid 4.1 to tune the fcpp and also tuned the HP sig gen to provide an offset beat in the output with a frequency of a few kHz. I then measured the rms size of output sample series using a modified version of my ROXScope program. This let me apply an FFT to pick out and measure the beat tone and check for any instability or drift. In practive I found it convenient to tune the HP sig gen 3 kHz higher than the nominal fcpp frequencies set with qthid. Measurements where made with the fcpp LNA on and off to check the LNA gain.
I also did check measurements at other input levels and offsets to satisfy myself that the results were not affected by gain compression or other obvious problems.
Having obtained the raw measurement data I used the values to determine the nominal input RF level in dBmV (50Ohms) that would be required to obtain a 0dBFS rms output from either FUNScanner or the modified ROXScope program. So the following resulrs essentially show the scaling factors required to convert output readings in dBFS into dBmV when the fcpp’s IF/mixer gain is set to 0dB.
For the sake of clarity, I can show the results in a set of graphs.
Figure 1 shows the results for the tunable range from 408 to 2,050 MHz. The lower limit (408 MHz) seems to be the lowest value in this band which my particular fcpp can tune. The upper limit was set by qthid refusing to accept any higher frequency. The discontinuity is at 875 MHz.
Figure 2 shows the results for the band from 32 to 268 MHz. Above about 260 MHz the sensitivity fails rapidly as the frequency is tuned, but seems fairly stable. Tuning to slightly higher frequencies may have been possible if I had increased the IF/mixer gain above 0dB. But I did not explore that.
Figure 3 shows the results from 150 kHz up to just under 32 MHz.
Although it makes it harder to see detailed values, the results can be combined on one log plot.
Figure 4 shows the combined results. One feature I didn’t expect (and now assume was deliberate) is that at the 32 MHz boundary the fcpp’s overall gain drops by an amount quite similar to the LNA gain. Knowing that could make some swept measurements easier to interpret. For frequencies below about 250 MHz the LNA in my fcpp has a gain of around 24 dB. But the LNA gain is much less above 400 MHz. Here it is around 7 dB in the 408 - 875 MHz, and ‘not very much’ above that!
Output frequency response and resolution bandwidth
To determine the flatness of the in-band frequency response and the effective resolution bandwidth I did some measurements where I set the HP sig gen to a fixed frequency and level, then used a modified version of FUNScanner to step-sweep across this with small frequency increments. The results of doing this at various frequencies, levels, etc, were fairly consistent so I only need to show one example to summarise the general findings.
Figure 5 shows the results of such a scan for the HP sig gen providing a 500 MHz tone. The result is a fairly clean and flat-topped response.
Figure 6 shows a ‘zoomed in’ view of the top of the response. This shows that the central portion is flat to much better than a 1dB, and that the resolution (noise equivalent) bandwidth is around 200 kHz. This matches fairly well the 192k sampling rate and makes 0·2 MHz a sensible step choice for RF sweeps using FUNCube.
I noted during the tests that the fcpp has a response ‘hole’ near dc. I assume this is due to some high pass filters after the IQ demodulation/mixdown to block near-LO phase noise. I did not try to measure the details, but it looked like the LF roll-away was at the order of about 20 Hz. Finding this means that I decided it would be fine for measurements with FUNScanner to auto-subtract any dc offsets on the IQ sample streams as any near-dc will have been removed anyway and thus any dc must be instrumental error in the fcpp circuity after the demod/mixdown.
The raw measurement values I obtained and used as the basis of the above can be obtained from the file Data.zip (3kbyte zip file). This also includes a text file explaining the data. Anyone who wishes is welcome to use this data.
N.B. Please bear in mind that I have no way to tell how similar the performance of other FUNCubes may be to the results I obtained. So the values are given here as a general guide based on my findings with just one device!
21st Feb 2013