1 of 61

CSE 122/222C ; WES 269BLE Advertising Deep Dive

Pat Pannuto, UC San Diego

CSE 122/222C ; WES 269 [WI25]

CC BY-NC-ND Pat Pannuto – Content developed in coordination Branden Ghena and Brad Campbell

2 of 61

BLE Advertising Deep Dive Goals

  • Refresh Major Concepts in Bluetooth

  • Investigate some questions of real-world performance!

    • What are real-world use cases of advertisements?

    • How much energy do advertisements take?

    • What is the probability of receiving a packet?
      • Of receiving data?

2

CSE 122/222C ; WES 269 [WI25]

CC BY-NC-ND Pat Pannuto – Content developed in coordination Branden Ghena and Brad Campbell

3 of 61

Outline

  • Recap

  • Communicating with Advertisements
    • Advertisement Use Cases
    • Energy Use
    • Packet Collisions

3

CSE 122/222C ; WES 269 [WI25]

CC BY-NC-ND Pat Pannuto – Content developed in coordination Branden Ghena and Brad Campbell

4 of 61

Bluetooth Classic and BLE co-exist & have different use cases

4

Car BT Audio

Bluetooth Low Energy (introduced in v4.0)

  • Small amounts of data transfer
  • Low power requirements
    • “months or years” on small batteries
  • Ideal for IoT devices

Bluetooth Classic (around since 1999)

  • Continuous data communication
  • Can afford higher battery power requirements

Headphones

Mobile Photo

Printers

Fitness Trackers

Tracking Devices�(eg: Apple AirTag)

Switches

and Sensors

CSE 122/222C ; WES 269 [WI25]

CC BY-NC-ND Pat Pannuto – Content developed in coordination Branden Ghena and Brad Campbell

5 of 61

Bluetooth Low Energy Roles: Scanner, Advertiser

5

Scanner

Advertisement:

“Current temp is 76F"

Advertiser

CSE 122/222C ; WES 269 [WI25]

CC BY-NC-ND Pat Pannuto – Content developed in coordination Branden Ghena and Brad Campbell

6 of 61

BLE Central and Peripheral roles are for connections

6

Central

Advertisement:

“I’m the Living Room Light”

Peripheral

Connection Request

Connected (stops advertising)

“Set light brightness to 50%”

(note: this is highly simplified)

CSE 122/222C ; WES 269 [WI25]

CC BY-NC-ND Pat Pannuto – Content developed in coordination Branden Ghena and Brad Campbell

7 of 61

BLE Layers

  • Host – Configuration for advertisements, connections
    • GAP – Generic Access Profile
      • Configure advertising
    • GATT – Generic ATTribute profile
      • Configure connections

  • HCI - Host Controller Interface

  • Controller - Communication
    • Link Layer – send packets
    • RF and PHY – send bits

7

GAP

Host

Controller

CSE 122/222C ; WES 269 [WI25]

CC BY-NC-ND Pat Pannuto – Content developed in coordination Branden Ghena and Brad Campbell

8 of 61

What’s the need for the HCI Layer?

8

Host layers run

on computer

Controller layers run

on BLE hardware

HCI can be software API,

or physical (USB, RS232,..)

  • BT Classic envisioned separate implementations for Host and Controller

CSE 122/222C ; WES 269 [WI25]

CC BY-NC-ND Pat Pannuto – Content developed in coordination Branden Ghena and Brad Campbell

9 of 61

Advertisement and Scanning in Action

  • Advertisements are received when the channel of the scan window and the channel of the advertisement overlap in time (and space)

9

CSE 122/222C ; WES 269 [WI25]

CC BY-NC-ND Pat Pannuto – Content developed in coordination Branden Ghena and Brad Campbell

10 of 61

Advertisement payloads are in Length – Type – Value Format

  • Scanner hops through length/type pairs to find what interests it

10

  • Name
  • Service UUID
  • TX Power Level
  • Manufacturer-specific data
  • And about twenty others
  • Flags

CSE 122/222C ; WES 269 [WI25]

CC BY-NC-ND Pat Pannuto – Content developed in coordination Branden Ghena and Brad Campbell

