discuss-gnuradio
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Discuss-gnuradio] How to configure SBX with two channels, one for c


From: Alex Zhang
Subject: Re: [Discuss-gnuradio] How to configure SBX with two channels, one for communications, one for sensing?
Date: Tue, 22 May 2012 11:19:06 -0500

It seems working now. Two channels can receive the signal sent on the their own target frequencies.

Below is my code.

self.uhd_usrp_source_0 = uhd.usrp_source(
            device_addr="",
            stream_args=uhd.stream_args(
                cpu_format="fc32",
                channels=range(2),
            ),
        )
        #self.uhd_usrp_source_0.set_clock_rate(918000000, uhd.ALL_MBOARDS)
        tr1 = uhd.tune_request(908e6, rf_freq=918e6, rf_freq_policy=uhd.tune_request.POLICY_MANUAL);
        tr2 = uhd.tune_request(928e6, rf_freq=918e6, rf_freq_policy=uhd.tune_request.POLICY_MANUAL);

        self.uhd_usrp_source_0.set_subdev_spec("A:0 A:0", 0)
        self.uhd_usrp_source_0.set_samp_rate(1024000)
        #self.uhd_usrp_source_0.set_center_freq(908000000, 0)
        self.uhd_usrp_source_0.set_center_freq(tr1, 0)
        self.uhd_usrp_source_0.set_gain(0, 0)
        self.uhd_usrp_source_0.set_antenna("RX2", 0)
        #self.uhd_usrp_source_0.set_center_freq(928000000, 1)
        self.uhd_usrp_source_0.set_center_freq(tr2, 1)
        self.uhd_usrp_source_0.set_gain(0, 1)
        self.uhd_usrp_source_0.set_antenna("RX2", 1)

But my code is still different with one of your post here http://lists.gnu.org/archive/html/discuss-gnuradio/2011-09/msg00309.html.
I think the dsp_freq is used for other purpose, right?

On Mon, May 21, 2012 at 9:27 PM, Josh Blum <address@hidden> wrote:


On 05/21/2012 06:57 PM, Alex Zhang wrote:
> A little confused.
>
> I am using the gnuradio-companion to configure the uhd.usrp_resource.
> What is the difference between the rf_freq and the center_freq? How the

Basically, you have two down conversion chains that share a common RF
frontend, but independent DSP chains in the FPGA.

See: http://files.ettus.com/uhd_docs/manual/html/general.html#tuning-notes

Also see:
http://files.ettus.com/uhd_docs/doxygen/html/structuhd_1_1tune__request__t.html

> tune_request (is it a UHD method?) can be reflected in the
> gnuradio-companion setting?
>

Just copy and paste the code I sent you into the center frequency parameter.

-josh

> On Mon, May 21, 2012 at 6:29 PM, Josh Blum <address@hidden> wrote:
>
>>
>>
>> On 05/21/2012 04:12 PM, Alex Zhang wrote:
>>> Thanks!
>>>
>>> I am trying to set up two channels on RX2 as Nick said. And the subdev is
>>> set as "A:0 A:0". Please see the attachement for the GRC flow graph.
>>>
>>> But my problem is that it seems that both the channels can not receive
>> the
>>> expected signal(I am using an OFDM transmitter for test).
>>> The single channel with frequency of 908M or 928M works well as I can see
>>> the OFDM spectrum from the observing FFT plot window.
>>>
>>>
>>
>> What did you enter for ch0 and ch1 center frequency? I recommend this:
>>
>> uhd.tune_request(908e6, rf_freq=918e6,
>> rf_freq_policy=uhd.tune_request.POLICY_MANUAL)
>>
>> uhd.tune_request(928e6, rf_freq=918e6,
>> rf_freq_policy=uhd.tune_request.POLICY_MANUAL)
>>
>> Its important the RF frequency be the same for each channel, otherwise,
>> the second tune for channel1 will override the tuning for channel0.
>>
>> -josh
>>
>>> On Mon, May 21, 2012 at 5:37 PM, Josh Blum <address@hidden> wrote:
>>>
>>>>
>>>>
>>>> On 05/21/2012 03:09 PM, Alex Zhang wrote:
>>>>> Hi,
>>>>>
>>>>> What I want to do is try to use the two antennas of SBX simultaneously.
>>>>>
>>>>> The TX/RX is used for duplex communications and the RX2 is for sensing.
>>>> The
>>>>> two antennas are working different frequencies.
>>>>> But this solution seems to be unfeasible, as someone said the receiver
>>>>> chain of SBX is the same. The TX/RX and RX2 can not work
>> simultaneously.
>>>>> As suggested in the community, I am trying to using 3 frequecies on one
>>>>> antenna (TX/RX): f1, f2, f3.
>>>>>
>>>>> f1(tx) and f2(rx) are used for FDD duplex communications,and f3 is for
>>>>> sensing path. And f2 and f3 are within the 40MHz difference.
>>>>>
>>>>> My problem is how to set it in USRP source block for this kind of
>>>>> configuration? Does anybody has such example? And I met the error like
>>>>> below:
>>>>>
>>>>> Runtime error:vector::_M_range_check
>>>>>
>>>>> which seems to be caused by incorrect setting of subdev. However, I
>> don't
>>>>> know what the valid value fo subdev in such kind configuration.
>>>>>
>>>>>
>>>>
>>>> Correct, you can only receive from one antenna at a time. If your RX
>>>> frequencies of interest are reasonably near in frequency, lets say 40
>>>> MHz, you can use multiple DSPs in the FPGA as a kind of 2 channel
>>>> filterbank.
>>>>
>>>> You can set the subdev/frontend spec to "A:0 A:0", this will map the
>>>> frontend A:0 to both DSP0 and DSP1. If you setup the USRP source for 2
>>>> channels, DSP0 will be output 0 and DSP1 will be output 1.
>>>>
>>>> Be careful with the tune_request so that you are setting the rf
>>>> frequency to the same setting, but with different target frequencies to
>>>> get the DSPs to shift appropriately. There should be some mention of
>>>> tune request in the docs inside the USRP source block properties dialog
>>>> in GRC.
>>>>
>>>> -josh
>>>>
>>>>>
>>>>>
>>>>> _______________________________________________
>>>>> Discuss-gnuradio mailing list
>>>>> address@hidden
>>>>> https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
>>>>
>>>> _______________________________________________
>>>> Discuss-gnuradio mailing list
>>>> address@hidden
>>>> https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
>>>>
>>>
>>>
>>>
>>
>
>
>



--

Alex,
Dreams can come true – just believe.


reply via email to

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