Empty Ports in RH using USRP_UHD on an running dom

2019-08-26 21:32发布

问题:

I'm running REDHAWK 1.10 on a CentOS6.5 VM. I have the connection set to bridged and can locate the USRP by its IP address using: uhd_find_devices --args="addr= <ip address>"
I have a usrp2 with serial E5R1AS2UP

Here are the steps I take:

$ sudo $OSSIEHOME/bin/cleanomni
$ nodeBooter -D -debug 5
$ nodeBooter -d <location to USRP_UHD node>.xml -debug 5  

I have also run these commands as requested by the USRP:

sudo sysctl -w net.core.rmem_max=50000000  
sudo sysctl -w net.core.wmem_max=1048576

Relavant Console output thus far:

   2014-08-22 15:31:43 DEBUG USRP_UHD_i:980 - target device hint contains 3 values  
    2014-08-22 15:31:43 DEBUG USRP_UHD_i:992 - Found 1 devices, choosing first one found.  
    -- Opening a USRP2/N-Series device...  
    -- Current recv frame size: 1472 bytes  
    -- Current send frame size: 1472 bytes  
    2014-08-22 15:31:45 DEBUG USRP_UHD_i:1107 - updateDeviceInfo|found 1 rx channels  
    2014-08-22 15:31:45 DEBUG USRP_UHD_i:1109 - updateDeviceInfo|found 1 tx channels  
    2014-08-22 15:31:45 DEBUG USRP_UHD_i:1144 - updateDeviceInfo|rx0|got clock rates     [3.125e+06:1e+08]  
    2014-08-22 15:31:45 DEBUG USRP_UHD_i:1186 - updateDeviceInfo|tx0|got clock rates [3.125e+06:1e+08]  
    2014-08-22 15:31:45 DEBUG USRP_UHD_i:748 - targetDeviceChanged|device is not started, must start device after initialization  
  • In the IDE, I click connect to REDHAWK_DEV, and start the device running under the custom node that I created.

By monitoring the ports of the USRP_UHD device, I see that my dataFloatTX_IN / dataShortTX_IN is 0 E/s as well as the rest of the columns, all of the other rows and columns are blank. This is strange since I want to RX and not TX; I had the FRONTEND::tune_allocation settings set to:

center freq = 9.91e7  
bandwidth = 1.0e6  
sample_rate = 1.0e6  
tuner_type = RX_DIGITIZER   

So then I tried using the steps outlined by pwolfram here: USRP_UHD source and sink for redhawk
I now have a waveform that contains a dataConverter as the assembly controller, AMFMDEMOD (2), and dataWriter (3). Running the waveform gives the error:

2014-08-22 14:46:25 ERROR ApplicationFactory_impl:1463 - Error in application creation; Failed to satisfy 'usesdevice' dependencies DCE:0dd76dd3-b44e-4e6a-b44a-896980682972for application 'USRP_Wave_234_134622508' 

I saw that this was in the usesdevice line so I double checked to make sure that the usesdevice id is equal to the ID of the USRP_UHD device, and that the frontend ID and USRP ID both match the DCE in the properties view.


Trace of the issue:

