[USRP-users] DC power supply for B210

2021-04-09 Thread brendan . horsfield
Hi All,

I am looking to purchase an external power supply for my USRP B210, but I can’t 
figure out what size connector I should get.  I found an old post where the 
specs were given as outer shell = 5.5mm, pin diameter = 2.1mm, but that was in 
2011 for a USRP1. 

Does anyone know what the latest specs are on the power connector that plugs 
into the B210?

Thanks,

Brendan.
___
USRP-users mailing list -- usrp-users@lists.ettus.com
To unsubscribe send an email to usrp-users-le...@lists.ettus.com


[USRP-users] Re: Enable AGC in USRP E320 with RFNoC using GNURadio

2021-04-09 Thread Maria Muñoz
Hi Julian,

Sorry for the late reply and thanks for the answer.

I have been debugging the configuration printing the entries of "set_agc"
that I have found on cpp/py files in the uhd driver and ettus repositories,
and I can confirm that the code is not getting to the ad9361_device.cpp as
I thought in the beginning.

If I go through the code from my python script to the ad9361_device.cpp
configuration file I see the following:

   - The python scripts calls for ettus.rfnoc_rx_radio.set_agc method,
   which is found in ettus repository (for usrp_source is on gnuradio/uhd lib)


   - The rfnoc_rx_radio class is defined in
   gr-ettus/lib/rfnoc_rx_radio_impl.h, where there is also a pointer to the
   radio_control class defined:


>>
>>
>> *class rfnoc_rx_radio_impl : public rfnoc_rx_radio{public:
>> rfnoc_rx_radio_impl(::uhd::*
>>
>>
>> *rfnoc::noc_block_base::sptr block_ref);~rfnoc_rx_radio_impl();
>> /*** API ***
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>> **/double set_rate(const double rate);void set_antenna(const
>> std::string& antenna, const size_t chan);double set_frequency(const
>> double frequency, const size_t chan);void set_tune_args(const
>> ::uhd::device_addr_t& args, const size_t chan);double set_gain(const
>> double gain, const size_t chan);double set_gain(const double gain,
>> const std::string& name, const size_t chan);void set_agc(const bool
>> enable, const size_t chan);void set_gain_profile(const std::string&
>> profile, const size_t chan);double set_bandwidth(const double
>> bandwidth, const size_t chan);voidset_lo_source(const std::string&
>> source, const std::string& name, const size_t chan);void
>> set_lo_export_enabled(const bool enabled, const std::string& name, const
>> size_t chan);double set_lo_freq(const double freq, const std::string&
>> name, const size_t chan);void set_dc_offset(const bool enable, const
>> size_t chan);void set_dc_offset(const std::complex& offset,
>> const size_t chan);void set_iq_balance(const bool enable, const size_t
>> chan);void set_iq_balance(const std::complex& correction, const
>> size_t chan);private:::uhd::rfnoc::radio_control::*
>> *sptr d_radio_ref;};*
>>
>
   - In gr-ettus/lib/rfnoc_rx_radio_impl.cpp when set_agc command is
   received, it returns a call to the pointer I mention before, and therefore,
   to the radio_control class:

*void rfnoc_rx_radio_impl::set_agc(*
>>
>> *const bool enable, const size_t chan){return
>> d_radio_ref->set_rx_agc(*
>> *enable, chan);}*
>>
>
   - The radio_control class is found in the UHD driver repository in
   uhd/host/include/uhd/rfnoc/radio_control.hpp which is virtually implemented
   as radio_control_impl class in e3xx_radio_control_impl.cpp
   (host/lib/usrp/board/e3xx)
   - This file calls to the ad9361_ctrl class which is implemented in
   e3xx_ad9361_iface.cpp (host/lib/usrp/board/e3xx)
   - At this point, there is a call for the rpc_client where I get kind of
   lost about how to change the registers this way:



>>
>>
>> *void set_agc(const std::string& which, bool
>> enable){_rpcc->request_with_token(this->_rpc_prefix + "set_agc",
>> which, enable);}*
>>
>


