[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Best way (architecture) to perform frequency hopping in GRC
From: |
Lukas Haase |
Subject: |
Best way (architecture) to perform frequency hopping in GRC |
Date: |
Thu, 12 Dec 2019 01:48:00 +0100 |
Hi,
I am wondering what is the best way to perform frequency hopping in gnuradio on
an *architectural* level.
I have a frequency vector [ f1 , f2 , f3 ].
GRC should tune the TX to f1, f2, f3, f1, f2, ... and the RX to 2*f1, 2*f2,
2*f3, 2*f1, 2*f2, ...
Denote the time interval for each frequency as Tf and a complete sweep as
Tsweep=3*Tf with Tf = Tsettle + Tvalid.
During each Tvalid, the TX sends modulated data and waits for a modulated
response.
After processing (filtering, clock recovery, decimation etc) the response
consists of N (e.g. N=100) bits.
After each Tsweep, the three responses acquired for each frequency (i.e. 3x100
bits) should be passed to the next block at a rate 1/Tsweep.
What is the best way to implement this in GRC reusing as many standard blocks
from GRC as possible?
- Is it a good idea to use "Message Strobe" to generate a message to change
frequency for the USRP Source/Sink blocks at a rate 1/Tf?
- Is it a better idea to change a python variable "center_freq"?
- What is the best way to update such a python variable?
- Is it a good idea to create Signal Source Saw Tooth and use "Probe Signal"?
- Is it a good idea to use the "lo_locked" sensor or just make "Tsettle" big
enough? How to use "lo_locked" from within Gnuradio?
- What is the best way to combine the results for each frequency into one item
that is passed at a rate 1/Tsweep?
- Is it a good idea to use "Stream to Vector"?
- How do I ensure that for each frequency, exactly the same number of output
samples are generated?
Thanks,
Luke
PS: This sounds like something fairly trivial but 99% GRC examples are using a
straight-forward data stream flow. I worked through the tutorials but they
really only touch on this point briefly. Now I need to dynamically change the
behavior of the signal flow over time while ensuring that everything stays
time-aligned properly and to combine data from very different points in time
into a single data point.
- Best way (architecture) to perform frequency hopping in GRC,
Lukas Haase <=