element14 Community
element14 Community
    Register Log In
  • Site
  • Search
  • Log In Register
  • Community Hub
    Community Hub
    • What's New on element14
    • Feedback and Support
    • Benefits of Membership
    • Personal Blogs
    • Members Area
    • Achievement Levels
  • Learn
    Learn
    • Ask an Expert
    • eBooks
    • element14 presents
    • Learning Center
    • Tech Spotlight
    • STEM Academy
    • Webinars, Training and Events
    • Learning Groups
  • Technologies
    Technologies
    • 3D Printing
    • FPGA
    • Industrial Automation
    • Internet of Things
    • Power & Energy
    • Sensors
    • Technology Groups
  • Challenges & Projects
    Challenges & Projects
    • Design Challenges
    • element14 presents Projects
    • Project14
    • Arduino Projects
    • Raspberry Pi Projects
    • Project Groups
  • Products
    Products
    • Arduino
    • Avnet & Tria Boards Community
    • Dev Tools
    • Manufacturers
    • Multicomp Pro
    • Product Groups
    • Raspberry Pi
    • RoadTests & Reviews
  • About Us
  • Store
    Store
    • Visit Your Store
    • Choose another store...
      • Europe
      •  Austria (German)
      •  Belgium (Dutch, French)
      •  Bulgaria (Bulgarian)
      •  Czech Republic (Czech)
      •  Denmark (Danish)
      •  Estonia (Estonian)
      •  Finland (Finnish)
      •  France (French)
      •  Germany (German)
      •  Hungary (Hungarian)
      •  Ireland
      •  Israel
      •  Italy (Italian)
      •  Latvia (Latvian)
      •  
      •  Lithuania (Lithuanian)
      •  Netherlands (Dutch)
      •  Norway (Norwegian)
      •  Poland (Polish)
      •  Portugal (Portuguese)
      •  Romania (Romanian)
      •  Russia (Russian)
      •  Slovakia (Slovak)
      •  Slovenia (Slovenian)
      •  Spain (Spanish)
      •  Sweden (Swedish)
      •  Switzerland(German, French)
      •  Turkey (Turkish)
      •  United Kingdom
      • Asia Pacific
      •  Australia
      •  China
      •  Hong Kong
      •  India
      • Japan
      •  Korea (Korean)
      •  Malaysia
      •  New Zealand
      •  Philippines
      •  Singapore
      •  Taiwan
      •  Thailand (Thai)
      • Vietnam
      • Americas
      •  Brazil (Portuguese)
      •  Canada
      •  Mexico (Spanish)
      •  United States
      Can't find the country/region you're looking for? Visit our export site or find a local distributor.
  • Translate
  • Profile
  • Settings
Embedded and Microcontrollers
  • Technologies
  • More
Embedded and Microcontrollers
Blog Getting Started with the USRP B205mini-i software defined radio platform
  • Blog
  • Forum
  • Documents
  • Quiz
  • Polls
  • Files
  • Members
  • Mentions
  • Sub-Groups
  • Tags
  • More
  • Cancel
  • New
Join Embedded and Microcontrollers to participate - click to join for free!
  • Share
  • More
  • Cancel
Group Actions
  • Group RSS
  • More
  • Cancel
Engagement
  • Author Author: alexwonglik1
  • Date Created: 23 Feb 2021 10:27 PM Date Created
  • Views 4341 views
  • Likes 7 likes
  • Comments 4 comments
  • dft
  • spartan- 6
  • signal
  • python
  • uhf
  • usrp b205mini-i
  • spectrum
  • time domain
  • xilinx
  • transceiver
  • digital signal processing
  • fpga
  • digilent blog
  • frequency domain
  • radio
  • gnu
  • digilent
  • fourier
  • analog devices
  • software defined radio
  • dsp
  • sdr
  • fft
  • labview
  • rf
  • usrp
  • radio frequency
  • frequency
Related
Recommended

Getting Started with the USRP B205mini-i software defined radio platform

alexwonglik1
alexwonglik1
23 Feb 2021

image

 

The USRP B205mini-iUSRP B205mini-i is a flexible and compact platform that is ideal for both hobbyist and OEM applications. It is designed by Ettus ResearchTm and provides a wide frequency range (70 MHz to 6 GHz) and a user-programmable, industrial-grade Xilinx Spartan-6 XC6SLX150 FPGA. The RF front end uses the Analog Devices AD9364 RFIC transceiver with 56 MHz of instantaneous bandwidth. The board is bus-powered by a high-speed USB 3.0 connection for streaming data to the host computer. The USRP B205mini-i also includes connectors for GPIO, JTAG, and synchronization with a 10 MHz clock reference or PPS time reference input signal.

 

The getting started guide walks you through the steps you need to take in order to use the USRP B205mini-i.USRP B205mini-i. You will learn how to install the software driver and GNU radio in Windows or Ubuntu, connect the devices, run examples and create an FM radio receiver from scratch. When you start using the device, there are some examples that come with the driver. You can run the real-time Discrete Fourier Transform (DFT) example. The options for the executable (./rx_ascii_art_dft) are frequency (–freq), sampling rate (–rate), gain (–gain), bandwidth (–bw), and reference level (–ref-lvl). The terminal will show the flow of execution, list the parameters, and graph the result:

 

