Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

add support for IF bandwidth filter setting to rtlsdr and soapysdr #48

Merged
merged 1 commit into from
Oct 12, 2024

Conversation

f00b4r0
Copy link
Contributor

@f00b4r0 f00b4r0 commented Sep 10, 2024

Digging through rtlsdr source I stumbled upon this API (supported since 2016 in both rtlsdr and soapysdr) and traced it down to
https://lists.osmocom.org/pipermail/osmocom-sdr/2015-April/000043.html

The video from the linked message suggests it can improve SNR ratio by narrowing the default IF filter to reject unwanted signals even if they are within the sampling rate bandwidth, thereby avoiding/reducing ADC overload with strong unwanted adjacent signals.

My dumpvdl2 receivers are already in a rather quiet environment (i.e. in the middle of nowhere) so my testing doesn't show a significant improvement (although the error rate seems to be lower with this patch), but at least this suggests this patch "does no harm".

The selected bandwidth is hardware dependent, not all hardware supports it so failure to set bw is ignored. The target bw is set to max_freq - min_freq plus a margin of 2*SYMBOL_RATE (probably not that relevant given the filter roll off isn't likely to be very steep, but let's be cautious anyway).

I have added support for rtlsdr and soapysdr drivers since I am able to test those (and did so), I have not touched the other SDR inputs.

Further relevant info can be found here

HTH

This should help with noisy environment by improving rejection of nearby
strong signals.
@szpajder szpajder merged commit cfbcac4 into szpajder:unstable Oct 12, 2024
2 of 4 checks passed
@f00b4r0 f00b4r0 deleted the setbw branch October 15, 2024 09:04
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants