On 03/28/2018 05:59 PM, Ahmed Hamza wrote:
Thanks Marcus and Julian for your responses.
The signal is not narrowband. It is 6 MHz bandwidth, please see the
attached snapshot from the GNU radio spectrum analyzer.
Also, the signal is continuous without gaps. The unique thing about
the signal is that it include contents on and surrounding the DC
subcarrier. This is why I disabled the BB DC offset tracking. Is there
any relation between DC offset tracking and AGC?
Another note, is that when AGC is disabled, although the transmitted
signal has almost constant amplitude, the received signal amplitude
changes in a consistent pattern as shown in the attached images.
I would like to use HW AGC because I think to track channel variations
(due to Doppler and other factors), I need fast AGC, and I think the
one on the Ad9364 is suitable for this task, please correct me if I am
wrong.
Thanks again,
Best Regards,
Ahmed
So, looking at your plots, I realize that, unless you're using SC12 wire
format, you're several bits below ADC saturation, since the DSP
framework scales
the ADC results into the SC16 default wire format.
On Wed, Mar 28, 2018 at 4:33 PM, Julian Arnold <jul...@elitecoding.org
<mailto:jul...@elitecoding.org>> wrote:
Hey,
> Is your signal very narrowband?
Also, keep in mind, that the AGC defaults to the 'slow' mode when
enabled.
This mode is intended for signals like FM broadcast. So if your
signal is coming in bursts, the AGC won't be able to handle it
properly.
Cheers,
Julian
Marcus D. Leech via USRP-users schrieb am 28.03.2018 22:16:
> On 03/28/2018 01:50 PM, Ahmed Hamza wrote:
>
>>
>> Hi Marcus,
>>
>>
>> Thank you for your prompt response.
>>
>>
>> I can change the TX power, kindly find attached the received
"I" channel in case of TX power -25 dbm and -45 dbm. Also, there
is about 10 dB attenuation before the Ettus RX. As you can see,
there are many samples that goes to +/- 2048 and I believe that
means ADC is overloaded. It is mentioned in the reference manual
of Ad9364:
>>
>> "When the ADC is overloaded, the error between its samples and
the input signal will cause the ADC to output more samples with
values of +4 or −4 as it struggles to track the input signal.", is
there anything else I can try? Note: Disabling AGC and changing
gains gives reasonable outputs (i.e., amplitude of samples change
with changing the applied gain without samples going to +/- 2048).
But I need to use AGC because I want to have "over the air"
testing instead of cable testing.
>>
>>
>> Also, I tried to use --args type=b200 but it did not help. Is
it possible after loading and executing the script top_block_py
(i.e., while USB port is used to stream I/Q) to send commands for
the board to get sample rate, carrier freq., gains,....?
>>
>>
>> Thanks again,
>>
>>
>> Best Regards,
>>
>> Ahmed
>>
> You can insert calls to API elements like get_rx_gain, from with
a flow-graph. However, for flow-graphs generated by GRC, it's a
bit tricky--you'll have to
> add code after GRC has generated its output.
>
> See the section of the Gnu Radio manual here:
>
> https://gnuradio.org/doc/doxygen/group__uhd__blk.html
<https://gnuradio.org/doc/doxygen/group__uhd__blk.html>
<https://gnuradio.org/doc/doxygen/group__uhd__blk.html
<https://gnuradio.org/doc/doxygen/group__uhd__blk.html>>
>
> Is your signal very narrowband? The hardware AGC will be
looking at the entire input bandwidth to the ADC, which is large.
Which means that a narrowband
> signal doesn't really "drive" the AGC very hard, so it gets
"pinned" at max gain. This is why hardware AGC is generally not
super-useful.
>
> There's nothing inherently incompatible between manual, fixed,
gain, and doing over-the-air tests. It is typically the case in
the DSP world that the
> DSP flow handles AGC-like functions, because the DSP flow has
a MUCH better "view" of the intended signal bandwidth than the
front-end of
> the hardware.
>
>
>> On Wed, Mar 28, 2018 at 12:29 PM, Marcus D. Leech via USRP-users
<usrp-users@lists.ettus.com <mailto:usrp-users@lists.ettus.com>
<mailto:usrp-users@lists.ettus.com
<mailto:usrp-users@lists.ettus.com>> > wrote:
>>>
>>>
>>> On 03/28/2018 11:32 AM, Ahmed Hamza via USRP-users wrote:
>>>
>>>>
>>>> Hi,
>>>>
>>>>
>>>> I am using Ettus B200 mini, to receive signal at carrier
frequency 725 MHz and the bandwidth is 6 MHz. The sampling rate is
set to 13.28 MHz.
>>>>
>>>>
>>>> I enabled AGC by calling set_rx_agc() from set_gain inside
/usrp_source_impl.cc.
>>>>
>>>> The thing is that I am receiving a signal with a maximum that
reach +/- 2048 frequently so I believe that the ADC is overloaded.
The test is using cable so it is supposed that there is no out of
band interference.
>>>>
>>>>
>>>> My questions are:
>>>>
>>>> 1) Do you know what may be causing this behavior and what
should I try?
>>>>
>>>> 2) Where can I find the default values that Ettus B200 mini
used for Ad9364 registers?
>>>>
>>>> 3) Is there a way to read and/or write values of Ad9364
registers?
>>>>
>>>> 4) There are some get functions provided by Ettus, could this
get functions used in run time (I mean after loading the script)?
For example, if I do, uhd_usrp_probe --string
/mboards/0/dboards/A/rx_frontends/A/gain/agc/mode/value after
loading the script
>>>>
>>>> I get: linux; GNU C++ version 5.3.1 20151219; Boost_105800;
UHD_003.009.002-0-unknown
>>>>
>>>> Error: LookupError: KeyError: No devices found for ----->
>>>>
>>>> Empty Device Address
>>>>
>>>>
>>>> Thanks,
>>>>
>>>>
>>>> Best Regards,
>>>>
>>>> Ahmed
>>>>
>>>>
>>> Reduce the power of the device that is sending the signal--use
attenuators if you have to.
>>>
>>> uhd_usrp_probe needs a device address: use --args type=b200
>>>
>>>
>>> _______________________________________________
>>> USRP-users mailing list
>>> USRP-users@lists.ettus.com <mailto:USRP-users@lists.ettus.com>
<mailto:USRP-users@lists.ettus.com
<mailto:USRP-users@lists.ettus.com>>
>>> http://lists.ettus.com/
<http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com
<http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com>>
mailman/listinfo/usrp-users_lists.ettus.com
<http://usrp-users_lists.ettus.com>
>>>
>>
_______________________________________________
USRP-users mailing list
USRP-users@lists.ettus.com
http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com