Commit Graph

346 Commits

Author SHA1 Message Date
Steve Markgraf e3e6ee23b7 lib: add new HanfTek dongle
Signed-off-by: Steve Markgraf <steve@steve-m.de>
2016-11-27 12:19:44 +01:00
Hoernchen e3c03f738f lib: check for libusb init failure 2015-06-09 01:53:23 +02:00
Hoernchen 5c376fc79c tools: allow built-in functions for newer versions of MSVC 2015-06-09 01:37:46 +02:00
Steve Markgraf 8b4d755ba1 Merge pull request #20 from lcl7/correct-e4k_reg_write
Correct return code of e4k_reg_write().
2015-05-16 00:48:37 +02:00
Jiří Pinkava 92df068dc5 New functions rtlsdr_set_tuner_bandwidth()
Signed-off-by: Steve Markgraf <steve@steve-m.de>
2015-05-16 00:38:01 +02:00
Jiří Pinkava d892279085 Allow setting bandwidth for R820T
This improves SDR performence for nearby channel interference.
As a sideeffect also improves dynamic range becase ADC is not overloaded
by onwanted singlas.

Signed-off-by: Steve Markgraf <steve@steve-m.de>
2015-05-16 00:37:17 +02:00
lcl c5dc459fc5 Correct return code of e4k_reg_write().
In contradiction with the documentation, e4k_reg_write() was
returning the value 2 upon success (the number of bytes written),
not zero as documented.
Patched to return zero upon success.

As a consequence, this corrects also the return value of
e4k_reg_set_mask() and e4k_dc_offset_calibrate().
2015-05-08 11:10:30 +02:00
Dimitri Stolnikov d447a2e983 cmake: include resource file for MSVC builds 2014-08-26 21:26:26 +02:00
Steve Markgraf 6ee5573606 rtl_tcp: make all global variables static
Signed-off-by: Steve Markgraf <steve@steve-m.de>
2014-02-10 23:59:21 +01:00
Steve Markgraf 89f73b183f lib: change default number of transfers to 15
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.

Signed-off-by: Steve Markgraf <steve@steve-m.de>
2014-02-10 23:57:19 +01:00
Steve Markgraf 5b0137abaf lib: handle events after canceling transfers
Otherwise the new transfer status does not propagate
into the xfer->status and we try to cancel all transfers
twice.

Also replace the ifdefs with a single macro for backwards
compatibility.

Signed-off-by: Steve Markgraf <steve@steve-m.de>
2014-02-09 15:50:32 +01:00
Steve Markgraf 929beafc6e lib: only print to stderr in tuner_r82xx_set_pll()
Found by keenerd.

Signed-off-by: Steve Markgraf <steve@steve-m.de>
2014-02-08 14:48:24 +01:00
Steve Markgraf 50743b1ccb remove unused variables, type fixes
Signed-off-by: Steve Markgraf <steve@steve-m.de>
2014-02-04 19:53:24 +01:00
Steve Markgraf 0a90c7d417 rtl_test: update copyright header
Signed-off-by: Steve Markgraf <steve@steve-m.de>
2014-02-04 19:26:40 +01:00
Steve Markgraf f2be2f945b rtl_sdr: clean up getopt-string
Signed-off-by: Steve Markgraf <steve@steve-m.de>
2014-02-04 19:16:11 +01:00
Michael Tatarinov 1cc9d64d98 rtl_test: refactoring and optimization for PPM error
Signed-off-by: Steve Markgraf <steve@steve-m.de>
2014-02-04 19:11:10 +01:00
Denys Berkovskyy 2c171630fa lib: add missing 'goto' in tuner detection code
Add missing ‘goto’ to avoid checks for other tuners when
R828D tuner is found.

Signed-off-by: Steve Markgraf <steve@steve-m.de>
2014-01-29 00:17:57 +01:00
Steve Markgraf bf92121aff unbreak 'make distcheck' with automake
Thanks to zecke for pointing this out.

Signed-off-by: Steve Markgraf <steve@steve-m.de>
2014-01-26 13:49:39 +01:00
Steve Markgraf c25f9cbc38 rtl_tcp: fix warning
Signed-off-by: Steve Markgraf <steve@steve-m.de>
2014-01-24 14:35:22 +01:00
Steve Markgraf 4f31e5f560 rtl_fm/rtl_test: fix build with MSVC after recent changes
Signed-off-by: Steve Markgraf <steve@steve-m.de>
2014-01-24 14:05:47 +01:00
Steve Markgraf a2bc5b5117 lib/cmake: check for libusb_handle_events_timeout_completed()
libusb < 1.0.9 doesn't have libusb_handle_events_timeout_completed(),
but libusb <= 1.0.8 doesn't have version.h, so we need to check
for the function.

