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

Related