usrp-users@lists.ettus.com

Discussion and technical support related to USRP, UHD, RFNoC

View all threads

RSSI implementation

IB
Ian Buckley
Fri, Aug 14, 2015 5:46 PM

Ghassan,
You have it wired correctly, thats the raw 12bit I &Q data from the RFIC.

radio_clk frequency is the configurable "master_clock_rate" from UHD (It is generated by a synthesizer on the RFIC).

"Catalina" was the code name of the AD936x when it was in the design phase and before it had product number(s)…those references should have been purged from the code…my bad.

-Ian

On Aug 14, 2015, at 8:36 AM, Ghassan Ameer ghassan.ameer@sa.catapult.org.uk wrote:

Hi Ian,
I have managed to integrate my RSSI module into the FPGA and read the value from within the UHD after some modification. I want my rssi module to be connected directly to the RF chip FPGA baseband  interface. Currently I connect my rssi module to rx signal within radio_b200.v module with rx[31:20] for I_data and rx[15:4] for Q_data. Could confirm to me if this is correct ? also what is the frequency of radio_clk? I came across Catalina [I think] interface while reading the FPGA code and was wondering what  it is?

Regards,
Ghassan
From: Ian Buckley [mailto:ianb@ionconcepts.com]
Sent: 10 August 2015 18:01
To: Ghassan Ameer ghassan.ameer@sa.catapult.org.uk
Cc: usrp-users@lists.ettus.com
Subject: Re: [USRP-users] RSSI implementation

Ghassan,
in the short term you could just follow the template of existing setting_regs (read is effected via the read back bus..search for rb_addr and rb_data) in UHD. The problem being that normal setting regs are not exposed directly via a user API so you are constrained to work within a scope internal to UHD which makes future code merges very problematic.

-Ian

On Aug 10, 2015, at 9:53 AM, Ghassan Ameer via USRP-users usrp-users@lists.ettus.com wrote:

Hi Marcus,
Thanks for your quick reply. I already have implemented an RSSI module on the FPGA. My question is How do I read the register value on the host. I know that setting_reg module on the FPGA is write only. But in the master repository code, a new user_settings section was added in radio_b200.v, which includes an example of setting and reading back of custom user registers. I’m trying to understand what do I need to change in this template in order to add my own register.

Regards,
Ghassan

From: USRP-users [mailto:usrp-users-bounces@lists.ettus.com] On Behalf Of Marcus D. Leech via USRP-users
Sent: 10 August 2015 17:38
To: usrp-users@lists.ettus.com
Subject: Re: [USRP-users] RSSI implementation

On 08/10/2015 12:26 PM, Ghassan Ameer via USRP-users wrote:
Hi,
Sorry if you got this email before, but I tried to email support@ettus.com, but I got no reply so I thought this email I should send my questions to.

I just bought a USRP B200 board. I'm planning on using it for GNSS/Telecomms applications. I would like to implement an RSSI module on the FPGA, although by looking at the AD9361 RF chip datasheet, I can see that there is an internal RSSI module. Also I looked into the UHD software a found a function called get_rssi which I can call by using get_rx_sensor('rssi',0). This returns to me a steady value between -55 to -61 [dBm I believe]. This value doesn't change even by applying a signal to the RF input or changing the gain ,which led me to think that the AGC is enabled.

I’m using the master repository code since it has the addition of user settings functionality

My questions summarised are :

  1. Is there an RSSI module on the b200 board?
    I don't think the RSSI subsystem on the AD9361 is actually used for anything.

  2. Is the RF chip’s AGC enabled, if yes how can I disable it and enable manual gain control ?
    AGC is not enabled on the B2xx, it's always manual.

  3. If there is an RSSI module, why does the RSSI value not change when the input power changes? [assuming agc is disabled]?

  4. How do I make a register from the FPGA available for reading within the host code, I found a section called user_settings  in the FPGA and the host code which I presume for this functionality?
    The problem with hardware RSSI is that it nearly-never "maps" into the bandwidth of the signals you're ultimately processing, so it can vary from
    somewhat misleading to wildly misleading.

Calculating an RSSI value on the sample stream that you ultimately receive on the host is pretty easy:

RSSI ~=  AVG(II+QQ)  and then scale to taste.

If you're already processing samples in real-time on the host anyway, adding this calculation doesn't significantly increase your compute footprint.

You can do that on the FPGA as well, but I'm not the best person to advise on how to do that.

I hope you can enlighten me with your answers.

Kind regards,
Ghassan

Ghassan Ameer
Networks and Systems

<image001.png>

Satellite Applications Catapult Ltd
Electron Building, Fermi Avenue,
Harwell Oxford, Didcot, Oxfordshire,
OX11 0QR, UK

Reception :  +44 (0) 1235 567999
Email:  ghassan.ameer@sa.catapult.org.uk
Website:  sa.catapult.org.uk

CATAPULT OPEN

This e-mail and any attachments are confidential and intended solely for the use of the recipient(s) to whom they are addressed. If you have received it in error, please destroy all copies and inform the sender. This email and any attachments are believed to be free from viruses but the Satellite Applications Catapult accepts no liability in connection therewith. Any views or opinions presented in this email are solely those of the author and do not necessarily represent those of Satellite Applications Catapult.


USRP-users mailing list
USRP-users@lists.ettus.com
http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com

