[USRP-users] Using multiple RX DDC chains on USRP2

Roy Thompson rthompso at gmail.com
Fri Feb 8 18:55:51 EST 2013


Thanks, I was able to get it working by creating a new GRC XML file that sets the channels parameter in the stream args as you suggested. I also had to update gr_uhd_usrp_source to allow for specifying a channel to set_samp_rate().

-Roy



On Feb 8, 2013, at 5:15 PM, Josh Blum <josh at ettus.com> wrote:

> 
> 
> On 02/08/2013 02:53 PM, Roy Thompson wrote:
>> Is there any way to stream both channels with different rates into the
>> same flowgraph in GNURadio (i.e. 2 sources)?   From what I can tell,
>> the answer is no but I figured I'd ask before trying to come up with a
>> hack for it.
> 
> Now that I am thinking about it. You could have two source blocks with
> the same device address, because its the same underlying device object.
> We just need a way to select different channels when the source block
> creates the rx streamer. The rest of the properties should map ok.
> 
> So, we have a way to specify the streamer args from python, I just dont
> think GRC brings it out. Basically the stream args.channels is a list of
> channels. So for one usrp source this is going to be [0], and the other [1]
> 
> http://gnuradio.org/cgit/gnuradio.git/tree/gr-uhd/include/gr_uhd_usrp_source.h#n88
> 
> http://files.ettus.com/uhd_docs/doxygen/html/structuhd_1_1stream__args__t.html
> 
> I would see how grc generates the python code for 1 channel.
> 
> -josh
> 
>> 
>> Thanks,
>> Roy
>> 
>> On Thu, Feb 7, 2013 at 4:41 PM, Josh Blum <josh at ettus.com> wrote:
>>> 
>>> 
>>> On 02/07/2013 03:30 PM, Roy Thompson wrote:
>>>> Thanks, will that work if the chains have different sample rates?
>>>> There is a comment in multi_usrp.hpp stating that all channels must
>>>> have the same rate, but it's not clear what causes the limitation
>>>> since it looks like it is possible to set the rate for individual
>>>> channels with set_rx_rate().
>>> 
>>> Yes, all the api calls take a channel number. So in this case, you would
>>> want a different rx_streamer for each channel, since they are at
>>> different rates.
>>> 
>>> -josh
>>> 
>>>> 
>>>> -Roy
>>>> 
>>>> On Thu, Feb 7, 2013 at 4:17 PM, Josh Blum <josh at ettus.com> wrote:
>>>>> 
>>>>> 
>>>>> On 02/07/2013 02:49 PM, Roy Thompson wrote:
>>>>>> I am starting to look through some of the FPGA code for the USRP2 and
>>>>>> I noticed that there are 2 RX DDC chains.  I would like to be able to
>>>>>> use one of the chains to do standard DDC processing, and I would like
>>>>>> to modify the second chain to do custom processing on the same A/D
>>>>>> channel.  The output sample rate for the second chain will be
>>>>>> different from the first. Is it possible to configure the UHD driver
>>>>>> to support this configuration and allow for receiving from both
>>>>>> chains?
>>>>> 
>>>>> The rx_multi_samples example can show you how to use two DDC chains. If
>>>>> you had a WBX for example with frontend (named 0), this would map
>>>>> frontend 0 located on the first and only daughterboard (named A) to DSP0
>>>>> and DSP1 --subdev="A:0 A:0"
>>>>> 
>>>>> see the --help for more.
>>>>> 
>>>>>> std::cout <<
>>>>>>        "    This is a demonstration of how to receive aligned data from multiple channels.\n"
>>>>>>        "    This example can receive from multiple DSPs, multiple motherboards, or both.\n"
>>>>>>        "    The MIMO cable or PPS can be used to synchronize the configuration. See --sync\n"
>>>>>>        "\n"
>>>>>>        "    Specify --subdev to select multiple channels per motherboard.\n"
>>>>>>        "      Ex: --subdev=\"0:A 0:B\" to get 2 channels on a Basic RX.\n"
>>>>>>        "\n"
>>>>>>        "    Specify --args to select multiple motherboards in a configuration.\n"
>>>>>>        "      Ex: --args=\"addr0=192.168.10.2, addr1=192.168.10.3\"\n"
>>>>>>        << std::endl;
>>>>> 
>>>>> 
>>>>> See this readme, there is a place where it should be convenient to
>>>>> replace the DDC with custom logic:
>>>>> 
>>>>> http://code.ettus.com/redmine/ettus/projects/uhd/repository/revisions/master/entry/fpga/README.txt
>>>>> 
>>>>> -josh
>>>>> 
>>>>>> Thanks,
>>>>>> Roy
>>>>>> 
>>>>>> _______________________________________________
>>>>>> USRP-users mailing list
>>>>>> USRP-users at lists.ettus.com
>>>>>> http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com
>>>>> 
>>>>> _______________________________________________
>>>>> USRP-users mailing list
>>>>> USRP-users at lists.ettus.com
>>>>> http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com




More information about the USRP-users mailing list