Funcube Dongle Sourcefcd_source_cSources1from gnuradio import fcdfcd.source_c($device_name)
#if $lna() != 20.0
self.$(id).set_lna_gain($lna)
#end if
#if $mixer() != +12.0
self.$(id).set_mixer_gain($mixer)
#end if
#if $ppm() != -120
self.$(id).set_freq_corr($ppm)
#end if
#if ($dci() != 0.0) or ($dcq() != 0.0)
self.$(id).set_dc_corr($dci,$dcq)
#end if
#if ($iq_phase() != 0.0) or ($iq_gain() != 1.0)
self.$(id).set_iq_corr($iq_gain,$iq_phase)
#end if
self.$(id).set_freq($freq)
set_freq($freq)set_lna_gain($lna)set_mixer_gain($mixer)set_freq_corr($ppm)set_dc_corr($dci,$dcq)set_iq_corr($iq_gain,$iq_phase)Device Namedevice_namehw:1string#if $device_name() then 'none' else 'part'#Frequency (Hz)freq145500000realLNA Gain (dB)lna20.0realMixer Gain (dB)mixer+12realFrequency corr. (ppm)ppm-120intDC I offsetdci0.0realDC Q offsetdcq0.0realIQ phase balanceiq_phase0.0realIQ gain balanceiq_gain1.0real($freq >= 50e6) and ($freq <= 2e9)($dci >= -1.0) and ($dci <= 1.0)($dcq >= -1.0) and ($dcq <= 1.0)($iq_phase >= -1.0) and ($iq_phase <= 1.0)($iq_gain >= -1.0) and ($iq_gain <= 1.0)
This block wraps the Funcube Dongle USB audio input and the USB HID control interface \
into one convenient GNU Radio source block.
The sample rate is fixed at 96 ksps.
To find the device name on Linux type:
cat /proc/asound/cards
The LNA gain is a set of discrete values between -5 to 30 dB with 2.5 dB step, but you can \
use any float value and it will be rounded to the nearest valid value.
The Mixer gain can be set either to +4 or +12 dB, but you can use any float value \
and it will be rounded to the nearest valid value.
The FCD block can autmatically apply frequency correction:
- For FCD v1.0 you can leave at -120 ppm
- For FCD v1.1 with serial number 810 or greater use -12 ppm
The DC offset and IQ balance parameters can have range -1.0 to 1.0.