1
0
Fork 0

Update notes.

This commit is contained in:
Joris van Rantwijk 2014-01-09 21:18:44 +01:00
parent f9d6cfd0d0
commit a256775f28
2 changed files with 18 additions and 15 deletions

View File

@ -16,15 +16,22 @@ Casual test of ADC errors:
* I/Q phase mismatch in order of 1% of sample interval * I/Q phase mismatch in order of 1% of sample interval
With tuner in auto-gain mode, device autonomously switches between gain With tuner in auto-gain mode, device autonomously switches between gain
settings during a run. The tuner gain seems to switch between ~ 24 dB settings during a run. The LNA gain seems to switch between ~ 24 dB
and ~ 34 dB without intermediate steps. and ~ 34 dB without intermediate steps.
With RTL in AGC mode, the level of the digital sample stream is normalized With RTL in AGC mode, the level of the digital sample stream is normalized
to -6 dBFS. Unknown whether this is an analog or digital gain stage. to -6 dB FS.
Unknown whether AGC mode is coupled to Elonics IF gain or purely Unknown whether this is an analog or digital gain stage.
a digital thing in the RTL chip.
Does this improve SNR or not? Does this improve SNR or not?
At first I suspected that AGC mode may be a cooperation between the RTL and
the Elonics tuner. I thought that the RTL would monitor the level and send
digital control signals to the Elonics to dynamically change the tuner IF gain.
However that is in fact NOT what happens. (Manually changing IF gain in AGC
mode causes a brief level spike, while manually rewriting the same IF gain in
AGC mode does not have any effect).
It seems more likely that AGC is a digital gain in the downsampling filter.
Default settings in librtlsdr: Default settings in librtlsdr:
Elonics LNA gain: when auto tuner gain: autonomous control with slow update Elonics LNA gain: when auto tuner gain: autonomous control with slow update
otherwise gain as configured via rtlsdr_set_tuner_gain otherwise gain as configured via rtlsdr_set_tuner_gain

View File

@ -1,14 +1,11 @@
* (experiment) measure raw signal with several IF gain settings * (experiment) measure effect of IF gain on baseband SNR
with/without AGC mode * (experiment) measure effect of IF gain linearity on baseband SNR
* figure out whether AGC mode is coupled to the Elonics IF gain settings * (experiment) measure effect of RTL AGC mode on baseband SNR
or purely an RTL-internal thing * (experiment) measure effect of ADC calibration on baseband SNR
* (experiment) measure effect of IF bandwidth on baseband SNR
* look for effect of gain on baseband SNR * (experiment) measure effect of IF sample rate on baseband SNR
* look for effect of ADC calibration on baseband SNR
* look for effect of IF bandwidth on baseband SNR
* (experiment) try if RTL AGC mode improves FM decoding * (experiment) try if RTL AGC mode improves FM decoding
* (experiment) try if RTL2832 FIR filter can be optimized
* (feature) support 'M' 'k' suffixes for sample rates and tuning frequency * (feature) support 'M' 'k' suffixes for sample rates and tuning frequency
* (feature) implement off-line FM decoder in Python for experimentation * (feature) implement off-line FM decoder in Python for experimentation
* (feature) implement stereo pilot pulse-per-second * (feature) implement stereo pilot pulse-per-second
@ -16,7 +13,6 @@
* (speedup) maybe replace high-order FIR downsampling filter with 2nd order butterworth followed by lower order FIR filter * (speedup) maybe replace high-order FIR downsampling filter with 2nd order butterworth followed by lower order FIR filter
* figure out why we sometimes lose stereo lock * figure out why we sometimes lose stereo lock
* it looks like IF level sometimes varies so much that it saturates the receiver; perhaps this can be solved by dynamically managing the hardware gain in response to level measurements * it looks like IF level sometimes varies so much that it saturates the receiver; perhaps this can be solved by dynamically managing the hardware gain in response to level measurements
* investigate problem at low IF sample rates; it seems that librtlsdr is not telling the truth about the actual sample rate.
* (quality) figure out if I/Q balance can improve weak stations * (quality) figure out if I/Q balance can improve weak stations
* (quality) figure out if hardware gain settings can improve weak stations * (quality) figure out if hardware gain settings can improve weak stations
* (feature) implement RDS decoding * (feature) implement RDS decoding