USRP Software Radio

cancel
Showing results for 
Search instead for 
Did you mean: 

Make my own LV driver for USRP

I have a USRP from Ettus with a different RF front end that I still would like to use in the LV environment.  Since the NI-USRP driver only works with the USRP with the WBX front end...I was thinking about just writing our own version of a driver that I could use to communicate with my Ettus radio.

 

I've searched the Ettus site trying to find a 'command set' or register map or something, but have been unsuccessful (probably just not looking in the right place).  No doubt there are many UHD drivers in C++, Python, etc....but I'm trying to find a 'generic list' of commands/parameters/etc that the UHD driver is comprised of, so we can make our own small, custom, driver in LV that will agree with the USRP/daughterboard configuration that I have.

 

OR...perhaps there's an easier way to modify the existing NI-USRP driver?

 

Any help?

 

---

Brandon

0 Kudos
Message 1 of 7
(6,560 Views)

Hey Brandon,

 

The LV driver works with more than just the WBX daughterboard.  Version 1.0 supports the WBX and XCVR.  Version 1.1 adds support for the SBX and LF boards.  However, even though the other daughterboards aren't supported, I have been able to use LabVIEW with all of them.  I have not done extensive testing one them, and they are not officially supported, but I was able to run basic examples with all daughterboards.

 

As a word of caution, if you have an RFX, LabVIEW will crash if you try to set it to an unsupported frequency.  However when given a frequency in the range the board expects, it ran fine.

Sarah Yost
Senior Product Marketing Manager
0 Kudos
Message 2 of 7
(6,558 Views)

Hello Brandon,

 

I believe there may be two ways to go about what you want to do:

 

1. The easiest, if you have the right combination of hardware:

 

The latest NI-USRP driver (version 1.1 to date) is actually compatible with a number of Ettus Research options. Take a look at the readme for the driver.

compatible with Ettus Research USRP2, USRP N200, and USRP N210 devices using the following daughterboards:

    SBX
    LFTX
    LFRX
    BasicTX
    BasicRX
...
...

    WBX
    XCVR2450

You will need to flash the firmware and FPGA image to your USRP device to take advantage of the NI-USRP driver for LabVIEW.

 

2. Manual method, which you proposed:

 

You would need to create a DLL using the UHD driver available from Ettus Reasearch.  You would need to implement and export the functions so you can use  Call Library Function Nodes from LabVIEW.  For support you would need to subscribe to the USRP mailing list.

 

 

 

 

Anthony F.
Staff Software Engineer
National Instruments
0 Kudos
Message 3 of 7
(6,555 Views)

Had some errors while using the LFTx and LFRx...need to double check the driver version first. 

 

Thanks for the quick reply!

 

---

BC

0 Kudos
Message 4 of 7
(6,552 Views)

Two things...

 

1. It looks like the Ettus site still links to Version 1.0 on ni.com

 

2. Anthony...you say that you have to reflash the firmware and FPGA.  Can you explain this a little more?  I don't recal having to actively do this on my "NI flavored" USRP (with the WBX front end).  It's sounding like the NI driver is more than just instructions for the host PC, but also requires some reconfiguration of the hardware?  Is this because of some subtle difference between "NI flavored" USRPs and "Ettus flavored" USRPs?  Can you give some more info?

 

---

Brandon

0 Kudos
Message 5 of 7
(6,547 Views)

Hey Brandon,

 

I took care of your first point.  The link will be updated shortly.

 

The USRP needs a firmware and FPGA image to function.  When you buy your USRP from NI or Ettus, it comes with images already flashed on the device.  However, if you update your driver version, you should also update the firmware and FPGA image.  This is true whether you are using NI-USPR or UHD.  Here's a knowledge base that explains how to do it.  The NI USRPs and Ettus USRPs both consist of a motherboard and a daughterboard and will work with either driver, but the FW and FPGA image are different for the 2 different drivers.

Sarah Yost
Senior Product Marketing Manager
0 Kudos
Message 6 of 7
(6,544 Views)

Thanks Sarah!  This is exactly what I was looking for.  Perhaps I'm imagining updating my NI-USRP driver to Version 1.1!!  Otherwise, I would have remembered having to go through the re-imaging process.

 

We'll try all of this out with the Ettus radio.

Thanks!

 

---

BC

0 Kudos
Message 7 of 7
(6,541 Views)