diff options
-rw-r--r-- | host/docs/usrp_e3xx.dox | 31 | ||||
-rw-r--r-- | mpm/python/usrp_mpm/dboard_manager/e31x_db.py | 9 | ||||
-rw-r--r-- | mpm/python/usrp_mpm/dboard_manager/neon.py | 17 |
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 |