11 of 61

Outline

  • Recap

  • Communicating with Advertisements
    • Advertisement Use Cases
    • Energy Use
    • Packet Collisions

11

CSE 122/222C ; WES 269 [WI25]

CC BY-NC-ND Pat Pannuto – Content developed in coordination Branden Ghena and Brad Campbell

12 of 61

Advertisements alone can be used for communication

Recall: BLE advertisements are uncoordinated, broadcast messages designed for discovery

  • Yet some devices, applications use only advertisements:
    1. Beacons – iBeacon, Eddystone
    2. Tracking – Tile, Apple AirTag
    3. Local communication – Apple Continuity
    4. Sensor deployments – PowerBlade

12

CSE 122/222C ; WES 269 [WI25]

CC BY-NC-ND Pat Pannuto – Content developed in coordination Branden Ghena and Brad Campbell

13 of 61

Beacons

  • Advertising with advertisements!

  • Web of Things
    • Real-world tags that broadcast virtual-world identifiers

  • iBeacon and Eddystone
    • Formats for sending URLs and device identifiers
    • Use existing BLE fields (Service Data and Manufacturer-Specific Data)

13

CSE 122/222C ; WES 269 [WI25]

CC BY-NC-ND Pat Pannuto – Content developed in coordination Branden Ghena and Brad Campbell

14 of 61

Beacons to advertise presence and send out useful information

  • iBeacon and Eddystone
    • Popular formats for sending URLs and device identifiers
    • Use existing BLE fields (Service Data and Manufacturer-Specific Data)

14

Self-guided tours at museums

CSE 122/222C ; WES 269 [WI25]

CC BY-NC-ND Pat Pannuto – Content developed in coordination Branden Ghena and Brad Campbell

15 of 61

Tracking

  • Find devices nearby
    • Get a sense of distance to the device

  • Find my X
    • Tile: find my keys
    • Apple: find my device

  • Uses TX power level field
    • Lists the transmitted power of the device
    • Pathloss = TX power – RSSI (all in dBm)

15

CSE 122/222C ; WES 269 [WI25]

CC BY-NC-ND Pat Pannuto – Content developed in coordination Branden Ghena and Brad Campbell

16 of 61

BLE signals can be used to track distance to items

  • Find my X
    • Tile, AirTag: find my keys
    • Apple: find my device

  • Find devices nearby
    • Get a sense of distance to the device

16

CSE 122/222C ; WES 269 [WI25]

CC BY-NC-ND Pat Pannuto – Content developed in coordination Branden Ghena and Brad Campbell

17 of 61

nRF Connect Activity

  • Work in pairs with your neighbor
  • Open nRF Connect app on both smartphones
  • 1 person becomes Advertiser
  • Other person becomes Scanner

  • Advertiser:
    • Go to Peripheral
    • Set a name for your Advertiser
    • Start Advertising

  • Scanner:
    • Start scan (Play button on top right)
    • Filter by Advertiser’s name
    • Go to RSSI viewer

17

Advertiser

Scanner

CSE 122/222C ; WES 269 [WI25]

CC BY-NC-ND Pat Pannuto – Content developed in coordination Branden Ghena and Brad Campbell

18 of 61

RSSI and some questions

  • RSSI (Received Signal Strength Indicator): Strength of beacon’s signal as seen on receiving device

  • What’s the highest RSSI value you notice?�How close to the advertiser is this?

  • What do you notice about RSSI when moving away from the advertiser?

18

CSE 122/222C ; WES 269 [WI25]

CC BY-NC-ND Pat Pannuto – Content developed in coordination Branden Ghena and Brad Campbell

19 of 61

RSSI Experiments

  • Can you get different RSSI readings at the same distance?
  • Can get the same RSSI readings at different distances?

19

CSE 122/222C ; WES 269 [WI25]

CC BY-NC-ND Pat Pannuto – Content developed in coordination Branden Ghena and Brad Campbell

20 of 61

Intuition on using signal strength to find distance

  • RSSI (Received Signal Strength Indicator): Strength of beacon’s signal as seen on receiving device

20

