Scheduling priorities in Softdevice and Bluetooth Core Specification

Greetings,
I did some research on the priority settings of BLE. Though Softdevice set some scheduling priorities on BLE-related timing events, I can't find the corresponding description in Bluetooth Core Specification.Is this Nordic specific feature?

Another thing I'm interested in is whether I can change these priority settings.

Parents
  • The core specification does not include algorithms for scheduling or prioritizing radio events. The specification theoretically allows an implementation to have multiple radios so that all secheduled events can run concurrently from what I can see, although this is not mentioned explicitly. The specification is in fact written in such a way that it never keeps in mind that events might overlap. The specification however acknowledges in some places that events can be missed due to scheduling overlaps, but nothing about how these should be prioritized.

    It is thus up to each Bluetooth stack developer to come up with their own ideas how to best handle the cases when radio events overlap, and the radio hardware can only do one task at a time. You can therefore assume different stability results for different Bluetooth stacks when they get overloaded with many concurrent events.

Reply
  • The core specification does not include algorithms for scheduling or prioritizing radio events. The specification theoretically allows an implementation to have multiple radios so that all secheduled events can run concurrently from what I can see, although this is not mentioned explicitly. The specification is in fact written in such a way that it never keeps in mind that events might overlap. The specification however acknowledges in some places that events can be missed due to scheduling overlaps, but nothing about how these should be prioritized.

    It is thus up to each Bluetooth stack developer to come up with their own ideas how to best handle the cases when radio events overlap, and the radio hardware can only do one task at a time. You can therefore assume different stability results for different Bluetooth stacks when they get overloaded with many concurrent events.

Children
Related