To be brief:

   - When debugging I can't see that my code gets to the only configuration
   file I found which is the ad9361_device.cpp
   - The set_agc command seems to be manage through the rpc_client (I think
   this is related to the module peripheral manager which is a "layer of
   control that UHD uses to access, configure and control the hardware",
   https://files.ettus.com/manual/page_mpm.html)
   - Inside the code, in multi_usrp files there is a comment that the
   specific configuration of the AGC is set in the property_tree but I don't
   know how to write the configuration registers of the agc through the
   property_tree.


So my questions here are:

   1. How can I set the configuration registers of the AGC, through the MPM
   or the property tree?
   2. Are there examples on how I can set these registers through the MPM
   or the property_tree?


Kind Regards,

Maria

El mié, 24 mar 2021 a las 11:20, Julian Arnold ()
escribió:

> Maria,
>
> that sounds about right!
> However, to make absolutely sure GNU Radio picks up the modified libuhd
> you could add a print statement somewhere in your UHD code.
> You could also compare your UHD install prefix to the path gr-uhd
> uses for linking libuhd.
>
> Below is the patch I used for my tests:
>
> diff --git a/host/lib/usrp/common/ad9361_driver/ad9361_device.cpp
> b/host/lib/usrp/common/ad9361_driver/ad9361_device.cpp
> index 9e088871d..0e5bc86c5 100644
> --- a/host/lib/usrp/common/ad9361_driver/ad9361_device.cpp
> +++ b/host/lib/usrp/common/ad9361_driver/ad9361_device.cpp
> @@ -1089,7 +1089,7 @@ void ad9361_device_t::_setup_gain_control(bool agc)
>   _io_iface->poke8(0x0FD, 0x4C); // Max Full/LMT Gain Table Index
>  

[USRP-users] Re: DC power supply for B210

2021-04-09 Thread Marcus D Leech
5.5 x 2.1 is still correct. 

Sent from my iPhone

> On Apr 9, 2021, at 7:09 AM, brendan.horsfi...@vectalabs.com wrote:
> 
> 
> Hi All,
> 
> I am looking to purchase an external power supply for my USRP B210, but I 
> can’t figure out what size connector I should get. I found an old post where 
> the specs were given as outer shell = 5.5mm, pin diameter = 2.1mm, but that 
> was in 2011 for a USRP1.
> 
> Does anyone know what the latest specs are on the power connector that plugs 
> into the B210?
> 
> Thanks,
> 
> Brendan.
> 
> 
> ___
> USRP-users mailing list -- usrp-users@lists.ettus.com
> To unsubscribe send an email to usrp-users-le...@lists.ettus.com
___
USRP-users mailing list -- usrp-users@lists.ettus.com
To unsubscribe send an email to usrp-users-le...@lists.ettus.com


[USRP-users] problem swig function

2021-04-09 Thread COURANT Frederique - Contractor via USRP-users
Hello Users,

I have implemented C++ code of custom block. After I have used swig because I 
need to use my C++ functions in my python code generate by GNU Radio 3.8.
I have the following error when I try to run my python code :  AttributeError: 
'module' object had no attribute 'className_swigregister'.

Where I need to develop this function please ? And what does it doing ?

Thanks for your help.

Best regards.

Fred
___
USRP-users mailing list -- usrp-users@lists.ettus.com
To unsubscribe send an email to usrp-users-le...@lists.ettus.com


[USRP-users] is cpld source code for UBX available

2021-04-09 Thread james Thomas
Hi,
is cpld source code for UBX available?
___
USRP-users mailing list -- usrp-users@lists.ettus.com
To unsubscribe send an email to usrp-users-le...@lists.ettus.com


[USRP-users] Re: DC power supply for B210

2021-04-09 Thread Brendan Horsfield
Thanks Marcus.

Regards,
Brendan.


On Fri, Apr 9, 2021 at 9:49 PM Marcus D Leech 
wrote:

> 5.5 x 2.1 is still correct.
>
> Sent from my iPhone
>
> On Apr 9, 2021, at 7:09 AM, brendan.horsfi...@vectalabs.com wrote:
>
> 
>
> Hi All,
>
> I am looking to purchase an external power supply for my USRP B210, but I
> can’t figure out what size connector I should get. I found an old post
> where the specs were given as outer shell = 5.5mm, pin diameter = 2.1mm,
> but that was in 2011 for a USRP1.
>
> Does anyone know what the latest specs are on the power connector that
> plugs into the B210?
>
> Thanks,
>
> Brendan.
>
> ___
> USRP-users mailing list -- usrp-users@lists.ettus.com
> To unsubscribe send an email to usrp-users-le...@lists.ettus.com
>
>
___
USRP-users mailing list -- usrp-users@lists.ettus.com
To unsubscribe send an email to usrp-users-le...@lists.ettus.com


[USRP-users] Re: is cpld source code for UBX available

2021-04-09 Thread Marcus Müller
At this point, it is not. However, it's pretty possible to infer the function 
of the CPLD
from what it's used for and how the UHD host code interacts with it – which 
you'd probably
want to change, unless you're intending to build an identical clone of the UBX 
:)


