Discussion and technical support related to USRP, UHD, RFNoC
View all threadsTim,
sorry for suggesting this so late: What does this Python script print:
import uhd
print(uhd.get_cal_data_path())
?
On Tue, Apr 8, 2025 at 10:53 AM Tim Vancauwenbergh <
tim.vancauwenbergh13@gmail.com> wrote:
Hello Martin,
thanks for your reply. It would be helpful to know where the driver looks
for the file, but until now I did not find any variable or function to
obtain this location.
FYI, I am using a virtual environment on Ubuntu 24.0.2 LTS with Python
3.12.3.
The following packages related to uhd are installed via apt:
StatusPackage NameVersionArchitectureDescription
ii libgnuradio-uhd3.10.9t64:amd64 3.10.9.2-1.1ubuntu2 amd64 gnuradio
universal hardware driver functions
ii libuhd4.6.0t64:amd64 4.6.0.0+ds1-5.1ubuntu0.24.04.1 amd64 universal
hardware driver for Ettus Research products - library
ii python3-uhd 4.6.0.0+ds1-5.1ubuntu0.24.04.1 amd64 universal hardware
driver for Ettus Research products - Python3
ii soapysdr0.8-module-uhd:amd64 0.4.1-4build4 amd64 UHD device support
for SoapySDR
ii uhd-doc 4.6.0.0+ds1-5.1ubuntu0.24.04.1 all universal hardware driver
for Ettus Research products - doc
ii uhd-host 4.6.0.0+ds1-5.1ubuntu0.24.04.1 amd64 universal hardware
driver for Ettus Research products - host apps
Best regards,
Tim
Op di 8 apr 2025 om 10:14 schreef Martin Braun martin.braun@ettus.com:
Tim,
at first glance, you're doing everything right. Thanks for taking the
time and reading the docs. We'll need to look into this.
I saw you also opened https://github.com/EttusResearch/uhd/issues/842,
that's very helpful. Sorry I can't give you the right answer immediately!
--M
On Thu, Apr 3, 2025 at 11:28 AM Tim Vancauwenbergh <
tim.vancauwenbergh13@gmail.com> wrote:
Hello
I've recently run the uhd_power_cal.py script to calibrate the RX paths
of a B200mini using a calibrated signal generator.
It generated two files, saved at /home/username/.local/share/uhd/cal:
b2xxmini_pwr_rx_rx2_33ECA1A#A.cal
b2xxmini_pwr_rx_tx+rx_33ECA1A#A.cal
Using python, I have the following code:
print(f"RX info: {usrp.get_usrp_rx_info()}")
This returns the following:
RX info: {'mboard_id': 'B200mini', 'mboard_name': 'B200mini', 'mboard_serial': '33ECA1A', 'module_serial': '33ECA1A', 'rx_antenna': 'TX/RX', 'rx_id': 'Unknown (0xffff)', 'rx_ref_power_key': 'b2xxmini_pwr_rx_tx+rx', 'rx_ref_power_serial': '33ECA1A#A', 'rx_serial': '', 'rx_subdev_name': 'FE-RX1', 'rx_subdev_spec': 'A:A'}
Running the following functions return false however.
usrp.has_rx_power_reference()
uhd.usrp.cal.database.has_cal_data('b2xxmini_pwr_rx_tx+rx', '33ECA1A#A'):
Why? How can I use the calibration file in python to obtain estimated
received power level at the RX side in dBm? This is not clear in the
documentation. I would like to do this for the TX side as well.
Thanks!
References:
https://files.ettus.com/manual/classuhd_1_1usrp_1_1multi__usrp.html#a1dadf323c5f00ac4f93b231adc13e34...
https://files.ettus.com/manual/classuhd_1_1usrp_1_1multi__usrp.html#a1dadf323c5f00ac4f93b231adc13e34c
https://files.ettus.com/manual/classuhd_1_1usrp_1_1cal_1_1database.html#a5605b43f778efc10f29cb616afb...
https://files.ettus.com/manual/classuhd_1_1usrp_1_1cal_1_1database.html#a5605b43f778efc10f29cb616afbfb7d9
https://files.ettus.com/manual/page_power.html
USRP-users mailing list -- usrp-users@lists.ettus.com
To unsubscribe send an email to usrp-users-leave@lists.ettus.com
USRP-users mailing list -- usrp-users@lists.ettus.com
To unsubscribe send an email to usrp-users-leave@lists.ettus.com
Hello Martin,
it prints the following: home/username/snap/code/188/.local/share/uhd/cal
That folder does not exist, the deepest path I can go is
home/username/snap/code/188/.local/share/
I manually created the folders uhd/cal and pasted the calibration files
there. Now the function usrp.has_rx_power_reference() returns True. I'll
investigate further.
Tim
Op wo 9 apr 2025 om 09:02 schreef Martin Braun martin.braun@ettus.com:
Tim,
sorry for suggesting this so late: What does this Python script print:
import uhd
print(uhd.get_cal_data_path())
?
On Tue, Apr 8, 2025 at 10:53 AM Tim Vancauwenbergh <
tim.vancauwenbergh13@gmail.com> wrote:
Hello Martin,
thanks for your reply. It would be helpful to know where the driver looks
for the file, but until now I did not find any variable or function to
obtain this location.
FYI, I am using a virtual environment on Ubuntu 24.0.2 LTS with Python
3.12.3.
The following packages related to uhd are installed via apt:
StatusPackage NameVersionArchitectureDescription
ii libgnuradio-uhd3.10.9t64:amd64 3.10.9.2-1.1ubuntu2 amd64 gnuradio
universal hardware driver functions
ii libuhd4.6.0t64:amd64 4.6.0.0+ds1-5.1ubuntu0.24.04.1 amd64 universal
hardware driver for Ettus Research products - library
ii python3-uhd 4.6.0.0+ds1-5.1ubuntu0.24.04.1 amd64 universal hardware
driver for Ettus Research products - Python3
ii soapysdr0.8-module-uhd:amd64 0.4.1-4build4 amd64 UHD device support
for SoapySDR
ii uhd-doc 4.6.0.0+ds1-5.1ubuntu0.24.04.1 all universal hardware driver
for Ettus Research products - doc
ii uhd-host 4.6.0.0+ds1-5.1ubuntu0.24.04.1 amd64 universal hardware
driver for Ettus Research products - host apps
Best regards,
Tim
Op di 8 apr 2025 om 10:14 schreef Martin Braun martin.braun@ettus.com:
Tim,
at first glance, you're doing everything right. Thanks for taking the
time and reading the docs. We'll need to look into this.
I saw you also opened https://github.com/EttusResearch/uhd/issues/842,
that's very helpful. Sorry I can't give you the right answer immediately!
--M
On Thu, Apr 3, 2025 at 11:28 AM Tim Vancauwenbergh <
tim.vancauwenbergh13@gmail.com> wrote:
Hello
I've recently run the uhd_power_cal.py script to calibrate the RX paths
of a B200mini using a calibrated signal generator.
It generated two files, saved at /home/username/.local/share/uhd/cal:
b2xxmini_pwr_rx_rx2_33ECA1A#A.cal
b2xxmini_pwr_rx_tx+rx_33ECA1A#A.cal
Using python, I have the following code:
print(f"RX info: {usrp.get_usrp_rx_info()}")
This returns the following:
RX info: {'mboard_id': 'B200mini', 'mboard_name': 'B200mini', 'mboard_serial': '33ECA1A', 'module_serial': '33ECA1A', 'rx_antenna': 'TX/RX', 'rx_id': 'Unknown (0xffff)', 'rx_ref_power_key': 'b2xxmini_pwr_rx_tx+rx', 'rx_ref_power_serial': '33ECA1A#A', 'rx_serial': '', 'rx_subdev_name': 'FE-RX1', 'rx_subdev_spec': 'A:A'}
Running the following functions return false however.
usrp.has_rx_power_reference()
uhd.usrp.cal.database.has_cal_data('b2xxmini_pwr_rx_tx+rx', '33ECA1A#A'):
Why? How can I use the calibration file in python to obtain estimated
received power level at the RX side in dBm? This is not clear in the
documentation. I would like to do this for the TX side as well.
Thanks!
References:
https://files.ettus.com/manual/classuhd_1_1usrp_1_1multi__usrp.html#a1dadf323c5f00ac4f93b231adc13e34...
https://files.ettus.com/manual/classuhd_1_1usrp_1_1multi__usrp.html#a1dadf323c5f00ac4f93b231adc13e34c
https://files.ettus.com/manual/classuhd_1_1usrp_1_1cal_1_1database.html#a5605b43f778efc10f29cb616afb...
https://files.ettus.com/manual/classuhd_1_1usrp_1_1cal_1_1database.html#a5605b43f778efc10f29cb616afbfb7d9
https://files.ettus.com/manual/page_power.html
USRP-users mailing list -- usrp-users@lists.ettus.com
To unsubscribe send an email to usrp-users-leave@lists.ettus.com
USRP-users mailing list -- usrp-users@lists.ettus.com
To unsubscribe send an email to usrp-users-leave@lists.ettus.com
That was very helpful. So there's a discrepancy between what the cal-tool
thinks the path is (~/.local/...) and what UHD thinks it is
(~/snap/code/188/.local).
I'm also a bit surprised about that UHD path. Did you install UHD via snap?
(If yes, I didn't even know that was possible!). I know you say you
installed via apt, but I'm just baffled why UHD thinks this is the right
path.
There are other path APIs, here is what they look like on a system where I
install UHD, manually, into a random location:
uhd.get_lib_path()
'/home/mbr0wn/prefix/master/lib'
uhd.get_pkg_data_path()
'/home/mbr0wn/prefix/master/share/uhd'
uhd.get_cal_data_path()
'/home/mbr0wn/.local/share/uhd/cal'
The first (get_lib_path()) is the path where the libuhd.so file is located.
Is that the case for you?
You can see even there, the cal files are, by default, searched for in
~/.local/share/uhd/cal.
--M
On Thu, Apr 10, 2025 at 10:13 AM Tim Vancauwenbergh <
tim.vancauwenbergh13@gmail.com> wrote:
Hello Martin,
it prints the following: home/username/snap/code/188/.local/share/uhd/cal
That folder does not exist, the deepest path I can go is
home/username/snap/code/188/.local/share/
I manually created the folders uhd/cal and pasted the calibration files
there. Now the function usrp.has_rx_power_reference() returns True. I'll
investigate further.
Tim
Op wo 9 apr 2025 om 09:02 schreef Martin Braun martin.braun@ettus.com:
Tim,
sorry for suggesting this so late: What does this Python script print:
import uhd
print(uhd.get_cal_data_path())
?
On Tue, Apr 8, 2025 at 10:53 AM Tim Vancauwenbergh <
tim.vancauwenbergh13@gmail.com> wrote:
Hello Martin,
thanks for your reply. It would be helpful to know where the driver
looks for the file, but until now I did not find any variable or function
to obtain this location.
FYI, I am using a virtual environment on Ubuntu 24.0.2 LTS with Python
3.12.3.
The following packages related to uhd are installed via apt:
StatusPackage NameVersionArchitectureDescription
ii libgnuradio-uhd3.10.9t64:amd64 3.10.9.2-1.1ubuntu2 amd64 gnuradio
universal hardware driver functions
ii libuhd4.6.0t64:amd64 4.6.0.0+ds1-5.1ubuntu0.24.04.1 amd64 universal
hardware driver for Ettus Research products - library
ii python3-uhd 4.6.0.0+ds1-5.1ubuntu0.24.04.1 amd64 universal hardware
driver for Ettus Research products - Python3
ii soapysdr0.8-module-uhd:amd64 0.4.1-4build4 amd64 UHD device support
for SoapySDR
ii uhd-doc 4.6.0.0+ds1-5.1ubuntu0.24.04.1 all universal hardware driver
for Ettus Research products - doc
ii uhd-host 4.6.0.0+ds1-5.1ubuntu0.24.04.1 amd64 universal hardware
driver for Ettus Research products - host apps
Best regards,
Tim
Op di 8 apr 2025 om 10:14 schreef Martin Braun martin.braun@ettus.com:
Tim,
at first glance, you're doing everything right. Thanks for taking the
time and reading the docs. We'll need to look into this.
I saw you also opened https://github.com/EttusResearch/uhd/issues/842,
that's very helpful. Sorry I can't give you the right answer immediately!
--M
On Thu, Apr 3, 2025 at 11:28 AM Tim Vancauwenbergh <
tim.vancauwenbergh13@gmail.com> wrote:
Hello
I've recently run the uhd_power_cal.py script to calibrate the RX
paths of a B200mini using a calibrated signal generator.
It generated two files, saved at /home/username/.local/share/uhd/cal:
b2xxmini_pwr_rx_rx2_33ECA1A#A.cal
b2xxmini_pwr_rx_tx+rx_33ECA1A#A.cal
Using python, I have the following code:
print(f"RX info: {usrp.get_usrp_rx_info()}")
This returns the following:
RX info: {'mboard_id': 'B200mini', 'mboard_name': 'B200mini', 'mboard_serial': '33ECA1A', 'module_serial': '33ECA1A', 'rx_antenna': 'TX/RX', 'rx_id': 'Unknown (0xffff)', 'rx_ref_power_key': 'b2xxmini_pwr_rx_tx+rx', 'rx_ref_power_serial': '33ECA1A#A', 'rx_serial': '', 'rx_subdev_name': 'FE-RX1', 'rx_subdev_spec': 'A:A'}
Running the following functions return false however.
usrp.has_rx_power_reference()
uhd.usrp.cal.database.has_cal_data('b2xxmini_pwr_rx_tx+rx', '33ECA1A#A'):
Why? How can I use the calibration file in python to obtain
estimated received power level at the RX side in dBm? This is not
clear in the documentation. I would like to do this for the TX side as well.
Thanks!
References:
https://files.ettus.com/manual/classuhd_1_1usrp_1_1multi__usrp.html#a1dadf323c5f00ac4f93b231adc13e34...
https://files.ettus.com/manual/classuhd_1_1usrp_1_1multi__usrp.html#a1dadf323c5f00ac4f93b231adc13e34c
https://files.ettus.com/manual/classuhd_1_1usrp_1_1cal_1_1database.html#a5605b43f778efc10f29cb616afb...
https://files.ettus.com/manual/classuhd_1_1usrp_1_1cal_1_1database.html#a5605b43f778efc10f29cb616afbfb7d9
https://files.ettus.com/manual/page_power.html
USRP-users mailing list -- usrp-users@lists.ettus.com
To unsubscribe send an email to usrp-users-leave@lists.ettus.com
USRP-users mailing list -- usrp-users@lists.ettus.com
To unsubscribe send an email to usrp-users-leave@lists.ettus.com