Updates on Keenerds RTL-SDR Improvement Project
If you didn’t already know Keenerd (aka Kyle Keen), author of rtl_fm, rtl_power, rtl_adsb and rtl_sdl is having a fundraiser to raise funds to pay for a month of RTL-SDR improvement programming. As of the time of this post we’re about halfway through the fundraiser’s 30 day time limit and it has already generated $2,260 USD out of the minimum desired $3000 USD. Keenerd has also written a report on the status of the fundraiser so far.
Remember that the more funds raised, the more time he will have to work on the software meaning a better RTL-SDR experience for everyone. (Note that the improvements are for Windows, Mac and Linux).
Having raised this much already Keenerd has begun work and has already made some improvements to the RTL-SDR drivers based on Teejeez’s work. A list is shown below.
- dithering[3] – Possibly the secret sauce to phase aligned multiple dongles. I don’t have the setup to operate this or the math to confirm.
rtl_sdr -N
orrtlsdr_set_dithering()
to access it.- IF freq and bandwidth filters[4] – Extend the HF range somewhat. Less out-of-band aliasing.
- register caching[5] – Don’t re-send values that have not changed. Slightly modified the noise floor in my tests, which it should not have.
- register batching[6] – Delay changing registers until a command finishes, then send them all.
- cache i2c repeater[7] – Normally the i2c port is enabled and disabled between every single byte. Leave it open while its in use.
- pll tweaks[8] – People smarter than me wrote these, and it didn’t seem to make anything worse. Might also extend the HF range.
See the original Reddit thread discussing these improvements here and here for a link to the GitHub download page. Note that at the moment you will need to compile the drivers yourself.
Seems your previous blog posts was the 4th largest source of funding, just after reddit and hackaday. Thanks for helping support keen and thus supporting everybody who uses these dongles!