diff options
author | Thomas Tsou <tom@tsou.cc> | 2013-04-26 15:21:51 -0400 |
---|---|---|
committer | Alexander Chemeris <Alexander.Chemeris@gmail.com> | 2013-06-24 01:46:34 +0400 |
commit | 20bc24d3678263a2c2ac0b9f76470f1f85cf003d (patch) | |
tree | e62598f7fcfb87700be447bc739ebcdd925d2c41 | |
parent | 59796e1e3e0660032ecf35d3042d8148df27b336 (diff) |
Transceiver52M: Add UmTRX support
-rw-r--r-- | Transceiver52M/UHDDevice.cpp | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/Transceiver52M/UHDDevice.cpp b/Transceiver52M/UHDDevice.cpp index 10c6f9c..7b48cff 100644 --- a/Transceiver52M/UHDDevice.cpp +++ b/Transceiver52M/UHDDevice.cpp @@ -35,7 +35,6 @@ #define NUM_TX_CHANS 2 #define TX_CHAN_OFFSET 2e6 #define B100_CLK_RT 52e6 -#define B100_BASE_RT GSMRATE #define USRP2_BASE_RT 400e3 #define TX_AMPL 0.3; #define SAMPLE_BUF_SZ (1 << 20) @@ -44,6 +43,7 @@ enum uhd_dev_type { USRP1, USRP2, B100, + UMTRX, NUM_USRP_TYPES, }; @@ -75,6 +75,9 @@ static struct uhd_dev_offset uhd_offsets[NUM_USRP_TYPES * 3] = { { B100, 1, 9.4778e-5 }, { B100, 2, 5.1100e-5 }, { B100, 4, 2.9418e-5 }, + { UMTRX, 1, 0.0 }, + { UMTRX, 2, 0.0 }, + { UMTRX, 4, 0.0 }, }; static double get_dev_offset(enum uhd_dev_type type, int sps) @@ -112,7 +115,8 @@ static double select_rate(uhd_dev_type type, int sps) return USRP2_BASE_RT * sps; break; case B100: - return B100_BASE_RT * sps; + case UmTRX: + return GSMRATE * sps; break; } @@ -495,7 +499,7 @@ bool uhd_device::parse_dev_type() { std::string mboard_str, dev_str; uhd::property_tree::sptr prop_tree; - size_t usrp1_str, usrp2_str, b100_str; + size_t usrp1_str, usrp2_str, b100_str, umtrx_str; prop_tree = usrp_dev->get_device()->get_tree(); dev_str = prop_tree->access<std::string>("/name").get(); @@ -504,6 +508,7 @@ bool uhd_device::parse_dev_type() usrp1_str = dev_str.find("USRP1"); usrp2_str = dev_str.find("USRP2"); b100_str = mboard_str.find("B100"); + umtrx_str = mboard_str.find("UmTRX"); if (usrp1_str != std::string::npos) { LOG(ALERT) << "USRP1 is not supported using the UHD driver"; @@ -520,6 +525,8 @@ bool uhd_device::parse_dev_type() return true; } else if (usrp2_str != std::string::npos) { dev_type = USRP2; + } else if (umtrx_str != std::string::npos) { + dev_type = UMTRX; } else { LOG(ALERT) << "Unknown UHD device type"; return false; |