Hi, Leif
Thanks a lot for pointing out the direction!
I have tested the rtlsdr_set_tuner_bandwidth API, both in
dl8aau/librtlsdr and steve-m/librtlsdr. It seems the aliasing can be
suppressed, but not perfectly.
My testing hardware is rtlsdr, spectrum software is SDR#, tuner is
r820T, sampling rate is 2M/s, the signal source link to rtlsdr
directly, the modulating signal's center frequency is 88MHz, bandwidth
is 1M.
For dl8aau/librtlsdr, because its code like 'static const int
r82xx_bandwidth_table[]={ 300000, 400000, 550000,
700000,1000000,1200000,1300000,1600000,2200000};'
I test 1M 1.3M 1.6M and 2.2M bandwidth, the results as follow:
tuning center frequency 87MHz :
http://104.236.60.141/static/if_filter_leif_87.jpg
tuning center frequency 89MHz :
http://104.236.60.141/static/if_filter_leif_89.jpg
For steve-m/librtlsdr, its code like 'static const int
r82xx_if_low_pass_bw_table[] = { 1700000, 1600000, 1550000, 1450000,
1200000, 900000, 700000, 550000, 450000, 350000};'
I test 1.6M 1.55M 1.45M and 1.2M bandwidth, here the results:
tuning center frequency 87MHz :
http://104.236.60.141/static/if_filter_steve_87.jpg
tuning center frequency 89MHz :
http://104.236.60.141/static/if_filter_steve_89.jpg
All of the settings above can suppress the aliasing, but more or less
the aliasing still exists, and the better result seems the
steve-m/librtlsdr 1.45/1.55M.
Two questions:
1、For tuning 87MHz,After IF filter, should the signal curve keep
horizontal and then drop vertically at the point of 88MHz or just
drop slowly like showing in the picture?
2、The IF filter bandwidth of the two drivers are not all the same and
the setting value is fixed, can I set the bandwidth freely such as
2000000? Is there any document or datasheet about these?
Regards
yu