discuss-gnuradio
[Top][All Lists]
Advanced

[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





reply via email to

[Prev in Thread] Current Thread [Next in Thread]