cv-track: leveraging carrier frequency offset variation

5
CV-Track: Leveraging Carrier Frequency Oset Variation for BLE Signal Detection Weiping Sun Seoul National University Department of ECE and INMC Seoul, Republic of Korea [email protected] Jeongyeup Paek Chung-Ang University School of CSE Seoul, Republic of Korea [email protected] Sunghyun Choi Seoul National University Department of ECE and INMC Seoul, Republic of Korea [email protected] ABSTRACT We propose CV-Track, a real-time, low-complexity BLE signal detec- tion scheme that leverages carrier frequency oset (CFO) estimation of commodity BLE chipsets to enable detection of the intact part of a partially corrupted BLE packet. It detects BLE signal by ob- serving the variation of the estimated CFO values based on the nding that the CFO values are almost constant for BLE signal while dispersing otherwise. With CV-Track, we can salvage useful information such as received signal strength from an erroneous BLE packet which would otherwise be wasted. We implement a prototype of CV-Track on commodity BLE chipset, and evaluate its performance in an indoor environment. Our results indicate that CV-Track detects signicantly more BLE packets compared with legacy BLE receiver under cross-technology interference. CCS CONCEPTS Networks Network protocol design; Cross-layer protocols; Net- work measurement; KEYWORDS BLE, GFSK, Signal Detection, Carrier Frequency Oset (CFO) ACM Reference format: Weiping Sun, Jeongyeup Paek, and Sunghyun Choi. 2017. CV-Track: Lever- aging Carrier Frequency Oset Variation for BLE Signal Detection. In Pro- ceedings of HotWireless’17, October 16, 2017, Snowbird, UT, USA., , 5 pages. DOI: http://dx.doi.org/10.1145/3127882.3127886 1 INTRODUCTION Bluetooth Low Energy (BLE) [13] is an extension of the Bluetooth standard in version 4.0 that further enhances the energy-eciency of the underlying Bluetooth technology; operating with just a sin- gle coin-cell battery, a BLE beacon can sustain for several months to years. Such aspects make BLE ideal for applications requiring transfers of small amount of data, and BLE has since attracted enor- mous attention in a wide range of industrial and consumer applica- tions, but especially for its fascination on the indoor context-aware Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for prot or commercial advantage and that copies bear this notice and the full citation on the rst page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specic permission and/or a fee. Request permissions from [email protected]. HotWireless’17, October 16, 2017, Snowbird, UT, USA. © 2017 ACM. ISBN 978-1-4503-5140-9/17/10. . . $15.00 DOI: http://dx.doi.org/10.1145/3127882.3127886 services; For example, Apple announced iBeacon 1 protocol for an industry-wide solution, which can provide context-awareness based on the signal strength of BLE packets transferred between pre- installed BLE beacons and iBeacon-compatible portable devices such as smartphones. These have allowed widespread adoption and deployment of indoor proximity/location enabled applications in our everyday lives [2, 6, 8]. A key challenge that BLE faces is loss of information due to colli- sion and interference. Bit-error occurs when signal-to-interference- and-noise ratio (SINR) is insucient to decode the bits correctly. As- suming that the receiver is within communication range of the trans- mitter, bit-error is often due to packet collision or cross-technology interference. For example, on the increasingly crowded 2.4 GHz ISM band, ambient interference is a salient factor that accounts for low SINR, where Wi-Fi, BLE, and Zigbee channels overlap (see Figure 1), implying the existence of cross-technology interference. To address or mitigate this challenge, there needs to be a way to detect the bit-error, and also a way to distinguish the cause of that error. Depending on the cause, the action to be taken, or lack there of, may dier. As with many wireless technologies, BLE uses cyclic redundancy check (CRC) to detect bit-errors. Since we cannot judge the correct- ness for every bit of the packet when there is a CRC mismatch, a single bit-error can result in a discarded packet. Note that we will lose all information in that packet (implicit or explicit) if a packet is discarded. This is wasteful since very often, only part of a packet is in error while the rest is correct, especially when the packet is partially corrupted by ambient interference—a common phenome- non on 2.4 GHz ISM band. Said dierently, if we can retrieve the intact part of a partially erroneous packet, we may be able to save signicant amount of information from a transmission that would otherwise have been wasted. Although discriminating the intact part of a partially erroneous packet is a challenging task, it can play an enabling role in various applications. For example, received signal strength indicator (RSSI) of an erroneous BLE packet can be retrieved through the intact part of the packet if we can detect it, which is essential for RSSI- based applications such as indoor localization, proximity-aware services, and link control algorithms. Furthermore, it may be possi- ble to recover the original packet from multiple partially erroneous retransmissions by combining the intact parts of the packets [3]. Besides, knowing the existence of BLE signal itself (distinguished from other cross-technology signal) has a meaningful implication for network diagnosis and trouble-shooting, especially in the era of 1 iBeacon for developers, Apple, https://developer.apple.com/ibeacon. Session 1: Novel Physical-Layer Techniques HotWireless’17, October 16, 2017, Snowbird, UT, USA 1

