Error -1074100590 When Running My USRP RIO Application in LabVIEW

Updated Aug 12, 2020

Reported In

Hardware

  • USRP-2940
  • USRP-2950
  • USRP-2942
  • USRP-2943
  • USRP-2944
  • USRP-2945
  • USRP-2952
  • USRP-2953
  • USRP-2954
  • USRP-2955

Software

  • LabVIEW

Issue Details

I am using a USRP RIO 2940, 2942, 2943, 2944, 2950, 2952, 2953, or 2954, and when I try to run the Sample Project or my USRP RIO-based application, I receive error -1074100590, Hardware is too new for this version of the Configuration Instrument Design Library. 
 

Solution

The revision of your USRP RIO is not compatible with the current versions of LabVIEW or NI-USRP you have installed on your PC.
The problem may due to the software version. Please update to the latest versions of NI-USRP or LabVIEW. Please see the readme for your version of NI-USRP for more information on which USRP models are compatible with your driver. 
The probelm may due  to corrupt EEPROM. Take following steps to recover USRP EEPROM.
  1. You need to use EEPROM Burn Utility, which is usrp_burn_mb_eeprom, is included with UHD to read/write values on the various motherboards that contain an EEPROM. The utility is located in the UHD install directory. The default folder is: 
    /usr/local/lib/uhd/utils/
  2. Use 'read all' option to check all the EEPROM settings: 
    ./usrp_burn_mb_eeprom --args=<optional device args> --read-all
    
    As an example, the EEPROM settings of an X310 with IP address 192.168.10.2 could be read-back with the following command:
    
    ./usrp_burn_mb_eeprom --args="addr=192.168.10.2,type=x300" --read-all
  3. You need to determine the revision number of your device. A part number sticker is located on the X300/310 motherboard. This sticker is located near the AUX-I/O connector and has the format 123456\<R>-\<XXX> where \<R> is a letter code that corresponds to the revision number. The photograph below highlights the location of the sticker:

Once the letter code has been determined use the table below to map the letter code to a revision number:
 
LetterRevision#
C3
D4
E5
F6
G7
H8
IN/A
J8
K8
 
  1.  Then you need to restore USRP EEPROM revision code. Once the revision number for your USRP is known, the usrp_burn_mb_eeprom utility can be used to restore the revision code to the EEPROM. The syntax is as follows:
    ./usrp_burn_mb_eeprom --args="recover_mb_eeprom" --values="revision=<#>"
    
    For example, to restore the revision number in EERPOM of a Rev. 6 X300 with an IP address of 192.168.10.2, the command would be:
    
    ./usrp_burn_mb_eeprom --args="recover_mb_eeprom,addr=192.168.10.2" --values="revision=6"
    
    After the utility has been run, power cycle the USRP and then run uhd_usrp_probe to ensure that the new revision number has been written to the EEPROM correctly.