This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

Scan in a Single Channel

Hi,

As mentioned in this post: devzone.nordicsemi.com/.../

the struct ble_gap_adv_params_t --> ble_gap_adv_ch_mask_t give the option to turn any advertising channel OFF. I tested this approach and could advertise on only one channel.

The problem that I found was in scanning for this packet. When I'm using 3 channels for advertising, the scanning program is ALWAYS able to pick the advertising packet. But when I'm using 1 channel for advertising it misses some. Is there any way to program the scanning so that it only looks on a single channel? Can this problem be due to values of scan interval and scan window (I'm setting them equal to continuously scan)?

In the description of ble_gap_adv_ch_mask_t (infocenter.nordicsemi.com/index.jsp it says "Channel mask for RF channels used in advertising and scanning". But I could only found a place in the ble_gap_adv_params_t to pass it, and ble_gap_scan_params_t doesn't have this field.

So how can we set this feature for scan mode?

Parents
  • Hi FA,

    Scanning with selective channel(s) is not supported yet. I will report internally to fix it in the documentation.

    Thanks for reporting.

    If you want to do scanning on single channel, you may want to have a look at this observer example. We do scanning manually on S110 softdevice using timeslot feature.

    ble_app_proximity - Observer.zip

  • Hi FA,

    SWI2_IRQHandler is used in main.c under the name of SD_EVT_IRQHandler, check the macro define. The reason you got duplicate is that in your application you already have SWI2_IRQHandler in softdevice_handler.c. You would need to merge this 2 handlers into one.

    SWI1 is used for radio notification, if you don't use radio notification you can use it.

Reply
  • Hi FA,

    SWI2_IRQHandler is used in main.c under the name of SD_EVT_IRQHandler, check the macro define. The reason you got duplicate is that in your application you already have SWI2_IRQHandler in softdevice_handler.c. You would need to merge this 2 handlers into one.

    SWI1 is used for radio notification, if you don't use radio notification you can use it.

Children
No Data