FreeSRP: An open source software defined radio covering 70 M...| MENAFN.COM

Tuesday, 17 May 2022 08:50 GMT

FreeSRP: An open source software defined radio covering 70 MHz to 6 GHz with an on-board FPGA and USB 3.0 port.

(MENAFNEditorial) iCrowdNewswire - Apr 12, 2017 FreeSRP

An open source software defined radio covering 70 MHz to 6 GHz with an on-board FPGA and USB 3.0 port.As Featured In


"[Lukas'] goal was to design something that fit somewhere in between the $300 HackRF and the higher end and more pricey USRP radios."


"Lukas started his epic SDR-from-scratch build when he was 16. Projects like this aren't completed overnight. (He's now 18. We're impressed.)"

The FreeSRP is an open-source (hardware and software) platform for software-defined radio that is affordable, high performance, compatible with existing SDR software such as GNU Radio, and includes an expansion port for hardware add-ons.

The FreeSRP comes in a small, portable form factor (7 cm x 11 cm) that can be completely powered from USB. FreeSRP streams acquired signals to a computer in real-time over USB 3.0.

What is software-defined radio?

A software-defined radio (SDR) digitizes received signals as early on in the signal chain as possible. This delegates as much signal processing as possible to dynamically reconfigurable software, so the hardware does not limit what types of wireless transmission protocols can be received or transmitted. This makes it possible to both receive and transmit a wide variety of signals. The FreeSRP's frequency range of 70 MHz to 6 GHz covers most interesting radio signals, and the high bandwidth and sample rate of up to 61.44 million samples per second allows experimentation even with high data-rate protocols such as WiFi or LTE.

Because virtually all of the processing is done on the computer the FreeSRP is connected to, the FreeSRP's hardware does not limit what kind of signals you can receive and transmit. Implementing various communication protocols can be done purely in software, so you can do anything from analyzing Bluetooth traffic (at all levels from the raw received signal to fully decoded packets) to developing your own, completely custom wireless protocol for your next project.

Therefore, software-defined radio is an essential tool for:

Debugging communication problems between wireless devices: an SDR will allow you to see exactly what is being transmittedDeveloping new communications protocols: an SDR makes it possible to prototype the protocol entirely in software, but test it under real conditions and communicate with real hardwareSecurity research and reverse-engineering: access the raw data being sent over RF, and experiment with different decoding techniques

The FreeSRP balances a useful and powerful set of specifications with an affordable price and a compact form factor ideal for field use.

Features & Specifications

I started working on the FreeSRP in 2015 because I needed a flexible tool for debugging my radio-enabled electronics prototypes, and because I wanted to learn more about RF and the devices surrounding me. This means the FreeSRP has been built from the beginning as a development and educational tool, providing features most useful for electronics hobbyists and enthusiasts as well as professional developers working on new wireless devices or security research.

High Resolution, High BandwidthTransceiver: Analog Devices AD9364Center Frequency: 70 MHz - 6 GHzMaximum Analog Filter Bandwidth: 56 MHzSample Rate: 61.44 MSPSResolution: 12 bit

The extremely wide frequency range goes up to 6 GHz. This means you can experiment with devices using the 5.8 GHz ISM band. As the 2.4 GHz band becomes congested, more devices are starting to use the 5.8 GHz band; the FreeSRP will allow you to communicate with these cutting edge devices.

The high sample rate and bandwidth is essential to capture frequency hopping transmitters and modern, high data-rate protocols.

Receive and Transmit at the Same TimeChannels: One receiver, one transmitter; full-duplexMaximum Transmit Power: 50 mW at 2.4 GHz

An external amplifier is included in the transmitter signal path of the FreeSRP, which significantly improves its range.

Extensive Processing power and Connectivity optionsFPGA: Xilinx Artix 7 (XC7A50T-1FTG256)Connectivity: Two SMA RF connectors; USB 3.0 micro B; high-speed digital expansion port; 5 V tolerant GPIO

The FreeSRP has a 0.1 inch header with eight 5 V tolerant, general purpose input/output pins. The voltage at which these pins operate can be configured from 1.8 to 5 V, so you can hook up FreeSRP to other embedded devices. This can be especially useful when correlating digital signals on the device under test with the RF signals it emits.

The high speed expansion connector will allow for more complex hardware add-ons. For example, an Ethernet interface or an LCD screen could be added in the future.

Mature software ecosystemSoftware compatibility: GNU Radio; open-source libraries and example code available

The FreeSRP is fully compatible with GNU Radio, and prebuilt software packages are available for Ubuntu.

Convenient form factorDimensions: 70 mm x 108 mmPowered directly from USB

The small form factor makes the FreeSRP convenient to carry around and use in the field. You don't need to lug anything else either, since all FreeSRP needs for power is a USB port.

Using FreeSRP

FreeSRP is easy to set up on any Linux system. The FreeSRP library is being packaged for various Linux distributions on Ubuntu, it's already available as a PPA from Launchpad. Currently, it is not supported on Windows, but the FreeSRP library's code is being kept as platform independent as possible and will be ported to Windows in the future.

