nrf52 observer scanning intervals erratic in nrf connect 2.7 when connected as peripheral

I have a device that acts as a peripheral with a connecting interval of 100-150mS and  also as an observer listening for beacons.  When I get a beacon I update the scan interval from an interval of 100mS with a window of 20mS to an interval of 500mS with a window of 250mS.  Up until 2.7 this worked correctly and I had no issue sending indicate events during this window. 

In a effort to keep on the latest code base we have updated to 2.7 and this no longer works and it hangs on indicate events seemingly locking up the devices Bluetooth as I do not get an indicate failed for 30s.  Even if I am only connected without indicates enabled i see the same erratic scanning and do not get anywhere near either interval and the scan seems to be random.  When I disconnect i see the expected scanning.

Please let me know if something has changed in 2.7 as this is a show stopper.  Any help would be appreciated.

Observer low and high speed scan
static struct bt_le_scan_param scan_param_slow = {
    .type     = BT_LE_SCAN_TYPE_ACTIVE,
    .interval = 160,        //n*.625 = 100ms  
    .window   = 32,         //n*.625 = 20ms
    .options  = BT_LE_SCAN_OPT_CODED | BT_LE_SCAN_OPT_NO_1M
};

static struct bt_le_scan_param scan_param_fast = {
    .type     = BT_LE_SCAN_TYPE_ACTIVE,
    .interval = 800,            //n*.625 = 500ms  
    .window   = 400,            //n*.625 = 250ms
    .options  = BT_LE_SCAN_OPT_CODED | BT_LE_SCAN_OPT_NO_1M
};
 
peripheral interval
#define BT_LE_CONN_PARAM_HFR BT_LE_CONN_PARAM(  \
                          80, \    
                          120, \
                          0, 600)

2.6.2

2.7 peripheral connected

2.7 peripheral not connected

Parents Reply
  • Hello Edward,

    So yeah, you are not building using the new "sysbuild" then? And you are not building this directly from the SDK folder (maybe by modifying a sample or something), as that might also make it build using sysbuild?

    I should also mention that the VSC extensions functionality is also a bit limited in 2.7, but if this is an older project that you've just copy-pasted a few files to I guess you haven't modifed any of these files in the VSC GUI either?

    You are using NRF52, so I guess this isn't relevant either. I am not really seeing anything here either, but let me know something catches your eye. What nRF52 Soc is it?

    Regards,

    Elfving

Children
Related