Commit Graph

12 Commits

Author SHA1 Message Date
Dimitri Stolnikov 7394251bd0 netsdr: add support for RFSPACE NetSDR receiver
- implements broadcast UDP based device discovery
- prints device information (serial/versions) on startup
- reads available frequency range(s) from the device
- integrity checks of IQ stream using sequence numbers
- automatic bandpass or a wideband lowpass selectable

The following named gain stages are available:

ATT: -30 to 0 dB, in 10dB steps

Known limitations:

- setting the sample rate is possible only before the
  flowgraph has been started
2013-10-26 15:04:03 +02:00
Dimitri Stolnikov 65e34f6863 bladerf: add support for nuand LLC bladeRF (WIP)
This is based on the original work (https://github.com/Nuand/gr-osmosdr)
done by folks at nuand LLC for the gr3.6 branch of gr-osmosdr.

The following modifications have been done in this commit:

* port to gr-osmosdr master codebase (gr3.7)
* moved shared properties to bladerf_common
* added & verified IF filter bandwidth setters
* set LMS6002D registers with values taken from FAQ 5.27
* print device information (serial/versions) on startup
* added fpga= and fw= device arguments to program MCU/FPGA
* added bladerf=# dev. arg. to select a specific bladeRF
* grc gain field controls RF path VGA for RX/TX
* grc BB gain field controls BB path VGA for RX/TX

Usage example:

osmocom_fft -a "bladerf,fpga=/tmp/hostedx115.rbf"

The following RX named gain stages are available:

LNA: 0 to 6 dB, in 3dB steps
VGA1: 5 to 30 dB, in 1dB steps; nonlinear mapping done inside the lib
VGA2: 0 to 60 dB, in 3dB steps; not recommended to be used above 30dB

The following TX named gain stages are available:

VGA1: -35 to -4 dB, in 1dB steps, BB side
VGA2: 0 to 25 dB, in 1dB steps, RF side

Thanks a lot to the team of nuand LLC for this major contribution.
2013-07-28 19:57:45 +02:00
Dimitri Stolnikov 7b66bb860a devices: software-only sources should be appended at the very end
hopefully this will result in hardware sources to be shown first
if any sort of a graphical interface is being used to show a list...
2013-04-10 21:17:31 +02:00
Dimitri Stolnikov f5670788fc hackrf: add support for HackRF devices through libhackrf
features:

- gain control for LNA & VGA
- frequency error correction
- automatic baseband filter
- up to 20M sampling rate

limitations:

- no DC offset correction implemented (yet)
- no RX preamplifier control (disabled by default)
- high sampling rates may not work on slow machines
2013-04-10 21:05:14 +02:00
Dimitri Stolnikov fd56ae7640 adopt gnuradio component header structure
this makes it neccessary to include headers with the osmosdr/ prefix

thanks to Alexandru Csete for pointing this out.
2013-04-09 00:28:10 +02:00
Hoernchen 69e0003407 This reverts commit 3fb4f96bb7.
This reverts commit 1772222cb3.
reorder include dirs
2013-03-12 19:39:30 +01:00
Hoernchen 3fb4f96bb7 fix the other config.h includes as well 2013-03-12 14:51:01 +01:00
Dimitri Stolnikov d243abe2d7 return default devices for file and rtl_tcp in device::find() 2013-01-10 20:33:45 +01:00
Dimitri Stolnikov 2878501284 add support for MSi2500 based DVB-T dongles through libmirisdr
this has been tested with analog modes only and still has to be
verified with the usual digital modes for proper implementation.
2012-09-30 20:12:48 +02:00
Dimitri Stolnikov 38811fb853 uhd: remove the equal character from uhd argument 2012-06-09 16:26:49 +02:00
Dimitri Stolnikov e26074615b osmosdr_device: make it compile with boost 1.46.1 2012-05-20 15:30:01 +02:00
Dimitri Stolnikov 3ea0b38810 introduce device discovery api
This API allows to acquire a list of devices connected to the host and
creates an argument string ready to be passed to a source object for
cunstruction.

Each device_t entry contains a "label" entry, which holds the generic
device name which may be shown to the user for device selection.

For certain radio hardware extended entries ("name", "serial", "type")
may be available to make bijective device addressing possible.

The argument string for target types "rtl_tcp" and "file" might be
constructed using the osmosdr::device_t class facilities.

Example:

 #include <osmosdr_device.h>
 #include <osmosdr_source_c.h>

osmosdr::devices_t devs = osmosdr::device::find();

BOOST_FOREACH(osmosdr::device_t &dev, devs) // try to create each dev
  osmosdr_source_c_sptr src = osmosdr_make_source_c(dev.to_string());
2012-05-20 12:55:52 +02:00