From 9d58aec8cf9e711d927beccc51120648ed024d9f Mon Sep 17 00:00:00 2001 From: Steve Markgraf Date: Sun, 3 Jun 2012 21:02:48 +0200 Subject: [PATCH] correctly clear DDC shift and if_freq registers This fixes the 2 kHz LO shift. Signed-off-by: Steve Markgraf --- src/librtlsdr.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/librtlsdr.c b/src/librtlsdr.c index c138438..7c315c2 100644 --- a/src/librtlsdr.c +++ b/src/librtlsdr.c @@ -470,8 +470,9 @@ void rtlsdr_init_baseband(rtlsdr_dev_t *dev) rtlsdr_demod_write_reg(dev, 1, 0x15, 0x00, 1); rtlsdr_demod_write_reg(dev, 1, 0x16, 0x0000, 2); - /* set IF-frequency to 0 Hz */ - rtlsdr_demod_write_reg(dev, 1, 0x19, 0x0000, 2); + /* clear both DDC shift and IF frequency registers */ + for (i = 0; i < 6; i++) + rtlsdr_demod_write_reg(dev, 1, 0x16 + i, 0x00, 1); /* set FIR coefficients */ for (i = 0; i < sizeof (fir_coeff); i++)