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

BLE Advertisement and scanner sync for low power scanner. Time drift issue.

Hi,

We have three device types, 

1) Beacon (BLE peripheral) - battery powered,

2) Nearby device scanner (BLE peripheral + observer) - battery powered,

3) Timing Master(BLE central) - full power device

All tests are performed on nrf52820  custom board which have 20 ppm External LF Crystal.

In our use case Timing Master connects with beacon and Nearby Device scanner and sync them to advertise in case of beacon and scan in case of nearby device scanner at same time at every next one minute.

After just sync we're observing that it works as expected all advertisement successfully scanned by nearby scanner. But as time goes like after 8-hour advertisement and scanning window drifted in time by 350ms. In this case advertisement got leading. We did the same test but interchanged firmware on both hardware now advertisement got lagging after some time in test.

I know there will be 1.75 seconds of error due to 20 ppm crystal. Can we use some kind of calibration at run time or production time to reduce time drift? We also have 32MHz 10 ppm HF crystal on board. 

Is there any way to achieve this with larger interval to time sync beacon?

For nearby device scanner no issue as it will be connected by timing master at every minute  to get nearby device list form it so at that time it can re-sync scanner window.

On side note I have seen this https://devzone.nordicsemi.com/nordic/short-range-guides/b/bluetooth-low-energy/posts/wireless-timer-synchronization-among-nrf5-devices for timer synchronization.

It is using timer, Can it be modified to use RTC for low power application?

My concern in this example to be used in our case is as both beacon and nearby scanner is using battery for supply.

  • By default, each node will request timeslots that will be used to run the radio in RX mode, listening for time beacons. All available radio time will be used for this (not very power effective).

Is there any way we can use this example by modifying in our use case?

What about BLE Periodic Advertisement and sync by central if we use NCS examples  periodic_adv(in our case beacon)  and periodic_sync(in our case Timing Master and Nearby device scanner)

 Is it possible to make  periodic_sync low power for nearby device scanner. We can remove first time sync power consumption requirement in it if Timing Master do the first time sync and pass that sync info to Nearby device scanner using PAST.

In summary, what approach should we take, so we have less chance of dead end considering our use case. Is there any other good possible approach which suites out use case?

Regards,

Hardik Harpal

Parents
  • Hi,

    1)

    Could you explain some more the use-case behind the need for doing a sync ? Do you want the battery powered scanner to scan all the advertising packets? Or is the use-case to save a much power as possible, with long advertising interval, and at the same time long scan intervals, with a small scan window?

    2)

    What advertising interval, scan window and scan interval are you using now?

    3)

    Are you currently using nRF5-SDK, or nRF Connect SDK (NCS) ?

    4)

    We have three device types,

     All devices types are using the nRF52820?

Reply
  • Hi,

    1)

    Could you explain some more the use-case behind the need for doing a sync ? Do you want the battery powered scanner to scan all the advertising packets? Or is the use-case to save a much power as possible, with long advertising interval, and at the same time long scan intervals, with a small scan window?

    2)

    What advertising interval, scan window and scan interval are you using now?

    3)

    Are you currently using nRF5-SDK, or nRF Connect SDK (NCS) ?

    4)

    We have three device types,

     All devices types are using the nRF52820?

Children
No Data
Related