Main Page: Difference between revisions

From GNU Radio
Jump to navigation Jump to search
No edit summary
Line 1: Line 1:
= Welcome to GNU Radio! =
== Introduction ==
GNU Radio is a free & open-source software development toolkit that provides signal processing blocks to implement software radios. It can be used with readily-available low-cost external RF hardware to create software-defined radios, or without hardware in a simulation-like environment. It is widely used in hobbyist, academic and commercial environments to support both wireless communications research and real-world radio systems.
GNU Radio is a free & open-source software development toolkit that provides signal processing blocks to implement software radios. It can be used with readily-available low-cost external RF hardware to create software-defined radios, or without hardware in a simulation-like environment. It is widely used in hobbyist, academic and commercial environments to support both wireless communications research and real-world radio systems.


GNU Radio is licensed under the GNU General Public License (GPL) version 3 or later. All of the code is copyright of the Free Software Foundation.
GNU Radio is licensed under the GNU General Public License (GPL) version 3 or later. All of the code is copyright of the Free Software Foundation.


== Content ==
= Getting started =
 
=== I. Getting started ===


If you've never touched GNU Radio before, these pages will get you started with a running installation of GNU Radio and will show you how to take your first steps with this software radio tool.
If you've never touched GNU Radio before, these pages will get you started with a running installation of GNU Radio and will show you how to take your first steps with this software radio tool.
Line 27: Line 21:
* [[FAQ|Frequently Asked Questions]] - Check this page before asking questions on the mailing list.
* [[FAQ|Frequently Asked Questions]] - Check this page before asking questions on the mailing list.


=== II. Documentation ===
= Documentation =


