GrOsmoSDR » History » Revision 29

« Previous | Revision 29/98 (diff) | Next »
horiz0n, 02/19/2016 10:50 PM


= OSMOCOM Gnuradio Source =

While primarily being developed for the OsmoSDR hardware, this block as well supports:

By using the OsmoSDR block 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.'''

Before building the source you have to make sure that all the dependencies (see list of supported devices above) you are intend to work with are properly installed. The build system of gr-osmosdr will recognize them and enable specific source/sink components thereafter.

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://
cd gr-osmosdr/
mkdir build
cd build/
cmake ../
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 []. 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 [ right here].

=== FCD Source ===
Argument Notes
fcd=<device-index> 0-based device identifier
=== OsmoSDR Source ===
Argument Notes
osmosdr=<device-index> 0-based device identifier
buffers=<number-of-buffers> Default is 32
buflen=<length-of-buffer> Default is 256kB, must be multiple of 512
=== RTL-SDR Source ===
Argument Notes
rtl=<device-index> 0-based device identifier OR serial number
rtl_xtal=<frequency> Frequency (Hz) used for the RTL chip, accepts eng notation
tuner_xtal=<frequency> Frequency (Hz) used for the tuner chip, accepts eng notation
buffers=<number-of-buffers> Default is 32
buflen=<length-of-buffer> Default is 256kB, must be multiple of 512
direct_samp=0 1 2 Enable direct sampling mode on the RTL chip. 0: Disable, 1: use I channel, 2: use Q channel
offset_tune=0 1 Enable offset tune mode for E4000 tuners

NOTE: use rtl_eeprom -s to program your own serial number to the device
NOTE: if you don't specify rtl_xtal/tuner_xtal, the underlying driver will use 28.0MHz

=== RTL-SDR TCP Source ===
Argument Notes
rtl_tcp=<hostname>:<port> hostname defaults to "localhost", port to "1234"
psize=<payload-size> Default is 16384 bytes
direct_samp=0 1 2 Enable direct sampling mode on the RTL chip 0=Off, 1=I-ADC input enabled, 2=Q-ADC input enabled
offset_tune=0 1 Enable offset tune mode for E4000 tuners
=== Miri Source ===
Argument Notes
miri=<device-index> 0-based device identifier
buffers=<number-of-buffers> Default is 32

NOTE: if you don't specify rtl_xtal/tuner_xtal, the underlying driver will use 28.0MHz

=== UHD Source / Sink ===
Argument Notes
uhd Use this argument without a value
nchan=<channel-count> For multichannel USRP configurations use the subdev parameter to specify stream mapping
subdev=<subdev-spec> Examples: "A:0", "B:0", "A:0 B:0" when nchan=2. Refer original ettus documentation on this
lo_offset=<frequency> Offset frequency in Hz, must be within daughterboard bandwidth. Accepts eng notation

Additional argument/value pairs will be passed to the underlying driver, for more information see
[ specifying the subdevice] and
[ common device identifiers] in the Ettus documentation.

=== HackRF Source / Sink ===
Argument Notes
hackrf Use this argument without a value
buffers=<number-of-buffers> Default is 32

Only the first device found may be used at the moment because of libhackrf limitation.

=== IQ File Source ===
Argument Notes
freq=<frequency> Center frequency in Hz, accepts eng notation
rate=<sampling-rate> Mandatory, in samples/s
repeat=true false Default is true
throttle=true false Throttle flow of samples, default is true
Known Apps

The following 3rd party applications are successfully using gr-osmosdr:

'''Name''' '''Type''' '''Author''' '''URL'''
gr-pocsag GRC Flowgraph Marcus Leech []
multimode RX GRC Flowgraph Marcus Leech []
simple_fm_rvc GRC Flowgraph Marcus Leech []
Wireless Temp. Sensor RX Gnuradio App Kevin Mehall []
gqrx SDR GUI Alexandru Csete []
tetra_demod_fft Trunking RX osmocom team [] and the [ HOWTO]
airprobe GSM sniffer osmocom team et al []
gr-smartnet (WIP) Trunking RX Nick Foster [br[">]br[ Notes from the author]
gr-air-modes ADS-B RX Nick Foster [] call with --rtlsdr option
gr-ais (fork) AIS RX Nick FosterbrAntoine SirinellibrChristian Gagneraud []
GNSS-SDR GPS RX (Realtime!) Centre Tecnològic debrTelecomunicacions de Catalunya [ Documentation] and []
gr-scan Scanner techmeology []
pocsag-mrt Multichannel RealtimebrDecoder iZsh []
osmo-gmr-rtl GMR1 RX Dimitri Stolnikov []
simple_ra '''(NEW)''' Radio Astronomy App Marcus Leech []
FS20_decode '''(NEW)''' FS20 Decoder Thomas Frisch []
OpenLTE '''(NEW)''' LTE Toolkit Ben Wojtowicz []

gr-osmosdr is developed by Dimitri Stolnikov with contributions from Hoernchen and Steve Markgraf.

Files (7)
hackrf-siggen.png View hackrf-siggen.png 79.1 KB signal generator app horiz0n, 05/26/2013 11:15 AM
hackrf-dab.jpg View hackrf-dab.jpg 127 KB HackRF transmitting DAB signal generated by crc-mmbTools horiz0n, 05/26/2013 11:18 AM
fft-lte.png View fft-lte.png 55.8 KB osmocom_fft showing LTE signal captured with HackRF Jawbreaker horiz0n, 06/15/2013 08:00 AM
siggen-gsm.png View siggen-gsm.png 26.9 KB osmocom_siggen producing a GSM waveform horiz0n, 06/15/2013 08:01 AM
fosphor.png View fosphor.png 433 KB LTE carrier horiz0n, 10/26/2013 10:09 AM
fosphor2.png View fosphor2.png 480 KB GSM900 band horiz0n, 10/26/2013 10:10 AM
gsm-hackrf-8M.png View gsm-hackrf-8M.png 9.69 KB osmocom_siggen running the GSM waveform on a HackRF horiz0n, 12/30/2013 03:42 PM

Updated by horiz0n about 8 years ago · 29 revisions

Add picture from clipboard (Maximum size: 48.8 MB)