Measured Power: -20 dBm

factory-calibrated, read-only constant

“Hey you should be getting an RSSI of -20 dBm at 1 m distance from me”�

RSSI from

received signal

Can roughly figure out

how far the beacon is

CSE 122/222C ; WES 269 [WI25]

CC BY-NC-ND Pat Pannuto – Content developed in coordination Branden Ghena and Brad Campbell

21 of 61

Problem with RSSI-based distance – not accurate

  • Pathloss is NOT only due to distance

  • RSSI is way worse at this than you hope it would be

21

CSE 122/222C ; WES 269 [WI25]

CC BY-NC-ND Pat Pannuto – Content developed in coordination Branden Ghena and Brad Campbell

22 of 61

Apple uses BLE on its devices to implement “Continuity”

  • Key part of Apple’s “ecosystem”, including:

  • Handoff
    • start tasks on one device and continue on another device
  • Universal Clipboard,
    • copying of data from one Apple device and pasting on another
  • iPhone Cellular Calls
    • make calls using iPhone’s cellular connection on Mac or iPad

22

CSE 122/222C ; WES 269 [WI25]

CC BY-NC-ND Pat Pannuto – Content developed in coordination Branden Ghena and Brad Campbell

23 of 61

Uses BLE ”Manufacturer Specific Data” to communicate

  • Communication with only nearby devices

23

Martin, Jeremy, et al. "Handoff all your privacy–a review of apple’s bluetooth low energy continuity protocol." Proceedings on Privacy Enhancing Technologies 2019.4 (2019): 34-53.

CSE 122/222C ; WES 269 [WI25]

CC BY-NC-ND Pat Pannuto – Content developed in coordination Branden Ghena and Brad Campbell

24 of 61

Local Communication: Exposure Notifications

  • Apple and Google collaboration to use phones for contact tracing
    • Smartphone constantly broadcasts identifier.
    • Periodically, each smartphone listens for broadcasts around it.
    • Check list of identifiers to see if you’ve been around someone who is sick.

  • Requires government/healthcare�system interactions to determine when�an identifier should be flagged as sick
    • 24 states adopted this

  • Implemented at OS level in background

24

CSE 122/222C ; WES 269 [WI25]

CC BY-NC-ND Pat Pannuto – Content developed in coordination Branden Ghena and Brad Campbell

25 of 61

Cautionary Tale:�Technology cannot solve all the world’s problems

  • What was the state of CA Notify on October 4, 2022?

  • More seriously, advertisement-only was always going to be limited
  • Bad/imperfect technology is not neutral — this caused measurable harm
    • Post-hoc analyses show contact-tracing apps reduced trust in government, reduced willingness to use future apps (independent of source)

25

CSE 122/222C ; WES 269 [WI25]

CC BY-NC-ND Pat Pannuto – Content developed in coordination Branden Ghena and Brad Campbell

26 of 61

Outline

  • BLE roles
    • Advertising
    • Scanning

  • Advertisement-based Networking?
    • Advertisement Use Cases
    • Energy Use
    • Packet Collisions

26

CSE 122/222C ; WES 269 [WI25]

CC BY-NC-ND Pat Pannuto – Content developed in coordination Branden Ghena and Brad Campbell

27 of 61

Paper: power measurements of BLE advertisements

Schrader, Raphael, et al. "Advertising power consumption of bluetooth low energy systems." 2016 3rd International Symposium on Wireless Systems within the Conferences on Intelligent Data Acquisition and Advanced Computing Systems (IDAACS-SWS). IEEE, 2016.

27

CSE 122/222C ; WES 269 [WI25]

CC BY-NC-ND Pat Pannuto – Content developed in coordination Branden Ghena and Brad Campbell

28 of 61

Energy model for BLE advertisements

28

CSE 122/222C ; WES 269 [WI25]

CC BY-NC-ND Pat Pannuto – Content developed in coordination Branden Ghena and Brad Campbell

29 of 61

Power measured for BLE adv states for hardware

  • Power use and duration energy measured on
    • nRF51 Development Kit (nRF51822 System-on-Chip)
    • nRF52 DK (nRF52832 SoC)

