SYNOPSIS

osmocom_siggen_nogui: [options]

DESCRIPTION

Signal generator application

OPTIONS

-h, --help

show this help message and exit

-a ARGS, --args=ARGS

Device args, [default=]

-A ANTENNA, --antenna=ANTENNA

Select Rx Antenna where appropriate

-s SAMP_RATE, --samp-rate=SAMP_RATE

Set sample rate (bandwidth), minimum by default

-g GAIN, --gain=GAIN

Set gain in dB (default is midpoint)

-f FREQ, --tx-freq=FREQ

Set carrier frequency to FREQ [default=mid-point]

-c FREQ_CORR, --freq-corr=FREQ_CORR

Set carrier frequency correction [default=0]

-x WAVEFORM_FREQ, --waveform-freq=WAVEFORM_FREQ

Set baseband waveform frequency to FREQ [default=0]

-y WAVEFORM2_FREQ, --waveform2-freq=WAVEFORM2_FREQ

Set 2nd waveform frequency to FREQ [default=none]

--sine

Generate a carrier modulated by a complex sine wave

--const

Generate a constant carrier

--offset=OFFSET

Set waveform phase offset to OFFSET [default=0]

--gaussian

Generate Gaussian random output

--uniform

Generate Uniform random output

--2tone

Generate Two Tone signal for IMD testing

--sweep

Generate a swept sine wave

--gsm

Generate GMSK modulated GSM Burst Sequence

--amplitude=AMPL

Set output amplitude to AMPL (0.1-1.0) [default=0.3]

-v, --verbose

Use verbose console output [default=False]

Note: failed to enable realtime scheduling, continuing

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 with examples is available ​right here.

FCD Source

Argument

Notes

fcd=<device-index>

0-based device identifier, optional

device=hw:2

overrides the audio device

type=2

selects the dongle type, 1 for Classic, 2 for Pro+

The "device" argument overrides the audio device used by the underlying driver to access the dongle's IQ sample stream.

The "type" argument selects the dongle type, 1 for Classic, 2 for Pro+.

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

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.

bladeRF Source / Sink

Argument

Notes

bladerf[=0]

0-based device identifier (optional)

fw='/path/to/the/firmware.img'

program MCU firmware from given file. usually not needed. power cycle required.

fpga='/path/to/the/bitstream.rbf'

load FPGA bitstream from given file. required only at first run at the moment.

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.

Transmit support has been verified by using the crc-mmbTools DAB sdr transmitter.

IQ File Source

Argument

Notes

file=<path-to-file-name>

freq=<frequency>

Center frequency in Hz, accepts eng notation

rate=<sampling-rate>

Mandatory, in samples/s, accepts eng notation

repeat=true|false

Default is true

throttle=true|false

Throttle flow of samples, default is true

EXAMPLES

osmocom_siggen_nogui -a hackrf -f 100e6 --sweep -x 2e6 -y 10 -v

osmocom_siggen_nogui -a uhd,subdev=A:0 -f 100e6 --sweep -x 2e6 -y 10 -s 4e6 -v

RELATED TO osmocom_siggen_nogui…