GrOsmoSDR » History » Revision 19
Revision 18 (horiz0n, 02/19/2016 10:50 PM) → Revision 19/98 (horiz0n, 02/19/2016 10:50 PM)
[[PageOutline]]
= OsmoSDR Gnuradio Source =
Primarily gr-osmosdr supports the OsmoSDR hardware, but it also offers a wrapper functionality for [http://tetra.osmocom.org/trac/wiki/Funcube_Dongle FunCube Dongle], [http://files.ettus.com/uhd_docs/manual/html/build.html Ettus UHD] and [http://sdr.osmocom.org/trac/wiki/rtl-sdr rtl-sdr] radios. By using gr-osmosdr source you can take advantage of a common software api in your application(s) independent of the underlying radio hardware.
== Build process ==
'''The gnuradio source requires a recent gnuradio (>= v3.6.4.1) to be installed.'''
Please note: prior pulling a new version from git and compiling it, please do a "make uninstall" first to properly remove the previous version.
Building with cmake:
{{{
git clone git://git.osmocom.org/gr-osmosdr
cd gr-osmosdr/
mkdir build
cd build/
cmake ../
make
sudo make install
sudo ldconfig
}}}
NOTE: The OSMOCOM source block will appear under 'Sources' category in GRC menu.
To build the API documentation:
{{{
cd build/
cmake ../ -DENABLE_DOXYGEN=1
make -C docs
}}}
== Automated installation ==
Marcus D. Leech has kindly integrated the forementioned build steps into his gnuradio installation script at [http://www.sbrac.org/files/build-gnuradio]. This is the most user-friendly option so far.
== Device specification ==
You can specify the source or sink device using a comma separated string of argument=value pairs.
The always-up-to-date block documentation is available [http://cgit.osmocom.org/gr-osmosdr/tree/grc/gen_osmosdr_blocks.py#n100 right here].
=== IQ File Source ===
||file=<path-to-file-name>||||
||freq=<frequency>|| in Hz||
||rate=<sampling-rate>|| in samples/s||
||repeat=true|false|| Default is false||
||throttle=true|false||Throttle flow of samples, default is false||
=== FCD Source ===
||Argument||Notes||
||fcd=<device-index>|| ||
=== OsmoSDR Source ===
||osmosdr=<device-index>|| ||
||mcr=<rate>||Master clock rate. FIXME: Setting the MCR is not supported||
||nchan=<channel-number>||FIXME: Values of nchan != 1 are not supported||
||buffers=<number-of-buffers>|| Default is 32||
=== RTL-SDR Source ===
||rtl=<device-index>|| ||
||rtl_xtal=<frequency>|| Frequency in Hz of the crystal oscillator used for the RTL chip||
||tuner_xtal=<frequency>|| Frequency in Hz of the crystal oscillator used for the tuner chip||
||buffers=<number-of-buffers>|| Default is 32||
NOTE: if you don't specify rtl_xtal/tuner_xtal, the underlying driver will use 28.0MHz
=== RTL-SDR TCP Source ===
||rtl_tcp=<hostname>:<port>|| hostname defaults to "localhost", port to "1234"||
||psize=<payload-size>|| Default is 16384 bytes||
=== UHD Source / Sink ===
||uhd|| Use this argument without value ||
||nchan=<channel-index>|| ||
||subdev=<subdev-spec>|| See below||
Additional argument/value pairs will be passed to the underlying driver, for more information see
http://files.ettus.com/uhd_docs/manual/html/general.html#specifying-the-subdevice-to-use and
http://files.ettus.com/uhd_docs/manual/html/identification.html#common-device-identifiers
=== HackRF Source / Sink ===
||hackrf|| Only the first device found may be used ATM because of libhackrf limitation.||
||buffers=<number-of-buffers>|| Default is 32||
== Known Apps ==
The following 3rd party applications are successfully using gr-osmosdr:
||'''Name'''||'''Type'''||'''Author'''||'''URL'''||
||gr-pocsag||GRC Flowgraph||Marcus Leech||[https://www.cgran.org/browser/projects/gr-pocsag/trunk]||
||multimode RX||GRC Flowgraph||Marcus Leech||[https://www.cgran.org/browser/projects/multimode/trunk]||
||simple_fm_rvc||GRC Flowgraph||Marcus Leech||[https://www.cgran.org/browser/projects/simple_fm_rcv/trunk]||
||Wireless Temp. Sensor RX||Gnuradio App||Kevin Mehall||[https://github.com/kevinmehall/rtlsdr-433m-sensor]||
||tetra_demod_fft||SDR GUI||osmocom team||[http://cgit.osmocom.org/cgit/osmo-tetra/tree/src/demod/python/osmosdr-tetra_demod_fft.py osmosdr-tetra_demod_fft.py] and the [http://tetra.osmocom.org/trac/wiki/osmo-tetra#Quickexample HOWTO] ||
||gqrx||SDR GUI||Alexandru Csete||[https://github.com/csete/gqrx]||
||tetra_demod_fft||Trunking RX||osmocom team||[http://cgit.osmocom.org/cgit/osmo-tetra/tree/src/demod/python/osmosdr-tetra_demod_fft.py osmosdr-tetra_demod_fft.py] and the [http://tetra.osmocom.org/trac/wiki/osmo-tetra#Quickexample HOWTO] ||
||airprobe||GSM sniffer||osmocom team et al||[http://git.gnumonks.org/cgi-bin/gitweb.cgi?p=airprobe.git]||
||gr-smartnet (WIP)||Trunking RX||Nick Foster||[http://www.reddit.com/r/RTLSDR/comments/us3yo/rtlsdr_smartnet/][[br]][http://www.reddit.com/r/RTLSDR/comments/vbxl0/attention_grsmartnet_users_or_attempted_users/ Notes from the author]||
||gr-air-modes||ADS-B RX||Nick Foster||[https://www.cgran.org/wiki/gr-air-modes] call with --rtlsdr option||
||gr-ais (fork)||AIS RX||Nick Foster[[br]]Antoine Sirinelli[[br]]Christian Gagneraud||[https://github.com/chgans/gr-ais]||
||GNSS-SDR ||GPS RX (Realtime!)||Centre Tecnològic de[[br]]Telecomunicacions de Catalunya||[http://www.gnss-sdr.org/documentation/gnss-sdr-operation-realtek-rtl2832u-usb-dongle-dvb-t-receiver Documentation] and [http://www.gnss-sdr.org]||
||gr-scan ||Scanner||techmeology||[http://www.techmeology.co.uk/gr-scan/]||
||pocsag-mrt||Multichannel Realtime[[br]]Decoder||iZsh||[https://github.com/iZsh/pocsag-mrt]||
||osmo-gmr-rtl||GMR1 RX||Dimitri Stolnikov||[http://gmr.osmocom.org/trac/wiki/GettingStarted#RTLSDRdongles]||
||simple_ra '''(NEW)'''||Radio Astronomy App||Marcus Leech||[https://cgran.org/wiki/simple_ra]||
||FS20_decode '''(NEW)'''||FS20 Decoder||Thomas Frisch||[https://github.com/eT0M/rtl_sdr_FS20_decoder]||
||OpenLTE '''(NEW)'''||LTE Toolkit||Ben Wojtowicz||[http://sourceforge.net/p/openlte/home/Home/]||