Upload: others

Post on 07-Jan-2022

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: CV-Track: Leveraging Carrier Frequency Offset Variation

CV-Track: Leveraging Carrier Frequency O�set Variation forBLE Signal Detection

Weiping SunSeoul National University

Department of ECE and INMCSeoul, Republic of [email protected]

Jeongyeup PaekChung-Ang University

School of CSESeoul, Republic of Korea

[email protected]

Sunghyun ChoiSeoul National University

Department of ECE and INMCSeoul, Republic of Korea

[email protected]

ABSTRACTWe propose CV-Track, a real-time, low-complexity BLE signal detec-tion scheme that leverages carrier frequency o�set (CFO) estimationof commodity BLE chipsets to enable detection of the intact partof a partially corrupted BLE packet. It detects BLE signal by ob-serving the variation of the estimated CFO values based on the�nding that the CFO values are almost constant for BLE signalwhile dispersing otherwise. With CV-Track, we can salvage usefulinformation such as received signal strength from an erroneousBLE packet which would otherwise be wasted. We implement aprototype of CV-Track on commodity BLE chipset, and evaluate itsperformance in an indoor environment. Our results indicate thatCV-Track detects signi�cantly more BLE packets compared withlegacy BLE receiver under cross-technology interference.

CCS CONCEPTS• Networks → Network protocol design; Cross-layer protocols; Net-work measurement;

KEYWORDSBLE, GFSK, Signal Detection, Carrier Frequency O�set (CFO)

ACM Reference format:Weiping Sun, Jeongyeup Paek, and Sunghyun Choi. 2017. CV-Track: Lever-aging Carrier Frequency O�set Variation for BLE Signal Detection. In Pro-ceedings of HotWireless’17, October 16, 2017, Snowbird, UT, USA., , 5 pages.DOI: http://dx.doi.org/10.1145/3127882.3127886

1 INTRODUCTIONBluetooth Low Energy (BLE) [13] is an extension of the Bluetoothstandard in version 4.0 that further enhances the energy-e�ciencyof the underlying Bluetooth technology; operating with just a sin-gle coin-cell battery, a BLE beacon can sustain for several monthsto years. Such aspects make BLE ideal for applications requiringtransfers of small amount of data, and BLE has since attracted enor-mous attention in a wide range of industrial and consumer applica-tions, but especially for its fascination on the indoor context-aware

Permission to make digital or hard copies of all or part of this work for personal orclassroom use is granted without fee provided that copies are not made or distributedfor pro�t or commercial advantage and that copies bear this notice and the full citationon the �rst page. Copyrights for components of this work owned by others than ACMmust be honored. Abstracting with credit is permitted. To copy otherwise, or republish,to post on servers or to redistribute to lists, requires prior speci�c permission and/or afee. Request permissions from [email protected]’17, October 16, 2017, Snowbird, UT, USA.© 2017 ACM. ISBN 978-1-4503-5140-9/17/10. . . $15.00DOI: http://dx.doi.org/10.1145/3127882.3127886

services; For example, Apple announced iBeacon1 protocol for anindustry-wide solution, which can provide context-awareness basedon the signal strength of BLE packets transferred between pre-installed BLE beacons and iBeacon-compatible portable devicessuch as smartphones. These have allowed widespread adoption anddeployment of indoor proximity/location enabled applications inour everyday lives [2, 6, 8].

A key challenge that BLE faces is loss of information due to colli-sion and interference. Bit-error occurs when signal-to-interference-and-noise ratio (SINR) is insu�cient to decode the bits correctly. As-suming that the receiver is within communication range of the trans-mitter, bit-error is often due to packet collision or cross-technologyinterference. For example, on the increasingly crowded 2.4 GHzISM band, ambient interference is a salient factor that accountsfor low SINR, where Wi-Fi, BLE, and Zigbee channels overlap (seeFigure 1), implying the existence of cross-technology interference.To address or mitigate this challenge, there needs to be a way todetect the bit-error, and also a way to distinguish the cause of thaterror. Depending on the cause, the action to be taken, or lack thereof, may di�er.

