i have a query regarding the BLE module that nxp is providing like NXP QN9020 Bluetooth™ Development Kit.Whether the board avail the facility to scan the RSSI values for the BLE beacons by coding the board.?

キャンセル
次の結果を表示 
表示  限定  | 次の代わりに検索 
もしかして: 

i have a query regarding the BLE module that nxp is providing like NXP QN9020 Bluetooth™ Development Kit.Whether the board avail the facility to scan the RSSI values for the BLE beacons by coding the board.?

1,228件の閲覧回数
vineshsangwan
Contributor I

I have been working on a project where I need a BLE module or its SOC so that I can scan the BLE beacons around the boards. Also, I need the RSSI value(Received Signal Strength Index) from the advertising beacons packets(although without connecting to the beacons).

Actually, 

NXP QN9020 Bluetooth™ Development Kit.

shows me the chance to avail this.That's why I require your help because if it does then I would be requiring it a lot.

0 件の賞賛
返信
1 返信

1,116件の閲覧回数
mario_castaneda
NXP TechSupport
NXP TechSupport

Hi Vinesh,

You can take a look to the client example, and if you look the scanning process, you will found the RSSI value for each device that you scaned. So, you have to look what is the device that you want.

    const int8_t rssi = app_correct_rssi(param->adv_rep.rssi);

int app_gap_dev_inq_result_handler(ke_msg_id_t const msgid,
                                   struct gap_dev_inq_result_evt const *param,
                                   ke_task_id_t const dest_id,
                                   ke_task_id_t const src_id)
{
    bool found = false;
    const int8_t rssi = app_correct_rssi(param->adv_rep.rssi);
    .
    .
    .
    .
    /* add the device in the address keeper */
    if (!found && (app_env.inq_idx < BLE_CONNECTION_MAX))
    {
        struct app_adv_data adv_data;
        
        app_env.addr_type[app_env.inq_idx] = param->adv_rep.adv_addr_type;
        memcpy(app_env.inq_addr[app_env.inq_idx].addr, param->adv_rep.adv_addr.addr, BD_ADDR_LEN);
        QPRINTF("%d. %c %02X%02X%02X%02X%02X%02X", 
            app_env.inq_idx,
            app_env.addr_type[app_env.inq_idx] ? 'R' : 'P', 
            app_env.inq_addr[app_env.inq_idx].addr[5],
            app_env.inq_addr[app_env.inq_idx].addr[4],
            app_env.inq_addr[app_env.inq_idx].addr[3],
            app_env.inq_addr[app_env.inq_idx].addr[2],
            app_env.inq_addr[app_env.inq_idx].addr[1],
            app_env.inq_addr[app_env.inq_idx].addr[0]);
        
        QPRINTF("%d  ",rssi);
     .
     .
     .
     .

    return(KE_MSG_CONSUMED);
}
#endif

Hope it helps

Best Regards,

Mario

0 件の賞賛
返信