29

nRF51 DK

nRF51822 SoC

CSE 122/222C ; WES 269 [WI25]

CC BY-NC-ND Pat Pannuto – Content developed in coordination Branden Ghena and Brad Campbell

30 of 61

Exercise: How much energy does one advertising cycle consume?�(for the peripheral / advertising device)

  • nrf52 chip
  • 0 dBm TX power
  • 30 byte advertisement (total)
  • Receive window is 100 µs
  • 500 ms advertisement interval
  • Ignore startup, transition, and processing energy use

30

CSE 122/222C ; WES 269 [WI25]

CC BY-NC-ND Pat Pannuto – Content developed in coordination Branden Ghena and Brad Campbell

31 of 61

How much energy does one advertising cycle consume?

  • Energy = TX + RX + sleep
  • TX:
    • 30 bytes @ 1 Mbps
    • 3 channels
    • 240 us * 3 = 720 us
    • 720 us * 33.2 mW = 23.9 µJ
  • RX:
    • RW = 100 us
    • 3 channels
    • 300 us * 32.4 mW = 9.7 µJ
  • Sleep
    • 500 ms interval
    • Radio active = 720 us + 300 us
    • Sleep = 500 ms – 1.02 ms
    • 498.98 ms * 0.0058 mW = 2.9 µJ
  • Energy = 23.9 µJ + 9.7 µJ + 2.9 µJ = 36.5 µJ

31

CSE 122/222C ; WES 269 [WI25]

CC BY-NC-ND Pat Pannuto – Content developed in coordination Branden Ghena and Brad Campbell

32 of 61

How much energy does it cost to send data over advertisements?

  • Configuration
    • nRF51822 microcontroller
    • Maximum payload size
    • +4 dBm transmit power
    • Connectable advertisement
    • Sleep power 11 µW

  • One packet per second example:
    • 110 µW average
    • ~270 days on a CR2032

  • One packet per minute example:
    • 13 µW average
    • ~2250 days (6 years) on a CR2032

32

CSE 122/222C ; WES 269 [WI25]

CC BY-NC-ND Pat Pannuto – Content developed in coordination Branden Ghena and Brad Campbell

33 of 61

Outline

  • BLE roles
    • Advertising
    • Scanning

  • Advertisement-based Networking?
    • Advertisement Use Cases
    • Energy Use
    • Packet Collisions

33

CSE 122/222C ; WES 269 [WI25]

CC BY-NC-ND Pat Pannuto – Content developed in coordination Branden Ghena and Brad Campbell

34 of 61

Example of real-world research:�Sensor data collection via BLE advertisements

  • Motivation:
    • Very resource-constrained device
    • Diverse environments (“quick-deploy”)
  • Requirements:
    • Report data so gateways and users can retrieve it simultaneously
    • Easy introspection during a deployment
  • Idea: Ignore difficult questions about networking
    • Just broadcast the data!
    • Will it work?

34

DeBruin, Samuel, et al. "Powerblade: A low-profile, true-power, plug-through energy meter." Proceedings of the 13th ACM Conference on Embedded Networked Sensor Systems. 2015.

CSE 122/222C ; WES 269 [WI25]

CC BY-NC-ND Pat Pannuto – Content developed in coordination Branden Ghena and Brad Campbell

35 of 61

Questions about network capability

  • What are the odds that a transmitted advertisement will be received?
    • Packet reception rate

  • If M redundant advertisements are sent instead, what are the odds that at least one are received?
    • Data reception rate

  • How do these odds vary with number of devices, advertising interval, and packet size?

35

CSE 122/222C ; WES 269 [WI25]

CC BY-NC-ND Pat Pannuto – Content developed in coordination Branden Ghena and Brad Campbell

36 of 61

BLE advertisements are periodic, broadcast transmissions.

  • Advertisement events occur periodically (Tadv_interval: 20 ms–10 s).
  • Random delay appended before each transmission (tadv_delay: 0–10 ms).
  • Data payload of up to 31 bytes.

36

time

Tadv_interval

+ tadv_delay

advertisement event

advertisement event

