Commit Graph

30 Commits

Author SHA1 Message Date
Ron Economos a100eb024c Remove Doxygen warnings.
Signed-off-by: Ron Economos <>
Signed-off-by: Eric Wild <>
2021-01-28 22:15:52 +01:00
Clayton Smith 159885f9e6 Replace boost::shared_ptr with std::shared_ptr
Signed-off-by: Eric Wild <>
2021-01-18 21:15:57 +01:00
Clayton Smith 52fcb0935f A lot of Boost functionality is available in C++11. Since GNU Radio is moving away from Boost, it probably makes sense to do so in gr-osmosdr as well.
This change removes all usage of boost::mutex,
boost::mutex::scoped_lock, boost::unique_lock, and
boost::condition_variable. It also removes usage of boost::shared_ptr
and boost::weak_ptr outside of block definitions (which must continue to
use Boost until GNU Radio 3.9).

Signed-off-by: Eric Wild <>
2020-08-02 23:52:25 +02:00
Sylvain Munaut 982945a477 build: Update CMakeLists.txt copyright header
Part of GNURadio 3.8 migration

Signed-off-by: Sylvain Munaut <>
2020-02-16 09:51:37 +01:00
Dimitri Stolnikov aa4094b3fd introduce time & clock synchronisation APIs 2014-11-25 20:47:59 +01:00
Dimitri Stolnikov e0d1fb0377 file: expose seek function in public API 2014-03-10 17:16:05 +01:00
Dimitri Stolnikov 5410ee53b2 device: implement "nofake" hint to exclude dummy devices from discovery
usage example:

osmosdr::device_t hint( "nofake" );
osmosdr::devices_t devs = osmosdr::device::find( hint );
2013-12-10 16:59:01 +01:00
Dimitri Stolnikov f99995db69 updated header documentation for bandwidth setter 2013-09-28 13:49:18 +02:00
Dimitri Stolnikov 02f38ca908 uhd: implement dc correction 2013-06-09 20:19:17 +02:00
Dimitri Stolnikov 7e55cb9224 introduce osmosdr namespace, remove _c suffix
- the namespace conversion adopts the common gnuradio coding guidelines
- suffix removal is a preparation to support 8/16 bit complex data types
2013-05-30 16:14:22 +02:00
Dimitri Stolnikov 3e6a24e5d9 convert to gnuradio 3.7 interface 2013-05-29 22:34:40 +02:00
Dimitri Stolnikov 13477f279f source/sink: return freq_range_t in get_bandwidth_range()
it was meta_range_t (which is binary compatible) before.
2013-04-30 21:00:57 +02:00
Dimitri Stolnikov a5bdb27240 hackrf: add TX support (wip)

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


- no DC offset correction implemented (yet)
- high sampling rates may not work on slow machines

the following TX named gain stages are available:

RF: MGA-81563, switchable 0 or 14dB
IF: MAX2837 VGA, 0 to 47dB in 1dB steps
2013-04-28 12:36:31 +02:00
Dimitri Stolnikov 9bd7cbf4e1 source: update header documentation 2013-04-26 21:21:56 +02:00
Dimitri Stolnikov afd56f4b5a hackrf: implement BB lowpass filter control
To use the default (automatic) bandwidth filter selection, this should
be set to 0.
2013-04-15 23:36:55 +02:00
Dimitri Stolnikov 448206b2d2 hackrf: implement full control for RF/IF/BB gain stages
the following named gain stages are available:

RF: MGA-81563, switchable 0 or 14dB
IF: MAX2837 LNA, 0 to 40dB in 8dB steps
BB: MAX2837 VGA, 0 to 62dB in 2dB steps
2013-04-13 23:12:22 +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
Dimitri Stolnikov e415d843c7 add support for software IQ imbalance correction
this functionality depend on the gr-iqbal blocks developed by Sylvain
Munaut and is a compile time dependency:
2013-03-11 21:06:13 +01:00
Dimitri Stolnikov 878c80d8ca add meta_range_t::values() which returns all values of the range 2013-02-16 12:19:47 +01:00
Dimitri Stolnikov 86ec5d3b73 add if gain setter API for rtl-sdr
and OsmoSDR devices

Observations lead to an useful gain
range from 15 to 30dB, a value of
24dB is used by default.
2012-07-18 21:24:57 +02:00
Dimitri Stolnikov f4f5918c25 osmosdr_device: change cast to make it compile with clang 2012-05-21 00:46:46 +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

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.


 #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
Dimitri Stolnikov 6bef750ac9 change gain mode argument to 'automatic' for clarity 2012-05-17 10:35:58 +02:00
Dimitri Stolnikov ba0b52868a changed logic value for automatic gain mode
sorry boys & girls!
2012-05-05 21:06:54 +02:00
Dimitri Stolnikov 3a47e3661c add api for manual gain mode control 2012-05-05 00:43:32 +02:00
Dimitri Stolnikov b41c85a2b0 fix interface documentation 2012-04-28 23:51:00 +02:00
Dimitri Stolnikov 31a4356ba5 fix copyright notice
Remove FSF line, since we do not have any agreements with them.
2012-04-26 19:28:02 +02:00
Dimitri Stolnikov 52508a80df don't install sink interface as it's unimplemented
the transmitter hardware is in the works at Maintech
2012-04-12 20:24:05 +02:00
Dimitri Stolnikov 619d7a5a8b cleanup interface & documentation 2012-04-11 23:37:02 +02:00
Dimitri Stolnikov 0efd28de6b initial commit 2012-04-06 15:29:14 +02:00