Forums - Getting package RSSI in promiscuous mode

7 posts / 0 new
Last post
Getting package RSSI in promiscuous mode
mdn
Join Date: 24 Oct 19
Posts: 4
Posted: Mon, 2019-10-28 06:50

Hi

I'm doing a project, where I would like to run the QCA4010 in promiscuous mode and get the RSSI on the packages that I get in the callback function. In some forums they talk about the Radiotap header, but I can't seem to find anything in the chips API documentation about this. Someone asked about it in relation to the QCA4020 (https://developer.qualcomm.com/forum/qdn-forums/hardware/qca4020-qca4024...), but I can't see any solution on the question.

Doesn't the chip support this?

Is there a workaround to get this information?

I would actually like to do it in a dual-band setup, on the QCA4012, but my development board has the QCA4010. Am I wrong to assume that if I can get it to work on the QCA4010, then it will also work on the QCA4012?

 

I hope that someone can help me.

/Morten

  • Up0
  • Down0
hdng
Join Date: 8 Sep 19
Posts: 4
Posted: Tue, 2019-10-29 01:48

Hi,

Could you share your code snippet?

  • Up0
  • Down0
mdn
Join Date: 24 Oct 19
Posts: 4
Posted: Tue, 2019-10-29 02:58

I am evaluating using the demo code. From the sdk_shell demo code:

void swat_wmiconfig_promiscuous_test(A_BOOL promiscuousEn) {
    qcom_promiscuous_enable(promiscuousEn);
    qcom_set_promiscuous_rx_cb((QCOM_PROMISCUOUS_CB)swat_application_frame_cb);
}

void swat_application_frame_cb(A_UINT8 *pData, A_UINT16 length) {
    // Do something with the frame
}

So you enable promiscuous mode and sets a callback function. However, pData only contain the frame data. What I need for my project is the RSSI of the received frame.

 

  • Up0
  • Down0
hdng
Join Date: 8 Sep 19
Posts: 4
Posted: Tue, 2019-10-29 19:54

As shown in sdk_shell. Please try with swat_application_frame_cb_ext() function instead.

/*
When the callback function used under connected with AP, the less handle code, the better.
*/
void swat_application_frame_cb_ext(A_UINT8 *pData, A_UINT16 length, PROMISC_EXT_INFO_t* extinfo)
{
    /*Just print some info*/    
    SWAT_PTF_NO_TIME("frame (type=%02x,len=%d,rssi=%d)\n",pData[0],length,extinfo->rssi);
    SWAT_PTF_NO_TIME("promiscMode %d \n", promiscMode);
}

 

void
swat_wmiconfig_promiscuous_test(A_BOOL promiscuousEn, A_UINT8 mode)
{
    if(mode == PROMISC_MODE_NORMAL){
        qcom_promiscuous_enable(promiscuousEn);
        qcom_set_promiscuous_rx_cb((QCOM_PROMISCUOUS_CB)swat_application_frame_cb);
    }
    else if(mode == PROMISC_MODE_NORMAL_EXT || mode == PROMISC_MODE_CONNECT_EXT){
        qcom_set_promiscuous_rx_cb_ext((QCOM_PROMISCUOUS_CB_EXT)swat_application_frame_cb_ext);
        qcom_set_promiscuous_rx_cb(NULL);
    }
    promiscMode = mode;
    
    qcom_promiscuous_enable(promiscuousEn); 
}
 
  • Up0
  • Down0
mdn
Join Date: 24 Oct 19
Posts: 4
Posted: Thu, 2019-10-31 07:01

This is exactly what I need.

I have downloaded the release package named qca4010.tx_.2.2_qdn.zip from the QDN webpage on the QCA4010. I however cannot find anything about the qcom_set_promiscuous_rx_cb_ext(...) function in the header files.

Do I need a special package/version to get the _ext function?

 

  • Up0
  • Down0
hdng
Join Date: 8 Sep 19
Posts: 4
Posted: Tue, 2019-11-05 00:17

You should contact to QC guy. This function has not been available in TX2.2 yet.

  • Up0
  • Down0
mdn
Join Date: 24 Oct 19
Posts: 4
Posted: Tue, 2019-11-05 11:57

Thank you for your reply. I will try to reach out.

Do you know which software package/release I should ask for?

  • Up0
  • Down0
or Register

Opinions expressed in the content posted here are the personal opinions of the original authors, and do not necessarily reflect those of Qualcomm Incorporated or its subsidiaries (“Qualcomm”). The content is provided for informational purposes only and is not meant to be an endorsement or representation by Qualcomm or any other party. This site may also provide links or references to non-Qualcomm sites and resources. Qualcomm makes no representations, warranties, or other commitments whatsoever about any non-Qualcomm sites or third-party resources that may be referenced, accessible from, or linked to this site.