GNU Radio has two manuals: one for the C++ API and another for the Python API. The majority of the documentation comes from using [http://www.stack.nl/~dimitri/doxygen/ Doxygen] markup comments in the public header files. These are the basis for both manuals. The Python documentation uses [http://sphinx.pocoo.org/ Sphinx] to pull in both the Doxygen documentation as well as any formatted comments present in any Python files.
GNU Radio has two manuals: one for the C++ API and another for the Python API. The majority of the documentation comes from using [http://www.stack.nl/~dimitri/doxygen/ Doxygen] markup comments in the public header files. These are the basis for both manuals. The Python documentation uses [http://sphinx.pocoo.org/ Sphinx] to pull in both the Doxygen documentation as well as any formatted comments present in any Python files.
Line 54: Line 48:
* [[GNURadioCompanion|The GNU Radio Companion]], a GUI IDE for developing GNU Radio applications.
* [[GNURadioCompanion|The GNU Radio Companion]], a GUI IDE for developing GNU Radio applications.


=== III. Community & Communicating ===
= Community & Communicating =


There's a nice community of people involved in GNU Radio. Here's some pointers on how to connect with us.
There's a nice community of people involved in GNU Radio. Here's some pointers on how to connect with us.
Line 87: Line 81:
** [https://calendar.google.com/calendar/ical/gnuradio.org_o5cbsdudkbk0f42ougcrcqgn00%40group.calendar.google.com/public/basic.ics ICS Import Link]
** [https://calendar.google.com/calendar/ical/gnuradio.org_o5cbsdudkbk0f42ougcrcqgn00%40group.calendar.google.com/public/basic.ics ICS Import Link]


=== IV. Developing GNU Radio ===
= Developing GNU Radio =


Using GNU Radio is nice, but the real fun comes with developing new components for GNU Radio or actually changing the core itself. If you want to write some code, read these articles first. Some of the [[Tutorials|tutorials]] are also relevant.
Using GNU Radio is nice, but the real fun comes with developing new components for GNU Radio or actually changing the core itself. If you want to write some code, read these articles first. Some of the [[Tutorials|tutorials]] are also relevant.
Line 103: Line 97:
* [[GSoC|Summer of Code Programs]] Student Summer of Code Programs from Google (GSoC) and ESA (SOCIS)
* [[GSoC|Summer of Code Programs]] Student Summer of Code Programs from Google (GSoC) and ESA (SOCIS)


=== V. Hardware ===
= Hardware =


Hardware is strictly '''not''' part of GNU Radio, which is purely a software library. However, developing radio and signal processing code is even more fun when using hardware to actually transmit and receive, and GNU Radio supports several radio front-ends, either natively or through additional out-of-tree modules.
Hardware is strictly '''not''' part of GNU Radio, which is purely a software library. However, developing radio and signal processing code is even more fun when using hardware to actually transmit and receive, and GNU Radio supports several radio front-ends, either natively or through additional out-of-tree modules.
Line 109: Line 103:
For a list of supported devices, see our [[Hardware]] page.
For a list of supported devices, see our [[Hardware]] page.


=== VI. Further information and 3rd party extensions ===
= Further information and 3rd party extensions =


There's more stuff to be found for GNU Radio on the web. Check these pages to find tutorials, code and other information on GNU Radio.
There's more stuff to be found for GNU Radio on the web. Check these pages to find tutorials, code and other information on GNU Radio.
Line 123: Line 117:
* [[SampleData|Pre-recorded sample data]] - If you don't have a USRP, find real recorded signals for offline analysis here.
* [[SampleData|Pre-recorded sample data]] - If you don't have a USRP, find real recorded signals for offline analysis here.


==== Related projects ====
== Related projects ==


* [http://www.openbts.org OpenBTS] - An Open Source GSM interface. This is a separate project, with its own mailing list.
* [http://www.openbts.org OpenBTS] - An Open Source GSM interface. This is a separate project, with its own mailing list.
* [http://gqrx.dk/ GQRX] - Very nice spectrum analysis tool, powered by GNU Radio
* [http://gqrx.dk/ GQRX] - Very nice spectrum analysis tool, powered by GNU Radio

Revision as of 00:10, 21 March 2017

GNU Radio is a free & open-source software development toolkit that provides signal processing blocks to implement software radios. It can be used with readily-available low-cost external RF hardware to create software-defined radios, or without hardware in a simulation-like environment. It is widely used in hobbyist, academic and commercial environments to support both wireless communications research and real-world radio systems.

GNU Radio is licensed under the GNU General Public License (GPL) version 3 or later. All of the code is copyright of the Free Software Foundation.

Getting started

If you've never touched GNU Radio before, these pages will get you started with a running installation of GNU Radio and will show you how to take your first steps with this software radio tool.

The recommended way to get started with GNU Radio is to read the Guided Tutorials.

Documentation

GNU Radio has two manuals: one for the C++ API and another for the Python API. The majority of the documentation comes from using Doxygen markup comments in the public header files. These are the basis for both manuals. The Python documentation uses Sphinx to pull in both the Doxygen documentation as well as any formatted comments present in any Python files.


Manual Pages of Interest (click to unfold)


Documentation on this wiki:

Community & Communicating

There's a nice community of people involved in GNU Radio. Here's some pointers on how to connect with us.

List of Hack Fests

Developing GNU Radio

Using GNU Radio is nice, but the real fun comes with developing new components for GNU Radio or actually changing the core itself. If you want to write some code, read these articles first. Some of the tutorials are also relevant.

Hardware

Hardware is strictly not part of GNU Radio, which is purely a software library. However, developing radio and signal processing code is even more fun when using hardware to actually transmit and receive, and GNU Radio supports several radio front-ends, either natively or through additional out-of-tree modules.

For a list of supported devices, see our Hardware page.

Further information and 3rd party extensions

There's more stuff to be found for GNU Radio on the web. Check these pages to find tutorials, code and other information on GNU Radio.

Related projects

  • OpenBTS - An Open Source GSM interface. This is a separate project, with its own mailing list.
  • GQRX - Very nice spectrum analysis tool, powered by GNU Radio