apache / apache/mynewt-nimble

central discovery, timeout is not working

Open
#1,501 1 comment 0 reactions 0 assignees View on GitHub
Dominant language
C
Stars
893
Forks
512
Avg merge
13d 31m
Merged PRs (30d)
7

Description

I am starting discovery procedure lie this:
```
...
struct ble_gap_disc_params disc_params;
memset(&disc_params, 0, sizeof(disc_params));

disc_params.filter_duplicates = 0;
disc_params.passive = 0;
disc_params.itvl = 0; //Scan interval in 0.625ms units
disc_params.window = 0; //Scan window in 0.625ms units

disc_params.filter_policy = 0;
disc_params.limited = 0;

rc = ble_gap_disc(own_addr_type, 1000*2 /*BLE_HS_FOREVER*/, &disc_params,
gap_event_cb, NULL);
...
```
discovery itself works ok, I got BLE_GAP_EVENT_DISC on each discovered adv packet, but I never get BLE_GAP_EVENT_DISC_COMPLETE.

What can be the issue? Maybe I should check something in mine syscfg?

I am using usb hci adapter (tested with more then 5 different) on Linux.

Contributor guide

No contributing guide indexed for this repository

Research direction

Start with the ble_gap_disc invocation and the gap_event_cb callback shown in the issue, then reproduce discovery with a USB HCI adapter on Linux. Trace why BLE_GAP_EVENT_DISC_COMPLETE is not delivered despite receiving BLE_GAP_EVENT_DISC events; done means identifying the cause and documenting or correcting the timeout behavior.

Written by the indexing model from the issue text.

Assessment

Tech stack
c
Domain
embedded-iot
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.