aboutsummaryrefslogtreecommitdiffstats
path: root/Transceiver52M/runTransceiver.cpp
diff options
context:
space:
mode:
authorThomas Tsou <tom@tsou.cc>2012-12-25 14:20:22 +0100
committerAlexander Chemeris <Alexander.Chemeris@gmail.com>2013-06-24 01:45:04 +0400
commit82ede3e810ee9cc070ed25857771810eeff7785a (patch)
treef7f856816c8316dcf3f1389d42a8e4ee7a247805 /Transceiver52M/runTransceiver.cpp
parentd734e2d63485b260235c7694622f671b78dbbe6d (diff)
Transceiver52M: add antenna selection from configuration
Set optional transmit and receive antennas from database configuration file. Use default antenna values on empty string or if option does not exist. Signed-off-by: Thomas Tsou <tom@tsou.cc>
Diffstat (limited to 'Transceiver52M/runTransceiver.cpp')
-rw-r--r--Transceiver52M/runTransceiver.cpp15
1 files changed, 15 insertions, 0 deletions
diff --git a/Transceiver52M/runTransceiver.cpp b/Transceiver52M/runTransceiver.cpp
index 33ab434..8e0794c 100644
--- a/Transceiver52M/runTransceiver.cpp
+++ b/Transceiver52M/runTransceiver.cpp
@@ -58,6 +58,7 @@ static void ctrlCHandler(int signo)
int main(int argc, char *argv[])
{
std::string deviceArgs;
+ std::string txAntenna, rxAntenna;
if (argc == 3)
{
@@ -95,9 +96,23 @@ int main(int argc, char *argv[])
return EXIT_FAILURE;
}
+ if (gConfig.defines("GSM.Radio.TxAntenna"))
+ txAntenna = gConfig.getStr("GSM.Radio.TxAntenna").c_str();
+ if (gConfig.defines("GSM.Radio.RxAntenna"))
+ rxAntenna = gConfig.getStr("GSM.Radio.RxAntenna").c_str();
+
+ if (txAntenna != "")
+ usrp->setTxAntenna(txAntenna);
+ if (rxAntenna != "")
+ usrp->setRxAntenna(rxAntenna);
+
+ LOG(INFO) << "transceiver using transmit antenna " << usrp->getRxAntenna();
+ LOG(INFO) << "transceiver using receive antenna " << usrp->getTxAntenna();
+
RadioInterface* radio = new RadioInterface(usrp,3,SAMPSPERSYM,mOversamplingRate,false);
Transceiver *trx = new Transceiver(gConfig.getNum("TRX.Port"),gConfig.getStr("TRX.IP").c_str(),SAMPSPERSYM,GSM::Time(3,0),radio);
trx->receiveFIFO(radio->receiveFIFO());
+
/*
signalVector *gsmPulse = generateGSMPulse(2,1);
BitVector normalBurstSeg = "0000101010100111110010101010010110101110011000111001101010000";