* removed version defines in rtl-sdr.h
version is now from single source: rtl_app_ver.h.in
* output version information with usage() - in all tools:
- of their build
- and the utilized library (.so)
* unified usage() messages over all tools
Signed-off-by: hayati ayguen <h_ayguen@web.de>
This is an import of the rtl_biast command line tool from the
rtlsdrblog github repository. It's easier to include it here than
try to package up the separate application because they both
wish to install dynamic libraries.
(cherry picked from commit 43b257854c2c4f6d30649e34d1d1473e72630c5a)
resolved conflicts and amended API documentation on
rtlsdr_set_bias_tee() and rtlsdr_set_bias_tee_gpio()
Signed-off-by: hayati ayguen <h_ayguen@web.de>
rtl_biast allows for non-default GPIO pins to be used.
Add an API call which allows for that.
(cherry picked from commit 5d0735f5dfe276203261b8bcd3817341d4630ab2)
fixed conflicts
Signed-off-by: hayati ayguen <h_ayguen@web.de>
* added documentation for rtlsdr_open()
* added documentation for rtlsdr_close()
* fixed documentation for rtlsdr_set_center_freq()
* amended documentation for rtlsdr_get_freq_correction()
and rtlsdr_get_tuner_gain() - but no good error indication possible
without API change
* added documentation for rtlsdr_reset_buffer() and rtlsdr_read_sync()
Signed-off-by: hayati ayguen <h_ayguen@web.de>
* renamed API
* renamed TCP command enum to SET_TUNER_IF_MODE
* simplified interface
* if_mode/gain is now applied independent of AGC
Signed-off-by: hayati ayguen <h_ayguen@web.de>
* rtlsdr_set_tuner_sideband():
- "HF-Hase" Bernhard Kistinger (DB9PP) found out,
that one of the undocumented I2C register bits of R820T tuner
controls the used tuner/mixer lower or supper sideband.
That was by testing/playing with a special QIRX version,
showing and allowing change of all I2C registers.
- previous additions in rtl_tcp allowed control of I2C registers;
in addition register contents can be transmitted periodically (to QIRX)
- "Oldenburger" developed a first version controlling the sideband bit,
and additional spectral flipping (spectrum inversion) in the RTL2832
- i've merged Oldenburger's changes with my rtlsdr_set_tuner_band_center()
=> altogether, there's no spectrum inversion, the band center stays,
just the IF filters (steep lowpass and not-so-steep highpass) switch positions
* Oldenburger's changes for FC0012 tuner
* Oldenburger added description of R820T's I2C registers
* rtl_tcp's new response channel now occupies an additional port,
usally 1235, which is +1 of default control port.
this can be deactivated by command line
Signed-off-by: hayati ayguen <h_ayguen@web.de>
* added TCP/UDP command SET_TUNER_AGC_VARIANT = 0x46
* updated r82xx_set_bandwidth()
* added several commands to UDP control server:
f: set RF center frequency
b: set tuner bandwidth
c: set tuner bandwidth center in output
a: set tuner AGC variant
m: set manual tuner gain
M: set gainMode
h: print help
Signed-off-by: hayati ayguen <h_ayguen@web.de>
* added API rtlsdr_set_tuner_i2c_override() to keep register contents
* added SET_I2C_TUNER_REGISTER and SET_I2C_TUNER_OVERRIDE commands
to rtl_tcp for the R820T tuner
* moved udp server variables into struct rtlsdr_dev
* added hexadecimal and binary format at input for udp server
* start udp server optionally at rtlsdr_set_opt_string()
with option '-O port='
Signed-off-by: hayati ayguen <h_ayguen@web.de>
* idea is, that CLI programs don't need to implement
every single RTL option themselves
* option '-O' for test in rtl_test and rtl_fm
Signed-off-by: hayati ayguen <h_ayguen@web.de>
At least one distributor of rtl-sdr dongles (rtl-sdr.com) added
a bias-t to their dongles which could be toggled via GPIO P0 of the
RTL2832U chip.
source: http://www.rtl-sdr.com/rtl-sdr-blog-v-3-dongles-user-guide/
Signed-off-by: Steve Markgraf <steve@steve-m.de>
* So @f4exb was right to include the rtl_tcp.h in CMakeLists install. If anyone is making a C program that communicates with rtl_tcp, it will probably use the enums. (See PR #22 and issue #21)
* Added rtl_tcp.h to CMakeLists install script and moved rtl_tcp.h include to rtl_tcp.c file
* Added Eclipse gitignore (for anyone that uses eclipse to compile)
* Closes Issue #21
added API function rtlsdr_set_ds_mode(dev, enum rtlsdr_ds_mode, freq_threshold)
added CLI option '-D' to rtl_(fm|power|tcp) for mode and threshold frequency
Signed-off-by: hayati ayguen <h_ayguen@web.de>
bandwidth filter are around center frequency
without offset tuning rtl_fm automatically uses the frequency -fs/4 for demodulation
but this lies outside the bandwidth filter!
switch on offset option to use the center frequency for demodulation
fixed/precised output texts
output available bandwidths in kHz for better readability
this allows to return the configured/applied bandwidth to the caller
this also allows pre-determining all possible bandwidth values (with apply_bw=0)
see rtl_fm with verbose flag, when using -w option
API does only work for R820T tuner. other tuner always return 0 (=unknown) bandwidth
Signed-off-by: Lucas Teske <lucas@teske.net.br>
* Added Bandwidth Parameter (-w) to rtl_tcp to set the device bandwidth through cmd args
* Added Bandwidth Network Parameter (0x0E) to rtl_tcp to set the device bandwidth through network
* Added RTL_TCP_COMMANDS enum to better organize the network commands
* Added binary files to gitignore
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>
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>
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>
This commit adds the function rtlsdr_set_direct_sampling()
which can be used to enable/disable a mode where the
RTL2832 acts as a direct sampling receiver.
This mode disables the tuner, and by attaching a long
wire, or better, a 50Ω to 200Ω transformer and a lowpass-
filter to the In-phase ADC input (pin 1 or 2 of the RTL2832,
whereas pin 1 is at the molded dot) it is possible to listen to
shortwave radio stations. The coupling capacitors can be
left in place, but for better results they should be removed.
Tuning in this mode is done with the DDC, and since the
ADC samples with 28.8 MHz, tuning is possible from 0 to
28.8 MHz.
Signed-off-by: Steve Markgraf <steve@steve-m.de>