GNU Radio 3.6.5 C++ API

UHD Interface

Functions

GR_UHD_API boost::shared_ptr
< uhd_amsg_source
uhd_make_amsg_source (const uhd::device_addr_t &device_addr, gr_msg_queue_sptr msgq)
 Make a new USRP asynchronous message-based source block.
GR_UHD_API boost::shared_ptr
< uhd_usrp_sink
uhd_make_usrp_sink (const uhd::device_addr_t &device_addr, const uhd::io_type_t &io_type, size_t num_channels)
 Make a new USRP sink block.The USRP sink block reads a stream and transmits the samples. The sink block also provides API calls for transmitter settings.
GR_UHD_API boost::shared_ptr
< uhd_usrp_source
uhd_make_usrp_source (const uhd::device_addr_t &device_addr, const uhd::io_type_t &io_type, size_t num_channels)
 Make a new USRP source block.The USRP source block receives samples and writes to a stream. The source block also provides API calls for receiver settings.

Function Documentation

GR_UHD_API boost::shared_ptr<uhd_amsg_source> uhd_make_amsg_source ( const uhd::device_addr_t &  device_addr,
gr_msg_queue_sptr  msgq 
)

Make a new USRP asynchronous message-based source block.

GR_UHD_API boost::shared_ptr<uhd_usrp_sink> uhd_make_usrp_sink ( const uhd::device_addr_t &  device_addr,
const uhd::io_type_t &  io_type,
size_t  num_channels 
)

Make a new USRP sink block.The USRP sink block reads a stream and transmits the samples. The sink block also provides API calls for transmitter settings.

TX Stream tagging:

The following tag keys will be consumed by the work function:

The sob and eob (start and end of burst) tag values are pmt booleans. When present, burst tags should be set to true (pmt::PMT_T).

The timstamp tag value is a pmt tuple of the following: (uint64 seconds, and double fractional seconds).

See the UHD manual for more detailed documentation: http://code.ettus.com/redmine/ettus/projects/uhd/wiki

Parameters:
device_addrthe address to identify the hardware
io_typethe desired input data type
num_channelsnumber of stream from the device
Returns:
a new USRP sink block object
GR_UHD_API boost::shared_ptr<uhd_usrp_source> uhd_make_usrp_source ( const uhd::device_addr_t &  device_addr,
const uhd::io_type_t &  io_type,
size_t  num_channels 
)

Make a new USRP source block.The USRP source block receives samples and writes to a stream. The source block also provides API calls for receiver settings.

RX Stream tagging:

The following tag keys will be produced by the work function:

The timstamp tag value is a pmt tuple of the following: (uint64 seconds, and double fractional seconds). A timestamp tag is produced at start() and after overflows.

The sample rate and center frequency tags are doubles, representing the sample rate in Sps and frequency in Hz. These tags are produced upon the user changing parameters.

See the UHD manual for more detailed documentation: http://code.ettus.com/redmine/ettus/projects/uhd/wiki

Parameters:
device_addrthe address to identify the hardware
io_typethe desired output data type
num_channelsnumber of stream from the device
Returns:
a new USRP source block object