<HTML><HEAD>
<META content="text/html; charset=utf-8" http-equiv=Content-Type></HEAD>
<BODY>
<DIV>
<DIV style="FONT-SIZE: 11pt; FONT-FAMILY: Calibri,sans-serif">Hi,<BR><BR>I don't use the method of hardware modification. That can do synchronization promisingly, sure. I know this scheme couple of months ago, and good to know it works pretty well from you.<BR><BR>My thought is doing the compensation by software according to a common source over the air instead of over the hardware.<BR><BR>Do you think it is doable? And what would be the bottleneck according to your experience? Any possibility to tune the hardware by software after we estimate the synchronization error in frequency and timing?<BR><BR>BR<BR><BR>Jiao xianjun</DIV></DIV>
<DIV dir=ltr>
<HR>
<SPAN style="FONT-SIZE: 11pt; FONT-FAMILY: Calibri,sans-serif; FONT-WEIGHT: bold">From: </SPAN><SPAN style="FONT-SIZE: 11pt; FONT-FAMILY: Calibri,sans-serif"><A href="mailto:sdrguru1@gmail.com">Sdr Guru</A></SPAN><BR><SPAN style="FONT-SIZE: 11pt; FONT-FAMILY: Calibri,sans-serif; FONT-WEIGHT: bold">Sent: </SPAN><SPAN style="FONT-SIZE: 11pt; FONT-FAMILY: Calibri,sans-serif">‎2013/‎12/‎30 19:01</SPAN><BR><SPAN style="FONT-SIZE: 11pt; FONT-FAMILY: Calibri,sans-serif; FONT-WEIGHT: bold">To: </SPAN><SPAN style="FONT-SIZE: 11pt; FONT-FAMILY: Calibri,sans-serif"><A href="mailto:putaoshu@gmail.com">Jiao Xianjun</A></SPAN><BR><SPAN style="FONT-SIZE: 11pt; FONT-FAMILY: Calibri,sans-serif; FONT-WEIGHT: bold">Cc: </SPAN><SPAN style="FONT-SIZE: 11pt; FONT-FAMILY: Calibri,sans-serif"><A href="mailto:osmocom-sdr@lists.osmocom.org">osmocom-sdr@lists.osmocom.org</A></SPAN><BR><SPAN style="FONT-SIZE: 11pt; FONT-FAMILY: Calibri,sans-serif; FONT-WEIGHT: bold">Subject: </SPAN><SPAN style="FONT-SIZE: 11pt; FONT-FAMILY: Calibri,sans-serif">Re: How to get IQ samples from multiple rtl-sdr dongles in asynchronized manner?</SPAN><BR><BR></DIV>
<DIV dir=ltr>Hi<BR>
<DIV class=gmail_extra><BR>Are you using a common clock?</DIV>
<DIV class=gmail_extra><A href="http://kaira.sgo.fi/2013/09/16-dual-channel-coherent-digital.html">http://kaira.sgo.fi/2013/09/16-dual-channel-coherent-digital.html</A></DIV>
<DIV class=gmail_extra><BR></DIV>
<DIV class=gmail_extra>I've modified some of the RTL dongles, played with GNURadio and Octave.</DIV>
<DIV class=gmail_extra>
<DIV class=gmail_extra>The results are promising, sample level correlation (2.4M/10, FM radio signal).</DIV><BR>
<DIV class=gmail_quote>On Mon, Dec 30, 2013 at 9:38 AM, Jiao Xianjun <SPAN dir=ltr><<A href="mailto:putaoshu@gmail.com" target=_blank>putaoshu@gmail.com</A>></SPAN> wrote:<BR>
<BLOCKQUOTE class=gmail_quote style="PADDING-LEFT: 1ex; MARGIN: 0px 0px 0px 0.8ex; BORDER-LEFT: rgb(204,204,204) 1px solid">
<DIV dir=ltr>
<DIV>
<DIV>Hi guys,<BR><BR></DIV>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:<BR><BR><A href="https://github.com/JiaoXianjun/multi-rtl-sdr-udp-relay.git" target=_blank>https://github.com/JiaoXianjun/multi-rtl-sdr-udp-relay.git</A><BR><BR></DIV>You may find information and instruction of demo quickly by reading the README.<BR>
<DIV>
<P style="WHITE-SPACE: normal; TEXT-TRANSFORM: none; WORD-SPACING: 0px; COLOR: rgb(51,51,51); FONT: 15px/25px Helvetica,arial,freesans,clean,sans-serif; MARGIN: 15px 0px; LETTER-SPACING: normal; TEXT-INDENT: 0px">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.</P>
<P style="WHITE-SPACE: normal; TEXT-TRANSFORM: none; WORD-SPACING: 0px; COLOR: rgb(51,51,51); FONT: 15px/25px Helvetica,arial,freesans,clean,sans-serif; MARGIN: 15px 0px; LETTER-SPACING: normal; TEXT-INDENT: 0px">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.<BR></P></DIV></DIV></BLOCKQUOTE>
<DIV><BR></DIV>
<DIV>Cheap (8USD+PP), simple, computer-controlled and legal FM band "marker"<BR></DIV>
<DIV><A href="http://blog.palosaari.fi/2013/08/naked-hardware-12-usb-audio-transmitter.html">http://blog.palosaari.fi/2013/08/naked-hardware-12-usb-audio-transmitter.html</A></DIV>
<DIV><BR></DIV>
<BLOCKQUOTE class=gmail_quote style="PADDING-LEFT: 1ex; MARGIN: 0px 0px 0px 0.8ex; BORDER-LEFT: rgb(204,204,204) 1px solid">
<DIV dir=ltr>
<DIV>
<P style="WHITE-SPACE: normal; TEXT-TRANSFORM: none; WORD-SPACING: 0px; COLOR: rgb(51,51,51); FONT: 15px/25px Helvetica,arial,freesans,clean,sans-serif; MARGIN: 15px 0px; LETTER-SPACING: normal; TEXT-INDENT: 0px"></P>
<P style="WHITE-SPACE: normal; TEXT-TRANSFORM: none; WORD-SPACING: 0px; COLOR: rgb(51,51,51); FONT: 15px/25px Helvetica,arial,freesans,clean,sans-serif; MARGIN: 15px 0px; LETTER-SPACING: normal; TEXT-INDENT: 0px">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.</P></DIV></DIV></BLOCKQUOTE>
<DIV>Testing it and I'll let you know.<BR></DIV>
<DIV> </DIV>
<BLOCKQUOTE class=gmail_quote style="PADDING-LEFT: 1ex; MARGIN: 0px 0px 0px 0.8ex; BORDER-LEFT: rgb(204,204,204) 1px solid">
<DIV dir=ltr>
<DIV>
<P style="WHITE-SPACE: normal; TEXT-TRANSFORM: none; WORD-SPACING: 0px; COLOR: rgb(51,51,51); FONT: 15px/25px Helvetica,arial,freesans,clean,sans-serif; MARGIN: 15px 0px; LETTER-SPACING: normal; TEXT-INDENT: 0px">Currently I just test the demo in Ubuntu-Linux.</P>
<P style="WHITE-SPACE: normal; TEXT-TRANSFORM: none; WORD-SPACING: 0px; COLOR: rgb(51,51,51); FONT: 15px/25px Helvetica,arial,freesans,clean,sans-serif; MARGIN: 15px 0px; LETTER-SPACING: normal; TEXT-INDENT: 0px"></P>
<P style="WHITE-SPACE: normal; TEXT-TRANSFORM: none; WORD-SPACING: 0px; COLOR: rgb(51,51,51); FONT: 15px/25px Helvetica,arial,freesans,clean,sans-serif; MARGIN: 15px 0px; LETTER-SPACING: normal; TEXT-INDENT: 0px">BR</P><SPAN><FONT color=#888888>
<P style="WHITE-SPACE: normal; TEXT-TRANSFORM: none; WORD-SPACING: 0px; COLOR: rgb(51,51,51); FONT: 15px/25px Helvetica,arial,freesans,clean,sans-serif; MARGIN: 15px 0px; LETTER-SPACING: normal; TEXT-INDENT: 0px">Jiao Xianjun<BR></P></FONT></SPAN></DIV></DIV>
<DIV>
<DIV class=h5>
<DIV class=gmail_extra><BR><BR>
<DIV class=gmail_quote>On Mon, Sep 2, 2013 at 8:23 PM, Sylvain AZARIAN <SPAN dir=ltr><<A href="mailto:sylvain.azarian@gmail.com" target=_blank>sylvain.azarian@gmail.com</A>></SPAN> wrote:<BR>
<BLOCKQUOTE class=gmail_quote style="PADDING-LEFT: 1ex; MARGIN: 0px 0px 0px 0.8ex; BORDER-LEFT: rgb(204,204,204) 1px solid">
<DIV dir=ltr>Thanks. <SPAN><FONT color=#888888> 
<DIV><BR></DIV>
<DIV>sylvain</DIV></FONT></SPAN></DIV>
<DIV>
<DIV>
<DIV class=gmail_extra><BR><BR>
<DIV class=gmail_quote>2013/9/2 Sdr Guru <SPAN dir=ltr><<A href="mailto:sdrguru1@gmail.com" target=_blank>sdrguru1@gmail.com</A>></SPAN><BR>
<BLOCKQUOTE class=gmail_quote style="PADDING-LEFT: 1ex; MARGIN: 0px 0px 0px 0.8ex; BORDER-LEFT: rgb(204,204,204) 1px solid">
<DIV dir=ltr>
<DIV>The second way, use MLAT enabled dump1090</DIV>
<DIV><A href="https://github.com/antirez/dump1090/pull/23" target=_blank>https://github.com/antirez/dump1090/pull/23</A><BR></DIV>
<DIV><A href="http://www.satsignal.eu/raspberry-pi/dump1090.html" target=_blank>http://www.satsignal.eu/raspberry-pi/dump1090.html</A><BR></DIV>
<DIV class=gmail_extra><BR><BR>
<DIV class=gmail_quote>On Sun, Aug 25, 2013 at 4:13 PM, Jiao Xianjun <SPAN dir=ltr><<A href="mailto:putaoshu@gmail.com" target=_blank>putaoshu@gmail.com</A>></SPAN> wrote:<BR>
<BLOCKQUOTE class=gmail_quote style="PADDING-LEFT: 1ex; MARGIN: 0px 0px 0px 0.8ex; BORDER-LEFT: rgb(204,204,204) 1px solid">
<DIV dir=ltr>
<DIV>
<DIV>
<DIV>Hi,<BR><BR></DIV>I want to use multiple rtl-sdr dongles to do some multi-antenna experiments.<BR><BR></DIV>Is it possible to read IQ samples from multiple rtl-sdr dongles in a synchronized manner?<BR><BR></DIV>
<DIV>I already have a glance at dump1090 codes, which is a project using rtl-sdr to decode aircraft broadcasting ADS-B messages in 1090MHz.<BR><BR></DIV>
<DIV>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.<BR><BR></DIV>
<DIV>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.<BR><BR></DIV>
<DIV>Also welcome any opinion on how to improve rtl-sdr lib/driver to support this feature.<BR><BR></DIV>
<DIV>Thank you.<BR><BR>BR<SPAN><FONT color=#888888><BR><BR>Jiao Xianjun <BR></FONT></SPAN></DIV></DIV></BLOCKQUOTE></DIV><BR></DIV></DIV></BLOCKQUOTE></DIV><BR></DIV></DIV></DIV></BLOCKQUOTE></DIV><BR></DIV></DIV></DIV></BLOCKQUOTE></DIV><BR></DIV></DIV></BODY></HTML>