image

 

Project Example - Using GNU Radio to Design a Frequency Modulation (FM) Receiver

The FM receiver takes the modulated signal (i.e. radio waves under the VHF band) as input and produces the original audio signal ranging from 20 Hz to 20 kHz.

First of all, in the terminal, the GNU Radio Companion will be open. Then, the following blocks will be added: Sample Rate, Frequency, USRP and QT GUI Sink. Next, a low pass filter is used.

Notice that the audio signal bandwidth ranges from 200 Hz to 20 kHz. Once the lowpass filter has been added, the next step is to perform the FM demodulation.

 

image

 

Since the output signal is audible, this signal is sent to the sound card - which is actually a digital to analog converter with a sample rate of, in general, 96 kHz. A Rational resamples block is used, to perform an x/y operation, where x (interpolation) is the output frequency, and y (decimation), is the input frequency. Finally, Audio sink block is added, so that the output signal will be played through speakers. After being generated, the python script is sent to USRP B205mini-i and executed. The output signal is displayed in the time and frequency domain, as seen below.

 

image

image

 

 

Find the complete getting started guide and project examples on the Digilent Reference Page.

  • Sign in to reply

Top Comments

  • nathandumont
    nathandumont over 4 years ago in reply to 14rhb +2
    Only just seen this article via Twitter. I'm just wrapping up my roadtest review for this board so more on it soon. To answer the three points you raised: 1. GNURadio flow-graphs actually generate Python…
  • 14rhb
    14rhb over 4 years ago in reply to nathandumont

    Thank you nathandumont  - that was really helpful to my understanding of this technology

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • nathandumont
    nathandumont over 4 years ago in reply to 14rhb

    Only just seen this article via Twitter.  I'm just wrapping up my roadtest review for this board so more on it soon.  To answer the three points you raised:

     

    1. GNURadio flow-graphs actually generate Python scripts which can be run.  The GNURadio Python module is very sophisticated though, beyond setup and parameter passing all the number crunching and data flow are handled in C++ modules so once the flow graph is instantiated there is little to no Python overhead in passing data through the system.  This makes it easy to design at the system level but very performant.  As a rule nothing you design in GNURadio is handled by the hardware, the USRP source block allows you to configure some hardware settings for acquisition but it does no significant DSP.

     

    2. In the default setup the FPGA is doing a few bits but is really glorified glue logic and FIFO.  It holds all the sections together (clock generation, ADC and DAC and the USB interface) but it's not responsible for any of the processing in the GNURadio window.

     

    3. Historically this has been very hard.  generally you have to write your own DSP blocks manually.  You can't really build useful applications without a general-purpose processor either you embed one in the FPGA fabric (which can be inefficient) or you tie one to it. Ettus make "Embedded" USRP variants which add an ARM host processor along with the FPGA fabric to do the high-level processing. I'd not seen the RFNoC stuff that alexwonglik1 mentioned, but it does explicitly say on that page that it is only supported on the E, X and N hardware variants, i.e. not the USB versions like the B205.  To use the FPGA resources in those other units you also have to use special blocks (see the block name starts RFNoC for the FFT in the example on that external page) which implement their processing via the FPGA instead of the generic ones as used in this example which all run on the PC (and have no dependency on what hardware you're getting your samples from).

    • Cancel
    • Vote Up +2 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • alexwonglik1
    alexwonglik1 over 4 years ago in reply to 14rhb
    • I assume you are asking about signal processing. For the USRP B205 mini, that will be on the FPGA device.
    • This page may give you some idea about FPGA role in SDR: https://kb.ettus.com/RFNoC
    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • 14rhb
    14rhb over 4 years ago

    Hi alexwonglik1

     

    A good introduction, thank you.

     

    There's several posts on E14 currently discussing SDR and perhaps you could answer some questions I have pondered for sometime and been unable to answer from the internet.

    • Once a GNURadio schematic is created and run, where is the majority of that processing undertaken - on the SDR's FPGA or on the host PC ?
    • If not answered in that last question, what purpose does the FPGA play?
    • If processing is undertaken on the host PC, is it possible to wrap that design, and download to the FPGA, such that it is a stand alone RF system without a host PC?
    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
element14 Community

element14 is the first online community specifically for engineers. Connect with your peers and get expert answers to your questions.

  • Members
  • Learn
  • Technologies
  • Challenges & Projects
  • Products
  • Store
  • About Us
  • Feedback & Support
  • FAQs
  • Terms of Use
  • Privacy Policy
  • Legal and Copyright Notices
  • Sitemap
  • Cookies

An Avnet Company © 2025 Premier Farnell Limited. All Rights Reserved.

Premier Farnell Ltd, registered in England and Wales (no 00876412), registered office: Farnell House, Forge Lane, Leeds LS12 2NE.

ICP 备案号 10220084.

Follow element14

  • X
  • Facebook
  • linkedin
  • YouTube