As with many wireless technologies, BLE uses cyclic redundancycheck (CRC) to detect bit-errors. Since we cannot judge the correct-ness for every bit of the packet when there is a CRC mismatch, asingle bit-error can result in a discarded packet. Note that we willlose all information in that packet (implicit or explicit) if a packetis discarded. This is wasteful since very often, only part of a packetis in error while the rest is correct, especially when the packet ispartially corrupted by ambient interference—a common phenome-non on 2.4 GHz ISM band. Said di�erently, if we can retrieve theintact part of a partially erroneous packet, we may be able to savesigni�cant amount of information from a transmission that wouldotherwise have been wasted.

Although discriminating the intact part of a partially erroneouspacket is a challenging task, it can play an enabling role in variousapplications. For example, received signal strength indicator (RSSI)of an erroneous BLE packet can be retrieved through the intactpart of the packet if we can detect it, which is essential for RSSI-based applications such as indoor localization, proximity-awareservices, and link control algorithms. Furthermore, it may be possi-ble to recover the original packet from multiple partially erroneousretransmissions by combining the intact parts of the packets [3].Besides, knowing the existence of BLE signal itself (distinguishedfrom other cross-technology signal) has a meaningful implicationfor network diagnosis and trouble-shooting, especially in the era of

1iBeacon for developers, Apple, https://developer.apple.com/ibeacon.

Session 1: Novel Physical-Layer Techniques HotWireless’17, October 16, 2017, Snowbird, UT, USA

1

Page 2: CV-Track: Leveraging Carrier Frequency Offset Variation

Internet of things (IoT) where �nding out the cause of a packet-lossbecomes more burdensome due to the massive cross-platform de-ployments of embedded technologies. If we can detect BLE signalwith �ner granularity than packet-level, it will be easier to judgewhether a packet has (or has not) been transmitted on the BLElink, and whether there were cross-technology interference in thechannel, providing opportunity for improved network performance.

Motivated by the above challenge, in this work, we propose CV-Track, a real-time, low-complexity BLE signal detection scheme thatdetects the intact part of an corrupted BLE packet using commodityBLE chipset. The key distinguishing aspect of CV-Track from anyother prior work is that we make novel use of the carrier frequencyo�set (CFO) estimation module in commodity BLE transceiversto detect BLE signal by observing the variation of the estimatedCFO values with and without cross-technology interference. CFOis the di�erence in the frequency between the transmitter and thereceiver oscillators. Virtually all BLE chipsets incorporate a CFOestimation module to counteract the frequency mismatch becausethe underlying modulation scheme, i.e., Gaussian frequency shiftkeying (GFSK), is vulnerable to CFO. An important characteristicsof the CFO is that it is pair-wise (near) constant. That is, for agiven pair of BLE transmitter and receiver, their relative di�erencein the oscillator frequency is near constant. Thus, through theoutput of the CFO estimation module, it is possible to infer that anincoming signal is BLE signal without disruptive interference whenthe estimated CFO values are almost constant while dispersingotherwise (as we will later show). We use this feature to detect BLEsignal.

The contributions of this paper are as follows;• We are the �rst to propose and investigate the use of estimated

CFO values in commodity BLE chipset for detecting BLE signal.• We propose CV-Track, a CFO Variation-based BLE signal detec-

tion scheme that can detect intact part of corrupted BLE packetsand infer the transmitter based on the uniqueness of pair-wiseCFO and the timing of the detection.

• We implement a prototype of CV-Track on commodity BLEchipset, and evaluate its performance via experiments in an in-door environment.

2 PRELIMINARYIn this section, we provide brief overview and background on BLEchannelization, GFSK modulation, and the CFO estimation.

2.1 ChannelizationThere are 40 BLE channels de�ned on 2.4 GHz ISM band, orderedfrom number 0 to 39 with 2 MHz spacing. The band is shared withother technologies, e.g, Wi-Fi, Zigbee, and microwave oven (MWO),thus introducing cross-technology interference. Figure 1 highlightsthree BLE advertising channels, i.e., channels 37, 38, and 39, whereBLE beacons transmit BLE advertising packets for proximity-awareapplications. Although the BLE advertising channels are designedto fall in between three non-overlapping Wi-Fi channels 1, 6, and11 to reduce Wi-Fi interference in the U.S., in many other countries,Wi-Fi channels 1, 5, 9, and 13 are widely used such that the threeBLE advertising channels overlap signi�cantly and face the risk ofsu�ering Wi-Fi interference. Furthermore, three Zigbee channels

