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

ble_app_beacon with sleep mode

ble_app_beacon.rarhello there i used ble_app_beacon example. i want to make some modifications. i want to put it in sleep mode after some time and again wake up after some time? can you tell me how to do this?? should i use timer interrupt example??

Parents
  • Hi rushin

    Thank you for your question and sorry for my late response on your case

    When softdevice is enabled (as with the ble_app_beacon example) the nRF51 will periodically sleep between BLE events. Further info on how that works is given in the nRF51 current consumption guide, section "Low power mode with BLE softdevice"

    In e.g. the ble_app_bps in nRF51 SDK 10.0.0, application timers are set up to periodically generate interrupts in the application. You need to do three things in your application to implement an application timer:

    1. Initialize your timer, as done in timer_init() function in the ble_app_bps example
    2. Start your timer, as done in the application_timers_start() function
    3. Implement a timer callback function, as done in the battery_level_meas_timeout_handler() function

    How to connect to the device with Master Control Panel is described in this tutorial, and also how to connect with your smartphone, in the section "Connecting to the nRF51 DK"

  • By enabling advertising, you are advertising continuously. You can however not send advertising packets with higher frequency than 50Hz (per 20ms). That limitation is defined in the Bluetooth specification.

    If you have advertising packets sent out per 20ms then a scanning device should be able to connect to your device within 30ms if advertising packet is not corrupted. A scanning device can continuously scan in order to connect quickly.

    You can add as many application timers as you like. Just follow the three steps described above. For code reference, see the example that I attached to my answer on your sister thread.

Reply
  • By enabling advertising, you are advertising continuously. You can however not send advertising packets with higher frequency than 50Hz (per 20ms). That limitation is defined in the Bluetooth specification.

    If you have advertising packets sent out per 20ms then a scanning device should be able to connect to your device within 30ms if advertising packet is not corrupted. A scanning device can continuously scan in order to connect quickly.

    You can add as many application timers as you like. Just follow the three steps described above. For code reference, see the example that I attached to my answer on your sister thread.

Children
No Data
Related