Should you have a problem with the UBX related to said CPLD, we can definitely 
try to help
you on that!


Best regards,

Marcus Müller

DISCLAIMER: Any attached Code is provided As Is. It has not been tested or 
validated as a product, for use in a deployed application or system, or for use 
in hazardous environments. You assume all risks for use of the Code. Use of the 
Code is subject to terms of the licenses to the UHD or RFNoC code with which 
the Code is used. Standard licenses to UHD and RFNoC can be found at 
https://www.ettus.com/sdr-software/licenses/.

NI will only perform services based on its understanding and condition that the 
goods or services (i) are not for the use in the production or development of 
any item produced, purchased, or ordered by any entity with a footnote 1 
designation in the license requirement column of Supplement No. 4 to Part 744, 
U.S. Export Administration Regulations and (ii) such a company is not a party 
to the transaction.  If our understanding is incorrect, please notify us 
immediately because a specific authorization may be required from the U.S. 
Commerce Department before the transaction may proceed further.

On 09.04.21 15:01, james Thomas wrote:
> Hi,
> is cpld source code for UBX available?
>
> ___
> USRP-users mailing list -- usrp-users@lists.ettus.com
> To unsubscribe send an email to usrp-users-le...@lists.ettus.com
___
USRP-users mailing list -- usrp-users@lists.ettus.com
To unsubscribe send an email to usrp-users-le...@lists.ettus.com


[USRP-users] Re: Enable AGC in USRP E320 with RFNoC using GNURadio

2021-04-09 Thread Julian Arnold
Maria,

the properties you want to change (min/max thresholds) are not exposed via the 
property tree. Only the mode is (slow or fast).
However, the same code that configures the AGC that worked for me on the B210 
should run on the E310. The RPC client should not be involved in that case 
(although I’m not sure about that).

Have you tried applying my patch directly (I had slightly modified register 
values).

Also, could you try running your code directly on the E310 (bypassing 
networked-mode) to see if that makes a difference?

Cheers,
Julian


Julian Arnold, M.Sc

