Steps for Implementing FM Receiver with USRP Hardware
1. Connect one USRP to a virtual machine which will act as a FM Receiver. In addition to this, connect a spectrum analyzer.
2. Copy ‘getParamsSdruFMExamples’ and ‘sdruFMReceiverExamplev1’ MATLAB scripts on MATLAB editor. In both ‘getParamsSdruFMExamples’ script, change the variable value ‘fmRxParams.StopTime’ to 100. This is required because the MATLAB script may run faster than the hardware.
3. Type ‘findsdru’ in the command window. The status should be ‘Success’ as shown in the screenshot below.
4. Check a FM station on spectrum analyzer which works in your area and note down the frequency. (In this case 105.1e6)
Steps to check a FM station on spectrum analyzer:
a. The Frequency at the bottom left corner is set to 105.15MHz, Reference Level is -30dBm, Span = 40 MHz.
b. Click on ‘Markers’ at the top left corner marked with red in the screenshot and Select peak which can be seen as MR on the spectrum.
c. Click on Setup -> Audio. In the audio tab, select FM - 200Khz and select run.
d. The FM signal can now be heard.
e.Drag the marker to the peaks to hear other channels.
5. Change the radio.CenterFrequency = 105.1e6 in the ‘sdruFMReceiverExamplev1’ script and run the script.
6. The following is the output observed in the command window. The first screenshot gives the information of fields of fmRxParams structure which displays the parameters of the FM receiver system. The second screenshot shows the properties of the radio to which it is connected and the third field structure, hwInfo, gives information about the valid range of SDRu properties.
7. You will be able to hear the FM channel to which you are tuned to in the background.
8. Thus, in this example, FM Receiver is built using USRP Hardware.
References: https://www.mathworks.com/help/supportpkg/usrpradio/examples/fm-receiver-with-usrp-r-hardware.html