This e-mail and any attachments are confidential and intended solely for the use of the recipient(s) to whom they are addressed. If you have received it in error, please destroy all copies and inform the sender. This email and any attachments are believed to be free from viruses but the Satellite Applications Catapult accepts no liability in connection therewith. Any views or opinions presented in this email are solely those of the author and do not necessarily represent those of Satellite Applications Catapult. _______________________________________________
USRP-users mailing list
USRP-users@lists.ettus.com
http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com

This e-mail and any attachments are confidential and intended solely for the use of the recipient(s) to whom they are addressed. If you have received it in error, please destroy all copies and inform the sender. This email and any attachments are believed to be free from viruses but the Satellite Applications Catapult accepts no liability in connection therewith. Any views or opinions presented in this email are solely those of the author and do not necessarily represent those of Satellite Applications Catapult.

Ghassan, You have it wired correctly, thats the raw 12bit I &Q data from the RFIC. radio_clk frequency is the configurable "master_clock_rate" from UHD (It is generated by a synthesizer on the RFIC). "Catalina" was the code name of the AD936x when it was in the design phase and before it had product number(s)…those references should have been purged from the code…my bad. -Ian On Aug 14, 2015, at 8:36 AM, Ghassan Ameer <ghassan.ameer@sa.catapult.org.uk> wrote: > Hi Ian, > I have managed to integrate my RSSI module into the FPGA and read the value from within the UHD after some modification. I want my rssi module to be connected directly to the RF chip FPGA baseband interface. Currently I connect my rssi module to rx signal within radio_b200.v module with rx[31:20] for I_data and rx[15:4] for Q_data. Could confirm to me if this is correct ? also what is the frequency of radio_clk? I came across Catalina [I think] interface while reading the FPGA code and was wondering what it is? > > Regards, > Ghassan > From: Ian Buckley [mailto:ianb@ionconcepts.com] > Sent: 10 August 2015 18:01 > To: Ghassan Ameer <ghassan.ameer@sa.catapult.org.uk> > Cc: usrp-users@lists.ettus.com > Subject: Re: [USRP-users] RSSI implementation > > Ghassan, > in the short term you could just follow the template of existing setting_regs (read is effected via the read back bus..search for rb_addr and rb_data) in UHD. The problem being that normal setting regs are not exposed directly via a user API so you are constrained to work within a scope internal to UHD which makes future code merges very problematic. > > -Ian > > On Aug 10, 2015, at 9:53 AM, Ghassan Ameer via USRP-users <usrp-users@lists.ettus.com> wrote: > > > Hi Marcus, > Thanks for your quick reply. I already have implemented an RSSI module on the FPGA. My question is How do I read the register value on the host. I know that setting_reg module on the FPGA is write only. But in the master repository code, a new user_settings section was added in radio_b200.v, which includes an example of setting and reading back of custom user registers. I’m trying to understand what do I need to change in this template in order to add my own register. > > Regards, > Ghassan > > > > From: USRP-users [mailto:usrp-users-bounces@lists.ettus.com] On Behalf Of Marcus D. Leech via USRP-users > Sent: 10 August 2015 17:38 > To: usrp-users@lists.ettus.com > Subject: Re: [USRP-users] RSSI implementation > > On 08/10/2015 12:26 PM, Ghassan Ameer via USRP-users wrote: > Hi, > Sorry if you got this email before, but I tried to email support@ettus.com, but I got no reply so I thought this email I should send my questions to. > > I just bought a USRP B200 board. I'm planning on using it for GNSS/Telecomms applications. I would like to implement an RSSI module on the FPGA, although by looking at the AD9361 RF chip datasheet, I can see that there is an internal RSSI module. Also I looked into the UHD software a found a function called get_rssi which I can call by using get_rx_sensor('rssi',0). This returns to me a steady value between -55 to -61 [dBm I believe]. This value doesn't change even by applying a signal to the RF input or changing the gain ,which led me to think that the AGC is enabled. > > I’m using the master repository code since it has the addition of user settings functionality > > My questions summarised are : > > 1) Is there an RSSI module on the b200 board? > I don't think the RSSI subsystem on the AD9361 is actually used for anything. > > > > > 2) Is the RF chip’s AGC enabled, if yes how can I disable it and enable manual gain control ? > AGC is not enabled on the B2xx, it's always manual. > > > > > 3) If there is an RSSI module, why does the RSSI value not change when the input power changes? [assuming agc is disabled]? > > 4) How do I make a register from the FPGA available for reading within the host code, I found a section called user_settings in the FPGA and the host code which I presume for this functionality? > The problem with hardware RSSI is that it nearly-never "maps" into the bandwidth of the signals you're ultimately processing, so it can vary from > somewhat misleading to wildly misleading. > > Calculating an RSSI value on the sample stream that you ultimately receive on the host is pretty easy: > > RSSI ~= AVG(I*I+Q*Q) and then scale to taste. > > If you're already processing samples in real-time on the host anyway, adding this calculation doesn't significantly increase your compute footprint. > > You *can* do that on the FPGA as well, but I'm not the best person to advise on how to do that. > > > > > I hope you can enlighten me with your answers. > > Kind regards, > Ghassan > > > > Ghassan Ameer > Networks and Systems > > <image001.png> > > > Satellite Applications Catapult Ltd > Electron Building, Fermi Avenue, > Harwell Oxford, Didcot, Oxfordshire, > OX11 0QR, UK > > Reception : +44 (0) 1235 567999 > Email: ghassan.ameer@sa.catapult.org.uk > Website: sa.catapult.org.uk > > CATAPULT OPEN > > This e-mail and any attachments are confidential and intended solely for the use of the recipient(s) to whom they are addressed. If you have received it in error, please destroy all copies and inform the sender. This email and any attachments are believed to be free from viruses but the Satellite Applications Catapult accepts no liability in connection therewith. Any views or opinions presented in this email are solely those of the author and do not necessarily represent those of Satellite Applications Catapult. > > > > _______________________________________________ > USRP-users mailing list > USRP-users@lists.ettus.com > http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com > > This e-mail and any attachments are confidential and intended solely for the use of the recipient(s) to whom they are addressed. If you have received it in error, please destroy all copies and inform the sender. This email and any attachments are believed to be free from viruses but the Satellite Applications Catapult accepts no liability in connection therewith. Any views or opinions presented in this email are solely those of the author and do not necessarily represent those of Satellite Applications Catapult. _______________________________________________ > USRP-users mailing list > USRP-users@lists.ettus.com > http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com > > This e-mail and any attachments are confidential and intended solely for the use of the recipient(s) to whom they are addressed. If you have received it in error, please destroy all copies and inform the sender. This email and any attachments are believed to be free from viruses but the Satellite Applications Catapult accepts no liability in connection therewith. Any views or opinions presented in this email are solely those of the author and do not necessarily represent those of Satellite Applications Catapult.
GA
Ghassan Ameer
Mon, Aug 17, 2015 11:14 AM