Bluetooth SIG. Bluetooth Core Specification 4.2. (2014).

CSE 122/222C ; WES 269 [WI25]

CC BY-NC-ND Pat Pannuto – Content developed in coordination Branden Ghena and Brad Campbell

37 of 61

What causes transmissions not to be received?

  1. Not within range of the gateway
    • Or various other losses within the gateway itself�
  2. Two devices try to send at the same time (packet collision)

37

broadcast domain

X

X

CSE 122/222C ; WES 269 [WI25]

CC BY-NC-ND Pat Pannuto – Content developed in coordination Branden Ghena and Brad Campbell

38 of 61

What is the probability of a packet collision?

38

Packet 0

time

tadv_0

Jeon, Wha Sook, et al. "Performance analysis of neighbor discovery process in bluetooth low-energy networks." (IEEE Transactions on Vehicular Technology, 2016).� Perez-Diaz de Cerio, David, et al. "Analytical and experimental performance evaluation of BLE neighbor discovery process including non-idealities of real chipsets." (Sensors, 2017).

CSE 122/222C ; WES 269 [WI25]

CC BY-NC-ND Pat Pannuto – Content developed in coordination Branden Ghena and Brad Campbell

39 of 61

Let’s define some terms for a single advertiser

39

Packet 0

time

Tadv

Jeon, Wha Sook, et al. "Performance analysis of neighbor discovery process in bluetooth low-energy networks." (IEEE Transactions on Vehicular Technology, 2016).� Perez-Diaz de Cerio, David, et al. "Analytical and experimental performance evaluation of BLE neighbor discovery process including non-idealities of real chipsets." (Sensors, 2017).

Tadv: Transmission Time for packet

tadv_delay: Random advertisement delay

TadvInterval: Advertisement interval

Next Packet

Tadv_interval

tadv_delay

Tadv

CSE 122/222C ; WES 269 [WI25]

CC BY-NC-ND Pat Pannuto – Content developed in coordination Branden Ghena and Brad Campbell

40 of 61

What is the probability of a packet collision?

40

Packet 0

Packet 1

time

tadv_0

tadv_1

Packet 1

Packet 1

Packet 1

Packet 1

Jeon, Wha Sook, et al. "Performance analysis of neighbor discovery process in bluetooth low-energy networks." (IEEE Transactions on Vehicular Technology, 2016).� Perez-Diaz de Cerio, David, et al. "Analytical and experimental performance evaluation of BLE neighbor discovery process including non-idealities of real chipsets." (Sensors, 2017).

CSE 122/222C ; WES 269 [WI25]

CC BY-NC-ND Pat Pannuto – Content developed in coordination Branden Ghena and Brad Campbell

41 of 61

What is the probability of a packet collision?

41

Packet 0

Packet 1

time

tadv_0

tadv_1

 

Probability of Collision

 

Jeon, Wha Sook, et al. "Performance analysis of neighbor discovery process in bluetooth low-energy networks." (IEEE Transactions on Vehicular Technology, 2016).� Perez-Diaz de Cerio, David, et al. "Analytical and experimental performance evaluation of BLE neighbor discovery process including non-idealities of real chipsets." (Sensors, 2017).

CSE 122/222C ; WES 269 [WI25]

CC BY-NC-ND Pat Pannuto – Content developed in coordination Branden Ghena and Brad Campbell

42 of 61

Collisions occur if any part of the two packets overlap

42

Packet 0

Packet 1

time

Tadv

Tadv

Packet 1

Packet 1

Packet 1

Jeon, Wha Sook, et al. "Performance analysis of neighbor discovery process in bluetooth low-energy networks." (IEEE Transactions on Vehicular Technology, 2016).� Perez-Diaz de Cerio, David, et al. "Analytical and experimental performance evaluation of BLE neighbor discovery process including non-idealities of real chipsets." (Sensors, 2017).

no collision

Tadv

Packet 1

t

t - Tadv

t + Tadv

2 * Tadv

Vulnerable period

no collision

CSE 122/222C ; WES 269 [WI25]

CC BY-NC-ND Pat Pannuto – Content developed in coordination Branden Ghena and Brad Campbell