> Am 09.04.2021 um 09:48 schrieb Maria Muñoz :
> 
> 
> Hi Julian,
> 
> Sorry for the late reply and thanks for the answer.
> 
> I have been debugging the configuration printing the entries of "set_agc" 
> that I have found on cpp/py files in the uhd driver and ettus repositories, 
> and I can confirm that the code is not getting to the ad9361_device.cpp as I 
> thought in the beginning.
> 
> If I go through the code from my python script to the ad9361_device.cpp 
> configuration file I see the following:
> The python scripts calls for ettus.rfnoc_rx_radio.set_agc method, which is 
> found in ettus repository (for usrp_source is on gnuradio/uhd lib)
> The rfnoc_rx_radio class is defined in gr-ettus/lib/rfnoc_rx_radio_impl.h, 
> where there is also a pointer to the radio_control class defined:
>>> class rfnoc_rx_radio_impl : public rfnoc_rx_radio
>>> {
>>> public:
>>> rfnoc_rx_radio_impl(::uhd::rfnoc::noc_block_base::sptr block_ref);
>>> ~rfnoc_rx_radio_impl();
>>> 
>>> /*** API 
>>> */
>>> double set_rate(const double rate);
>>> void set_antenna(const std::string& antenna, const size_t chan);
>>> double set_frequency(const double frequency, const size_t chan);
>>> void set_tune_args(const ::uhd::device_addr_t& args, const size_t chan);
>>> double set_gain(const double gain, const size_t chan);
>>> double set_gain(const double gain, const std::string& name, const 
>>> size_t chan);
>>> void set_agc(const bool enable, const size_t chan);
>>> void set_gain_profile(const std::string& profile, const size_t chan);
>>> double set_bandwidth(const double bandwidth, const size_t chan);
>>> void
>>> set_lo_source(const std::string& source, const std::string& name, const 
>>> size_t chan);
>>> void
>>> set_lo_export_enabled(const bool enabled, const std::string& name, 
>>> const size_t chan);
>>> double set_lo_freq(const double freq, const std::string& name, const 
>>> size_t chan);
>>> void set_dc_offset(const bool enable, const size_t chan);
>>> void set_dc_offset(const std::complex& offset, const size_t 
>>> chan);
>>> void set_iq_balance(const bool enable, const size_t chan);
>>> void set_iq_balance(const std::complex& correction, const 
>>> size_t chan);
>>> 
>>> private:
>>> ::uhd::rfnoc::radio_control::sptr d_radio_ref;
>>> };
> In gr-ettus/lib/rfnoc_rx_radio_impl.cpp when set_agc command is received, it 
> returns a call to the pointer I mention before, and therefore, to the 
> radio_control class:
>>> void rfnoc_rx_radio_impl::set_agc(const bool enable, const size_t chan)
>>> {
>>> return d_radio_ref->set_rx_agc(enable, chan);
>>> }
> 
> The radio_control class is found in the UHD driver repository in 
> uhd/host/include/uhd/rfnoc/radio_control.hpp which is virtually implemented 
> as radio_control_impl class in e3xx_radio_control_impl.cpp 
> (host/lib/usrp/board/e3xx)
> This file calls to the ad9361_ctrl class which is implemented in 
> e3xx_ad9361_iface.cpp (host/lib/usrp/board/e3xx)
> At this point, there is a call for the rpc_client where I get kind of lost 
> about how to change the registers this way:
> 
>>> void set_agc(const std::string& which, bool enable)
>>> {
>>> _rpcc->request_with_token(this->_rpc_prefix + "set_agc", which, 
>>> enable);
>>> }
> 
>  
> 
> To be brief: 
> When debugging I can't see that my code gets to the only configuration file I 
> found which is the ad9361_device.cpp
> The set_agc command seems to be manage through the rpc_client (I think this 
> is related to the module peripheral manager which is a "layer of control that 
> UHD uses to access, configure and control the hardware", 
> https://files.ettus.com/manual/page_mpm.html) 
> Inside the code, in multi_usrp files there is a comment that the specific 
> configuration of the AGC is set in the property_tree but I don't know how to 
> write the configuration registers of the agc through the property_tree.
> 
> So my questions here are:
> How can I set the configuration registers of the AGC, through the MPM or the 
> property tree?
> Are there examples on how I can set these registers through the MPM or the 
> property_tree? 
> 
> Kind Regards,
> 
> Maria
> 
>> El mié, 24 mar 2021 a las 11:20, Julian Arnold () 
>> escribió:
>> Maria,
>> 
>> that sounds about right!
>> However, to make absolutely sure GNU Ra

[USRP-users] Reading metadata at host side and context configuration in passthrough mode.

2021-04-09 Thread jcasallas2019
Hello all,

I plan to add metadata in our custom RFNoC block, reading the RFNoC 
specification I noticed that the rx_streamer and tx_streamer handles metadata. 
my questions are:

1. Is this the same metadata specified in the context CHDR messages? if it is 
not, how can we read at the host side, the metadata added in the rfnoc block?

2. In the rfnoc block **gain** example shown in the video **RFNoC 4 
Whorkshop**, the context data was passthrough, I would like to know for that 
particular case how the context header was configured and what would be its 
default configuration?. I wonder if it was configured based on its yaml 
description file.

Thank you.
___
USRP-users mailing list -- usrp-users@lists.ettus.com
To unsubscribe send an email to usrp-users-le...@lists.ettus.com