Commit Graph

17 Commits

Author SHA1 Message Date
Tom Tsou
c438a5a689 Transceiver52M: Add option to explicitly set GPSDO reference
Before UHD version 3.9.0 on-board GPSDO modules for USRP
devices were automatically enabled if detected. After UHD
version 3.9.0 the UHD behavior changed to require explicit
setting of the reference to enable GPSDO use.

Modify the interfaces to pass 'internal', 'external' and
'gpsdo' reference options from configuration database into
the UHD driver layer. Convert the 'TRX.reference' entry in
the configuration from a boolean value to string.
2016-09-12 06:13:42 -07:00
Thomas Tsou
cf111aaad1 Transceiver52M: Move reference select from compile time to database
Enabling the external reference on UHD devices through the configure
time switch is awkward. Use a database variable "TRX.Reference" with
'0' or '1' value for internal and external references respectively.
Use internal reference is no entry is defined.

Signed-off-by: Thomas Tsou <tom@tsou.cc>

git-svn-id: http://wush.net/svn/range/software/public/openbts/trunk@6754 19bc5d8c-e614-43d4-8b26-e1612bc8e597
2013-10-17 06:19:30 +00:00
Thomas Tsou
2a8f0adbb9 Transceiver52M: Remove support for ancient libusrp versions
Current functionality with these old versions is questionable.
There is no reason to use any version of GNU Radio / libusrp older
than 3.3. Version 3.4.2 is the only recommended version for USRP1
users.

Non-USRP1 users must use UHD driver from Ettus Research.

Signed-off-by: Thomas Tsou <tom@tsou.cc>

git-svn-id: http://wush.net/svn/range/software/public/openbts/trunk@6749 19bc5d8c-e614-43d4-8b26-e1612bc8e597
2013-10-17 06:19:12 +00:00
Thomas Tsou
22bc28edc4 Transceiver52M: Setup dual sample rate transceiver
This patch applies oversampling, when selected with 4 sps,
to the downlink only, while running the receiver with
minimal sampling at 1 sps. These split sample rates allow
us to run a highly accurate downlink signal with minimal
distortion, while keeping receive path channel filtering
on the FPGA.

Without this patch, we oversample the receive path and
require a steep receive filter to get similar adjacent
channel suppression as the FPGA halfband / CIC filter
combination, which comes with a high computational cost.

Signed-off-by: Thomas Tsou <tom@tsou.cc>

git-svn-id: http://wush.net/svn/range/software/public/openbts/trunk@6747 19bc5d8c-e614-43d4-8b26-e1612bc8e597
2013-10-17 06:19:05 +00:00
Thomas Tsou
0e0c81de63 Transceiver52M: Set resampling option automatically based on device
Remove the built time resampling selection and link both options.
Move the normal push/pullBuffer() calls back to the base class and
overload them in the inherited resampling class.

USRP2/N2xx devices are the only devices that require resampling so
return that resampling is necessary on the device open(), which is
the point at which the device type will be known.

The GSM transceiver only operates at a whole number multiple of
the GSM rate and doesn't care about the actual device rate and
if resampling is used. Therefore GSM specific portion of the
transceiver should only need to submit the samples-per-symbol
value to the device interface.

Then, the device should be able to determine the appropriate
sample rate (400 ksps or 270.833 ksps) and if resampling is
appropriate.

Signed-off-by: Thomas Tsou <tom@tsou.cc>

git-svn-id: http://wush.net/svn/range/software/public/openbts/trunk@6723 19bc5d8c-e614-43d4-8b26-e1612bc8e597
2013-10-17 06:17:35 +00:00
Thomas Tsou
c804babe1d Transceiver52M: UHD: Setup option to pass arguments from command line
UHD accepts optional 'args' that can be used for device descriptions
such as IP address, device type, etc. Allow these to be passed in on
the transceiver command line as the third argument (number of supported
carriers is the second argument). This option benefits those who may
have multiple UHD devices attached to a single system.

This option is not yet supported by GSM core and requires starting the
transceiver independently on the command line. This option has no
effect when USRP1 is used.

Signed-off-by: Thomas Tsou <tom@tsou.cc>

git-svn-id: http://wush.net/svn/range/software/public/openbts/trunk@4315 19bc5d8c-e614-43d4-8b26-e1612bc8e597
2012-10-22 00:07:14 +00:00
Thomas Tsou
4aeadf0706 transceiver, usrp1: fix transmit gain setting bug
Transmit gain setting would deceptively set the receive
gain instead. Since transmit attenuation is a combination
of RF gain and digital scaling, this major copy/paste bug
may have gone unnoticed by many users.

Reported-by: Robin Coxe <coxe@close-haul.com>
Signed-off-by: Thomas Tsou <ttsou@vt.edu>

git-svn-id: http://wush.net/svn/range/software/public/openbts/trunk@3309 19bc5d8c-e614-43d4-8b26-e1612bc8e597
2012-03-13 04:05:30 +00:00
Kurtis Heimerl
a456e9d968 transceiver52M: bump critial errors to ALERT level
Device errors regarding properties such as sample
rate or frequency tuning are almost always fatal and
lead to the common error "assuming TRX is dead".
Make sure that these errors are clearly presented to
the user.