Hi Ian,
Thank you for your response that really helped. Is it possible to manually set the lna/vga gains individually within the host program rather than specifying the overall gain only?

Regards,
Ghassan
From: Ian Buckley [mailto:ianb@ionconcepts.com]
Sent: 14 August 2015 18:47
To: Ghassan Ameer ghassan.ameer@sa.catapult.org.uk
Cc: usrp-users@lists.ettus.com
Subject: Re: [USRP-users] RSSI implementation

Ghassan,
You have it wired correctly, thats the raw 12bit I &Q data from the RFIC.

radio_clk frequency is the configurable "master_clock_rate" from UHD (It is generated by a synthesizer on the RFIC).

"Catalina" was the code name of the AD936x when it was in the design phase and before it had product number(s)...those references should have been purged from the code...my bad.

-Ian

On Aug 14, 2015, at 8:36 AM, Ghassan Ameer <ghassan.ameer@sa.catapult.org.ukmailto:ghassan.ameer@sa.catapult.org.uk> wrote:

Hi Ian,
I have managed to integrate my RSSI module into the FPGA and read the value from within the UHD after some modification. I want my rssi module to be connected directly to the RF chip FPGA baseband  interface. Currently I connect my rssi module to rx signal within radio_b200.v module with rx[31:20] for I_data and rx[15:4] for Q_data. Could confirm to me if this is correct ? also what is the frequency of radio_clk? I came across Catalina [I think] interface while reading the FPGA code and was wondering what  it is?

