I need ur help about sync multi BladeRF.

554 views
Skip to first unread message

dohais...@gmail.com

unread,
Apr 5, 2020, 7:16:39 AM4/5/20
to Amateur radio interferometry
Hello sir!
I read ur project used three BladeRFs as SDR interferometers for radio astronomy.
I've a project use multi BladeRF for Direction of Arrival (DOA). First step, i shared SMB to each other device and configured on client.
Then, i need sync multi samples of them.
I read this post: https://docs.google.com/viewer?a=v&pid=forums&srcid=MTM5MTU1OTM5OTcwNTAwMDI4ODYBMTIwOTczMDAzODQ1Mjg5OTcyMTABczRLdlAteFRDZ0FKATAuMwEBdjI&authuser=0
But u used cuda to fft and ifft @@ i've not a nvidia card.
So can u share about basic idiea of use FFT and IFFT to sync bladeRFs, then i can modify this to my block on GNU Radio.
And many thanks if u share me ur spliter SMB too. Mine work not good.

Thank for reading sir!

David Lonard

unread,
Apr 6, 2020, 3:01:15 PM4/6/20
to amateur-radio-...@googlegroups.com
Hello,

I haven't used my BladeRFs in quite a long time after moving to LimeSDRs. You don't need to use a Nvidia GPU to synch signals. Here is a link that describes my FFT/IFFT alignment approach.

The alignment programs in the link use just standard Python/NumPy to get the job done. A problem with the BladeRFs is that even with the SMB clock sharing, there is a large random time delay between individual BladeRFs, requiring a fair amount of searching to align the signals. A single LimeSDR has almost fully aligned signal streams and is much easier to use than BladeRFs.

If you try a GnuRadio based approach, I would try something like taking BladeRF sources, converting streams to vectors of 8192 IQ samples, perform FFTs for both vectors,  take the complex conjugate of one of the vector blocks, multiple the two 8192 length vectors together and then taking the IFFT of the product. Then return this vector to a stream and plot it.

--
You received this message because you are subscribed to the Google Groups "Amateur radio interferometry" group.
To unsubscribe from this group and stop receiving emails from it, send an email to amateur-radio-interf...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/amateur-radio-interferometry/edf08dda-10e0-464f-8cf1-f0a917cae4d8%40googlegroups.com.

All in One

unread,
Apr 7, 2020, 9:08:30 AM4/7/20
to Amateur radio interferometry
Thank for reply!
I really want to test there code on BladeRF, but beacase Coivd19, any works on my Lab is delayed.

So, i tried test them on simulator.

First i try fft and ifft by numpy like ur way. that's work. ( i did't test on real signal, yet).

Then, i created a grc on GNU Radio, like this picture:

Screenshot from 2020-04-07 19-57-19.png

I'm not sure that What does my output indicate?, i tried to connected to qt gui sink, and saw a peak on 10 kHz ( = freq of since signal input)

Next, i wrote a python block to print arg max of input vector, it's not equal my delay, too. So sad.


My project need to align phase before use bladeRF IQ sample to DOA compute.


Vào 02:01:15 UTC+7 Thứ Ba, ngày 07 tháng 4 năm 2020, David Lonard đã viết:
To unsubscribe from this group and stop receiving emails from it, send an email to amateur-radio-interferometry+unsub...@googlegroups.com.
xcorr.py

David Lonard

unread,
Apr 7, 2020, 5:09:00 PM4/7/20
to amateur-radio-...@googlegroups.com
The gnuradio flowgraph looks good except output the data to the GUI time sink instead of frequency sink. That should show the delay then. Also, the cosine signal is repetitive, so it might be hard to assess larger delays. One good easy way to generate a delay is to take signals from your two BladeRFs that each share a common antenna with a 2:1 splitter. If you tune to some strong digital TV signal, it is easy to find the signal delay.


To unsubscribe from this group and stop receiving emails from it, send an email to amateur-radio-interf...@googlegroups.com.

--
You received this message because you are subscribed to the Google Groups "Amateur radio interferometry" group.
To unsubscribe from this group and stop receiving emails from it, send an email to amateur-radio-interf...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/amateur-radio-interferometry/2d068371-1d7b-417c-8f06-a2fb694f6c99%40googlegroups.com.

All in One

unread,
Apr 8, 2020, 2:08:49 AM4/8/20
to Amateur radio interferometry
Now, i'm stay at home by Covid19, and don't have any BladeRF (all on my Lab).

So i tried to simulate everythings before end of this flu.

Like ur suggestion. I connected output to GUI time sink instead of Freq sink (the output's stream of IFFT signal side by side, continous on time and i can't sure anything about that).