Signed-off-by: Thomas Tsou <ttsou@vt.edu>

git-svn-id: http://wush.net/svn/range/software/public/openbts/trunk@2700 19bc5d8c-e614-43d4-8b26-e1612bc8e597
2011-11-28 06:26:08 +00:00
Kurtis Heimerl
1c6d6b90ba transceiver: usrp1: select single dboard use at compile time
The following option selects single daughterboard use on
side A only. Otherwise, the default setting is TX on A and
Rx on B.

  ./configure --with-singledb

Other options are possible, as per the following enum, but
for simplicity with configure options, there are only two
choices.

  enum dboardConfigType {
    TXA_RXB,
    TXB_RXA,
    TXA_RXA,
    TXB_RXB
  };

Signed-off-by: Thomas Tsou <ttsou@vt.edu>

git-svn-id: http://wush.net/svn/range/software/public/openbts/trunk@2687 19bc5d8c-e614-43d4-8b26-e1612bc8e597
2011-11-26 03:19:22 +00:00
Kurtis Heimerl
c639bffd06 transceiver: update to log messages to work with P2.8
Log level changes in P2.8:

    ERROR     -> ERR
    WARN      -> WARNING
    DEEPDEBUG -> DEBUG

Signed-off-by: Thomas Tsou <ttsou@vt.edu>

git-svn-id: http://wush.net/svn/range/software/public/openbts/trunk@2683 19bc5d8c-e614-43d4-8b26-e1612bc8e597
2011-11-26 03:19:11 +00:00
Kurtis Heimerl
4ad3c3c91e usrp1: fix transmit side tuning bug
Transmit tuning was primarily setup for side A only. Some boards
- WBX - would still tune with improper channel arguments, though
receiver performance was disrupted.

Previous testing was primarily with single board on side A only
or dual configuration with side A transmit, so this bug largely
went undetected. Patch tested with RFX and WBX daughterboards
in single and dual configurations sides A and B.

Signed-off-by: Thomas Tsou <ttsou@vt.edu>

git-svn-id: http://wush.net/svn/range/software/public/openbts/trunk@2658 19bc5d8c-e614-43d4-8b26-e1612bc8e597
2011-11-26 03:17:59 +00:00
Kurtis Heimerl
e6daa8b6ed usrp1: fix typo in rx gain setting log message
Signed-off-by: Thomas Tsou <ttsou@vt.edu>

git-svn-id: http://wush.net/svn/range/software/public/openbts/trunk@2657 19bc5d8c-e614-43d4-8b26-e1612bc8e597
2011-11-26 03:17:57 +00:00
Kurtis Heimerl
fb986154e8 uhd: add 52 MHz transceiver support
These are mostly identical changes as added to the non-52MHz
implementation with the exception of sample rate.

Signed-off-by: Thomas Tsou <ttsou@vt.edu>

git-svn-id: http://wush.net/svn/range/software/public/openbts/trunk@2634 19bc5d8c-e614-43d4-8b26-e1612bc8e597
2011-11-26 03:16:54 +00:00
Kurtis Heimerl
e11112bb80 Transceiver52M: add WBX, DBSRX, and single board support
Remove all RFX specific parts and control daughterboard
functionality using the base API. The tuning is now set
to a non-inverted image so remove the I/Q swap as well.

Daughterboard configuration is set through an enum
variable. Currently, there is no auto-configuration and
the default is Tx/RX on sides A/B respectively. For
transceiver boards the receive antenna is set to RX2.

enum dboardConfigType {
  TXA_RXB,
  TXB_RXA,
  TXA_RXA,
  TXB_RXB
};

const dboardConfigType dboardConfig = TXA_RXB;

Signed-off-by: Thomas Tsou <ttsou@vt.edu>

git-svn-id: http://wush.net/svn/range/software/public/openbts/trunk@2632 19bc5d8c-e614-43d4-8b26-e1612bc8e597
2011-11-26 03:16:48 +00:00
Kurtis Heimerl
5ec08819c4 Reverting r2342
git-svn-id: http://wush.net/svn/range/software/public/openbts/trunk@2424 19bc5d8c-e614-43d4-8b26-e1612bc8e597
2011-11-02 00:06:34 +00:00
Harvind Samra
14860a6d58 Updates to working with a single RFX...builds but not working yet.
git-svn-id: http://wush.net/svn/range/software/public/openbts/trunk@2342 19bc5d8c-e614-43d4-8b26-e1612bc8e597
2011-10-14 02:32:19 +00:00
David Burgess
a92b0e1bba Adding in the missing Transceiver52M directory
git-svn-id: http://wush.net/svn/range/software/public/openbts/trunk@2307 19bc5d8c-e614-43d4-8b26-e1612bc8e597
2011-10-12 07:44:40 +00:00