aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--host/docs/usrp_e3xx.dox31
-rw-r--r--mpm/python/usrp_mpm/dboard_manager/e31x_db.py9
-rw-r--r--mpm/python/usrp_mpm/dboard_manager/neon.py17
3 files changed, 37 insertions, 20 deletions
diff --git a/host/docs/usrp_e3xx.dox b/host/docs/usrp_e3xx.dox
index b51a31ab6..f13708925 100644
--- a/host/docs/usrp_e3xx.dox
+++ b/host/docs/usrp_e3xx.dox
@@ -549,9 +549,7 @@ For a list of which arguments can be passed into make(), see Section
\subsection e3xx_usage_sensors The sensor API
-\subsubsection e310_sensors E31X Sensors
-
-Like other USRPs, the E310 series has RF and motherboard sensors.
+Like other USRPs, the E3x0 series has RF and motherboard sensors.
When using uhd::usrp::multi_usrp, the following API calls are relevant to
interact with the sensor API:
@@ -562,24 +560,22 @@ interact with the sensor API:
- uhd::usrp::multi_usrp::get_tx_sensor()
- uhd::usrp::multi_usrp::get_rx_sensor()
+\subsubsection e310_sensors E31X Sensors
+
The following motherboard sensors are always available:
- `temp_fpga`: temperature (in Celsius) of the FPGA die
- `temp_mb`: temperature (in Celsius) of the motherboard
- `ref_locked`: This will check that all the daughter boards have locked to the
reference clock.
-\subsubsection e320_sensors E320 Sensors
-
-Like other USRPs, the E320 series has RF and motherboard sensors.
-When using uhd::usrp::multi_usrp, the following API calls are relevant to
-interact with the sensor API:
+The following daughterboard sensors are always available:
+- `lo_locked`: Boolean sensor value to check if the AD9361 LO has locked to its
+ reference
+- `lo_lock`: Alias to `lo_locked` (for backward compatibility reasons)
+- `ad9361_temperature`: Temperature sensor of the RFIC die
+- `rssi`: RSSI value as returned from the AD9361 (RX only)
-- uhd::usrp::multi_usrp::get_mboard_sensor_names()
-- uhd::usrp::multi_usrp::get_mboard_sensor()
-- uhd::usrp::multi_usrp::get_tx_sensor_names()
-- uhd::usrp::multi_usrp::get_rx_sensor_names()
-- uhd::usrp::multi_usrp::get_tx_sensor()
-- uhd::usrp::multi_usrp::get_rx_sensor()
+\subsubsection e320_sensors E320 Sensors
The following motherboard sensors are always available:
- `temp_internal`: temperature (in Celsius) of Temperature Sensor on board
@@ -595,6 +591,13 @@ The following motherboard sensors are always available:
external/internal reference clock.
- `fan`: get fan speed (in rpm)
+The following daughterboard sensors are always available:
+- `lo_locked`: Boolean sensor value to check if the AD9361 LO has locked to its
+ reference
+- `lo_lock`: Alias to `lo_locked` (for backward compatibility reasons)
+- `ad9361_temperature`: Temperature sensor of the RFIC die
+- `rssi`: RSSI value as returned from the AD9361 (RX only)
+
\section e3xx_rasm Remote Management
\subsection e3xx_rasm_mender Mender: Remote update capability
diff --git a/mpm/python/usrp_mpm/dboard_manager/e31x_db.py b/mpm/python/usrp_mpm/dboard_manager/e31x_db.py
index 8c38fa652..861264e88 100644
--- a/mpm/python/usrp_mpm/dboard_manager/e31x_db.py
+++ b/mpm/python/usrp_mpm/dboard_manager/e31x_db.py
@@ -34,10 +34,17 @@ class E31x_db(DboardManagerBase):
rx_sensor_callback_map = {
'ad9361_temperature': 'get_catalina_temp_sensor',
'rssi' : 'get_rssi_sensor',
+ # For backward compatibility reasons we have the same sensor with two
+ # different names
'lo_lock' : 'get_lo_lock_sensor',
+ 'lo_locked' : 'get_lo_lock_sensor',
}
tx_sensor_callback_map = {
'ad9361_temperature': 'get_catalina_temp_sensor',
+ # For backward compatibility reasons we have the same sensor with two
+ # different names
+ 'lo_lock' : 'get_lo_lock_sensor',
+ 'lo_locked' : 'get_lo_lock_sensor',
}
# Maps the chipselects to the corresponding devices:
spi_chipselect = {"catalina": 0}
@@ -154,7 +161,7 @@ class E31x_db(DboardManagerBase):
MboardRegsControl(self.mboard_regs_label, self.log)
if which == "tx":
return mboard_regs_control.get_ad9361_tx_lo_lock()
- elif which == "rx":
+ if which == "rx":
return mboard_regs_control.get_ad9361_rx_lo_lock()
self.log.warning("get_ad9361_lo_lock(): Invalid which param `{}'"
.format(which))
diff --git a/mpm/python/usrp_mpm/dboard_manager/neon.py b/mpm/python/usrp_mpm/dboard_manager/neon.py
index 7f9abd5ce..88839bd06 100644
--- a/mpm/python/usrp_mpm/dboard_manager/neon.py
+++ b/mpm/python/usrp_mpm/dboard_manager/neon.py
@@ -36,10 +36,17 @@ class Neon(DboardManagerBase):
rx_sensor_callback_map = {
'ad9361_temperature': 'get_catalina_temp_sensor',
'rssi' : 'get_rssi_sensor',
+ # For backward compatibility reasons we have the same sensor with two
+ # different names
'lo_lock' : 'get_lo_lock_sensor',
+ 'lo_locked' : 'get_lo_lock_sensor',
}
tx_sensor_callback_map = {
'ad9361_temperature': 'get_catalina_temp_sensor',
+ # For backward compatibility reasons we have the same sensor with two
+ # different names
+ 'lo_lock' : 'get_lo_lock_sensor',
+ 'lo_locked' : 'get_lo_lock_sensor',
}
# Maps the chipselects to the corresponding devices:
spi_chipselect = {"catalina": 0,
@@ -266,13 +273,13 @@ class Neon(DboardManagerBase):
Return LO lock status (Boolean!) of AD9361. 'which' must be
either 'tx' or 'rx'
"""
- self.mboard_regs_label = "mboard-regs"
- self.mboard_regs_control = MboardRegsControl(
- self.mboard_regs_label, self.log)
+ mboard_regs_label = "mboard-regs"
+ mboard_regs_control = MboardRegsControl(
+ mboard_regs_label, self.log)
if which == "tx":
- locked = self. mboard_regs_control.get_ad9361_tx_lo_lock()
+ locked = mboard_regs_control.get_ad9361_tx_lo_lock()
elif which == "rx":
- locked = self. mboard_regs_control.get_ad9361_rx_lo_lock()
+ locked = mboard_regs_control.get_ad9361_rx_lo_lock()
else:
locked = False
return locked