Page 1 of 1

Phase coherent IQ samples for a Windows program

Posted: Thu Oct 17, 2019 5:14 pm
by ClintMclean
Hi,

I received the kerberos sdr a few weeks ago and now I just need the phase coherent IQ samples from each of the rtl-sdrs so that I can get it working with a windows program that I wrote.

How would I do this?

Re: Phase coherent IQ samples for a Windows program

Posted: Sun Oct 20, 2019 5:25 pm
by myke
Take a look at the Receiver @ https://github.com/rtlsdrblog/kerbeross ... eceiver.py

line 192 would be a good start I think.... #np.save("hydra_raw.npy",self.iq_samples)

Windows development - what's your goal?

Re: Phase coherent IQ samples for a Windows program

Posted: Tue Oct 22, 2019 9:41 am
by rtlsdrblog
Yep for now you'll need to modify the code yourself, or simply pipe out the stream from the run.sh before it goes into the Python program. But either way you'll need to modify the code for that.

In the future software version (still several months away), we'll have the coherent stream easily accessible via a TCP connection.

Re: Phase coherent IQ samples for a Windows program

Posted: Thu Nov 14, 2019 5:38 pm
by ClintMclean
Thanks Guys

I've got the kerberos c code compiled and working in Visual Studio.

I also wrote some code to calculate the amount to shift a signal so that it's synchronized with another signal.

Now though, I've found that it seems to only generate noise for the first rtl sdr.

In the code at line 367:

https://github.com/rtlsdrblog/kerbeross ... /rtl_daq.c

it also seems to only connect the first rtl sdr to the noise source.

367: rtl_rec = &rtl_receivers[0];

Shouldn't it generate noise on all of them so that the same signal can be synchronised?

Also, the rtl sdr still seems to be able to receive an FM signal with the noise.

Is that the way it's designed, it doesn't affect the synchronisation?

Re: Phase coherent IQ samples for a Windows program

Posted: Fri Nov 15, 2019 2:38 am
by rtlsdrblog
The noise source is activated by the GPIO on RTL-SDR #0. The noise source is hard wired to provide noise equally to all RTL-SDRs on board.

It's not powerful enough to overcome strong signals like BCFM. You should disconnect the antennas first when calibrating to ensure that strong signals don't corrupt your phase sync.

Re: Phase coherent IQ samples for a Windows program

Posted: Sat Nov 16, 2019 3:09 am
by AE6EO
By any chance, is this GPIO also plumbed out to one of the contacts on the 40-pin header?

I'm tempted to build a small external antenna connect/disconnect board - I have some nice SMT 50-ohm surface-mount relays that I think might pass the RF through cleanly enough to not disrupt the DOA process. I'll need some form of driver for the relays of course (can't drive directly from any GPIO with safety!). I can do this with a simple external toggle switch, but it'd be convenient to have the antennas connect and disconnect automatically when the noise source is switched.

If not I'll probably use one of the GPIOs on the La Frite server board, and hack the GUI script handler to toggle this in sync with the RTL GPIO.

Re: Phase coherent IQ samples for a Windows program

Posted: Sat Nov 16, 2019 7:45 am
by rtlsdrblog
Unfortunately not, the header only contains power. I'll double check with the hardware designer if there's any other good place to tap the GPIO.

Will be keen to see your results with the relays. We have someone working on a design with silicon switches as a prototype test for a future KerberosSDR V2.

If it works without distortion we'll see how difficult it would be to have a retrofit calibration board with switches built in for V1 owners.

Re: Phase coherent IQ samples for a Windows program

Posted: Mon Nov 18, 2019 11:05 am
by ClintMclean
Thanks, I got it to work.

Now I'm working on the other synchronisation code.

Myke, you asked what the project goal was.

What I'm doing, and this is something that the sdr community should be very interested in, is creating code to analyze the reradiated signals from humans.

I've already successfully detected reradiated signals just using the normal rtl sdr. I could detect a signal that I was reradiating from more than 10 meters away from the receiving antenna.

Now it get's very interesting, because there's research that says that EEG information is on these reradiated signals and that each of us has our own resonant frequency range: "...the adult head, for example, is resonant around 400 MHz, while a baby's smaller head resonates near 700 MHz." (ARRL Handbook, 1992).

Also quoting from this research:

https://www.nature.com/articles/srep068 ... 83Rf4cObMs

“By knowing the sensitive frequency of a functional site in the brain, detecting neuronal activations at the functional site with the RF EM wave approach can be similar to tuning a radio to a particular frequency band of a targeted radio station”

Here's some more research on this:

https://www.researchgate.net/publicatio ... -5GyTTKWbY

Essentially we're antennas and our EEG electrical activity from “brainwaves” modifies our antenna qualities and so modulates the reradiated signal and so this can be demodulated at a receiver.

This is a very significant area of research since there's a lot of information in EEG, this research shows how images can be reconstructed:

https://www.digitaltrends.com/cool-tech ... AloKNqjriI

The thing that I'm not sure of at this stage is whether an rtl sdr with an 8 bit ADC would have the resolution to detect changes in amplitude or phase from EEG, so a higher resolution ADC could be required.

Re: Phase coherent IQ samples for a Windows program

Posted: Mon Nov 18, 2019 11:23 am
by ClintMclean
Here's a code system that I wrote to detect reradiated signals from us:

https://github.com/ClintMclean74/SDRSpectrumAnalyzer

It's difficult because there's a large range to search, for adults around 400 MHz to 500 MHz, although this system automates a lot of it and I've successfully detected these signals with it.