CH 1

(2412)

CH 5

(2432)

CH 9

(2452)

CH 13

(2472)

Wi-Fi

BLE

Freq.

(MHz)

CH 37

(2402)

CH 38

(2426)CH 39

(2480)

CH 11

(2405)

CH 15

(2425)

CH 26

(2480)

Freq.

(MHz)

Freq.

(MHz)

Zigbee

... ...

... ...

...

...

Figure 1: Overlap of frequency usage inWi-Fi, BLE, and Zig-bee channel assignment on 2.4 GHz ISM band.

11, 15, and 26 also overlap with the three BLE advertising channels,respectively.

2.2 GFSKBLE employs GFSK modulation. A baseband GFSK signal is gener-ated by modulating bit 1 and 0 with symmetric positive and negativefrequency deviations relative to DC level, respectively, and in de-modulation, received signal’s frequency component is extractedand compared with the DC level per bit-period to make a decisionbetween the two hypotheses. Speci�cally, baseband pulses (∈ {±1})generated from data bit sequence by non-return-to-zero (NRZ) linecoding are �rst passed through the Gaussian �lter before modu-lation to make the pulse transition smoother. The pulse shapingfunction reduces the modulated signal’s spectrum width, thus re-ducing interference with neighboring channels, but at the cost ofincreasing inter-symbol interference (ISI)

Modulation: The functional blocks of a typical GFSK transceiverare shown in Figure 2. After modulation, a passband GFSK signalcan be represented as

s (t ) =

√2ET

cos[2π fc t + θ (t ) + θ0], (1)where E, T , fc , and θ0 are symbol energy, symbol period, carrierfrequency, and arbitrary initial phase, respectively. The phase devi-ation θ (t ) is determined by the original baseband pulse sequencex[n] (∈ {±1}), since

θ (t ) =πh

T

∫ t

−∞

∞∑n=−∞

x[n]r (τ − nT ) dτ , (2)

where h and r (·) indicate modulation index2 and Gaussian pulseshaping function, respectively. The pulse shaping function r (·) isde�ned as

r (t ) = Q(√

2αT(−12−

t

T

))−Q

(√2αT

( 12−

t

T

)), (3)

where Q (·) and α are Q-function and 5.336B, respectively. B is the3 dB bandwidth of the Gaussian �lter. Figure 3 illustrates the pulseshaping function versus t/T for three values of BT product. Oneobservation from these curves is that the ISI introduced by theGaussian pulse shaping �lter extends to one adjacent (on each side)symbol when BT = 0.5 which is the case of BLE.

Demodulation: A typical GFSK demodulation utilizes phase de-tector and frequency discriminator as shown in Figure 2 [1]. If we2BLE standard de�nes that modulation index is between 0.45 and 0.55.

Session 1: Novel Physical-Layer Techniques HotWireless’17, October 16, 2017, Snowbird, UT, USA

2

Page 3: CV-Track: Leveraging Carrier Frequency Offset Variation

+1

-1

GF ( )ò

cos( )

sin( )

+

-( )s t ˆ( )s t

LPF

LPF

1tan- ( )d

dt110100190090

CFOMAX/MIN

AVG filter

Figure 2: Structure of GFSK transceivers, a transmitter (left) and a receiver (right).

0

0.2

0.4

0.6

0.8

1

-2 -1.5 -1 -0.5 0 0.5 1 1.5 2

r(t)

Normalized time (t/T)

BT=0.3BT=0.5BT=∞

Figure 3: Gaussian pulse shaping func-tion.

ignore the noise term for simplicity, after down-conversion, thetwo inputs of the phase detector, in-phase (I) and quadrature (Q)components of the baseband signal, can be expressed as

I (t ) = cos(πh

T

∫ t

−∞

x̃ (τ )dτ + θ0

)(4)

Q (t ) = sin(πh

T

∫ t

−∞

x̃ (τ )dτ + θ0

), (5)

respectively, where

x̃ (t ) =∞∑

k=−∞

x[k]r (t − kT ) (6)