The cmake-code was borrowed from UHD, which also checks
for libusb_error_name(), we add that as well since it might come
handy later on.

Signed-off-by: Steve Markgraf <steve@steve-m.de>
2014-01-24 03:57:53 +01:00
Steve Markgraf 929972f835 lib: add SVEON STV27, sort device list
Signed-off-by: Steve Markgraf <steve@steve-m.de>
2014-01-24 01:06:55 +01:00
Steve Markgraf 3409c0315f lib: speed up exiting from async handler
Now we're using libusb_handle_events_timeout_completed()
instead of the deprecated libusb_handle_events_timeout(),
and notify our async state machine when rtlsdr_cancel_async()
is called. This speeds up exiting from any program that uses the
device asynchronously.

Signed-off-by: Steve Markgraf <steve@steve-m.de>
2014-01-24 00:44:36 +01:00
Kyle Keen e90cd17d36 rtl_fm: overhaul
Signed-off-by: Steve Markgraf <steve@steve-m.de>
2014-01-23 23:28:19 +01:00
Kyle Keen f459214894 rtl_power: fix dBm math
Signed-off-by: Steve Markgraf <steve@steve-m.de>
2014-01-23 23:26:41 +01:00
Kyle Keen 835bd23542 rtl_test: useful ppm
Signed-off-by: Steve Markgraf <steve@steve-m.de>
2014-01-23 23:26:05 +01:00
Kyle Keen 8520c7c3d7 rtl_adsb: fix threading
Signed-off-by: Steve Markgraf <steve@steve-m.de>
2014-01-23 23:23:06 +01:00
Kyle Keen 27c0929939 utils: convenience functions
Signed-off-by: Steve Markgraf <steve@steve-m.de>
2014-01-23 23:21:23 +01:00
Steve Markgraf 003bd51167 lib: check for validity of sample rates
Thanks to Joris van Rantwijk for finding what seems to be
a hardware limitation/bug (bit 28 of the rsamp register being
forced to the value of bit 27).

Signed-off-by: Steve Markgraf <steve@steve-m.de>
2014-01-05 22:51:44 +01:00
Steve Markgraf d683b128f9 lib: abort if submitting transfer fails, don't deadlock when cancelling fails
Signed-off-by: Steve Markgraf <steve@steve-m.de>
2014-01-03 05:56:43 +01:00
Kyle Keen 3ab6fffbdd rtl_power: MSVC 2010 doesn't have log2()
Signed-off-by: Steve Markgraf <steve@steve-m.de>
2013-12-27 00:41:49 +01:00
Hoernchen 7855c7c876 rtl_tcp: clean up error handling
Signed-off-by: Steve Markgraf <steve@steve-m.de>
2013-12-27 00:22:30 +01:00
Steve Markgraf 67302f4665 lib: add yet another Terratec OEM stick
Signed-off-by: Steve Markgraf <steve@steve-m.de>
2013-12-26 19:33:30 +01:00
Kyle Keen fca2b7d52f rtl_power: apply first series of patches
* fix typos
* droop compensation
* improve sample rates, peak hold
* direct sampling
* offset tuning

Signed-off-by: Steve Markgraf <steve@steve-m.de>
2013-12-26 19:29:53 +01:00
Steve Markgraf 1050b96b47 lib: add OEM versions of Terratec NOXON sticks
Signed-off-by: Steve Markgraf <steve@steve-m.de>
2013-12-24 02:10:05 +01:00
Steve Markgraf 5f38c0519d change device name of OEM dongles
Signed-off-by: Steve Markgraf <steve@steve-m.de>
2013-12-16 21:34:01 +01:00
Steve Markgraf e1bf239a6d lib: add KWorld KW-UB450-T to device list
The TUA9001 tuner it uses is unsupported
at the moment, though.