43 of 61

Computing probability of collision from vulnerable period and Tx window

43

Packet 0

time

Tadv

t

t - Tadv

t + Tadv

2 * Tadv

Vulnerable period

Packet 0

Tadv_interval + tadv_delay

tadv_delay

Transmission window

 

Probability of Collision

 

CSE 122/222C ; WES 269 [WI25]

CC BY-NC-ND Pat Pannuto – Content developed in coordination Branden Ghena and Brad Campbell

44 of 61

Break + Determine Probability of Multiple Failures

  • Given:
    • Probability of Collision

  • Determine:
    • Probability of Reception for data sent redundantly across M packets

44

CSE 122/222C ; WES 269 [WI25]

CC BY-NC-ND Pat Pannuto – Content developed in coordination Branden Ghena and Brad Campbell

45 of 61

Easy way to combat inevitable collisions: Just say it twice!�(…or three times, or four times, …)

  •  

45

CSE 122/222C ; WES 269 [WI25]

CC BY-NC-ND Pat Pannuto – Content developed in coordination Branden Ghena and Brad Campbell

46 of 61

Determine Probability of Multiple Failures�(How many times should we say the same thing?)

  • Given:
    • Probability of collision of 1 packet with reference packet

  • Determine:
    • Probability of Reception for data sent redundantly across M packets
    • i.e., what are the odds that at least one of the packets doesn’t collide
    • 1 – (Probability of CollisionM)
      • (Pc)M = Probability that all of them collide
      • 1-that = Probability that NOT all of them collide

46

 

Probability of Collision

 

CSE 122/222C ; WES 269 [WI25]

CC BY-NC-ND Pat Pannuto – Content developed in coordination Branden Ghena and Brad Campbell

47 of 61

When are transmissions from two devices independent?

Assumption is true for any BLE device that has been advertising for some time

    • Sum of random delays grows the uncertainty of transmission.
    • Applied to periodic transmissions, any point in interval becomes equally likely.
      • Range of 1x delay, 2x delay, 3x delay, until it wraps

47

time

Tadv_interval

delay

Tadv_interval

delay

Tadv_interval

delay

CSE 122/222C ; WES 269 [WI25]

CC BY-NC-ND Pat Pannuto – Content developed in coordination Branden Ghena and Brad Campbell

48 of 61

When are transmissions from two devices NOT independent?

Independence assumption is false for two BLE devices that have recently collided.

    • If Tadv_interval is identical, next transmissions with be close in time.
    • Collision is determined by difference of random delays.
    • Further repeat collisions have the same probability of occurrence.

48

time

Tadv_interval

delay

New time period collisions could occur within

CSE 122/222C ; WES 269 [WI25]

CC BY-NC-ND Pat Pannuto – Content developed in coordination Branden Ghena and Brad Campbell

49 of 61

Calculating probability of a repeat collision

  • Difference of two uniform random delays forms a triangular distribution

49

difference in transmission time

probability

tadv_0

tadv_1

Probability of Repeat Collision

 

 

 

 

 

CSE 122/222C ; WES 269 [WI25]

CC BY-NC-ND Pat Pannuto – Content developed in coordination Branden Ghena and Brad Campbell

50 of 61

Important lesson: spend time on things that are important

How important is accounting for repeat collisions with advertisement-based networking?�

Maximum error is about a 1% change in Data Reception Rate.

This is due to size of delay 10 ms compared to size of transmission ~300 µs.

50

200 ms interval advertisements

CSE 122/222C ; WES 269 [WI25]

CC BY-NC-ND Pat Pannuto – Content developed in coordination Branden Ghena and Brad Campbell

51 of 61

Equations for modeling data transmissions

  •  

51

CSE 122/222C ; WES 269 [WI25]

CC BY-NC-ND Pat Pannuto – Content developed in coordination Branden Ghena and Brad Campbell

52 of 61

Is the model valid?

Empirical testing setup:

    • 50 devices
    • 1 meter from scanner
    • 5-10 cm apart�

Transmit monotonically increasing sequence numbers.�

Sweep number of devices and advertising intervals.

52