2014-08-25 15:07:12 TRACE ComponentInfo:863 - Done building component info from file /components/DataWriter/DataWriter.spd.xml
2014-08-25 15:07:12 TRACE ApplicationFactory_impl:2132 - Done building Component Info From SPD File
2014-08-25 15:07:12 TRACE ComponentInfo:983 - Instantiation property id = overwrite
2014-08-25 15:07:12 TRACE prop_utils:167 - overriding simple property id overwrite
2014-08-25 15:07:12 DEBUG ComponentInfo:1033 - Attempting to override property overwrite
2014-08-25 15:07:12 DEBUG ComponentInfo:1036 - Overriding property overwrite with value 1
2014-08-25 15:07:12 DEBUG ComponentInfo:1033 - Attempting to override property overwrite
2014-08-25 15:07:12 DEBUG ComponentInfo:1033 - Attempting to override property overwrite
2014-08-25 15:07:12 DEBUG ComponentInfo:1033 - Attempting to override property overwrite
2014-08-25 15:07:12 TRACE ComponentInfo:983 - Instantiation property id = filename
2014-08-25 15:07:12 TRACE prop_utils:167 - overriding simple property id filename
2014-08-25 15:07:12 DEBUG ComponentInfo:1033 - Attempting to override property filename
2014-08-25 15:07:12 DEBUG ComponentInfo:1036 - Overriding property filename with value /home/Jovianite/Desktop/USRP_Wave
2014-08-25 15:07:12 DEBUG ComponentInfo:1033 - Attempting to override property filename
2014-08-25 15:07:12 DEBUG ComponentInfo:1033 - Attempting to override property filename
2014-08-25 15:07:12 DEBUG ComponentInfo:1033 - Attempting to override property filename
2014-08-25 15:07:12 TRACE ApplicationFactory_impl:1040 - Application has 1 usesdevice dependencies
2014-08-25 15:07:12 TRACE prop_utils:509 - setting struct item FRONTEND::tuner_allocation::allocation_id
2014-08-25 15:07:12 TRACE prop_utils:509 - setting struct item FRONTEND::tuner_allocation::bandwidth
2014-08-25 15:07:12 TRACE prop_utils:509 - setting struct item FRONTEND::tuner_allocation::center_frequency
2014-08-25 15:07:12 TRACE prop_utils:509 - setting struct item FRONTEND::tuner_allocation::group_id
2014-08-25 15:07:12 TRACE prop_utils:509 - setting struct item FRONTEND::tuner_allocation::rf_flow_id
2014-08-25 15:07:12 TRACE prop_utils:509 - setting struct item FRONTEND::tuner_allocation::sample_rate
2014-08-25 15:07:12 TRACE prop_utils:509 - setting struct item FRONTEND::tuner_allocation::tuner_type
2014-08-25 15:07:12 TRACE AllocationManager_impl:134 - Servicing 1 allocation request(s)
2014-08-25 15:07:12 TRACE AllocationManager_impl:144 - Allocation request DCE:d8e4147c-2c86-11e4-99d3-080027dc953e contains 3 properties
2014-08-25 15:07:12 TRACE AllocationManager_impl:243 - Allocating against device DCE:d7a37203-11f1-4643-b5f9-c5549b36b8d1
2014-08-25 15:07:12 TRACE AllocationManager_impl:353 - Matching DCE:cdc5ee18-7ceb-4ae6-bf4c-31f983179b4d 'FRONTEND::TUNER' eq 'FRONTEND'
2014-08-25 15:07:12 TRACE AllocationManager_impl:248 - Matching failed
2014-08-25 15:07:12 DEBUG ApplicationFactory_impl:1060 - Failed to satisfy 'usesdevice' dependencies DCE:d8e4147c-2c86-11e4-99d3-080027dc953efor application 'USRP_Wave_237_140642295'
2014-08-25 15:07:12 TRACE ApplicationFactory_impl:528 - Unbinding the naming context
2014-08-25 15:07:12 TRACE Properties:85 - Destruction for properties
2014-08-25 15:07:12 TRACE PRF:312 - Deleting PRF containing 7 properties
2014-08-25 15:07:12 TRACE Properties:85 - Destruction for properties
2014-08-25 15:07:12 TRACE PRF:312 - Deleting PRF containing 3 properties
2014-08-25 15:07:12 TRACE Properties:85 - Destruction for properties
2014-08-25 15:07:12 TRACE PRF:312 - Deleting PRF containing 4 properties
2014-08-25 15:07:12 ERROR ApplicationFactory_impl:1463 - Error in application creation; Failed to satisfy 'usesdevice' dependencies DCE:d8e4147c-2c86-11e4-99d3-080027dc953efor application 'USRP_Wave_237_140642295'
2014-08-25 15:07:12 INFO  DomainManager_impl:1845 - Uninstalling application DCE:ca3d638e-b769-4bec-b950-4ff67c4e804e

Solution:

Next step is to make sure your GPP is running. The spd of the waveform needs to be edited as such:

<usesdevicedependencies>
<propertyref refid="DCE:<default value>" value="FRONTEND::TUNER"/>

The ::TUNER part needs to be added as it appears in your USRP_UHD properties tab.
Afterwards, you will have to adjust the values that you tune to based on whichever USRP you are using. The waveform then needs to be exported to the target sdr and then it can be launched. Using a trace on the node will tell you if your values need to be adjusted. I also removed the datawriter from the waveform because of how large the generated files were.