Signed-off-by: Steve Markgraf <steve@steve-m.de>
2013-12-08 16:48:07 +01:00
Jiri Pinkava a42659602d lib: use FIR coefficients instead of magic + documentation
Signed-off-by: Steve Markgraf <steve@steve-m.de>
2013-12-02 01:31:14 +01:00
Steve Markgraf f17818f737 rtl_test: use static instead of global var
Signed-off-by: Steve Markgraf <steve@steve-m.de>
2013-11-21 16:33:44 +01:00
Steve Markgraf 33427f7f31 rtl_eeprom: add note regarding necessary replug of device
Signed-off-by: Steve Markgraf <steve@steve-m.de>
2013-11-19 02:10:55 +01:00
Steve Markgraf aced2dbd0e rtl_fm/power: unbreak MinGW build
Signed-off-by: Steve Markgraf <steve@steve-m.de>
2013-11-18 21:36:19 +01:00
Steve Markgraf fbfa127889 tuner_r82xx: enable multi-byte I2C transfers
This should speed some multi register reads up a bit.

Signed-off-by: Steve Markgraf <steve@steve-m.de>
2013-11-16 21:10:31 +01:00
Steve Markgraf 360dd369bd add Sveon STV21 stick to device list
Signed-off-by: Steve Markgraf <steve@steve-m.de>
2013-11-10 01:18:42 +01:00
Kyle Keen c5b8a21300 rtl_power: more lowpass options
Signed-off-by: Steve Markgraf <steve@steve-m.de>
2013-11-05 20:58:17 +01:00
Kyle Keen 8f1d108122 rtl_power: nicer errors, low pass, low bw
Signed-off-by: Steve Markgraf <steve@steve-m.de>
2013-11-05 20:58:11 +01:00
Kyle Keen 968b6fbfdc rtl_power: clean ^C, cropped bins, +32k bins
Signed-off-by: Steve Markgraf <steve@steve-m.de>
2013-11-05 20:58:01 +01:00
Steve Markgraf 1cdc3a02fd tuner_r82xx: set init_done after init
This broke r82xx_standby().

Signed-off-by: Steve Markgraf <steve@steve-m.de>
2013-11-05 20:12:25 +01:00
Steve Markgraf a1e55db1fe r82xx: make new driver build with MSVC
Signed-off-by: Steve Markgraf <steve@steve-m.de>
2013-11-04 21:56:20 +01:00
Steve Markgraf 86be727e52 lib: declare fir coefficients as constant
Signed-off-by: Steve Markgraf <steve@steve-m.de>
2013-11-04 21:54:55 +01:00
Steve Markgraf 015c78a4ca remove e4k-specific I2C functions from library
Signed-off-by: Steve Markgraf <steve@steve-m.de>
2013-11-04 21:53:41 +01:00
Steve Markgraf aefd8b7d58 add Astrometa DVB-T/DVB-T2 stick
Signed-off-by: Steve Markgraf <steve@steve-m.de>
2013-11-04 21:52:31 +01:00
Steve Markgraf e61731d230 add support for R828D tuner
Signed-off-by: Steve Markgraf <steve@steve-m.de>
2013-11-04 21:51:35 +01:00
Steve Markgraf 230930e975 use new driver for R8XX tuners
Signed-off-by: Steve Markgraf <steve@steve-m.de>
2013-11-04 21:50:02 +01:00
Hoernchen dbede4e3c0 tools: play nice with mingw/cygwin 2013-10-25 01:11:44 +02:00
Hoernchen 7614a4d684 tools: minor win fix 2013-10-25 00:04:17 +02:00
Kyle Keen dbc49549a0 add new tool: rtl_power
Signed-off-by: Steve Markgraf <steve@steve-m.de>
2013-10-24 23:46:16 +02:00
Howard Su 53775a2ebf rtl_adsb: remove floats for more speed
Signed-off-by: Steve Markgraf <steve@steve-m.de>
2013-10-24 23:33:51 +02:00
Kyle Keen b70720b9b6 rtl_fm: set nearest gain
Signed-off-by: Steve Markgraf <steve@steve-m.de>
2013-10-24 23:29:46 +02:00
Kyle Keen 31cef2ef55 rtl_fm: fix buffer dump bug
Signed-off-by: Steve Markgraf <steve@steve-m.de>
2013-10-24 23:29:42 +02:00
Kyle Keen a6d7fff9ca rtl_fm: better suffix parsing
Signed-off-by: Steve Markgraf <steve@steve-m.de>
2013-10-24 23:29:34 +02:00
Steve Markgraf cb8907dd4e add DigitalNow Quad DVB-T PCI-E card
Signed-off-by: Steve Markgraf <steve@steve-m.de>
2013-10-12 15:56:20 +02:00
Will Glynn 4914b5d431 rtl_adsb: Fix invalid memory access
single_manchester() considers both i and i+1, but the loop only
tests that i is in bounds. This causes undefined behavior, including
but not limited to a SIGBUS-related crash on Mac OS X.

