Commit Graph

45 Commits

Author SHA1 Message Date
Eric Wild dadabeceaf cmake: actually make linking work
Appending to lists from subdirs does not work as expected, so work
around that to allow collecting the necessary libs.
2020-08-03 02:20:16 +02: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 <ewild@sysmocom.de>
2020-08-02 23:52:25 +02:00
Piotr Krysik 8cf6840da1 cmake: Go back CMake min ver. 3.8 by removing need for CMP0079
CMake 3.13 is not present in older (~2 years old)
Linux distributions and GNU Radio requires min CMake
version 3.8.

All that is needed in order to avoid bumping CMake version
is to not use 'target_link_libraries' in subdirectories.
Here this is done by creating a list of needed
libraries and adding them for linking at the end (like
it was done in gr-osmosdr before porting to GNU Radio 3.8).

One thing that is lost here is 'PRIVATE' statement in case
of FCD libraries linking.

Signed-off-by: Eric Wild <ewild@sysmocom.de>
2020-08-02 22:17:05 +02:00
Sylvain Munaut 5d59e56ff9 build: Update build system to GR 3.8 standards
Part of GNURadio 3.8 migration

Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2020-02-16 09:52:00 +01:00
Sylvain Munaut 982945a477 build: Update CMakeLists.txt copyright header
Part of GNURadio 3.8 migration

Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2020-02-16 09:51:37 +01:00
Jiří Pinkava ac15e7897b do not check for NULL before calling free 2016-01-10 22:48:31 +01:00
Dimitri Stolnikov 16c32a9fe0 osmosdr: use a fixed output signature of 1x gr_complex 2014-05-04 15:17:17 +02:00
Dimitri Stolnikov eb76e35689 osmosdr/rtl/miri/hackrf: use 15 buffers by default
folowing rtl-sdr commit 89f73b183f2dac9c0dd75beca4cf2f77f20c4a36

So far we had 32 * 256KB which was a bit overkill, 15 are more than
enough.

15 was chosen instead of 16 because at least on Linux there seems to be
a system-wide limit of 63 transfers (when they are 256KB large), so 4
dongles can be used on a single machine without lowering the default
transfer number.
2014-02-11 20:52:56 +01:00
Dimitri Stolnikov e97339c137 cmake: use *_INCLUDE_DIRS in modules 2013-08-13 20:17: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 193fd0ad88 osmosdr: remove deprecated device arguments 2013-05-26 13:02:14 +02:00
Dimitri Stolnikov a0c50c2df1 source/sink: rename antennas to express their function 2013-04-30 21:44:31 +02:00
Dimitri Stolnikov 7ed94c6242 osmosdr: remove unimplemented sink template
transmit feature won't be available in final hardware
2013-04-30 20:29:47 +02:00
Dimitri Stolnikov 901dca8135 remove APPEND from include_directories 2013-03-12 20:17:24 +01: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 ed253ffc1e osmosdr: add named gain stage "IF" 2013-02-16 15:01:46 +01:00
Dimitri Stolnikov 9e60a61f73 osmosdr: notify work function on exit of async read 2013-01-20 15:39:15 +01:00
Dimitri Stolnikov 6ae9c1b4dc update tuning ranges 2013-01-01 23:03:31 +01:00
Dimitri Stolnikov a314b43162 osmosdr: introduce buflen argument
this might be helful for rates <1MSPS
value must be multiple of 512 bytes
2012-11-28 21:06:43 +01:00
Dimitri Stolnikov bb2833250c osmosdr: print overflow marker to stderr 2012-08-08 20:42:45 +02:00
Dimitri Stolnikov fe8984dfa5 osmosdr: wait for worker thread to complete without a timeout 2012-08-08 20:31:38 +02:00
Dimitri Stolnikov f0b3de4d54 osmosdr: check for NULL buffers 2012-08-08 20:26:48 +02: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 0b5f48eb07 osmosdr: automatically increase if gain when required 2012-07-08 23:56:18 +02:00
Dimitri Stolnikov 604a9d79b0 use clip method provided by range class to pick gain values 2012-07-01 11:38:46 +02:00
Dimitri Stolnikov 8fc150c64d fix frequency range definition for e4k based devices 2012-07-01 11:18:29 +02:00
Dimitri Stolnikov fd83f5f33f osmosdr: include serial in label property 2012-06-09 20:03:57 +02:00
Dimitri Stolnikov 8099f783c0 osmosdr: use sample rate API 2012-06-06 00:46:49 +02:00
Dimitri Stolnikov 842e48d101 osmosdr: implement setting of sample rate 2012-06-02 23:57:17 +02:00
Dimitri Stolnikov c6fa979160 osmosdr: disable IQ swapping feature 2012-06-02 23:03:55 +02:00
Dimitri Stolnikov 05700e6092 rtl, osmosdr: reorder buffer allocation to prevent memory leak
the leak would occur if the requested device could not be opened
2012-06-02 22:50:48 +02:00
Dimitri Stolnikov 237385a0c3 respect the signedness
thanks to Hoernchen <la@tfc-server.de>
2012-06-02 22:22:28 +02:00
Dimitri Stolnikov 9ec656dc05 make it play nice with windows
thanks to Hoernchen <la@tfc-server.de>
2012-06-02 21:56:17 +02:00
Dimitri Stolnikov a8625f0290 fix copy & paste errors 2012-06-02 17:02:31 +02:00
Dimitri Stolnikov cd1db62699 osmosdr: read out gain values via library api 2012-06-02 01:16:26 +02:00
Dimitri Stolnikov 7ef9ebc7bb cleanup: make _samp_avail signed integer 2012-05-27 14:32:50 +02:00
Dimitri Stolnikov 4b6018b68c remove OSMOSDR_API usage where appropriate 2012-05-27 13:50:58 +02:00
Dimitri Stolnikov 9a5e93cf0d osmosdr: change implementation to use libosmosdr 2012-05-26 22:24:47 +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
Dimitri Stolnikov 52b5a8a4d3 uhd: added UHD as dependency for the gr-uhd based module
this may be required for compilation since the gnuradio trunk doesn't
provide UHD's include path via pkg-config.
2012-05-12 23:04:03 +02:00
Dimitri Stolnikov d384cf52e2 append dependency include dirs when building components 2012-05-12 12:41:55 +02:00
Dimitri Stolnikov c1c0c2f212 first working multichannel source 2012-04-28 20:18:14 +02:00
Dimitri Stolnikov 755da481d4 osmosdr: add initial component files 2012-04-26 19:23:55 +02:00