aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Transceiver52M/Transceiver.cpp2
-rw-r--r--Transceiver52M/radioInterface.cpp7
2 files changed, 4 insertions, 5 deletions
diff --git a/Transceiver52M/Transceiver.cpp b/Transceiver52M/Transceiver.cpp
index 07b2777..80e8aca 100644
--- a/Transceiver52M/Transceiver.cpp
+++ b/Transceiver52M/Transceiver.cpp
@@ -513,7 +513,7 @@ void Transceiver::driveControl()
sprintf(response,"RSP SETPOWER 1 %d",dbPwr);
else {
mPower = dbPwr;
- mRadioInterface->setPowerAttenuation(pow(10.0,dbPwr/10.0));
+ mRadioInterface->setPowerAttenuation(dbPwr);
sprintf(response,"RSP SETPOWER 0 %d",dbPwr);
}
}
diff --git a/Transceiver52M/radioInterface.cpp b/Transceiver52M/radioInterface.cpp
index e8eea6f..7e51fa4 100644
--- a/Transceiver52M/radioInterface.cpp
+++ b/Transceiver52M/radioInterface.cpp
@@ -101,15 +101,14 @@ double RadioInterface::fullScaleOutputValue(void) {
}
-void RadioInterface::setPowerAttenuation(double dBAtten)
+void RadioInterface::setPowerAttenuation(double atten)
{
double HWatten = mRadio->setTxGain(mRadio->maxTxGain() - atten);
- atten -= (-HWatten);
+ atten -= HWatten;
if (atten < 1.0)
powerScaling = 1.0;
else
- powerScaling = 1.0/sqrt(linearAtten);
- LOG(INFO) << "setting HW gain to " << HWdBAtten << " and power scaling to " << powerScaling;
+ powerScaling = 1.0 / sqrt(pow(10, (atten / 10.0)));
}