GNU Radio Compatibility

In GNU Radio, the FreeSRP is supported through the gr-osmosdr block. This means it works with popular applications such as the user-friendly gqrx SDR receiver and is straightforward to implement into your GNU Radio signal processing flow graphs.

Libraries and Utilities

It is very easy to integrate the FreeSRP C++ library into your own software. You also have access to command-line utilities:

freesrp-ctl, which can be used to upload firmware and FPGA bitstreams to the FreeSRPfreesrp-io, which can be used to stream data out of and into the FreeSRPExample: freesrp-io and baudline

As freesrp-io can output to stdout, it's very easy to set it up to stream samples into other applications. For example, it works flawlessly with Baudline:

`freesrp-io -f929.7e6 -b1e6 -g30 -o- | baudline -stdin -channels 2 -quadrature -format le16 -samplerate 1000000`

This command will pipe samples at 1 MHz bandwidth and a gain of 30 dB with a center frequency of 929.7 MHz into Baudline.

Open Source

For the FreeSRP to be a true software radio platform, every component must be open, well documented, and easy to modify. This is why we've made the complete hardware, firmware, FPGA design and PC software all open source. By making clean, straightforward code a priority, integrating the FreeSRP into custom software and hardware is easy and painless.


The FreeSRP library, libfreesrp, is already available on GitHub. In GNU Radio, the FreeSRP is supported through a custom fork of the widely used gr-osmosdr library. Currently, this fork is freely available on GitHub, and the changes to gr-osmosdr that add FreeSRP support will be merged into the original gr-osmosdr project soon.

In GNU Radio, using the FreeSRP as a signal source or sink is as easy as placing the gr-osmosdr block in your flowchart. In your custom C++ applications, initializing the FreeSRP, setting transceiver parameters, and starting to receive or transmit data all are straightforward commands which can be done in about five lines of code.

Hardware, Firmware, and FPGA Design

The complete hardware designs will be available as PDF schematics and Gerber files or in a completely editable form through Altium CircuitMaker before this campaign ends. Since CircuitMaker is proprietary software that requires the Windows operating system, the designs will be remade in the open-source KiCad in the near future.

Firmware for the FX3 ARM processor and the FPGA design for the Artix 7 FPGA are already fully functional, but they have not been published yet as they are undergoing significant cleanup to improve efficiency and readability of the code. They will be published before the end of the campaign.

ComparisonsFrequency RangeBandwidthResolutionDuplexHardware ExpansionOpen SourcePrice rangeFreeSRP70 MHz - 6 GHz61.44 MHz12 bitFullYesFull hardware, FPGA design, firmware and software$420HackRF10 MHz - 6 GHz20 MHz8 bitHalfYesFull hardware, firmware, and software$299USRP B20070 MHz - 6 GHz61.44 MHz12 bitFullNoSchematics, firmware, and software$796BladeRF300 MHz - 3.8 GHz40 MHz12 bitFullYesSchematics, FPGA design, firmware, and software$420LimeSDR100 kHz - 3.8 GHz61.44 MHz12 bitFull (MIMO)NoFull hardware, firmware, and software$299 RF Performance

The FreeSRP is currently being analyzed for RF performance. Final results will be published as soon as they are available. Meanwhile, this section will compile the most relevant specifications for the transceiver, amplifier, baluns, and switches.

Receiver: AD9364

Check out the Analog Devices AD9364 datasheet for more detailed information.

Frequency BandParameterMinTypMaxUnitComments800 MHzNoise Figure2dBAt maximum Rx gainIIP240dBmAt maximum Rx gainIIP3-18dBmAt maximum Rx gainLO Leakage-122dBmAt Rx front-end inputModulation EVM-42dBGain074.5dBAdjustable2.4 GHzNoise Figure3dBAt maximum Rx gainIIP245dBmAt maximum Rx gainIIP3-14dBmAt maximum Rx gainLO Leakage-110dBmAt Rx front-end inputModulation EVM-42dBGain072.0dBAdjustable5.5 GHzNoise Figure4dBAt maximum Rx gainIIP242dBmAt maximum Rx gainIIP3-17dBmAt maximum Rx gainLO Leakage-95dBmAt Rx front-end inputModulation EVM-37dBGain065.5dBAdjustable Receiver: Baluns and Switch

The FreeSRP uses three different baluns to adapt the single-ended input from the antenna to the differential inputs on the AD9364 transceiver. The AD9364 provides three selectable inputs, so the FreeSRP switches the balun it uses depending on the frequency range it is operating in. The baluns used are the Anaren BD3150N50100AHF, the Anaren BD1631J50100AHF, and the Coilcraft JA4220-AL. A Skyworks SKY13317-373LF is used to switch the input to one of the three baluns.

Transmitter: AD9364

Check out the Analog Devices AD9364 datasheet for more detailed information.