Regards,
Ghassan
From: Ian Buckley [mailto:ianb@ionconcepts.comhttp://ionconcepts.com]
Sent: 10 August 2015 18:01
To: Ghassan Ameer <ghassan.ameer@sa.catapult.org.ukmailto:ghassan.ameer@sa.catapult.org.uk>
Cc: usrp-users@lists.ettus.commailto:usrp-users@lists.ettus.com
Subject: Re: [USRP-users] RSSI implementation

Ghassan,
in the short term you could just follow the template of existing setting_regs (read is effected via the read back bus..search for rb_addr and rb_data) in UHD. The problem being that normal setting regs are not exposed directly via a user API so you are constrained to work within a scope internal to UHD which makes future code merges very problematic.

-Ian

On Aug 10, 2015, at 9:53 AM, Ghassan Ameer via USRP-users <usrp-users@lists.ettus.commailto:usrp-users@lists.ettus.com> wrote:

Hi Marcus,
Thanks for your quick reply. I already have implemented an RSSI module on the FPGA. My question is How do I read the register value on the host. I know that setting_reg module on the FPGA is write only. But in the master repository code, a new user_settings section was added in radio_b200.v, which includes an example of setting and reading back of custom user registers. I'm trying to understand what do I need to change in this template in order to add my own register.

Regards,
Ghassan

From: USRP-users [mailto:usrp-users-bounces@lists.ettus.commailto:users-bounces@lists.ettus.com] On Behalf Of Marcus D. Leech via USRP-users
Sent: 10 August 2015 17:38
To: usrp-users@lists.ettus.commailto:usrp-users@lists.ettus.com
Subject: Re: [USRP-users] RSSI implementation

On 08/10/2015 12:26 PM, Ghassan Ameer via USRP-users wrote:
Hi,
Sorry if you got this email before, but I tried to email support@ettus.commailto:support@ettus.com, but I got no reply so I thought this email I should send my questions to.

I just bought a USRP B200 board. I'm planning on using it for GNSS/Telecomms applications. I would like to implement an RSSI module on the FPGA, although by looking at the AD9361 RF chip datasheet, I can see that there is an internal RSSI module. Also I looked into the UHD software a found a function called get_rssi which I can call by using get_rx_sensor('rssi',0). This returns to me a steady value between -55 to -61 [dBm I believe]. This value doesn't change even by applying a signal to the RF input or changing the gain ,which led me to think that the AGC is enabled.

I'm using the master repository code since it has the addition of user settings functionality

My questions summarised are :

  1. Is there an RSSI module on the b200 board?
    I don't think the RSSI subsystem on the AD9361 is actually used for anything.

  2. Is the RF chip's AGC enabled, if yes how can I disable it and enable manual gain control ?
    AGC is not enabled on the B2xx, it's always manual.

  3. If there is an RSSI module, why does the RSSI value not change when the input power changes? [assuming agc is disabled]?

  4. How do I make a register from the FPGA available for reading within the host code, I found a section called user_settings  in the FPGA and the host code which I presume for this functionality?
    The problem with hardware RSSI is that it nearly-never "maps" into the bandwidth of the signals you're ultimately processing, so it can vary from
    somewhat misleading to wildly misleading.

Calculating an RSSI value on the sample stream that you ultimately receive on the host is pretty easy:

RSSI ~=  AVG(II+QQ)  and then scale to taste.

If you're already processing samples in real-time on the host anyway, adding this calculation doesn't significantly increase your compute footprint.

You can do that on the FPGA as well, but I'm not the best person to advise on how to do that.

I hope you can enlighten me with your answers.

Kind regards,
Ghassan

Ghassan Ameer
Networks and Systems

<image001.png>

Satellite Applications Catapult Ltd
Electron Building, Fermi Avenue,
Harwell Oxford, Didcot, Oxfordshire,
OX11 0QR, UK

Reception :  +44 (0) 1235 567999
Email:  ghassan.ameer@sa.catapult.org.ukmailto:ghassan.ameer@sa.catapult.org.uk
Website:  sa.catapult.org.ukhttp://www.sa.catapult.org.uk/

CATAPULT OPEN

This e-mail and any attachments are confidential and intended solely for the use of the recipient(s) to whom they are addressed. If you have received it in error, please destroy all copies and inform the sender. This email and any attachments are believed to be free from viruses but the Satellite Applications Catapult accepts no liability in connection therewith. Any views or opinions presented in this email are solely those of the author and do not necessarily represent those of Satellite Applications Catapult.


USRP-users mailing list

USRP-users@lists.ettus.commailto:USRP-users@lists.ettus.com

http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com

This e-mail and any attachments are confidential and intended solely for the use of the recipient(s) to whom they are addressed. If you have received it in error, please destroy all copies and inform the sender. This email and any attachments are believed to be free from viruses but the Satellite Applications Catapult accepts no liability in connection therewith. Any views or opinions presented in this email are solely those of the author and do not necessarily represent those of Satellite Applications Catapult. _______________________________________________
USRP-users mailing list
USRP-users@lists.ettus.commailto:USRP-users@lists.ettus.com
http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com

This e-mail and any attachments are confidential and intended solely for the use of the recipient(s) to whom they are addressed. If you have received it in error, please destroy all copies and inform the sender. This email and any attachments are believed to be free from viruses but the Satellite Applications Catapult accepts no liability in connection therewith. Any views or opinions presented in this email are solely those of the author and do not necessarily represent those of Satellite Applications Catapult.

This e-mail and any attachments are confidential and intended solely for the use of the recipient(s) to whom they are addressed. If you have received it in error, please destroy all copies and inform the sender. This email and any attachments are believed to be free from viruses but the Satellite Applications Catapult accepts no liability in connection therewith. Any views or opinions presented in this email are solely those of the author and do not necessarily represent those of Satellite Applications Catapult.

Hi Ian, Thank you for your response that really helped. Is it possible to manually set the lna/vga gains individually within the host program rather than specifying the overall gain only? Regards, Ghassan From: Ian Buckley [mailto:ianb@ionconcepts.com] Sent: 14 August 2015 18:47 To: Ghassan Ameer <ghassan.ameer@sa.catapult.org.uk> Cc: usrp-users@lists.ettus.com Subject: Re: [USRP-users] RSSI implementation Ghassan, You have it wired correctly, thats the raw 12bit I &Q data from the RFIC. radio_clk frequency is the configurable "master_clock_rate" from UHD (It is generated by a synthesizer on the RFIC). "Catalina" was the code name of the AD936x when it was in the design phase and before it had product number(s)...those references should have been purged from the code...my bad. -Ian On Aug 14, 2015, at 8:36 AM, Ghassan Ameer <ghassan.ameer@sa.catapult.org.uk<mailto:ghassan.ameer@sa.catapult.org.uk>> wrote: Hi Ian, I have managed to integrate my RSSI module into the FPGA and read the value from within the UHD after some modification. I want my rssi module to be connected directly to the RF chip FPGA baseband interface. Currently I connect my rssi module to rx signal within radio_b200.v module with rx[31:20] for I_data and rx[15:4] for Q_data. Could confirm to me if this is correct ? also what is the frequency of radio_clk? I came across Catalina [I think] interface while reading the FPGA code and was wondering what it is? Regards, Ghassan From: Ian Buckley [mailto:ianb@ionconcepts.com<http://ionconcepts.com>] Sent: 10 August 2015 18:01 To: Ghassan Ameer <ghassan.ameer@sa.catapult.org.uk<mailto:ghassan.ameer@sa.catapult.org.uk>> Cc: usrp-users@lists.ettus.com<mailto:usrp-users@lists.ettus.com> Subject: Re: [USRP-users] RSSI implementation Ghassan, in the short term you could just follow the template of existing setting_regs (read is effected via the read back bus..search for rb_addr and rb_data) in UHD. The problem being that normal setting regs are not exposed directly via a user API so you are constrained to work within a scope internal to UHD which makes future code merges very problematic. -Ian On Aug 10, 2015, at 9:53 AM, Ghassan Ameer via USRP-users <usrp-users@lists.ettus.com<mailto:usrp-users@lists.ettus.com>> wrote: Hi Marcus, Thanks for your quick reply. I already have implemented an RSSI module on the FPGA. My question is How do I read the register value on the host. I know that setting_reg module on the FPGA is write only. But in the master repository code, a new user_settings section was added in radio_b200.v, which includes an example of setting and reading back of custom user registers. I'm trying to understand what do I need to change in this template in order to add my own register. Regards, Ghassan From: USRP-users [mailto:usrp-users-bounces@lists.ettus.com<mailto:users-bounces@lists.ettus.com>] On Behalf Of Marcus D. Leech via USRP-users Sent: 10 August 2015 17:38 To: usrp-users@lists.ettus.com<mailto:usrp-users@lists.ettus.com> Subject: Re: [USRP-users] RSSI implementation On 08/10/2015 12:26 PM, Ghassan Ameer via USRP-users wrote: Hi, Sorry if you got this email before, but I tried to email support@ettus.com<mailto:support@ettus.com>, but I got no reply so I thought this email I should send my questions to. I just bought a USRP B200 board. I'm planning on using it for GNSS/Telecomms applications. I would like to implement an RSSI module on the FPGA, although by looking at the AD9361 RF chip datasheet, I can see that there is an internal RSSI module. Also I looked into the UHD software a found a function called get_rssi which I can call by using get_rx_sensor('rssi',0). This returns to me a steady value between -55 to -61 [dBm I believe]. This value doesn't change even by applying a signal to the RF input or changing the gain ,which led me to think that the AGC is enabled. I'm using the master repository code since it has the addition of user settings functionality My questions summarised are : 1) Is there an RSSI module on the b200 board? I don't think the RSSI subsystem on the AD9361 is actually used for anything. 2) Is the RF chip's AGC enabled, if yes how can I disable it and enable manual gain control ? AGC is not enabled on the B2xx, it's always manual. 3) If there is an RSSI module, why does the RSSI value not change when the input power changes? [assuming agc is disabled]? 4) How do I make a register from the FPGA available for reading within the host code, I found a section called user_settings in the FPGA and the host code which I presume for this functionality? The problem with hardware RSSI is that it nearly-never "maps" into the bandwidth of the signals you're ultimately processing, so it can vary from somewhat misleading to wildly misleading. Calculating an RSSI value on the sample stream that you ultimately receive on the host is pretty easy: RSSI ~= AVG(I*I+Q*Q) and then scale to taste. If you're already processing samples in real-time on the host anyway, adding this calculation doesn't significantly increase your compute footprint. You *can* do that on the FPGA as well, but I'm not the best person to advise on how to do that. I hope you can enlighten me with your answers. Kind regards, Ghassan Ghassan Ameer Networks and Systems <image001.png> Satellite Applications Catapult Ltd Electron Building, Fermi Avenue, Harwell Oxford, Didcot, Oxfordshire, OX11 0QR, UK Reception : +44 (0) 1235 567999 Email: ghassan.ameer@sa.catapult.org.uk<mailto:ghassan.ameer@sa.catapult.org.uk> Website: sa.catapult.org.uk<http://www.sa.catapult.org.uk/> CATAPULT OPEN This e-mail and any attachments are confidential and intended solely for the use of the recipient(s) to whom they are addressed. If you have received it in error, please destroy all copies and inform the sender. This email and any attachments are believed to be free from viruses but the Satellite Applications Catapult accepts no liability in connection therewith. Any views or opinions presented in this email are solely those of the author and do not necessarily represent those of Satellite Applications Catapult. _______________________________________________ USRP-users mailing list USRP-users@lists.ettus.com<mailto:USRP-users@lists.ettus.com> http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com This e-mail and any attachments are confidential and intended solely for the use of the recipient(s) to whom they are addressed. If you have received it in error, please destroy all copies and inform the sender. This email and any attachments are believed to be free from viruses but the Satellite Applications Catapult accepts no liability in connection therewith. Any views or opinions presented in this email are solely those of the author and do not necessarily represent those of Satellite Applications Catapult. _______________________________________________ USRP-users mailing list USRP-users@lists.ettus.com<mailto:USRP-users@lists.ettus.com> http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com This e-mail and any attachments are confidential and intended solely for the use of the recipient(s) to whom they are addressed. If you have received it in error, please destroy all copies and inform the sender. This email and any attachments are believed to be free from viruses but the Satellite Applications Catapult accepts no liability in connection therewith. Any views or opinions presented in this email are solely those of the author and do not necessarily represent those of Satellite Applications Catapult. This e-mail and any attachments are confidential and intended solely for the use of the recipient(s) to whom they are addressed. If you have received it in error, please destroy all copies and inform the sender. This email and any attachments are believed to be free from viruses but the Satellite Applications Catapult accepts no liability in connection therewith. Any views or opinions presented in this email are solely those of the author and do not necessarily represent those of Satellite Applications Catapult.
MD
Marcus D. Leech
Mon, Aug 17, 2015 2:47 PM

On 08/17/2015 07:14 AM, Ghassan Ameer via USRP-users wrote:

Hi Ian,

Thank you for your response that really helped. Is it possible to
manually set the lna/vga gains individually within the host program
rather than specifying the overall gain only?

Regards,

Ghassan

*From:*Ian Buckley [mailto:ianb@ionconcepts.com]
Sent: 14 August 2015 18:47
To: Ghassan Ameer ghassan.ameer@sa.catapult.org.uk
Cc: usrp-users@lists.ettus.com
Subject: Re: [USRP-users] RSSI implementation

Ghassan,

You have it wired correctly, thats the raw 12bit I &Q data from the RFIC.

radio_clk frequency is the configurable "master_clock_rate" from UHD
(It is generated by a synthesizer on the RFIC).

"Catalina" was the code name of the AD936x when it was in the design
phase and before it had product number(s)…those references should have
been purged from the code…my bad.

-Ian

On Aug 14, 2015, at 8:36 AM, Ghassan Ameer
<ghassan.ameer@sa.catapult.org.uk
mailto:ghassan.ameer@sa.catapult.org.uk> wrote:

 Hi Ian,

 I have managed to integrate my RSSI module into the FPGA and read
 the value from within the UHD after some modification. I want my
 rssi module to be connected directly to the RF chip FPGA baseband
  interface. Currently I connect my rssi module to rx signal within
 radio_b200.v module with rx[31:20] for I_data and rx[15:4] for
 Q_data. Could confirm to me if this is correct ? also what is the
 frequency of radio_clk? I came across Catalina [I think] interface
 while reading the FPGA code and was wondering what  it is?

 Regards,

 Ghassan

 *From:*Ian Buckley [mailto:ianb@ionconcepts.com
 <http://ionconcepts.com>]
 *Sent:*10 August 2015 18:01
 *To:*Ghassan Ameer <ghassan.ameer@sa.catapult.org.uk
 <mailto:ghassan.ameer@sa.catapult.org.uk>>
 *Cc:*usrp-users@lists.ettus.com <mailto:usrp-users@lists.ettus.com>
 *Subject:*Re: [USRP-users] RSSI implementation

 Ghassan,

 in the short term you could just follow the template of existing
 setting_regs (read is effected via the read back bus..search for
 rb_addr and rb_data) in UHD. The problem being that normal setting
 regs are not exposed directly via a user API so you are
 constrained to work within a scope internal to UHD which makes
 future code merges very problematic.

 -Ian

 On Aug 10, 2015, at 9:53 AM, Ghassan Ameer via USRP-users
 <usrp-users@lists.ettus.com <mailto:usrp-users@lists.ettus.com>>
 wrote:




     Hi Marcus,

     Thanks for your quick reply. I already have implemented an
     RSSI module on the FPGA. My question is How do I read the
     register value on the host. I know that setting_reg module on
     the FPGA is write only. But in the master repository code, a
     new user_settings section was added in radio_b200.v, which
     includes an example of setting and reading back of custom user
     registers. I’m trying to understand what do I need to change
     in this template in order to add my own register.

     Regards,

     Ghassan

     *From:*USRP-users [mailto:usrp-users-bounces@lists.ettus.com
     <mailto:users-bounces@lists.ettus.com>]*On Behalf Of*Marcus D.
     Leech via USRP-users
     *Sent:*10 August 2015 17:38
     *To:*usrp-users@lists.ettus.com
     <mailto:usrp-users@lists.ettus.com>
     *Subject:*Re: [USRP-users] RSSI implementation

     On 08/10/2015 12:26 PM, Ghassan Ameer via USRP-users wrote:

         Hi,

         Sorry if you got this email before, but I tried to
         emailsupport@ettus.com <mailto:support@ettus.com>,but I
         got no reply so I thought this email I should send my
         questions to.

         I just bought a USRP B200 board. I'm planning on using it
         for GNSS/Telecomms applications. I would like to implement
         an RSSI module on the FPGA, although by looking at the
         AD9361 RF chip datasheet, I can see that there is an
         internal RSSI module. Also I looked into the UHD software
         a found a function called get_rssi which I can call by
         using get_rx_sensor('rssi',0). This returns to me a steady
         value between -55 to -61 [dBm I believe]. This value
         doesn't change even by applying a signal to the RF input
         or changing the gain ,which led me to think that the AGC
         is enabled.

         I’m using the master repository code since it has the
         addition of user settings functionality

         My questions summarised are :

         1) Is there an RSSI module on the b200 board?

     I don't think the RSSI subsystem on the AD9361 is actually
     used for anything.




         2) Is the RF chip’s AGC enabled, if yes how can I disable
         it and enable manual gain control ?

     AGC is not enabled on the B2xx, it's always manual.




         3) If there is an RSSI module, why does the RSSI value not
         change when the input power changes? [assuming agc is
         disabled]?

         4)  How do I make a register from the FPGA available for
         reading within the host code, I found a section called
         user_settings  in the FPGA and the host code which I
         presume for this functionality?

     The problem with hardware RSSI is that it nearly-never "maps"
     into the bandwidth of the signals you're ultimately
     processing, so it can vary from
       somewhat misleading to wildly misleading.

     Calculating an RSSI value on the sample stream that you
     ultimately receive on the host is pretty easy:

     RSSI ~=  AVG(I*I+Q*Q)   and then scale to taste.

     If you're already processing samples in real-time on the host
     anyway, adding this calculation doesn't significantly increase
     your compute footprint.

     You *can* do that on the FPGA as well, but I'm not the best
     person to advise on how to do that.




         I hope you can enlighten me with your answers.

         Kind regards,

         Ghassan

         *Ghassan Ameer*

         Networks and Systems

         <image001.png>

         *Satellite Applications Catapult Ltd*

         Electron Building, Fermi Avenue,

         Harwell Oxford, Didcot, Oxfordshire,

         OX11 0QR, UK

         Reception :  +44 (0) 1235 567999

         Email: ghassan.ameer@sa.catapult.org.uk
         <mailto:ghassan.ameer@sa.catapult.org.uk>

         Website: sa.catapult.org.uk <http://www.sa.catapult.org.uk/>

         *CATAPULT OPEN*

         This e-mail and any attachments are confidential and
         intended solely for the use of the recipient(s) to whom
         they are addressed. If you have received it in error,
         please destroy all copies and inform the sender. This
         email and any attachments are believed to be free from
         viruses but the Satellite Applications Catapult accepts no
         liability in connection therewith. Any views or opinions
         presented in this email are solely those of the author and
         do not necessarily represent those of Satellite
         Applications Catapult.




         _______________________________________________

         USRP-users mailing list

         USRP-users@lists.ettus.com  <mailto:USRP-users@lists.ettus.com>

         http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com

     This e-mail and any attachments are confidential and intended
     solely for the use of the recipient(s) to whom they are
     addressed. If you have received it in error, please destroy
     all copies and inform the sender. This email and any
     attachments are believed to be free from viruses but the
     Satellite Applications Catapult accepts no liability in
     connection therewith. Any views or opinions presented in this
     email are solely those of the author and do not necessarily
     represent those of Satellite Applications Catapult.
     _______________________________________________
     USRP-users mailing list
     USRP-users@lists.ettus.com <mailto:USRP-users@lists.ettus.com>
     http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com

 This e-mail and any attachments are confidential and intended
 solely for the use of the recipient(s) to whom they are addressed.
 If you have received it in error, please destroy all copies and
 inform the sender. This email and any attachments are believed to
 be free from viruses but the Satellite Applications Catapult
 accepts no liability in connection therewith. Any views or
 opinions presented in this email are solely those of the author
 and do not necessarily represent those of Satellite Applications
 Catapult.