corresponds to the ISI version of x[n]. We can obtain x̃ (t ) from theoutput of the frequency discriminator f̃ (t ) since

f̃ (t ) =d

dt

(tan−1

Q (t )

I (t )

)=

πh

T

∞∑k=−∞

x[k]r (t − kT ) =πh

Tx̃ (t ). (7)

Finally, we can recover x[n] and hence the data bit sequence bycomparing x̃ (t ) with DC level at the middle of each symbol period.

2.3 CFO Estimation ModuleIf there is residual CFO in demodulation process, not only does x̃ (t )contain ISI, but it also contains DC o�set, which further disruptsdemodulation. Accordingly, commodity GFSK transceivers incor-porate a CFO estimation module to compensate it, which is alwayson to cope with sudden BLE packet reception [4].

Typically, CFO is estimated using so-called “MaxMin” algorithmin commodity BLE chipsets [4, 10, 12]; the maximum and the min-imum levels of the incoming signal’s frequency component aresuccessively identi�ed and then averaged to yield estimated CFO,exploiting the symmetry in the levels of positive and negative fre-quency deviations of GFSK signal. More speci�cally, whenever the�rst derivative of the frequency component turns from positiveto negative (negative to positive), the maximum (the minimum) isupdated with the current level. In most BLE chipsets, the estimatedCFO values are stored in a register, and accessible through an I/Ointerface. In the following, ‘a CFO sample’ means an output valueof the CFO estimation module with Max/Min algorithm.

3 PROPOSED SCHEMEIn this section, we propose CV-Track with the following features.• Real-time: CV-Track detects BLE signal in real-time, which is

an indispensable feature for context-aware services.• Low-cost: It is implemented with commodity o�-the-shelf BLE

chipset without any need for expensive nor specialized hardware.

1

0

1

0

1

0 0

1

Time

Freq.

11

00

11

00

1 1 1

00 00 00

11 11 11

0 0 0

Estimated CFO

LocalDC

Figure 4: Repetitive bit pattern leads constant CFO samples.

• Low-complexity: CV-Track detects BLE signal by simply in-specting whether the stream of CFO samples are within a prede-�ned range without requiring any advanced signal processing.

3.1 CFO CharacteristicsCFO is normally caused by 1) frequency mismatch (i.e., the di�er-ence in clock drift rates) between the oscillators of transmitter andreceiver, and 2) the Doppler e�ect when transmitter or receiveris moving. In indoor environments where BLE is most likely tobe used, the former dominates. It has been shown in [7, 9] thatthe amount of frequency mismatch are constant for a certain timeperiod (less than 1000 seconds) and changes gradually even withsudden temperature variation. This implies that we can expectconstant CFO samples during intact part of a single BLE packet.

However, the ISI introduced by the Gaussian pulse shaping func-tion (cf. Figure 3) makes the levels of the positive and the negativefrequency deviations slightly asymmetric as shown in Figure 4; themaximum level of 11 is higher than that of a single 1, and similarly,the minimum level of 00 is lower than that of a single 0. Accordingly,the average of these maximum and minimum levels also �uctuatesslightly if random bits are transmitted.

Ideally, the CFO samples obtained from intact BLE signal should beas constant as possible to make it distinct from other types of signalsthat are unlikely to satisfy the symmetry between maximum andminimum levels of frequency component. We found that even withISI, as long as the data bits have repetitive pattern, i.e., the numbersof consecutive 1s and 0s are constant, respectively, the resultantCFO samples remain constant. Four di�erent repetitive bit patternsare illustrated in Figure 4.

