diff options
-rw-r--r-- | dpd/README.md | 6 | ||||
-rw-r--r-- | dpd/dpd.ini | 4 | ||||
-rw-r--r-- | src/OutputUHD.cpp | 3 |
3 files changed, 9 insertions, 4 deletions
diff --git a/dpd/README.md b/dpd/README.md index 96c4fb0..ec7cec2 100644 --- a/dpd/README.md +++ b/dpd/README.md @@ -8,11 +8,13 @@ This folder contains work in progress for digital predistortion. It requires: - A feedback connection from the power amplifier output, at an appropriate power level for the B200. Usually this is done with a directional coupler. - ODR-DabMod with enabled dpd_port, and with a samplerate of 8192000 samples per second. -- Synchronous=1 so that the USRP has the timestamping set properly. +- Synchronous=1 so that the USRP has the timestamping set properly, internal refclk and pps + are sufficient for this example. +- A live mux source with TIST enabled. See dpd/dpd.ini for an example. TODO ---- -Fix timestamps and test if frame data is valid. +Implement a PA model that updates the predistorter. diff --git a/dpd/dpd.ini b/dpd/dpd.ini index 625df73..910f251 100644 --- a/dpd/dpd.ini +++ b/dpd/dpd.ini @@ -14,7 +14,7 @@ transport=tcp source=localhost:9200 [modulator] -digital_gain=0.9 +digital_gain=0.8 rate=8192000 [firfilter] @@ -34,7 +34,7 @@ pps_source=none behaviour_refclk_lock_lost=ignore max_gps_holdover_time=600 dpd_port=50055 -rxgain=10 +rxgain=0 [delaymanagement] ; Use synchronous=1 so that the USRP time is set. This works diff --git a/src/OutputUHD.cpp b/src/OutputUHD.cpp index 1a137d3..c2f985b 100644 --- a/src/OutputUHD.cpp +++ b/src/OutputUHD.cpp @@ -298,6 +298,9 @@ OutputUHD::OutputUHD( SetDelayBuffer(myConf.dabMode); + myUsrp->set_rx_rate(myConf.sampleRate); + MDEBUG("OutputUHD:Actual RX Rate: %f sps...\n", myUsrp->get_rx_rate()); + myUsrp->set_rx_antenna("RX2"); MDEBUG("OutputUHD:Set RX Antenna: %s ...\n", myUsrp->get_rx_antenna().c_str()); |