This e-mail and any attachments are confidential and intended solely
for the use of the recipient(s) to whom they are addressed. If you
have received it in error, please destroy all copies and inform the
sender. This email and any attachments are believed to be free from
viruses but the Satellite Applications Catapult accepts no liability
in connection therewith. Any views or opinions presented in this email
are solely those of the author and do not necessarily represent those
of Satellite Applications Catapult.


USRP-users mailing list
USRP-users@lists.ettus.com
http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com

On 08/17/2015 07:14 AM, Ghassan Ameer via USRP-users wrote: > > Hi Ian, > > Thank you for your response that really helped. Is it possible to > manually set the lna/vga gains individually within the host program > rather than specifying the overall gain only? > > Regards, > > Ghassan > Yes. See: http://files.ettus.com/manual/classuhd_1_1usrp_1_1multi__usrp.html#ad602e7681b796deddd9231f022ffef11 > *From:*Ian Buckley [mailto:ianb@ionconcepts.com] > *Sent:* 14 August 2015 18:47 > *To:* Ghassan Ameer <ghassan.ameer@sa.catapult.org.uk> > *Cc:* usrp-users@lists.ettus.com > *Subject:* Re: [USRP-users] RSSI implementation > > Ghassan, > > You have it wired correctly, thats the raw 12bit I &Q data from the RFIC. > > radio_clk frequency is the configurable "master_clock_rate" from UHD > (It is generated by a synthesizer on the RFIC). > > "Catalina" was the code name of the AD936x when it was in the design > phase and before it had product number(s)…those references should have > been purged from the code…my bad. > > -Ian > > On Aug 14, 2015, at 8:36 AM, Ghassan Ameer > <ghassan.ameer@sa.catapult.org.uk > <mailto:ghassan.ameer@sa.catapult.org.uk>> wrote: > > > > Hi Ian, > > I have managed to integrate my RSSI module into the FPGA and read > the value from within the UHD after some modification. I want my > rssi module to be connected directly to the RF chip FPGA baseband > interface. Currently I connect my rssi module to rx signal within > radio_b200.v module with rx[31:20] for I_data and rx[15:4] for > Q_data. Could confirm to me if this is correct ? also what is the > frequency of radio_clk? I came across Catalina [I think] interface > while reading the FPGA code and was wondering what it is? > > Regards, > > Ghassan > > *From:*Ian Buckley [mailto:ianb@ionconcepts.com > <http://ionconcepts.com>] > *Sent:*10 August 2015 18:01 > *To:*Ghassan Ameer <ghassan.ameer@sa.catapult.org.uk > <mailto:ghassan.ameer@sa.catapult.org.uk>> > *Cc:*usrp-users@lists.ettus.com <mailto:usrp-users@lists.ettus.com> > *Subject:*Re: [USRP-users] RSSI implementation > > Ghassan, > > in the short term you could just follow the template of existing > setting_regs (read is effected via the read back bus..search for > rb_addr and rb_data) in UHD. The problem being that normal setting > regs are not exposed directly via a user API so you are > constrained to work within a scope internal to UHD which makes > future code merges very problematic. > > -Ian > > On Aug 10, 2015, at 9:53 AM, Ghassan Ameer via USRP-users > <usrp-users@lists.ettus.com <mailto:usrp-users@lists.ettus.com>> > wrote: > > > > > Hi Marcus, > > Thanks for your quick reply. I already have implemented an > RSSI module on the FPGA. My question is How do I read the > register value on the host. I know that setting_reg module on > the FPGA is write only. But in the master repository code, a > new user_settings section was added in radio_b200.v, which > includes an example of setting and reading back of custom user > registers. I’m trying to understand what do I need to change > in this template in order to add my own register. > > Regards, > > Ghassan > > *From:*USRP-users [mailto:usrp-users-bounces@lists.ettus.com > <mailto:users-bounces@lists.ettus.com>]*On Behalf Of*Marcus D. > Leech via USRP-users > *Sent:*10 August 2015 17:38 > *To:*usrp-users@lists.ettus.com > <mailto:usrp-users@lists.ettus.com> > *Subject:*Re: [USRP-users] RSSI implementation > > On 08/10/2015 12:26 PM, Ghassan Ameer via USRP-users wrote: > > Hi, > > Sorry if you got this email before, but I tried to > emailsupport@ettus.com <mailto:support@ettus.com>,but I > got no reply so I thought this email I should send my > questions to. > > I just bought a USRP B200 board. I'm planning on using it > for GNSS/Telecomms applications. I would like to implement > an RSSI module on the FPGA, although by looking at the > AD9361 RF chip datasheet, I can see that there is an > internal RSSI module. Also I looked into the UHD software > a found a function called get_rssi which I can call by > using get_rx_sensor('rssi',0). This returns to me a steady > value between -55 to -61 [dBm I believe]. This value > doesn't change even by applying a signal to the RF input > or changing the gain ,which led me to think that the AGC > is enabled. > > I’m using the master repository code since it has the > addition of user settings functionality > > My questions summarised are : > > 1) Is there an RSSI module on the b200 board? > > I don't think the RSSI subsystem on the AD9361 is actually > used for anything. > > > > > 2) Is the RF chip’s AGC enabled, if yes how can I disable > it and enable manual gain control ? > > AGC is not enabled on the B2xx, it's always manual. > > > > > 3) If there is an RSSI module, why does the RSSI value not > change when the input power changes? [assuming agc is > disabled]? > > 4) How do I make a register from the FPGA available for > reading within the host code, I found a section called > user_settings in the FPGA and the host code which I > presume for this functionality? > > The problem with hardware RSSI is that it nearly-never "maps" > into the bandwidth of the signals you're ultimately > processing, so it can vary from > somewhat misleading to wildly misleading. > > Calculating an RSSI value on the sample stream that you > ultimately receive on the host is pretty easy: > > RSSI ~= AVG(I*I+Q*Q) and then scale to taste. > > If you're already processing samples in real-time on the host > anyway, adding this calculation doesn't significantly increase > your compute footprint. > > You *can* do that on the FPGA as well, but I'm not the best > person to advise on how to do that. > > > > > I hope you can enlighten me with your answers. > > Kind regards, > > Ghassan > > *Ghassan Ameer* > > Networks and Systems > > <image001.png> > > *Satellite Applications Catapult Ltd* > > Electron Building, Fermi Avenue, > > Harwell Oxford, Didcot, Oxfordshire, > > OX11 0QR, UK > > Reception : +44 (0) 1235 567999 > > Email: ghassan.ameer@sa.catapult.org.uk > <mailto:ghassan.ameer@sa.catapult.org.uk> > > Website: sa.catapult.org.uk <http://www.sa.catapult.org.uk/> > > *CATAPULT OPEN* > > This e-mail and any attachments are confidential and > intended solely for the use of the recipient(s) to whom > they are addressed. If you have received it in error, > please destroy all copies and inform the sender. This > email and any attachments are believed to be free from > viruses but the Satellite Applications Catapult accepts no > liability in connection therewith. Any views or opinions > presented in this email are solely those of the author and > do not necessarily represent those of Satellite > Applications Catapult. > > > > > _______________________________________________ > > USRP-users mailing list > > USRP-users@lists.ettus.com <mailto:USRP-users@lists.ettus.com> > > http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com > > This e-mail and any attachments are confidential and intended > solely for the use of the recipient(s) to whom they are > addressed. If you have received it in error, please destroy > all copies and inform the sender. This email and any > attachments are believed to be free from viruses but the > Satellite Applications Catapult accepts no liability in > connection therewith. Any views or opinions presented in this > email are solely those of the author and do not necessarily > represent those of Satellite Applications Catapult. > _______________________________________________ > USRP-users mailing list > USRP-users@lists.ettus.com <mailto:USRP-users@lists.ettus.com> > http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com > > This e-mail and any attachments are confidential and intended > solely for the use of the recipient(s) to whom they are addressed. > If you have received it in error, please destroy all copies and > inform the sender. This email and any attachments are believed to > be free from viruses but the Satellite Applications Catapult > accepts no liability in connection therewith. Any views or > opinions presented in this email are solely those of the author > and do not necessarily represent those of Satellite Applications > Catapult. > > This e-mail and any attachments are confidential and intended solely > for the use of the recipient(s) to whom they are addressed. If you > have received it in error, please destroy all copies and inform the > sender. This email and any attachments are believed to be free from > viruses but the Satellite Applications Catapult accepts no liability > in connection therewith. Any views or opinions presented in this email > are solely those of the author and do not necessarily represent those > of Satellite Applications Catapult. > > > _______________________________________________ > USRP-users mailing list > USRP-users@lists.ettus.com > http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com