Post Go back to editing

ADRV 9002

Thread Summary

The user asked how to enable Fast Recovery Mode and why hbUnderRangeLowThresh and hbUnderRangeMidThresh values remain unchanged when adjusting the Peak Over/Underload Threshold in TES ARGO-NAVIS version 0.28.0. Fast Recovery Mode can only be enabled via C99 or Python APIs, not in the TES GUI. The HB detector can be disabled in TES under the Gain Control tab, and the user can manually set the threshold values using APIs in MATLAB or C. The Rx Gain table is accessible from 187 to 255 in TES, and the user can generate MATLAB code from TES to use as a baseline for configuration.
AI Generated Content

Hello,

I have  a two-part question regarding the TES system ARGO-NAVIS version 0.28.0. 

1) How can I enable Fast Recovery Mode?

2) Why do the values of hbUnderRangeLowThresh and hbUnderRangeMidThresh remain unchanged when I adjust the Peak Over/Underload Threshold. This raises concerns about he validity  of these values, since in some cases even hbUnderRangeHighThresh ends being lower than the aforementioned values 

Thread Notes

Parents
  • Hi,

    For the first question, Fast Attack and Fast Recovery Modes for the AGC can only be enabled using API calls in C99, or Python sample code. These modes are not in the TES GUI.
    Details on the name and usage of APIs is located in the SDK folder - file named ADRV9001_API.chm

    For question 2, please provide more information, where are you reading the values of hbUnderRangeLowThresh and hbUnderRangeMidThresh? 
    These are not shown in TES, only Peak/Power Over/Underload Thresholds.
    If you are using APIs already, then just configure them as you need and continue using APIs. (You can use both APIs and TES at the same time, but TES will not update the values).

    Regards,
    Deniss

  • For question number 2, I observed the values I mentioned by samping codes in C and checking the corresponding coomands. These values are hbUnderRangeLowThresh = 5826,
    hbUnderRangeMidThresh = 8230, and they dont change by using TES. In the upcoming week I will conduct tests in matlab to check if the aforementioned values change. 

    Meanwhile is there any chance to have fully access of the default Rx gain table? The ADRV9001 GUIDE provides information only from 255-253 gain table index and from 189-187 

    Regards John 

  • Is there any chance I can observe all the gain table variables using matlab not c?

    In addition, does the ADRV provide the opportunity to disable HB detector.

    I configure with matlab not C or TES, it would be very helpful to adapt your answers for the matlab usage 

  • Hi,

    Please configure in TES first, the exact way you require, and then produce MATLAB sample code and go from there.
    Once you set your profile up the exact way you need, e.g. configuring gain table (at least some of it), you can check what MATLAB code TES has produced and use that as baseline.

    We have full C99 API documentation in the file mentioned previously. Both MATLAB and Python APIs will have very very similar names, just some of the notation might differ. Use those as reference and continue development.

    You can disable the HB detector in TES in the Gain Control tab near the bottom of Rx Signal Detection.

    Regards,
    Deniss

  • I prefer to disable HB detector using matlab, is that possible;

  • Hi,

    I'm not sure you understood what I mentioned above.
    You can disable the HB detector inside TES in the aforementioned location.
    You can then produce sample code with it off/on, and you will have it off/on inside MATLAB.

    The MATLAB functions are extremely similar to C99, with slight variations in names.
    When inspecting the MATLAB code, you would have seen the Rx Gain control configuration inside "configure.m".
    Enabling and disabling the HB detector is done within the PeakDetector_t struct.
    As shown below in the C99 API descriptions you have access to:



    Setting the "enableHbOverload" field to true will turn on the HB detector, and setting to false will turn it off.

    Below is an example of the HB detector in MATLAB code disabled that was generated inside TES:

    agcCfg_peak_4 = analog_devices_eval_client_adrv9001_device.Adrv9001_PeakDetector_t.Adrv9001_PeakDetector_t_2(50, 2, 4, 26, 18, 6, 3, 4, 0, false, 1, 1, 8191, 5826, 8230, 5812, 6, 3, 4, 6, 4, 4, 0, 3, 3, analog_devices_eval_client_adrv9001_device.Adrv9001_GpioPinCrumbSel_e.ADRV9001_GPIO_PIN_CRUMB_UNASSIGNED, analog_devices_eval_client_adrv9001_device.Adrv9001_GpioPinCrumbSel_e.ADRV9001_GPIO_PIN_CRUMB_UNASSIGNED);

    Where "false" is the setting for HB detector.

    Please configure your device the way you want inside TES first; then produce MATLAB sample code using that configuration.

    Ensure you read the documentation before inquiring.

    Regards,
    Deniss
  • PDFPlease find attached the file below. These pictures present the digital gain as shown in the command window while using matlab.Two issues must be explained: the first one is the absence of some values such as 219,223,235,239 etc.The second one is the existence of two different digital gains for the same index, such as 251,247 etc.

    Regard,John.

  • Hi,

    I have enabled fast attack only ,while HB is disabled.When a fast attack is happening but the signal is still exceeding the upper threshold , does a secondary attack occurs instantly or the uppercounterthersholds must be exceeded again;

  • Hi,

    Those issues with the gain table should not be there, if you study the MATLAB code that it generates, it takes the gain table from the path of your TES install.
    "ADRV9001 Transceiver Evaluation Software/Resources/Adi.Adrv9001.GainTables/public/RxGainTable_0.4.0.csv"

    Therefore that is the gain table it uses. I am not sure what you are using to check the tables.

    The answer to your second question is directly located inside the User Guide -> Receiver Gain Control. Please read through the chapter and pay close attention to Figure 164 and text under it.

  • Hi,

    Fist of all thank you for your  answer,

    it is unclear in the guide whether a second/third... attack takes place simultaneously after the first attack. 

    For the answer regarding the gain table , you are saying that the gain table I have uploaded contains values which are not valid, instead the corrct gain table is inside TES, Have I understood right? 

  • Hi,

    A stated in the User Guide, and shown between Figures 164 and 165, you can see that 165 is Fast Attack enabled and 164 is disabled - please review the differences.

    As stated in red and yellow, the AGC does not wait for update counter, and does attacks immediately when in Fast Attack mode.
    So, to say it again for you, the second and third attack is immediately after the first attack.
    It is very clearly explained in the User Guide.

    Your gain tables are not valid at all and make no sense, and I am not sure what you are doing to get these tables. If you inspect the MATLAB code, it just grabs the real gain table from where TES is installed.

    Something is going wrong in your MATLAB code for those values to print/exist.
    Standard MATLAB sample code takes the values from TES. TES is key.

    Please debug your code and figure out what is going wrong. 
    Then return if you have issues with anything from our side/development.

    Regards,
    Deniss

    • Thanks Dennis, maybe i wasn't clear with my previous question. Let's assume fast attack is enabled and the overloadcounter is equal to 5, the upperthershold is equal to -3. Now let's say that the upper threshold is exceeded 5 times causing overrange condition so an attack occurs. Now lets say that the step was low and the signal is still above -3 for example -2.6. Is the AGC going to attack immediately to bring signal below -3, for example -3.2 or does it have to measure 5 cycles again, in order to attack. I dont refer to gain update counter at all.

    For the second part of your answer I run ADRV by using matlab. The reason is because TES configuration is incomplete because a lot of values, especially those regarding HB detector, aren't contained. Matlab contains every value I need for configuration. The gain table you saw is a result of your generated code not mine and is seen inside command window while running the code 

Reply
    • Thanks Dennis, maybe i wasn't clear with my previous question. Let's assume fast attack is enabled and the overloadcounter is equal to 5, the upperthershold is equal to -3. Now let's say that the upper threshold is exceeded 5 times causing overrange condition so an attack occurs. Now lets say that the step was low and the signal is still above -3 for example -2.6. Is the AGC going to attack immediately to bring signal below -3, for example -3.2 or does it have to measure 5 cycles again, in order to attack. I dont refer to gain update counter at all.

    For the second part of your answer I run ADRV by using matlab. The reason is because TES configuration is incomplete because a lot of values, especially those regarding HB detector, aren't contained. Matlab contains every value I need for configuration. The gain table you saw is a result of your generated code not mine and is seen inside command window while running the code 

Children
No Data