Noticing that Channel Map updates from a Connected Phone is disabling Connection Subrating on my nRF53 peripheral

I have a peripheral which has an nRF53.  It connects to either an Android of iOS phone.  I've been testing add Connection Subrating.  However I've been noticing that the Connection Subrating on the device keeps switching between my configured Subrating and Disabled Subrating.  In investigating the Sniffer trace, it seems that Connection Subrating is disabled every time the Phone sends a Channel Man Update.  Is this an expected behaviour when Channel Map Updates are sent from the Central?

My Connection Subrating Config:

  • Subrate Factor Max: 9
  • Subrate Factor Min: 7
  • Continuation Number: 4
  • Latency: 0

The Subrate-Disable Config that seems to auto-trigger on Channel Map updates:

  • Subrate Factor: 1
  • Continuation Number: 0
  • Latency: 0

The Connection Interval is 50msec.   I don't see anything in the 5.3 Spec that would dictate this behavior?

Parents
  • Hi Dave, 

    Let me show you how I interpret the BLE spec Mostly in Vol 6 and Part B

    Section 5.1.2 

    Makes me interpret that LL_CHANNEL_MAP_IND PDU includes an instant parameter which is the connection event at which new channel map shall be used.

    Here, (LL_SUBRATE_IND) is defined to use an Instant for the first sub‐rated anchor point, Agree?

    Section 5.3, says that twoo procedures are incompatible if both involve an instant.
    Also 

    Based on this my interpretation is that every time the phone’s controller sends an LL_CHANNEL_MAP_IND (to change the channel map “Instant”), the Link Layer must treat this as an incompatible new procedure and abort until you renegotiate again. And our samples is not demonstrating initiating renegotiations.

Reply
  • Hi Dave, 

    Let me show you how I interpret the BLE spec Mostly in Vol 6 and Part B

    Section 5.1.2 

    Makes me interpret that LL_CHANNEL_MAP_IND PDU includes an instant parameter which is the connection event at which new channel map shall be used.

    Here, (LL_SUBRATE_IND) is defined to use an Instant for the first sub‐rated anchor point, Agree?

    Section 5.3, says that twoo procedures are incompatible if both involve an instant.
    Also 

    Based on this my interpretation is that every time the phone’s controller sends an LL_CHANNEL_MAP_IND (to change the channel map “Instant”), the Link Layer must treat this as an incompatible new procedure and abort until you renegotiate again. And our samples is not demonstrating initiating renegotiations.

Children
No Data
Related