How to get IQ samples from multiple rtl-sdr dongles in a synchronized manner?

Jiao Xianjun putaoshu at gmail.com
Mon Dec 30 07:38:04 UTC 2013


Hi guys,

For the multiple dongles synchronization in signal level instead of
bits/packets level, I setup a working repo in github, and write a initial
demo framework. See below:

https://github.com/JiaoXianjun/multi-rtl-sdr-udp-relay.git

You may find information and instruction of demo quickly by reading the
README.

My initial purpose is performing in-fly calibration for multiple dongles
according to some pre-known signal (GSM, ADS-B?) to let them work together
coherently.

An ideal scheme may be that we should generate a very narrow band and very
week signal in (or just located at the edge of) target working band of
dongles, and perform the software in-fly calibration in background (or
driver level). This would be user friendly.

I know it is far from final state currently, and many things are not clear
yet (See TODO). But please join me if you also think this is a good idea.
Just check out the demo and run it to have a look.

Currently I just test the demo in Ubuntu-Linux.

BR

Jiao Xianjun


On Mon, Sep 2, 2013 at 8:23 PM, Sylvain AZARIAN
<sylvain.azarian at gmail.com>wrote:

> Thanks.
>
> sylvain
>
>
> 2013/9/2 Sdr Guru <sdrguru1 at gmail.com>
>
>> The second way, use MLAT enabled dump1090
>> https://github.com/antirez/dump1090/pull/23
>> http://www.satsignal.eu/raspberry-pi/dump1090.html
>>
>>
>> On Sun, Aug 25, 2013 at 4:13 PM, Jiao Xianjun <putaoshu at gmail.com> wrote:
>>
>>> Hi,
>>>
>>> I want to use multiple rtl-sdr dongles to do some multi-antenna
>>> experiments.
>>>
>>> Is it possible to read IQ samples from multiple rtl-sdr dongles in a
>>> synchronized manner?
>>>
>>> I already have a glance at dump1090 codes, which is a project using
>>> rtl-sdr to decode aircraft broadcasting ADS-B messages in 1090MHz.
>>>
>>> Seems that I should use rtlsdr_read_async() instead of
>>> rtlsdr_read_sync(), because that if rtlsdr_read_sync() is used, I have to
>>> call it multiple times sequentially. That looks not synchronized.
>>>
>>> But rtlsdr_read_async() function only accept one rtl-sdr device as input
>>> parameter, and it will be blocked after it is called. So seems that it also
>>> can't be used for my purpose directly.
>>>
>>>  Also welcome any opinion on how to improve rtl-sdr lib/driver to
>>> support this feature.
>>>
>>> Thank you.
>>>
>>> BR
>>>
>>> Jiao Xianjun
>>>
>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osmocom.org/pipermail/osmocom-sdr/attachments/20131230/f03c2c5b/attachment.html>


More information about the osmocom-sdr mailing list