(And also, we should not enter an infinite loop, caused by applying
an patch I sent that didn't also change the while condition.)

Signed-off-by: Steve Markgraf <steve@steve-m.de>
2013-09-13 18:55:55 +02:00
Kyle Keen c4fcfbb46e rtl_fm: fix scanning
Signed-off-by: Steve Markgraf <steve@steve-m.de>
2013-09-13 18:31:49 +02:00
Steve Markgraf 8c3a99c8f7 lib: add ASUS U3100MINI_PLUS_V2 to device list
Signed-off-by: Steve Markgraf <steve@steve-m.de>
2013-06-12 18:50:28 +02:00
Steve Markgraf af1e2d29e8 bump version to 0.5.0
Signed-off-by: Steve Markgraf <steve@steve-m.de>
2013-06-04 21:04:10 +02:00
Steve Markgraf 3e17ef2b55 lib: don't detach kernel driver by default
Since this feature also disconnects running instances
of librtlsdr that claimed the device, it is now disabled
by default and can only be enabled at compile time.

To enable it when building with cmake:
cmake . -DDETACH_KERNEL_DRIVER=ON

To enable it when building with automake:
./configure --enable-driver-detach

Signed-off-by: Steve Markgraf <steve@steve-m.de>
2013-06-04 20:57:43 +02:00
Dimitri Stolnikov ce341fe53b cmake: add version module 2013-06-04 20:18:56 +02:00
Jaroslav Škarvada a5dd532cbb rtl-sdr: add support for lib64 (e.g. Fedora)
Another possibility is to use the GrPlatform.cmake module.

Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
Signed-off-by: Steve Markgraf <steve@steve-m.de>
2013-04-14 17:05:08 +02:00
Steve Markgraf 4a068f565b rtl_test: add info message
Signed-off-by: Steve Markgraf <steve@steve-m.de>
2013-03-06 16:47:11 +01:00
Steve Markgraf e202d0f92a lib: add WinFast DTV Dongle mini D
Thanks to Alan Beard for reporting.

Signed-off-by: Steve Markgraf <steve@steve-m.de>
2013-03-01 15:16:41 +01:00
Steve Markgraf 3c4aa46f5a lib: detach and reattach kernel driver if needed
Signed-off-by: Steve Markgraf <steve@steve-m.de>
2013-02-26 23:11:33 +01:00
Dimitri Stolnikov 698a8a152e rtl_tcp: fix printing of if gain values 2013-02-17 17:49:12 +01:00
Steve Markgraf f1803fe10f lib: special handling of dongle disconnect for OS != win32
libusb reacts differently to a device loss during runtime,
and sporadic errors can happen when starting a second
instance interfacing another dongle, thus we need to wait
for all transfers to fail before assuming the dongle has
been removed.

Signed-off-by: Steve Markgraf <steve@steve-m.de>
2013-02-17 16:43:29 +01:00
Kyle Keen ea4dbd242d rtl_fm: osx does not like semaphores
Signed-off-by: Steve Markgraf <steve@steve-m.de>
2013-01-31 20:42:42 +01:00
Kyle Keen 8d358b44d4 rtl_fm: dc block from TonberryKing
Signed-off-by: Steve Markgraf <steve@steve-m.de>
2013-01-30 20:24:24 +01:00
Kyle Keen e8e735caf4 rtl_fm: bugfixes from TonberryKing
Signed-off-by: Steve Markgraf <steve@steve-m.de>
2013-01-30 20:24:24 +01:00
Kyle Keen c85cab2dae rtl_fm: Miroslav Slugeň's atan lut
Signed-off-by: Steve Markgraf <steve@steve-m.de>
2013-01-30 20:24:24 +01:00
Kyle Keen c6a731a0dc rtl_adsb: 16 bit magnitudes
Signed-off-by: Steve Markgraf <steve@steve-m.de>
2013-01-30 20:24:24 +01:00
Steve Markgraf b656896f66 lib: remove "e.g. hama nano" from the default device description
This caused some confusion...

Signed-off-by: Steve Markgraf <steve@steve-m.de>
2013-01-29 00:30:09 +01:00
Hoernchen 3cbf139261 exit if our usb device disappears 2013-01-16 20:05:52 +01:00
Steve Markgraf 84f0a9084b lib: enable standby mode of e4k and r820t on exit
Since the R820T is a power hog and gets quite hot,
this makes sense, especially when being battery-
powered.

Signed-off-by: Steve Markgraf <steve@steve-m.de>
2013-01-16 01:43:45 +01:00
Hoernchen c338e5a8c1 let's not depend on libusb >= 1.0.9, avoid libusb_error_name() 2013-01-13 14:54:31 +01:00
Hoernchen 5d2d5a4ae4 more verbose error message if opening the usb device fails 2013-01-13 00:31:58 +01:00
Hoernchen f1ac20c371 disable force canceling for now to prevent crashes 2013-01-10 01:41:05 +01:00
Hoernchen 1cde8634ca rtl_tcp: add option to tame the linked list 2013-01-10 00:01:28 +01:00
Kyle Keen 5673a56223 rtl_adsb: improve sensitivity, stability
Signed-off-by: Steve Markgraf <steve@steve-m.de>
2013-01-04 21:29:14 +01:00
Steve Markgraf 7840ec21d3 lib: reset device if needed
This improves the situation on hosts with flaky host
controllers like the Raspberry Pi and the WR703N.

Signed-off-by: Steve Markgraf <steve@steve-m.de>
2013-01-04 21:26:43 +01:00
Steve Markgraf 4b057fea0f rtlsdr_set_sample_rate(): don't access dev structure before checking for NULL
Thanks to Derek Lieber for reporting this bug.

Signed-off-by: Steve Markgraf <steve@steve-m.de>
2013-01-02 20:19:19 +01:00
Dimitri Stolnikov 314683a51e librtlsdr: remove unneeded casting
Signed-off-by: Hoernchen <la@tfc-server.de>
2012-12-29 16:06:26 +01:00
Dimitri Stolnikov e82a07e67a rtl_tcp: add support for tuner caps discovery
Signed-off-by: Hoernchen <la@tfc-server.de>
2012-12-29 16:06:26 +01:00
Hoernchen d0534878f3 rtl_adsb: windows fix 2012-12-28 19:33:18 +01:00
edy555 aa60c2aaed fix segv on reconnect
Signed-off-by: Hoernchen <la@tfc-server.de>

improve staibility (for sdr#)

Signed-off-by: Hoernchen <la@tfc-server.de>
2012-12-28 18:59:41 +01:00
Kyle Keen 196bb15169 rtl_adsb: performance tweaks
Signed-off-by: Steve Markgraf <steve@steve-m.de>
2012-12-28 16:42:05 +01:00
Kyle Keen 8033414974 rtl_adsb: sensitivity tweaks
Signed-off-by: Steve Markgraf <steve@steve-m.de>
2012-12-16 16:23:48 +01:00
Kyle Keen 71b254a238 rtl_fm: non-gnu str functions
Signed-off-by: Steve Markgraf <steve@steve-m.de>
2012-12-10 23:26:57 +01:00
Kyle Keen 562fd7e8e3 rtl_adsb: prototype
Signed-off-by: Steve Markgraf <steve@steve-m.de>
2012-12-10 22:37:25 +01:00
Kyle Keen d6107bb059 rtl_fm: frequency ranges, flexible squelch
Signed-off-by: Steve Markgraf <steve@steve-m.de>
2012-12-09 17:15:01 +01:00
Kyle Keen e4e8ef55fc rtl_fm: ppm and k/M/G suffixes
Signed-off-by: Steve Markgraf <steve@steve-m.de>
2012-12-09 17:14:56 +01:00
Steve Markgraf 43c0145200 rtl_eeprom: clean up get_string_descriptor()
Signed-off-by: Steve Markgraf <steve@steve-m.de>
2012-11-04 15:57:34 +01:00
Steve Markgraf d3c9015d26 lib: add rtlsdr_get_index_by_serial()
This allows to open a device by a name (serial number string)
that has been programmed with rtl_eeprom -s.

Signed-off-by: Steve Markgraf <steve@steve-m.de>
2012-11-04 13:57:56 +01:00