CSE 122/222C ; WES 269 [WI25]

CC BY-NC-ND Pat Pannuto – Content developed in coordination Branden Ghena and Brad Campbell

53 of 61

The model is accurate across advertisement rates and deployment sizes.

Accuracy is fairly consistent across intervals.

The model consistently overestimates the measured PRR values.

The effect could be due to RF interference.

53

CSE 122/222C ; WES 269 [WI25]

CC BY-NC-ND Pat Pannuto – Content developed in coordination Branden Ghena and Brad Campbell

54 of 61

The model accurately accounts for redundancy as well.

The same dataset can be used to measure the effect of redundancy by grouping sets of sequence numbers.

The model again slightly overestimates, but error reduces quickly as DRR approaches 100%.

54

CSE 122/222C ; WES 269 [WI25]

CC BY-NC-ND Pat Pannuto – Content developed in coordination Branden Ghena and Brad Campbell

55 of 61

What questions can we answer with a collision model?

  • Original questions
    • What are the odds that a transmitted advertisement will be received?
    • If M redundant advertisements are sent instead, what are the odds that at least one are received?
    • How do these odds vary with number of devices, advertising interval, and packet size?

  • Additional questions
    • Can redundancy make advertisements reliable?
    • Is it better to transmit often for high redundancy or rarely for less congestion?

55

CSE 122/222C ; WES 269 [WI25]

CC BY-NC-ND Pat Pannuto – Content developed in coordination Branden Ghena and Brad Campbell

56 of 61

Redundancy results in high DRR even with many devices.

In this example, a sensor has new data once per second and sends it in 1-3 packets.

Even without redundancy, data reception rates never fall below 87% even with 200 devices in a deployment, assuming no interference.

56

CSE 122/222C ; WES 269 [WI25]

CC BY-NC-ND Pat Pannuto – Content developed in coordination Branden Ghena and Brad Campbell

57 of 61

Redundancy is (normally) better than less congestion.

Design question:

  • Send more packets to gain from redundancy?��OR�
  • Send less packets to reduce congestion?

The answer changes, but only with many devices.

57

CSE 122/222C ; WES 269 [WI25]

CC BY-NC-ND Pat Pannuto – Content developed in coordination Branden Ghena and Brad Campbell

58 of 61

Outline

  • BLE roles
    • Advertising
    • Scanning

  • Advertisement-based Networking?
    • Advertisement Use Cases
    • Energy Use
    • Packet Collisions
    • What about Scan Requests & Responses?

58

CSE 122/222C ; WES 269 [WI25]

CC BY-NC-ND Pat Pannuto – Content developed in coordination Branden Ghena and Brad Campbell

59 of 61

Scan requests/responses seem intriguing

  • Why not send most data in scan responses instead of advertisements?
    • Theoretically could reduce energy costs

  • Can we use scan requests as a form of acknowledgement?
    • Could relieve need for redundant transmissions

  • Problem: scan requests/responses don’t work all that well

59

CSE 122/222C ; WES 269 [WI25]

CC BY-NC-ND Pat Pannuto – Content developed in coordination Branden Ghena and Brad Campbell

60 of 61

Scan Requests and Responses don’t work for data use case

  • Goal: provide a little extra advertisement data on demand

  • Problem: exponential backoff for lost messages
    • If there is a request without a response, scanners assume collision with another scanner and exponentially back off from requesting
    • But collisions are far more likely between a device and a scanner, which should not have back off
    • Result is that scan requests will occur far less frequently than expected
    • Instead, better just send additional advertisements with different data

Kravets, Robin, Albert F. Harris III, and Roy Want. "Beacon trains: blazing a trail through dense BLE environments." Proceedings of the Eleventh ACM Workshop on Challenged Networks. 2016.

60

CSE 122/222C ; WES 269 [WI25]

CC BY-NC-ND Pat Pannuto – Content developed in coordination Branden Ghena and Brad Campbell

61 of 61

Next up: BLE Connections

61

CSE 122/222C ; WES 269 [WI25]

CC BY-NC-ND Pat Pannuto – Content developed in coordination Branden Ghena and Brad Campbell