So I think about the way on  Python code (Cross Correlation). I connect output off FFT to Complex to Mag then connect to QT GUI Vector Sink (i hope see a peak on delay time like python, but unfortunately it's just nothing, not any data in GUI).

Maybe, Cosince signal is repetitive, i make a .grc with DVB-T2 mudolator, connect to virtual sink and delay source, then repeat block like since signal. Still not working !!

I a page, share exactly this way: https://coherent-receiver.com/getting-started
Perhap, the simulation signal not work, or i wrong on a step, i don't know, but result on this page really really is what i hoped !!!

Vào 04:09:00 UTC+7 Thứ Tư, ngày 08 tháng 4 năm 2020, David Lonard đã viết:
To unsubscribe from this group and stop receiving emails from it, send an email to amateur-radio-interferometry+unsub...@googlegroups.com.

--
You received this message because you are subscribed to the Google Groups "Amateur radio interferometry" group.
To unsubscribe from this group and stop receiving emails from it, send an email to amateur-radio-interferometry+unsub...@googlegroups.com.

All in One

unread,
Apr 8, 2020, 7:13:48 AM4/8/20
to Amateur radio interferometry
Update:
I have already changed Since source or DVT-T source to Noise source.

That work ( like cross corelation of noise source ). Not sure that real signal work or not. I'll simulate channel and test them!

All in One

unread,
Apr 8, 2020, 7:19:45 AM4/8/20
to Amateur radio interferometry
Finally, It worked in my simulator.

Connect DVB-T to Channel model then all ok.

Next, i need to use this para delay to my project.

Thank u so much!
GRC.grc

David Lonard

unread,
Apr 9, 2020, 3:45:51 PM4/9/20
to amateur-radio-...@googlegroups.com
Glad to hear that it works. When I used to use three BladeRFs at 10 MSPS, each radio could be delayed by -/+ 10,000 samples and sometimes took a lot of work to find the delay, since if you are too far off, the energy in the FFT/IFFT peak could be rather small. In the future, if you move to a LimeSDR, you will have a much easier time finding the delay. Also, all the work I did with the BladeRFs involved saving all signal streams to a SSD, followed by post processing. This filled up the 1 Tb SSDs in around 1.5 hours. With the LimeSDR, I was able to cross correlate in real time using a GTX1080Ti.

David


--
You received this message because you are subscribed to the Google Groups "Amateur radio interferometry" group.
To unsubscribe from this group and stop receiving emails from it, send an email to amateur-radio-interf...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/amateur-radio-interferometry/d68ba234-6d8e-41a2-9020-eaa98a3204b6%40googlegroups.com.

All in One

unread,
Apr 9, 2020, 10:11:26 PM4/9/20
to Amateur radio interferometry
That's the problem what i've. if delay sample >= 2000 (1/2 FFT Size), peak of FFT/IFFT too small. I changed to xcorr, that's same.
Any ideas to find out delay sample on real time processing?

According to what i know, BladeRF supported MIMO on J71-pin 4 . That make easier than signal processing on code, but unfortunately, i can't break case wrrap bladeRF (it's not mine).

Yup, LimeSDR look good for my project, but now we've 6 bladeRF x115 (find out somethings to do by them :v)

Vào 18:16:39 UTC+7 Chủ Nhật, ngày 05 tháng 4 năm 2020, All in One đã viết:

David Lonard

unread,
Apr 10, 2020, 4:53:06 PM4/10/20
to amateur-radio-...@googlegroups.com
I think the only way to fix this is to use a larger FFT or add and subtract some trial delays to get close enough to find the delay within a smaller FFT window.

--
You received this message because you are subscribed to the Google Groups "Amateur radio interferometry" group.
To unsubscribe from this group and stop receiving emails from it, send an email to amateur-radio-interf...@googlegroups.com.

All in One

unread,
Apr 13, 2020, 11:27:33 AM4/13/20
to Amateur radio interferometry
Yeah, i did it.

All in simulator, i read this project: https://github.com/EttusResearch/gr-doa/wiki

Perhaps, they aligned phase of SDR, Do I need to do this with BladeRF?

On the simulation, of course, this is not the case !!

Because DOA system, based on different phase between SDR elements cause delay made by distance between them.

I have to make sure that BladeRFs synced, delay only 1 sample or a little bit phase make another result.

Vào 18:16:39 UTC+7 Chủ Nhật, ngày 05 tháng 4 năm 2020, All in One đã viết:
Hello sir!
Reply all
Reply to author
Forward
0 new messages