We conduct measurement study with seven di�erent types ofwireless signals to verify their CFO characteristics, using an Uber-tooth device (http://ubertooth.sourceforge.net/) as BLE receiver,which incorporates a commodity BLE transceiver (CC2400 [4]).

Figure 5 plots the empirical CDF (ECDF) of ∆cfo, de�ned as thedi�erence between two consecutive CFO samples for each type ofsignal. We observe that the ECDF curve with BLE signal with repet-itive bit pattern is densely concentrated near zero, meaning thatthe CFO samples are almost constant, while other types of signalsmake ECDF curves relatively �at, demonstrating the distinctivefeature of the BLE signal with repetitive bit pattern, which can be

Session 1: Novel Physical-Layer Techniques HotWireless’17, October 16, 2017, Snowbird, UT, USA

3

Page 4: CV-Track: Leveraging Carrier Frequency Offset Variation

0

0.2

0.4

0.6

0.8

1

0 200 400 600 800

Em

piric

al C

DF

∆cfo (kHz)

NoiseWi-Fi (DSSS)Wi-Fi (OFDM)

ZigbeeMWO

BLE randomBLE repetitive

Figure 5: Empirical CDF of∆cfo.

-300

-100

100

300

0 10 20 30 40-110

-90

-70

-50

CF

O (

kH

z)

RS

SI (d

Bm

)

Sample index

CFORSSI

Figure 6: Captured CFO andRSSI samples.

MAX/MIN

AVGfilter

ik + +i

tcfo cfo d- < Y

N

0ik ¬

ik l>tcfo Y

( ) adv

adv

mod

10

i

last

i

last

t t T

t t

T

-

ê ú-< × ê ú

ë û

N Y

END

dN + +

CFO criterion

Periodicity criterion

N

Figure 7: Proposed BLE signal detection and identi�cation algo-rithm in CV-Track.

used to detect BLE signal. Furthermore, Figure 6 shows a snippet ofcaptured CFO samples along with RSSI measurements. The middlepart (in dotted box, samples 15–25) represents the intact part of aBLE signal, whereas the left part (samples 0–15) is a BLE signal cor-rupted with Wi-Fi interference, and the right part (samples 25–40)is white noise, i.e., no BLE signal. As it can be seen, only the intactpart of BLE signal provides stable and near constant CFO (as wellas RSSI) values.

3.2 Detection and Identi�cationBasically, CV-Track deems there is an intact BLE signal, if morethan λ CFO samples con�ned within the range (−δ ,+δ ) are succes-sively observed. However, it is insu�cient to just detect the signal;knowing the transmitter of the signal is also very important. To thisend, CV-Track uses pair-wise uniqueness of CFO and timing based�ngerprinting to identify the transmitter, based on the facts that 1)the amount of frequency mismatch between two independent BLEdevices are constant for a time period much longer than BLE packetinterval (cf. Section 3.1), and 2) the BLE packets, especially BLEadvertising packets used in context-aware services, are periodicallytransmitted.

The overall operation of the BLE signal detection and identi�ca-tion algorithm used in CV-Track works as follows. First, for eachsuccessfully received BLE packet, CV-Track associates the averageof the CFO samples observed during the packet reception, denotedas c f oi , with the device index i . When a new CFO sample c f ot isgenerated at time t , CV-Track takes it to conduct the detection andidenti�cation algorithm as illustrated in Figure 7, where ki , Tadv,t ilast , and Nd indicate CFO counter for BLE device i , BLE advertis-ing packet interval, the last time a BLE packet from device i wasdetected by CV-Track or successfully received, and the number ofBLE devices identi�ed as the transmitter of the current BLE signal,respectively. The coe�cient 10 in the righthand side of the periodic-ity criterion indicates the 0 to 10 ms randomness introduced in eachBLE advertising interval de�ned in [13]. The algorithm illustratedin Figure 7 is conducted for every previously identi�ed BLE devicesuch that if Nd eventually exceeds one, i.e., there are more thanone candidates for current detection, the detection is discarded. IfNd eventually becomes one, i.e., there is only one candidate, wereset the CFO counter for the candidate device and replace the lastdetection time and the average CFO associated with the candidatedevice with current time t and the average of the most recently ob-served λ CFO samples, respectively. After conducting the algorithmfor all the previously identi�ed BLE devices, we reset Nd .

4 PERFORMANCE EVALUATION