Frequency BandParameterMinTypMaxUnitComments800 MHzNoise Floor-157dB90 MHz offset from carrier. Before external amplifier.OIP323dBmCarrier Leakage-50dBcAt 0 dB attenuationModulation EVM-40dB2.4 GHzNoise Floor-156dB90 MHz offset from carrier. Before external amplifier.OIP319dBmCarrier Leakage-50dBcAt 0 dB attenuationModulation EVM-40dB5.5 GHzNoise Floor-152dB90 MHz offset from carrier. Before external amplifier.OIP317dBmCarrier Leakage-50dBcAt 0 dB attenuationModulation EVM-36dB Transmitter: Baluns and Switch

The FreeSRP's transmitter output is configured similarly to the receiver input: it uses one of two different baluns depending on the frequency range. For the transmitter, the Anaren BD3150N50100AHF and the Coilcraft JA4220-AL baluns are used. They are switched using a Skyworks SKY13335-381LF RF switch.

Transmitter: Amplifier

A Mini Circuits PGA-102+ amplifier is also included. This provides an additional 10 to 14 dB of gain on the transmitter output.

Reference Oscillator

A 40 MHz Epson FA-20H40.0000MF10Z-K3 crystal oscillator provides the main clock for the FreeSRP's transceiver. The AD9364 can trim its frequency if better absolute frequency accuracy is required.

Manufacturing Plan

The FreeSRP has been through four revisions. I am currently evaluating the performance of the latest revision, which will be very close to, or identical with the production version.

I have decided on a PCB manufacturer and an assembly company and a small test batch is being manufactured now. This will help validate manufacturability of the design and serve as a test of the assembler's capabilities. Based on these results, tweaks will be made to the final production version, if necessary.

Risks & Challenges

Having worked on the project for about two years, and having gone though four hardware revisions, I am confident in the technical quality of the design. The FreeSRP integrates with GNU Radio and works flawlessly with most packages and examples I tested (such as gr-ieee802-15-4 or gr-gsm), even though they were not designed with the FreeSRP in mind.

Major risks and challenges therefore lie in manufacturing: optimizing component sources to minimize lead time and cost, working with the manufacturer to achieve a reliable process, and testing every unit's performance. The small batch that is being manufactured now will help ensure all possible manufacturing issues are detected well before getting the first production batches built, minimizing the risk of manufacturing issues.

Frequently Asked Questions

Q: Can the FreeSRP be used with Windows out of the box?

Q: Currently, the FreeSRP is being tested on Ubuntu, using GNU Radio, and the software can be run on Linux. While the libraries required to interface with the FreeSRP are being written to be as platform-agnostic as possible, Windows support is currently not a priority.

Q: Is the FreeSRP appropriate for users with little experience in SDR, programming, or Linux and GNU Radio?

A: Users should be comfortable installing and using Linux. If you use Ubuntu or an Ubuntu-based Linux distribution, everything required to use the FreeSRP can easily be installed from prebuilt packages. If you use a different Linux distribution, you will have to compile some libraries yourself. Please read the Getting Started page first and make sure you are comfortable with the installation procedure.

GNU Radio Companion is an application that provides a graphical user interface for creating signal processing flowcharts. It comes with many tutorials and examples that work with FreeSRP with minimal modifications. Additionally, there are many GNU Radio-based applications that work with the FreeSRP out of the box. Therefore, the FreeSRP is a good platform for getting started with SDR; while programming is a useful skill that will allow you to do many interesting experiments with your FreeSRP, it is not required.

Q: Does the FreeSRP work with USB 2.0?

With the current version of the software, sending and receiving signals requires a USB 3.0 connection. However, this is not a hardware limitation, and upcoming versions of the software are likely to add support for sending and receiving at a lower bandwidth over USB 2.0. In the meantime, please ensure your computer supports USB 3.0 if you want to use the FreeSRP as soon as it becomes available.

Contact Information:

Lukas Lao Beyer

Via Click here for more information Tags: Crowd Supply, English, United States, Crowdfunding, Reward-Donation, Wire View Related News > Sales Partner Network Disclosure
Newswire TMSecurex FilingsP3 Data SystemsQuickSilver Stock TransferEDGAR FILING LLCCrowdfundingSeedUps CanadaFundPaasCadia Startup ExchangeSpringboard EquityAutoPilot PRCivil Society Newswire TMInter Press Service (IPS)IMPACT Leadership 21PVBLIC FoundationGate Global ImpactPress Release NewswireAndeanWireHispanicize WireM2 Press WIREDino (Brazil)NetNotasComunicae (Spain & Mexico)MediaBNamericas WIREThe Soho LoftPRmax (UK)HPC Legal WIREiCrowdPRConferences & EventsPubconIndustry ExchangeCrowdsourcing WeekLendIt Become an iCrowdNewswire Partner Google+linkedintwitterfacebook

© Copyright iCrowdNewswire LLC 2017.
All rights reserved.

ResourcesAboutTeamBlogContactiCN ReleasesPrivacy PolicyTerms of UseCopyright PolicyImportant DisclosureTicker Authorization Form


Legal Disclaimer:
MENAFN provides the information “as is” without warranty of any kind. We do not accept any responsibility or liability for the accuracy, content, images, videos, licenses, completeness, legality, or reliability of the information contained in this article. If you have any complaints or copyright issues related to this article, kindly contact the provider above.