[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Discuss-gnuradio] TX/RX simultaneously using one USRP board
From: |
Martin Dvh |
Subject: |
Re: [Discuss-gnuradio] TX/RX simultaneously using one USRP board |
Date: |
Fri, 14 Apr 2006 04:30:48 +0200 |
User-agent: |
Debian Thunderbird 1.0.2 (X11/20051002) |
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