Haven't heard any advice on this post.  I'm wondering if anybody has a C++
example which includes the FFT block?  I can run a simple example from
GnuRadio, but I cannot duplicate it in C++.   Or, alternatively, is it
possible to demonstrate successful use of the FFT block with an existing
example such as 'rfnoc_rx_to_file'?  That is what I attempted  below and
failed.

Rob


On Mon, Nov 5, 2018 at 4:32 PM Rob Kossler <rkoss...@nd.edu> wrote:

> Hi,
> I built an X310 FPGA image with 2 FFT blocks and I am now trying to run
> simple tests from C++.  After my own code failed with numerous peek/poke
> error messages, I tried to use the example "rfnoc_rx_to_file", which allows
> the user to specify any RFNoC block to place in between the radio and the
> host for Rx streaming.  I tried this example with both the DDC block and
> the FFT block
>
>    - if I run with the DDC block, it works like a champ producing the
>    expected data file (see below)
>    - if I run with the FFT block, I get errors (see below).  I noticed
>    that the graph->connect() function used in this example did not specify the
>    size of the packets so I modified the example such that the 'spp' was set
>    to 256 during the connect.
>    - If I run with the modified example (with 'spp' set to 256 in the
>    graph->connect() operation), I still get errors (see below).  I had hoped
>    that setting the packet size to 256 at all stages of the streaming would
>    cause it to run correctly, but that is not happening.
>
> Any suggestions?  Does the rfnoc_rx_to_file example lack needed
> configuration of either the blocks or the graph?  Is there any example I
> can run?
>
> Rob
>
> // ************** Trial #1 ********************
> rfnoc_rx_to_file --freq 2400e6 --nsamps=4096 --block-id=DDC --spb=256
> result: works great
>
> // ************** Trial #2 ********************
> rfnoc_rx_to_file --freq 2400e6 --nsamps=4096 --block-id=FFT --spb=256
>
> Creating the USRP device with: ...
> [INFO] [UHD] Mac OS; Clang version 5.0.2 (tags/RELEASE_502/final);
> Boost_106600; UHD_3.14.0.0-165-g1d5c186c
> [INFO] [X300] X300 initialization sequence...
> [INFO] [X300] Maximum frame size: 1472 bytes.
> [INFO] [X300] Radio 1x clock: 200 MHz
> [INFO] [0/Replay_0] Initializing block control (NOC ID: 0x4E91A00000000002)
> [INFO] [0/Radio_0] Initializing block control (NOC ID: 0x12AD100000000001)
> [INFO] [0/Radio_1] Initializing block control (NOC ID: 0x12AD100000000001)
> [INFO] [0/DDC_0] Initializing block control (NOC ID: 0xDDC0000000000000)
> [INFO] [0/DDC_1] Initializing block control (NOC ID: 0xDDC0000000000000)
> [INFO] [0/DUC_0] Initializing block control (NOC ID: 0xD0C0000000000000)
> [INFO] [0/DUC_1] Initializing block control (NOC ID: 0xD0C0000000000000)
> [WARNING] [RFNOC] Can't find a block controller for key FFT, using default
> block controller!
> [INFO] [0/FFT_0] Initializing block control (NOC ID: 0xFF70000000000000)
> [WARNING] [RFNOC] Can't find a block controller for key FFT, using default
> block controller!
> [INFO] [0/FFT_1] Initializing block control (NOC ID: 0xFF70000000000000)
> Using radio 0, channel 0
> Setting RX Rate: 1.000000 Msps...
> Actual RX Rate: 200.000000 Msps...
>
> Setting RX Freq: 2400.000000 MHz...
> [WARNING] [X300 RADIO] Requesting invalid sampling rate from device: 1
> MHz. Actual rate is: 200 MHz.
> Actual RX Freq: 2400.000000 MHz...
>
> Connecting 0/Radio_0 ==> 0/FFT_0
> [WARNING] [RFNOC] Assuming max packet size for 0/Radio_0
> Samples per packet: 256
> Using streamer args: block_id=0/FFT_0,spp=256
> Issueing stream cmd
> Done
> [ERROR] [X300] 192.168.10.2: x300 fw communication failure #1
> EnvironmentError: IOError: x300 fw poke32 - reply timed out
> [ERROR] [X300] 192.168.10.2: x300 fw communication failure #2
> EnvironmentError: IOError: x300 fw poke32 - reply timed out
> Timeout while streaming
> Issueing stop stream cmd
> ^C
>
> // ************** Trial #3 ********************
> rfnoc_rx_to_file_2 --freq 2400e6 --nsamps=4096 --block-id=FFT --spb=256
>
> Creating the USRP device with: ...
> [INFO] [UHD] Mac OS; Clang version 5.0.2 (tags/RELEASE_502/final);
> Boost_106600; UHD_3.14.0.0-165-g1d5c186c
> [INFO] [X300] X300 initialization sequence...
> [INFO] [X300] Maximum frame size: 1472 bytes.
> [INFO] [X300] Radio 1x clock: 200 MHz
> [INFO] [GPS] No GPSDO found
> [INFO] [0/Replay_0] Initializing block control (NOC ID: 0x4E91A00000000002)
> [INFO] [0/Radio_0] Initializing block control (NOC ID: 0x12AD100000000001)
> [INFO] [0/Radio_1] Initializing block control (NOC ID: 0x12AD100000000001)
> [INFO] [0/DDC_0] Initializing block control (NOC ID: 0xDDC0000000000000)
> [INFO] [0/DDC_1] Initializing block control (NOC ID: 0xDDC0000000000000)
> [INFO] [0/DUC_0] Initializing block control (NOC ID: 0xD0C0000000000000)
> [INFO] [0/DUC_1] Initializing block control (NOC ID: 0xD0C0000000000000)
> [WARNING] [RFNOC] Can't find a block controller for key FFT, using default
> block controller!
> [INFO] [0/FFT_0] Initializing block control (NOC ID: 0xFF70000000000000)
> [WARNING] [RFNOC] Can't find a block controller for key FFT, using default
> block controller!
> [INFO] [0/FFT_1] Initializing block control (NOC ID: 0xFF70000000000000)
> Using radio 0, channel 0
> Setting RX Rate: 1.000000 Msps...
> Actual RX Rate: 200.000000 Msps...
>
> Setting RX Freq: 2400.000000 MHz...
> [WARNING] [X300 RADIO] Requesting invalid sampling rate from device: 1
> MHz. Actual rate is: 200 MHz.
> Actual RX Freq: 2400.000000 MHz...
>
> Connecting 0/Radio_0 ==> 0/FFT_0
> Samples per packet: 256
> Using streamer args: block_id=0/FFT_0,spp=256
> Issueing stream cmd
> Done
> [ERROR] [X300] 192.168.10.2: x300 fw communication failure #1
> EnvironmentError: IOError: x300 fw poke32 - reply timed out
> [ERROR] [X300] 192.168.10.2: x300 fw communication failure #2
> EnvironmentError: IOError: x300 fw poke32 - reply timed out
> Timeout while streaming
>
>
_______________________________________________
USRP-users mailing list
USRP-users@lists.ettus.com
http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com

Reply via email to