Implementation: We use Estimote (https://estimote.com/) as theBLE transmitter which supports various types of BLE advertisingpackets including iBeacon. We employ iBeacon format in the exper-iments, which provides several con�gurable �elds including UUID(16 bytes), major (2 bytes), and minor (2 bytes). In order to improvedetection accuracy, we modify the con�gurable �elds such that theyhave repetitive bit pattern 1010...1010 after data whitening—theprocess used to scramble the original bits with a prede�ned functionbefore modulating them to make them seemingly random—exceptthe minor �eld, which is used as a beacon identi�er.

For the receiver, we implement CV-Track on Ubertooth platform.The microcontroller (MCU) reads CFO samples from CC2400 chipsetcontinuously, and runs the detection and identi�cation algorithm.While doing this, although CC2400 can generate CFO samples everysymbol period (1 µs), the read operation at the MCU is much slower,thus limiting the actual CFO sampling rate to around 105 Hz. Thismeans that two consecutive CFO samples we observe actually span10 µs—the time for 10 symbols to pass—such that the performance ofthe current prototype can be further improved by accelerating theread operation of the MCU. Besides, we set λ and δ to 7 and 10.4 kHz,respectively, which are empirically determined as a condition thatguarantees reasonable detection performance with negligible falsepositive rate.

Packet detection experiment: The experiments were conductedin an o�ce environment where there are three devices; a BLEbeacon, a BLE receiver (operating in legacy mode or CV-Track)placed 1 m away from the BLE beacon, and an interferer placed1 m away from the BLE receiver. The interferer is either a Wi-Fi AP (with 20 dBm tx power), a Zigbee Kmote (with 0 dBm txpower), or an MWO. The interferer is always fully loaded exceptMWO which conducts frequency sweeping (around 2455 MHz) withON-OFF pattern as designed by the manufacturer. We conduct theexperiments on three BLE advertising channels, 37 (at 2402 MHz),38 (at 2426 MHz), and 39 (at 2480 MHz), and the BLE channel at2455 MHz where the MWO signal is mostly concentrated. In eachexperiment, the interferer’s operating channel is set as closely aspossible to the corresponding BLE channel except MWO. In theexperiments, we consider a BLE packet as detected by CV-Track ifthe entire packet is successfully received or if an intact BLE signalwhich satis�es the criteria illustrated in Figure 7 is detected. In thecase of legacy scheme, we only count the former case.

Figure 8 shows the packet detection rate (PDR) at the BLE re-ceiver operating with the legacy scheme (‘L’) or CV-Track (‘C’)for the cases with three di�erent types of interferer. We observe

Session 1: Novel Physical-Layer Techniques HotWireless’17, October 16, 2017, Snowbird, UT, USA

4

Page 5: CV-Track: Leveraging Carrier Frequency Offset Variation

0

0.2

0.4

0.6

0.8

1

1.2

1.4

Wi-Fi Zigbee MWO w/o intf.

PD

R

Type of interference

L (2402)

C (2402)

L (2426)

C (2426)

L (2480)

C (2480)

L (2455)

C (2455)

Figure 8: BLE packet detection results.

10m

11 m

Beacon

4

6

Wi-Fi

1 012

3 4

BLE rx

(a) Topology

0

0.2

0.4

0.6

0.8

1

1.2

0 1 2 3 4

PIR

Beacon ID

L (2402) C (2402)

(b) Result

Figure 9: BLE packet identi�cation results.

that when there is no interference (indicated as ‘w/o intf.’) or justMWO interference, PDRs are fairly high, while Zigbee or Wi-Fiinterference noticeably impose adverse impact on the detectionperformance. We �nd CV-Track superior to the legacy scheme in allcases. Note that at 2402 MHz, the detection performance is muchbetter than that in other cases since the BLE channel at 2402 MHz isfarther away from the most closely located Wi-Fi or Zigbee channelthan the other BLE channels. In real applications, a BLE scanner,the device responsible for receiving BLE advertising packets, issupposed to scan all the BLE advertising channels sequentially asde�ned in the BLE standard, which means the best performanceof the three advertising channels is of signi�cant concern since itdetermines the actual performance.

Packet identi�cation experiment: We also conduct experimentswith �ve BLE beacons to verify the identi�cation capability of CV-Track. In this experiments, we only count the BLE packet detectionwhen its transmitter is identi�ed correctly. The experiments are con-ducted with topology shown in Figure 9(a); there is a BLE receiverat 2402 MHz, a Wi-Fi AP with fully loaded tra�c at Wi-Fi channel 1(closest Wi-Fi channel to 2402 MHz), and �ve BLE beacons deployedin an o�ce environment. Figure 9(b) shows the packet identi�cationrate (PIR) at the BLE receiver with respect to each BLE beacon. Weobserve that with CV-Track, the BLE receiver detects and identi�esincoming BLE packets with much higher probability than with thelegacy scheme. Note that with CV-Track, the PIR of beacon 2 ismuch higher than that of other beacons, which is caused by thedistinctive CFO value and the timing of the packet transmission ofbeacon 2 compared with other beacons.

5 RELATEDWORKDetecting BLE/Bluetooth signal is a challenging task due mainlyto its narrow signal bandwidth and frequency hopping operations.So far, there has been several e�orts [5, 11, 14] to detect classicBluetooth signal. RFDump [5] uses timing and phase informationto classify various signal types including Bluetooth using expensiveUSRP platform. Timing analysis is based on detecting the start and

end of a Bluetooth packet using energy detection, while phase anal-ysis is based on the statistics of the phases of the received signal.Airshark [11] is another e�ort which detects Bluetooth signal byexploiting the features related to the duration of a Bluetooth packet,inter-packet time, signal bandwidth, and power versus frequencycharacteristics using commodity Wi-Fi card. Similarly, ZiSense [14],implemented on TelosB platform, detects Bluetooth signal by in-specting received signal’s peak-to-average power ratio (PAPR), sig-nal duration, and interval. However, none of these schemes arecompletely real-time. CV-Track is real-time, and its identi�cationcapabilities via novel use of CFO are noteworthy progress.

6 CONCLUDING REMARKSIn this work, we proposed CV-Track which enables BLE signaldetection at a �ner granularity than packet-level. Not only doesCV-Track detect intact part of an incoming BLE signal in real-time,it also identi�es the transmitter using pair-wise uniqueness of CFOand timing-based �ngerprinting. We demonstrate the e�ectivenessof CV-Track via real prototype implementation and experiments.Although the current prototype has room for improvement, ourevaluation results show promising potential. As future work, weplan to exploit the information and bene�ts that CV-Track providesus in many real-world context-aware applications to improve theirperformance and open new opportunities.

ACKNOWLEDGMENTSThis work was supported by the National Research Foundationof Korea (NRF) grant funded by Korea government (MSIP) (NRF-2015R1A2A2A01006750), and the Basic Science Research Programthrough the National Research Foundation of Korea (NRF) fundedby the Ministry of Education (NRF-2017R1D1A1B03031348).

REFERENCES[1] Dah-Chung Chang and Tsung-Hau Shiu. 2006. Digital GFSK carrier synchro-

nization. In IEEE APCCAS.[2] Giorgio Conte, Massimo De Marchi, Alessandro A. Nacci, Vincenzo Rana, and

Donatella Sciuto. 2014. BlueSentinel: A �rst approach using iBeacon for anenergy e�cient occupancy detection system. In ACM BuildSys.

[3] Jeongyoon Heo, Jung Jun Kim, Jeongyeup Paek, and Saewoong Bahk. 2017.Dodge-Jam: Anti-jamming technique for low-power and lossy wireless networks.In IEEE SECON.

[4] Texas Instruments. 2007. CC2400: 2.4 GHz low-power RF transceiver. (2007).[5] Kaushik Lakshminarayanan, Samir Sapra, Srinivasan Seshan, and Peter

Steenkiste. 2009. RFDump: An architecture for monitoring the wireless ether. InACM CoNEXT.

[6] Xin-Yu Lin, Te-Wei Ho, Cheng-Chung Fang, Zui-Shen Yen, Bey-Jing Yang, andFeipei Lai. 2015. A mobile indoor positioning system based on iBeacon technol-ogy. In IEEE EMBC.

[7] Steven J Murdoch. 2006. Hot or not: Revealing hidden services by their clockskew. In ACM CCS.

[8] Jeongyeup Paek, JeongGil Ko, and Hyungsik Shin. 2016. A measurement studyof BLE iBeacon and geometric adjustment scheme for indoor location-basedmobile applications. Mobile Information Systems, Article 8367638 (2016).

[9] Attila Pásztor and Darryl Veitch. 2002. PC based precision timing without GPS.ACM SIGMETRICS Performance Evaluation Review 30, 1 (2002), 1–10.

[10] Adrian Weston Payne. 2006. DC o�set estimation. (Nov. 15 2006). US PatentApp. 12/093,991.

[11] Shravan Rayanchu, Ashish Patro, and Suman Banerjee. 2011. Airshark: Detectingnon-WiFi RF devices using commodity WiFi hardware. In ACM IMC.

[12] Roland Egon Ryter. 2010. Apparatus for determining a frequency o�set errorand receiver based thereon. (June 8 2010). US Patent 7,733,991.

[13] Bluetooth SIG. 2014. Speci�cation of the Bluetooth system. (Dec. 2014).[14] Xiaolong Zheng, Zhichao Cao, Jiliang Wang, Yuan He, and Yunhao Liu. 2014.

Zisense: Towards interference resilient duty cycling in wireless sensor networks.In ACM SenSys.

Session 1: Novel Physical-Layer Techniques HotWireless’17, October 16, 2017, Snowbird, UT, USA

5