Hi all,
I'm trying to take an FFT of an FFT.... Basically, I want to tune to a
signal, and for a given RF frequency, try to spot periodic usage of that
frequency. Is this possible? What I have now is hopelessly slow, so I'm
not really sure if I've got it right.
My construct so far is like this:
# this is my own guts block, made created exactly like fftsink, except
it does not
# write to a pipe and have the gui, etc. It's just a drop-in guts block
with the serialized floats on the output
self.fft_one = fft_block_c(self, fft_size=512, sample_rate=usrp_rate)
# another of my own, I'm not using it for my initial test, but thought
I'd run it by you.. Complex fft spits out
# positive freq buckets followed by negative freqs in the 2nd half of
the stream, this just reorders in freq order,
# just like the input watcher code of fft_sink does
#self.reorder_fft = gr.cfft_reorder(512)
# split up each of 512 fft buckets into its own stream
self.v2s = gr.vector_to_streams(gr.sizeof_float, 512)
#connect what we have
self.connect(src, self.fft_one, self.v2s)
# make null sinks to terminate the flow graphs for all but the one,
selectable bucket that we want to look at
# (in this case, bucket 0)
for i in range(512):
if(i == 0):
self.fft_two = fftsink.fft_sink_f (self,
panel,
title="2nd Order FFT",
fft_size=512,
sample_rate=usrp_rate/512,
baseband_freq=0)
self.connect((self.v2s,i),self.fft_two)
else:
ns = gr.null_sink(gr.sizeof_float)
self.connect ((self.v2s,i), ns)
_______________________________________________
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
http://lists.gnu.org/mailman/listinfo/discuss-gnuradio