SWRU271I October 2010 – January 2020 CC2540 , CC2540T , CC2541 , CC2541-Q1 , CC2640R2F
As in Section 3.2, the GAPRole task is a separate task (GAPRole_ProcessEvent) that simplifies the application by handling most of the GAP layer functionality. This task is enabled and configured by the application during initialization. Based on this configuration, many Bluetooth Low Energy protocol stack events are handled directly by the GAPRole task and never passed to the application. Callbacks exist that the application can register with the GAPRole task. This registration notifies the GAPRole task of certain events. For peripheral events or Section C.3.2 for central events, see Section B.3.1.
Based on the configuration of the device, the GAP layer operates in one of the following four roles:
The Bluetooth Low Energy specification supports certain combinations of roles supported by the Bluetooth Low Energy protocol stack. The CC254x does not support simultaneous peripheral and central device roles. This functionality is supported by the CC2640. The peripheral and central roles are described in the following sections.