David Scaperoth wrote:
Hey dawei,
I just recently played with the idea of a repeater (receive on
frequency and transmit on another). ALthough I have personally only
used the TvRx and Basic Tx, the concept is basically the same (I would
imagine) for the FLEX400. I haven't pushed the data rates, but for
narrowband FM, it works great. I guessing the only bottleneck
might be
the USB (8MSps total), but I like I said, I haven't tested it. Here
was my basic flow graph. It worked like a charm.
dst = usrp.sink_c (0, tx_interp)
self.rx_src = usrp.source_c (0, decim)
self.connect (self.rx_src, rx_amp, fm_demod)
self.connect (fm_demod,rx_filter)
self.connect (rx_filter,tx_filter)
self.connect (tx_filter,freq_mod)
self.connect (freq_mod,tx_amp,dst)
Just curious, why did you first fm_demod and then fm_mod.
You could also do:
if_bandwidth=13e3
if_width_of_transission_band=4e3
tx_interp=rx_decim*2
if_sampling_rate=usrp_sampling_rate/rx_decim
if_filter_coeffs = gr.firdes.low_pass (if_gain, # gain
if_sampling_rate, #
sampling rate
if_bandwidth,
# low pass cutoff freq
if_width_of_transission_band, # width of trans. band
gr.firdes.WIN_HANN) #
filter type
src = usrp.source_c (0, rx_decim)
dst = usrp.sink_c (0, tx_interp)
if_filter=gr_fir_filter_ccf(1, if_filter_coeffs)
self.connect (src, if_filter,dst)
greetings,
Martin
So, essentially the key points are that you can use the usrp as both a
sink and source (its duplexing baby!). The underlying code selects
the
most likely subdevice (if you don't do that yourself), so its pretty
easy really. and where I usually have a sink to a file, audio
card, or
whatever (for a receiver chain), I just simply use that as the source
for my normal transmit. Here's a link to the source code, I haven't
spent any time making it look pretty, but it should work. I hope this
helps some! Good Luck!
http://www.filebox.vt.edu/~scaperot/FM_Rx_Tx_tvrx.py
David Scaperoth
On Apr 13, 2006, at 1:47 PM, Dawei Shen wrote:
Hi, Eric and other friends
Now I am working on a project that requires simutaneous TX/RX within
one usrp board. I equip too FLEX400 daughter cards on one USRP board.
What I am trying to do is to use the TX to retransmit (i.e. relay)
what the USRP has received from the RX. Is it doable under the current
framework of GNU Radio? If so, could you provide any hints on how to
realize this? An obvious question to me is that in the Python code, we
should either define the usrp as a source or a sink, but in my
application, the USRP board serves as both sink and source. So what
should I do in my case?
Thank you for your input
Dawei
_______________________________________________
Discuss-gnuradio mailing list
address@hidden
http://lists.gnu.org/mailman/listinfo/discuss-gnuradio
------------------------------------------------------------------------
_______________________________________________
Discuss-gnuradio mailing list
address@hidden
http://lists.gnu.org/mailman/listinfo/discuss-gnuradio