Separate Device Role From State
Advertising does not mean peripheral yet. The role is assigned when the Link Layer enters Connection.
Step through BLE Link Layer states, roles, scan windows, advertising timing, and broadcast synchronization.
Follow the controller-level states that make BLE feel low power: advertise briefly, scan only during windows, initiate on a connectable packet, then use scheduled connection events. The workbench also shows the later Synchronization and Isochronous Broadcasting states used by periodic advertising and broadcast audio.
Advertising does not mean peripheral yet. The role is assigned when the Link Layer enters Connection.
Advertising interval and scan window decide how often the radio wakes before any GATT traffic exists.
A central path moves Scanning -> Initiating -> Connection after a valid connectable advertisement.
Periodic advertising and broadcast isochronous streams add Synchronization and Isochronous Broadcasting states.
The controller sends advertising PDUs on primary advertising channels and may listen for allowed scan or connection responses.
The teaching estimate includes average random advertising delay.
The role becomes Peripheral only after a connect request creates the connection.
The selected scan window is compatible with the scan interval, and the supervision timeout leaves margin for skipped peripheral events.
No Link Layer transmit or receive activity. It is the default state and the lowest radio duty point.
Sends advertising PDUs in events, usually across primary channels 37, 38, and 39.
Listens during scan windows. Passive scan only receives; active scan may send scan requests.
Looks for connectable advertisements and sends a connect indication or auxiliary connect request.
Uses scheduled data-channel events. The initiator becomes Central; the advertiser becomes Peripheral.
Receives a periodic advertising train or broadcast isochronous stream using synchronization information.
Transmits a Broadcast Isochronous Group made of one or more Broadcast Isochronous Streams.
One state machine has one active state, but controllers may support multiple state-machine instances.
This workbench teaches the BLE Link Layer state machine, not GATT, L2CAP, application pairing, or OS API states. Synchronization and Isochronous Broadcasting are shown as states entered from Standby, even when scanning or advertising helps discover and announce the broadcast schedule.
Discovery time is a teaching estimate based on advertising interval and scan duty. Real discovery also depends on channel order, filters, collisions, PHY support, and scheduling conflicts.
The page avoids absolute milliwatt claims because current depends on silicon, TX power, PHY, voltage, sleep mode, and firmware scheduling.