Search code examples
redhawksdrusrp

USRP source on Redhawk


I'm trying to use my USRP N210 as a source in Redhawk 1.10.1. I want to verify (through looking at a FFT or other means) that Redhawk is getting data from the USRP.

I can run uhd_usrp_probe on the command line and it finds the device successfully.

In Redhawk, I created a new node and included the USRP_UHD device on the node. I created a simple waveform and attached the waveform and node to Target SDR in SCA Explorer. Then I right click Target SDR and click Launch, which creates the domain and the domain says "CONNECTED". So everything seems to work, because this doesn't give any errors. But I don't know how to actually use the data from the USRP in the waveform.

For instance, in GNU Radio, there's a component called USRPSource (or something similar), and you just drag it onto the stage and start making connections to other components. But when I followed the steps in the previous paragraph, I don't see any new components in the SDR folder that would allow me to drag the USRP Source component onto the Chalkboard to start using data from it. Does Redhawk not operate in this manner?

However, I do wonder if the USRP set up correctly, because when I right click on it and click "Allocate", it gives an error saying the following:

The selected device has no tuners. Dynamic tuner creation may not be supported.

Is the USRP set up properly? If so, how can I plot a FFT of the data coming through the USRP?


Solution

  • It sounds like you did not specify the device ip address in the USRP_UHD node that you launched. Click on the node under device manager in the SCA Explorer view, and open the properties tab. Expand target_device and enter the ip address (default is 192.168.10.2). Once you do this, you should see unallocated tuners in the node. Depending on your daughter board, it'll probably be a RX Digitizer and a TX.

    Allocate the RX Digitizer, enter you parameters. Copy the allocation ID in this step, it will be used as the connection ID when connecting the RX Digitizer dataShort_out to your component dataShort_in. Right click the dataShort_out in the USRP node, and select connect. Choose the dataShort_in on your desired component, and enter the allocation ID you copied earlier as the connection ID.

    You can also just launch the USRP_UHD node, allocate a tuner, and view data on the dataShort_out port without connecting it to any components as a stepping stone to prove to yourself that it's working, which is what you were asking. Just right-click the port, and view FFT.