Ripple II: Faster Communication through Physical...

14
Ripple II: Faster Communication through Physical Vibration Nirupam Roy Univ. of Illinois Romit Roy Choudhury Univ. of Illinois Abstract We envision physical vibration as a new modality of data communication. In NSDI 2015, our paper reported the feasibility of modulating the vibration of a smart- phone’s vibra-motor. When in physical contact with an- other smartphone, the accelerometer of the second phone was able to decode the vibrations at around 200 bits/s. This paper builds on our first prototype, but redesigns the entire radio stack to now achieve 30 kbps. The core redesign includes (1) a new OFDM-based physical layer that uses the microphone as a receiver (instead of the ac- celerometer), and (2) a MAC layer that detects collision at the transmitter and performs proactive symbol retrans- missions. We also develop two example applications on top of the vibratory radio: (1) a finger ring that trans- mits vibratory passwords through the finger bone to en- able touch based authentication, and (2) surface commu- nication between devices placed on the same table. The overall system entails unique challenges and opportuni- ties, including ambient sound cancellation, OFDM over vibrations, back-EMF based carrier sensing, predictive retransmissions, bone conduction, etc. We call our sys- tem Ripple II to suggest the continuity from the NSDI 2015 paper. We close the paper with a video demo that streams music through vibrations and plays it in real time through the receiver’s speaker. 1 Introduction Motivation: Project Ripple [32] is an attempt to en- able communication through physical vibrations. The core idea is to harness the vibration motor (present in all smartphones and wearable devices) as a transmitter, and a motion sensor (like an accelerometer) as a receiver. When two smartphones come in physical contact to each other, the transmitter phone can vibrate to transfer bits of information. Transmission should even be possible through other solid channels, such as between devices placed on a tabletop, or a finger ring communicating to a smartphone through bone conduction. While the ex- act application remains an open question (especially in the presence of NFC-like technologies), areas such as in- ternet of things (IoT), intra-body networks, wearable se- curity, and mobile payments are calling for new forms for short range communication. Qualities of a vibratory radio, including zero RF radiation, contact-only authen- tication, mass-scale availability, and intuitive usability, may together fill an emerging business need. This project is motivated by this “bottom up” thinking and focuses on pushing forward the vibratory capabilities. Prior Work: Of course, the fundamental idea of utiliz- ing vibration as a communication modality dates back to acoustics – speakers modulate bits of information into air vibrations that are picked up by microphones. Air vibrations were later extended to water, enabling under water communication [6, 5, 10] and various applications, such as SONAR [37]. In recent years, vibration through solids has been of interest, motivated primarily by the need for proximal communication. Authors in [20, 35] used Morse-style communication at 5 bit/s to exchange security keys between two mobile phones in contact. Last year, Ripple [32] broke away from ON/OFF com- munication, and developed a viable radio through tech- niques such as multi-carrier amplitude modulation, vi- bration braking, and simultaneous transmission over the 3 axes of the accelerometer. A self-sound cancellation technique also prevented acoustic eavesdroppers from decoding the sounds of vibration, offering improved se- curity over RF based approaches. As a first attempt to vi- bratory radio design, Ripple achieved data rates of 200 bits/s, but left various challenges and opportunities unad- dressed. This paper presents a subsequent work – Ripple II – aimed at a far more mature radio stack and two ex- ample applications. Technical Core: Ripple II’s core redesign entails the following: (1) Replacing the accelerometer with the mi- crophone as a receiver of vibrations. The key challenge pertains to separating vibrations from ambient sounds “picked up” by the microphone. While the availability of a second microphone offers the opportunity for sound cancellation, vibrations partly pollute the second micro- phone as well. Moreover, techniques such as active noise cancellation are inadequate since residual phase mis- matches – often tolerable in human hearing applications – seriously affect demodulation. We develop variants of adaptive filtering schemes, enhanced with an under- standing of the interference conditions. (2) We also dis- cover an opportunity that allows the vibra-motor to par- 1

Transcript of Ripple II: Faster Communication through Physical...

Page 1: Ripple II: Faster Communication through Physical Vibrationsynrg.csl.illinois.edu/ripple/paperdocs/ripple2_submit.pdf · act application remains an open question (especially in thepresenceofNFC-liketechnologies),

Ripple II: Faster Communication through Physical Vibration

Nirupam RoyUniv. of Illinois

Romit Roy ChoudhuryUniv. of Illinois

AbstractWe envision physical vibration as a new modality ofdata communication. In NSDI 2015, our paper reportedthe feasibility of modulating the vibration of a smart-phone’s vibra-motor. When in physical contact with an-other smartphone, the accelerometer of the second phonewas able to decode the vibrations at around 200 bits/s.This paper builds on our first prototype, but redesignsthe entire radio stack to now achieve 30 kbps. The coreredesign includes (1) a new OFDM-based physical layerthat uses the microphone as a receiver (instead of the ac-celerometer), and (2) a MAC layer that detects collisionat the transmitter and performs proactive symbol retrans-missions. We also develop two example applications ontop of the vibratory radio: (1) a finger ring that trans-mits vibratory passwords through the finger bone to en-able touch based authentication, and (2) surface commu-nication between devices placed on the same table. Theoverall system entails unique challenges and opportuni-ties, including ambient sound cancellation, OFDM overvibrations, back-EMF based carrier sensing, predictiveretransmissions, bone conduction, etc. We call our sys-tem Ripple II to suggest the continuity from the NSDI2015 paper. We close the paper with a video demo thatstreams music through vibrations and plays it in real timethrough the receiver’s speaker.

1 IntroductionMotivation: Project Ripple [32] is an attempt to en-able communication through physical vibrations. Thecore idea is to harness the vibration motor (present inall smartphones and wearable devices) as a transmitter,and a motion sensor (like an accelerometer) as a receiver.When two smartphones come in physical contact to eachother, the transmitter phone can vibrate to transfer bitsof information. Transmission should even be possiblethrough other solid channels, such as between devicesplaced on a tabletop, or a finger ring communicating toa smartphone through bone conduction. While the ex-act application remains an open question (especially inthe presence of NFC-like technologies), areas such as in-ternet of things (IoT), intra-body networks, wearable se-curity, and mobile payments are calling for new formsfor short range communication. Qualities of a vibratory

radio, including zero RF radiation, contact-only authen-tication, mass-scale availability, and intuitive usability,may together fill an emerging business need. This projectis motivated by this “bottom up” thinking and focuses onpushing forward the vibratory capabilities.

Prior Work: Of course, the fundamental idea of utiliz-ing vibration as a communication modality dates backto acoustics – speakers modulate bits of information intoair vibrations that are picked up by microphones. Airvibrations were later extended to water, enabling underwater communication [6, 5, 10] and various applications,such as SONAR [37]. In recent years, vibration throughsolids has been of interest, motivated primarily by theneed for proximal communication. Authors in [20, 35]used Morse-style communication at 5 bit/s to exchangesecurity keys between two mobile phones in contact.Last year, Ripple [32] broke away from ON/OFF com-munication, and developed a viable radio through tech-niques such as multi-carrier amplitude modulation, vi-bration braking, and simultaneous transmission over the3 axes of the accelerometer. A self-sound cancellationtechnique also prevented acoustic eavesdroppers fromdecoding the sounds of vibration, offering improved se-curity over RF based approaches. As a first attempt to vi-bratory radio design, Ripple achieved data rates of ≈ 200bits/s, but left various challenges and opportunities unad-dressed. This paper presents a subsequent work – RippleII – aimed at a far more mature radio stack and two ex-ample applications.

Technical Core: Ripple II’s core redesign entails thefollowing: (1) Replacing the accelerometer with the mi-crophone as a receiver of vibrations. The key challengepertains to separating vibrations from ambient sounds“picked up” by the microphone. While the availabilityof a second microphone offers the opportunity for soundcancellation, vibrations partly pollute the second micro-phone as well. Moreover, techniques such as active noisecancellation are inadequate since residual phase mis-matches – often tolerable in human hearing applications– seriously affect demodulation. We develop variantsof adaptive filtering schemes, enhanced with an under-standing of the interference conditions. (2) We also dis-cover an opportunity that allows the vibra-motor to par-

1

Page 2: Ripple II: Faster Communication through Physical Vibrationsynrg.csl.illinois.edu/ripple/paperdocs/ripple2_submit.pdf · act application remains an open question (especially in thepresenceofNFC-liketechnologies),

tially sense ambient sound interference, through a phe-nomenon called back-EMF in electronic circuits. Thetransmitter extrapolates from this partial information, us-ing curve fitting techniques, and develops a proactivesymbol retransmission scheme. The problem is new tothe best of our knowledge – unlike existing wireless sys-tems, here the transmitter is aware of the receiver’s in-terference conditions and can adapt at the granularity ofsymbols. This opens both challenges and opportunities.

System and Apps: We engineer a completely functionalprototype, which entails a full OFDM stack, coping withADC saturation, clipping, synchronization, error coding,interleaving, etc. Towards real applications, we developa (clunky) wearable finger ring and demonstrate the vi-ability of transmitting vibratory signals through fingerbones. While signals attenuate through human tissuesand muscles, effective bit rates of 7.41 Kbps is still possi-ble, adequate for applications like two-factor authentica-tion (i.e., when the user unlocks the phone, the vibratorypassword decoded by the phone serves as a second chan-nel of authentication). We also explore a second applica-tion where devices are placed on tabletops, allowing forone-to-many multicast communication (e.g., a presentersharing slides with all members in the meeting). Lastly,we include a video demo on our project website [2] – thedemo shows the transmitter streaming music through vi-brations and the receiver’s speaker playing it in real time.

Platform and Evaluation: Our evaluation platformis composed of laptops, signal generators, vibra-motorchips, microphone chips, and home-grown circuits thatinterconnect them. In the basic scenario, the vibra-motoris attached to a short pencil to emulate a “stylus” like de-vice, which then touches a microphone chip to transferinformation. We generate various ambient sounds in thelab, including soft and loud music, people talking, ma-chine hums, loud thuds and vibrations, and their combi-nations. Our PHY and MAC layer schemes are evaluatedin these settings, against metrics such as SNR gain, bit er-ror rate (BER), throughput, etc. At the application layer,we compute end to end data rate under modestly realis-tic settings, such as the human wearing the (vibra-motorembedded) ring and touching the microphone chip. Weemulate wrist watches as well (2.23 Kbps), and performan informal user study to understand if they feel the vi-brations. We also explore achievable bit rates for tabletopcommunication, with devices placed at increasing dis-tances on wooden surfaces.

Next Steps: There is much room for continued researchand improvement. First, we have little understanding ofPHY capacity and MAC layer optimality; intuitively, webelieve that modeling the devices and the channel canyield reasonable performance bounds. Second, the sound

cancellation techniques can perhaps benefit from deepersignal processing expertise – we have initiated collab-oration towards this goal. Third, microphones and ac-celerometers may together present new opportunities thatremain untapped in this paper. Fourth, while our prior pa-per mitigated attacks on vibratory sounds, visual attacksstill remain a threat – a high speed camera, with line ofsight to the device, may be able to decode vibrations. Fi-nally, we need guidance on other possible use-cases andapplications [4] of vibratory radios. Our ongoing work isfocussed on all these aspects.

In summary, the contributions of this paper are:

• An OFDM based vibratory radio with microphonesas the receiver. The PHY layer uses variants ofadaptive filtering to isolate vibrations from ambi-ent sounds at the microphone; the MAC layer de-velops a transmitter side carrier sensing mechanismand uses it for proactive symbol retransmission.

• A completely functional system borne out of signif-icant engineering effort. The effort includes hard-ware circuits on bread boards, to drivers for thevibra-motor, to bone conduction and real-time mu-sic streaming. Instantiation of the system in two ap-plications: touch based authentication and surfacecommunication.

The overall architecture of Ripple II is illustrated in Fig-ure 1. The rest of the paper expands on the main modules(shaded in gray) and briefly touches upon the techniquesborrowed from literature, and the engineering effort inbuilding the prototype.

Figure 1: Ripple II’s system architecture.

2 Development Platform and Overview

2.1 Vibratory TransmitterA vibration motor (also called “vibra-motor”) is anelectro-mechanical device that moves a metallic massrhythmically around a neutral position to generate vibra-tions. While there are various kinds of vibra-motors, a

2

Page 3: Ripple II: Faster Communication through Physical Vibrationsynrg.csl.illinois.edu/ripple/paperdocs/ripple2_submit.pdf · act application remains an open question (especially in thepresenceofNFC-liketechnologies),

popular one is called Linear Resonant Actuators (LRA)shown in Figure 2. With LRA, vibration is generatedby the linear movement of a magnetic mass suspendednear a coil, called the “voice coil”. Upon applying ACcurrent to the motor, the coil also behaves like a magnet(due to the generated electromagnetic field) and causesthe mass to be attracted or repelled, depending on thedirection of the current. This generates vibration at thesame frequency as the input AC signal, while the ampli-tude of vibration is dictated by the signal’s peak-to-peakvoltage. Thus LRAs offer control on both the magnitudeand frequency of vibration. As an aside, most mobilephones today use LRA based vibra-motors.

Figure 2: Basic sketch of an LRA vibra-motor.

We control the vibra-motor through an Agilent 33500Bwaveform generator, which is indirectly controlled byMATLAB running on a laptop. The laptop generates thedesired digital samples; the waveform generator convertsthe samples to a analog wave and transmits to the vibra-motor. The peak-to-peak output voltage is stabilized at5V, the maximum supported by the vibra-motor chip. Wegenerate OFDM symbols through MATLAB and drivethe motor as desired.

2.2 Microphone as a ReceiverOur prior work [32] used a vibra-motor as the transmitterand an accelerometer as the receiver1. The accelerome-ter demodulated vibratory QPSK symbols and correctedfor errors using simple gray coding techniques. The lowbandwidth of accelerometer chips (800Hz) proved to bethe main bottleneck to link capacity, resulting in ≈ 200bits/s. This paper breaks away from accelerometers andidentifies the possibility of using microphones as a vibra-tion receiver.

Like accelerometers, microphones also transduce phys-ical motion to electrical signals using a diaphragm thatresponds to changes in (acoustic) air pressure. Figure 3shows a microphone chip and the basic internal architec-ture – as the diaphragm vibrates inside a magnetic field,the produced electrical signals are amplified and sampledby an ADC. Unsurprisingly, the diaphragm can also bemade to vibrate by physically touching a vibra-motor tothe microphone chip. Since microphones are designed

1Accelerometers are MEMS devices that transduce physical motioninto electrical signals by measuring the extent to which a tiny seismicmass moves inside fixed electrodes (see [22] for details).

for greater sensitivity and operate over a wider frequencyrange, they can serve as a better receiver (an alternativeto accelerometers). The tradeoff, however, is that the vi-bration measured at the ADC is actually an aggregate ofthe physical vibration and the air vibration from ambi-ent sounds (e.g., people talking). Ripple II needs to iso-late physical from acoustic vibrations to accomplish highbandwidth vibratory communication.

Figure 3: (a) MEMS microphone chip, the diaphragmhole near bottom left (b) Microphone circuit sketch.

Figure 4 shows our overall hardware set-up. The vibra-motor is taped to the back of a short pencil and the tipof the pencil now acts like a stylus, touching the micro-phone chip. Transmission bits produced by the laptopare converted to a signal waveform by the signal gener-ator, which then drives the transmitter; the microphonedecodes these bits through realtime processing on a lap-top. The following subsections detail the technical mod-ules in the PHY, MAC, and Application layers.

Figure 4: Ripple II’s experimentation set-up (3 vibra-motors attached to a pencil, ring, and watch). The stylustouching a microphones, the second microphone nearby.

3 PHY: Vibratory RadioWe begin with the design of the microphone-receiver,followed by our implementation of OFDM.

3.1 Separating Vibration from SoundWhile the microphone offers larger bandwidth comparedto the accelerometer, its sensitivity to ambient sound isa disadvantage. Unless filtered out, the vibration SINR

3

Page 4: Ripple II: Faster Communication through Physical Vibrationsynrg.csl.illinois.edu/ripple/paperdocs/ripple2_submit.pdf · act application remains an open question (especially in thepresenceofNFC-liketechnologies),

will be low, especially in loud environments. We at-tempted various techniques (algorithms and hacks); wedetail the ones that worked and touch upon the failures.

Covering the Sound HoleThe microphone chip has a circular opening (like a smallhole) that exposes the diaphragm to air pressure. To pre-vent ambient sounds from polluting Ripple II’s vibratorysignals, we covered the hole with a stiff synthetic rubbersheet (somewhat like a stethoscope). However, when avibrating object comes in contact with this rubber sheet,the air trapped inside the hole still oscillates, causing thediaphragm to produce the desired signals. Figure 5 com-pares the frequency responses of the altered and the stan-dard microphones for vibration and sound, respectively.Figure 5(a) shows an average 18.2dB gain for vibrationsignals over the standard microphone; at some frequen-cies the difference is 43.8dB. On the other hand, Figure5(b) shows that the average sound attenuation at the al-tered microphone is around 12.3dB. For both the signal(i.e., vibration) and the noise (i.e., ambient sounds), thehigher frequency proves better (useful later in Section 5).

0 5 10 15 20−20

0

20

40

60

80

Frequency (KHz)

Pow

er/F

requ

ency

(dB/

Hz)

Alt. MicStd. Mic

0 5 10 15 20−120

−100

−80

−60

−40

Frequency (KHz)

Pow

er/F

requ

ency

(dB/

Hz)

Alt. MicStd. Mic

Figure 5: Covering the sound hole offers (a) improvedvibration signal and (b) attenuated sound signals in com-parison to the standard microphone.

Canceling Ambient SoundLet us denote the vibration signal from the stylus asV (t) and the ambient sound signal as S(t). Ripple IIaims to subtract S(t) from the aggregate signal (A(t) =V (t) + S(t))) received through the microphone. A sec-ond microphone present in many devices today is a nat-ural opportunity. In an ideal case, the second micro-phone should only receive the ambient sound S(t) andnone of the physical vibration V (t) since the stylus is notin direct contact with it. In reality, however, physicalvibrations also leak into the second microphone. Also,both microphones are affected by a high intensity electri-cal noise, E(t), caused by their common supply voltage.Frequencies of this noise range from 300Hz to 2500Hzand its amplitude is comparable to V (t). Finally, the mi-crophone output also includes a native hardware noise,typically assumed to be uncorrelated additive Gaussian,denoted N1 and N2 for the respective microphones.

Based on the above factors, the overall system can be

modeled as shown in Figure 6. The signal output fromthe ith microphone, Yi can thus be expressed as:

Yi = HviV +HsiS +HeE +Ni

𝐻𝑆1

𝐻𝑆2

𝐻𝐸

𝐻𝑉2

𝐻𝑉1

𝑆(𝑡)𝑌1(𝑡)

𝑌2(𝑡)

Mic 1

Mic 2

𝑛1

𝐸(𝑡)

𝑉(𝑡)

𝑛2

Figure 6: Modeling the signals and interferences at eachof the microphones; H denotes the channel matrix andV , S, E, denotes vibration, sound, and electrical noise,respectively.

We note that extraneous physical vibrations may occurwhen Ripple II is transmitting information (for example,in a moving vehicle). Such vibrations are included in Ssince it is likely to affect both the microphones similarly.We also note that the electrical noise E is highly corre-lated and synchronized at both microphones, since theyshare a common power source. Under this model, ourgoal is to extract V from Y1 and decode the content.

Failed Attempts (MIMO, NC, rPCA)MIMO: We discovered early that electrical noise Ecan be removed effectively by low pass filtering Y2 andsubtracting from Y1. Since E dominates and is phasematched across both microphones, the residue after sub-traction minimally impacts V . Thus, we can rewriteYi = HviV +HsiS +Ni. This appears to be in the form ofMIMO and hence solvable without difficulty. Unfortu-nately, the channel matrix for ambient sound, Hsi , cannotbe easily measured since Ripple II has no control overthe sound sources. Also, due to the time-varying nature,statistical estimates are difficult.

Classical Noise Cancellation seems applicable [23],however, the statistical nature of this algorithm does notmitigate phase mismatches. The result after subtractiondoes preserve the amplitude of the desired signal, whichis often adequate for human perception. In Ripple II,however, we need phase alignment too, or else, QAMbased demodulation falters. Put differently, requirementsto improve human hearing experience is less stringentthan the requirements for data communication.

Robust PCA is an algorithm from 2009 used for back-ground separation [7]. The technique builds on the resultthat, under certain conditions, a given matrix can be fac-torized into a sparse and low rank matrix. For instance, in

4

Page 5: Ripple II: Faster Communication through Physical Vibrationsynrg.csl.illinois.edu/ripple/paperdocs/ripple2_submit.pdf · act application remains an open question (especially in thepresenceofNFC-liketechnologies),

a talk show video, static background walls could serve asthe low rank matrix (due to high similarity across videoframes) and the talking people could make up the sparsematrix. In our case, we envisioned the ambient soundto be sparse and the vibration to be low rank (since thecyclic prefix of OFDM symbols can be organized to lookidentical across time2.). Unfortunately, we could not de-sign the matrices to attain adequate amount of both spar-sity and low rank-ness. During the short time shifts forwhich the OFDM vibration symbols were identical, thesound signal changed enough that they were not sparse.When sound proved to be sparse over longer time frames,the low rank-ness disappeared. The outcomes of factor-ization yielded marginal gain.

Symbol Selective Adaptive Noise FilteringAdaptive filtering (AF) is an established technique thatcan accept the two microphones’ signals as inputs, say(Y1 = V1 + S1) and (Y2 = V2 + S2), and can attempt toadapt weight coefficients of Y2 such that the Y1 −Y2 isV1. Conceptually, AF bolsters Y2 in the regions where itcorrelates well with Y1, and then subtracts from Y1. Thisworks best when S1 and Y2 are somewhat correlated toeach other, but neither is correlated to V1. However, inour system, when ambient interference is low (i.e., Vdominates S), then Y2 correlates well with V1 – this iswhy AF subtracts away the vibratory signals from Y1,defeating the purpose. However, we observe that if wecould identify OFDM symbols that are in error (i.e., Sdominates V ), then perhaps only the erroneous symbolscould be subjected to AF. Since S1 and Y2 would correlatewell in such cases, the result of Y1 −Y2 could convergeto V1. Using this intuition, we design Symbol SelectiveAdaptive Noise Filtering (SANF), sketched in Figure 7.

Primary  Symbols

Secondary  Symbols

Deconvolution/Thresholding

IFFT

IFFT

Adaptive  Filter

Figure 7: SANF infers erroneous symbols and only feedsthese to the AF module.

Erroneous Symbol Detection. The main opportunityemerges from measurements that revealed that the vibra-tory channel responses at the primary and secondary mi-crophones – Hv1 and Hv2 – maintain a constant ratio un-der light or no interference. This is likely due to the same

2Without too much details, note that time domain signals can beshifted by several samples and yet, by OFDM design, they will mapto the same frequency domain symbol – this is why we could generatelow rank-ness.

solid channel between the two microphones. In the pres-ence of sound, however, the same ratio gets polluted andthereby loses the constancy property (since sound variesover time). Thus, we first perform channel estimation forpilot subcarriers scattered across the OFDM symbol. Wesynchronize the secondary microphone and estimate thechannel for that same pilot (the slight time offset doesnot affect due to the protection from the cyclic prefix).Now, deconvolution of the primary and secondary signalin the frequency domain yields the complex gain, αp foreach pilot p.

Recall, the goal is to estimate the pristine ratio of Hv1 andHv2 in the presence of sound interference; the αp we haveis still polluted by sound interferences. Thus, we per-form a least square estimation of the ratio and computeα∗

p for each subcarrier. Now, for any non-pilot symbolto be erroneous, the computed complex gain between theprimary and secondary must be far from α∗

p for that sub-carrier. Once the erroneous symbols are identified, weconvert only those to the time domain, leaving the error-free subcarriers untouched. We obtain the time domainsignals from both of the primary and secondary micro-phone and feed them to an adaptive filter for noise can-cellation. The output of the adaptive filter is then demod-ulated to recover the vibratory symbols.

Amplifier Gain and ClippingTo maximize the power of the vibratory signal, we op-erate the amplifier at near-maximum gain and leave justenough headroom for typical ambient sound (measuredempirically). Of course, sometimes the ambient soundexceeds the headroom and drives the amplifier to satura-tion [31]. Figure 8(a) shows the output of the unsaturatedamplifier; Figure 8(b) shows the saturated case – a trun-cated waveform. Unsurprisingly, this “clipping” effectspills energy into other frequencies, causing interferencein an OFDM system. We alleviate such frequency distor-tion effects by replacing the flat saturation region with acubic spline interpolation of the signal – Figure 8(c).

200 400 600 800 1000 1200

−0.4

−0.2

0

0.2

0.4

0.6

Time (ms)

Volta

ge (n

orm

alize

d)

200 400 600 800 1000 1200

−0.4

−0.2

0

0.2

0.4

0.6

Time (ms)

Volta

ge (n

orm

alize

d)

200 400 600 800 1000 1200

−0.4

−0.2

0

0.2

0.4

0.6

Time (ms)

Volta

ge (n

orm

alize

d)

04

812

1620

0

1.5

3

4.5

6

7.5−20

0

20

Time (ms)

Frequency (KHz)

Am

plitu

de (

dB)

04

812

1620

0

1.5

3

4.5

6

7.5−20

0

20

Time (ms)

Frequency (KHz)

Am

plitu

de (

dB)

04

812

1620

0

1.5

3

4.5

6

7.5−20

0

20

Time (ms)

Frequency (KHz)

Am

plitu

de (

dB)

Figure 8: The waveform (1st row) and spectrogram (2ndrow) of the (a) actual signal, (b) distorted signal afterclipping, (3) corrected signal after spline interpolation.

5

Page 6: Ripple II: Faster Communication through Physical Vibrationsynrg.csl.illinois.edu/ripple/paperdocs/ripple2_submit.pdf · act application remains an open question (especially in thepresenceofNFC-liketechnologies),

Our measurements also recorded consistent interferenceat lower frequencies (< 500Hz), caused by a combina-tion of winds from air vents, thermal noise from electri-cal equipments, as well as vibrations of the human handwhile holding the transmitter. The vibra-motor also ex-hibits resonance frequency at around 232Hz, causing thesystem to destabilize due to the high power gain. Wedeemed suitable to sidestep these problems and movedthe transmission band to begin from 500Hz.

3.2 OFDM over VibrationWe implement OFDM over the vibra-motor and micro-phone link. Although an engineering effort, we brieflysummarize the parameter selection process, particularlythose influenced by the vibratory channel.

Channel Impulse ResponseAlthough the vibratory channel is dominantly time-invariant and frequency selective, human factors such ashand movements and varying angle of contact inject vari-ability. Measurements suggest similarity to a Rician fad-ing model, with a strong line of sight path. The weakermultipath components are caused by the inertial move-ment of the motor mass – reverberation of the mediumdistorts the signal and multiple reflected/delayed repli-cas combine to create an elongated decaying response atthe output. We measure the impulse response of our sys-tem using the exponential sine-sweep method [12] duringwhich sinusoids of exponentially increasing frequencydrives the motor. The output from the microphone is de-convolved with the weighted reverse sine-sweep to ob-tain the impulse response (the technique offers robust-ness against noise and non-linear distortions). Figure9(a) and (b) show the measured impulse response andthe corresponding power delay profile (PDP).

0 5 10 15−0.5

0

0.5

1

Time (ms)

Volta

ge (n

orm

aliz

ed)

2 4 6−40

−30

−20

−10

0

Time (ms)

Pow

er (d

B)

Figure 9: (a) Channel impulse response (b) Power delayprofile of the vibratory channel.

Paramater SelectionCyclic Prefix: The PDP shows 0.4ms before the multi-path energy falls below 10dB of the highest peak, called“10DB maximum excess delay”. This should be the sep-aration between symbols to avoid inter symbol interfer-ence (ISI). We set the guard interval conservatively to1ms, however, instead of leaving the channel idle during

this interval, we insert 1ms of the last part of the sym-bol. This is called the cyclic prefix (CP) which helpscope with time synchronization errors without affectingthe orthogonality of sub-carriers.

Subcarrier Bandwidth: The vibratory channel, as men-tioned earlier, offers long channel coherence time, al-lowing for small subcarrier spacing. In practice, how-ever, due to unpredictable phase noise, the inter carrierinterference (ICI) becomes severe with small subcarrierspacing On the other hand, the subcarriers become fre-quency selective for bandwidths larger than the coher-ence bandwidth of the channel. In such cases, the chan-nel is no longer flat and hence equalization techniquesfalter [11, 33]. We measure the coherence bandwidthto be 480Hz (see Figure 10) – this is the width of thefrequency-correlation function using a threshold of 0.95.We then choose the subcarrier bandwidth conservativelyto 40Hz, less than the 1

10th

of the coherence bandwidth.

−5 0 50.8

0.85

0.9

0.95

1

Frequency (KHz)

Freq

uenc

y C

orr.

Func

.

Figure 10: (a) Temporal stability of the channel, (b) Thefrequency-correlation function indicates the coherencebandwidth of 480Hz for the width threshold of 0.95.

Total Bandwidth: We choose the total bandwidth to be12KHz, equal to the coherence bandwidth at correlationthreshold of 0.7.

With this PHY layer in place, we now focus on a vi-bratory MAC layer, with the goal of reliably deliveringpackets to the receiver even under interference.

4 MAC Layer DesignReliable packet delivery entails retransmitting a packetwhen it is received in error. In wireless systems, sincethe transmitter is unaware of the receiver’s channel con-ditions, the error detection happens reactively, throughan ACK from the receiver. Vibra-motors offer a new op-portunity – we find that the receiver’s interference con-ditions can be sensed at the transmitter through what isknown as back EMF. Thus, the transmitter could poten-tially transmit and listen at the same time, infer sym-bol collisions, and retransmit symbols proactively. Ef-ficiency can improve but some issues need mitigation.

4.1 Sensing Interference from Back-EMFBack-EMF is an electro-magnetic effect observed inmagnet-based motors where relative motion occurs be-

6

Page 7: Ripple II: Faster Communication through Physical Vibrationsynrg.csl.illinois.edu/ripple/paperdocs/ripple2_submit.pdf · act application remains an open question (especially in thepresenceofNFC-liketechnologies),

0 1 2 3 4 5−140

−120

−100

−80

−60

−40

−20

Frequency (KHz)

Pow

er/

Fre

quency

(dB

/Hz)

0 1 2 3 4 5−140

−120

−100

−80

−60

−40

−20

Frequency (KHz)

Pow

er/F

requ

ency

(dB

/Hz)

0 5 10 15 20 25−160

−140

−120

−100

−80

−60

−40

Frequency (KHz)

Po

we

r/F

req

ue

ncy

(d

B/H

z)

Figure 11: (a) Vibra-motor driven by a 3KHz voltage and no interference in the environment. (b) Interference in-troduced in the environment raises the noise floor, especially at lower frequency bands. (c) Clear detection of 7KHzinterference caused by a nearby vibrator. (d) Spectrogram of acoustic chirp detected through back-EMF – the chirpwas played through a speaker placed 4 feet away.

tween the current carrying armature/coil and the mag-netic field. In our vibra-motor, when the permanent mag-net oscillates near the coil, the flux linkage with the coilchanges due to the driving voltage and/or vibration noise.According to the Faraday’s law of electromagnetic in-duction [14], this changing flux induces an electromotiveforce in the coil. Lenz’s law [36] says this electromotiveforce acts in the reverse direction of the driving voltage,called back-EMF of the motor. As the rate of changeof the magnetic flux is proportional to the speed of themagnetic mass, the back-EMF serves as an indicator ofthe extraneous vibration experienced by the mass.

Unsurprisingly, the interfering vibrations generate subtlemovements of the vibra-motor mass, causing the voltagechanges around a small resistor to be in milli-volts (be-low the ADC noise floor)3. We design a low noise am-plifier, limiting the parasitic inductance/capacitance, toamplify this voltage 100x before feeding it to the ADCsampling circuit. Figures 11(a,b) show the differencebetween interference-free and interfered transmissions,as sensed through back-EMF. The noise floor increases,especially at lower frequencies where the interferenceis dominant. Figure 11(c) shows another case where a7KHz interferer – a second interfering vibra-motor – isplaced on the same table as our experiment; the trans-mitting vibra-motor detects the corresponding spike at7KHz. We also played an acoustic chirp on a speaker4 feet away from our devices – Figure 11(d) shows thechirp spectrogram, a reasonable reproduction of the ac-tual. The findings extend hope that back-EMF can beuseful to designing transmitter-side collision inferenceprotocols.

3The measuring circuit samples the induced current as a voltagedrop across a series resistor. We keep this resistor value below 0.02% ofthe motor’s coil resistance so that the electrical property of the systemremains unaffected.

4.2 Vibratory InterferenceBefore moving into protocol design, we characterize thenature of vibratory interference experienced by the mi-crophone. Interferences are broadly of two kinds. (1)Ambient acoustic sounds, such as people talking, back-ground music, machine hums, etc. and (2) physical vi-brations caused by objects such as running table fans,taps and thuds on table-tops, and even natural vibrationof human hands when they are holding the devices. Fig-ure 12 shows the spectral graph of several example in-terferences, measured in isolation. The key observationis that interferences are heavily biased to the lower fre-quency bands; frequencies higher than 600Hz are rarelyimpacted.

100 200 300 400 500 600 02

46

8

0

0.2

0.4

0.6

0.8

1

Noise Category Subcarrier # (spacing 40Hz)

Mag

nitu

de (n

orm

aliz

ed)

Figure 12: Spectral properties of various interferencesoccurring in the natural environment.

Figure 13 shows the 3D contour of acoustic interferenceacross frequency and time – the interference stems fromloud human voices. The key observation is that for anygiven frequency, the signal amplitude of the interferencerises with time, reaches a peak, and decays again. Thischaracteristic is highly common in a wide range of in-terferences, primarily because instantaneously starting orstopping strong signals is difficult. Occasionally, we find

7

Page 8: Ripple II: Faster Communication through Physical Vibrationsynrg.csl.illinois.edu/ripple/paperdocs/ripple2_submit.pdf · act application remains an open question (especially in thepresenceofNFC-liketechnologies),

certain machines capable of producing a sudden spike,however, their decay is still slow. We leverage back-EMFalong with these properties of the interference to design aMAC protocol, called Proactive Symbol Recovery (PSR).

050

20 40 60 80

−505

1015

Time (ms) Freq. (Hz)

Ampl

itude

(dB)

Figure 13: 3D contour of acoustic interference acrossfrequency and time.

4.3 PSR Protocol: The Problem DefinitionThe protocol problem can be abstracted as follows. Con-sider a packet P composed of many OFDM symbols,[S1,S2,S3, ...], each symbol composed of n subcarriers[ f1, f2, f3, ... fn]. Figure 14 shows the pictorial represen-tation of such a packet, in the form of a time-frequencygrid. Assume that the gray region denotes the inci-dence of interference, essentially the top view of Fig-ure 13. Now, with back-EMF, the transmitter is able tosense receiver-side interference, however, the sensing isnot accurate. To be able to reliably detect interference(i.e., reduce false positives), the transmitter can increasethe sensing threshold – interference detected above thisthreshold is strongly indicative of actual interference.Assume that the interference above a given threshold isthe black region in Figure 14.

Figure 14: A packet represented in terms of OFDM sym-bol, each symbol to be transmitted over time.

The protocol question is: which symbols should thetransmitter retransmit, and when? Transmitting only thesymbols that are affected by the black color may stillleave too many erroneous symbols – the coding schemeat the receiver may not be able to recover the packet. Thetransmitter essentially needs to estimate the symbols af-fected by the gray region too, and retransmit a subset ofthose symbols [21, 17]. Clearly, not all the gray-coloraffected symbols need to be transmitted since the codingscheme can indeed correct for some errors.

A second question pertains to interference adaptation.Once interference is detected at time t4, the transmittermust adjust the subsequent transmissions to cope withthe interference. Any adjustments – such as rate control– would need to be communicated to the receiver throughsome control information. However, unlike packets,symbols are not prefaced with headers; dedicating somesubcarriers to a control channel will be wasteful in gen-eral. Under this constraint, the protocol needs to adaptto interference and concisely convey its adaptations tothe receiver. The basic problem is new to the best ofour knowledge, since existing protocols assume that thereceiver has better estimates of error than the transmit-ter [21, 17]. In our case, the transmitter is better awareof the interference but has no control bits to convey itsadaptations.

4.4 Proactive Symbol Recovery ProtocolThe PSR protocol develops 2 heuristics – interferenceextrapolation and implicit control signaling – describednext.

(1) Interference Extrapolation. Only the contour of theinterference within the black region (in Figure 14) is vis-ible to the transmitter – one could metaphorically envi-sion it as the “part of the iceberg above water”. Basedon the visible shape, the transmitter may be able to ex-trapolate the “submerged” shape, generating an estimateof the gray region. Our measurements have consistentlyindicated that the interference decay is well-behaved, ofcourse with some jitter. Hence, we model this as a curvefitting problem, and use a 3rd order cubic spline (thehigh frequency jitters are not captured). Given multi-ple silhouettes, one per-subcarrier, we pick the silhouettewhose peak is at 80th percentile among all peaks. Usingthis we develop an estimate of the gray region.

(2) Implicit Control Signaling. As mentioned earlier,the transmitter needs some control bits for signaling itsactions to the receiver. To this end, we use a simple inter-leaving idea from the basics of signal processing. Specif-ically, when alternate subcarriers are loaded with data(and the ones in-between left empty), the time domain

8

Page 9: Ripple II: Faster Communication through Physical Vibrationsynrg.csl.illinois.edu/ripple/paperdocs/ripple2_submit.pdf · act application remains an open question (especially in thepresenceofNFC-liketechnologies),

representation of the OFDM signal exhibits two identi-cal copies (Figure 15). We call this the 2x interleavingmode. When every 4th subcarrier is loaded, the time do-main signal shows 4 identical copies of the same signal.The receiver recognizes these identical copies in time do-main and decodes the control information. In frequencydomain, it extracts the data from every 2nd (or 4th) sub-carrier and ignores the others. Of course, we are awarethat the control bits are not free – the 2x and 4x inter-leaving modes reduce the bandwidth. However, we alsonote that energy on the loaded subcarriers increases – a2x mode exhibits a 3dB gain (nearly double), loweringchances of demodulation error.

0 10 20 300

2

4

6

Frequency bin #

Mag

nitu

de

0 10 20 30

0

0.5

1

1.5

2

Time

Ampl

itude

Figure 15: (a) 2x interleaving in frequency, (b) identicalsignal parts in time domain.

Protocol Design: We now describe the basic operationof the PSR protocol (we continue to refer to the toy ex-ample in Figure 14). When no interference is detectedby the transmitter’s back-EMF sensor (i.e., until time t4),symbols are sent as usual. Upon detecting interferenceat t4, the transmitter records the symbol that was affected(namely, S4), and performs the subsequent symbol trans-missions (S5) at 2x interleaving mode. This continuesuntil the interference has subsided below the transmit-ter’s threshold. At this point, the transmitter performsthe extrapolation using the interference decay data, start-ing from the last-observed interference peak. The inter-polation suggests that the receiver may continue to ex-perience interference until some time in the future, saytill t7. Therefore, the transmitter continues symbol trans-missions in 2x mode, after which it falls back to no-interleaving. Observe that this interleaving mechanismis akin to halving the rate, except that it helps inform thereceiver about the rate reduction.

Ideally, the interference extrapolation may help recoverthe symbols S6 and S7, however, symbols S2 and S3 couldalso be heavily interfered. To this end, the transmitteralso extrapolates the front portion of the interference, andremembers the symbols that need retransmission. Onceall the symbols have been transmitted, it now retransmitsthese symbols (S2, S3, and S4 in this toy case), at theappropriate interleaving mode permissible by the thenchannel conditions. Importantly, the receiver must iden-tify that these symbols are actually duplicates of prior

symbols. Hence, the transmitter marks the start of theseretransmissions with a 4x interleaved packet – the packetincludes indices of all symbols that are being retrans-mitted. The encoding of indices is efficiently done toutilize the fewest bits possible, telling the receiver howmany retransmissions to expect and which prior symbolsto replace. The receiver demodulates all the symbols,performs the appropriate replacements, and feeds themthrough the decoder.

Fallback ACK Mechanism: Needless to say, extrapo-lation will incur errors, and back-EMF sensing will ex-perience false negatives. This will leave erroneous sym-bols at the receiver even after retransmissions. In fact,it would be inefficient for the transmitter to recover allsymbols since the decoder at the receiver would be ableto correct for some of them anyway. We implement astandard 2/3 convolutional code, with constrain length 7,to cope with inherent symbol errors in the transmission.We implement a hard decision Viterbi decoder with traceback depth of 30 to recover the bits. To cope with heavybursts in error, we use an interleaver to spread out thebursts. If the decoder is able to correct for the residualerrors in the symbols, the receiver sends an ACK. Oth-erwise, the transmitter times out and retransmits the fullpacket.

5 System Evaluation

5.1 Complete Hardware Prototype

Figure 16 shows the complete interconnection of thehardware elements in Ripple II. Very briefly, the re-ceiver (on the left side) draws power from the USB portof a Dell laptop (or any mobile device or raspberry-pi/arduino) serving as the controller. Instead of usinga separate ADC, we abuse the Line-in audio input portof the laptop, which comes equipped with a high speedADC and a driver to push samples to user space. We con-nect signals from each microphone to one of the chan-nels in the line-in port with the help of a three-conductor(TRS) audio jack. We run the appropriate driver to sam-ple the signal at 48KHz, 16bit stereo mode.

The transmitter (shown on the right side) also uses a sim-ilar approach. The software controller generates digitalsamples that are converted to analog via the DAC of theaudio port. This output signal (with appropriate amplifi-cation and shaping) feeds into the vibra-motor, which isin turn attached to the stylus or ring. We sample this line-in port at 48KHz to collect the back-emf signal alongwith the reference voltage. Offline processing is per-formed in MATLAB; realtime music streaming is per-formed on GNURadio.

9

Page 10: Ripple II: Faster Communication through Physical Vibrationsynrg.csl.illinois.edu/ripple/paperdocs/ripple2_submit.pdf · act application remains an open question (especially in thepresenceofNFC-liketechnologies),

Transmitter  Side

Primary  Mic.

Reference  Mic.

SignalGND

VCC

SignalGND

VCC

LH317T

Receiver  Side

LM386

LM386

GND

GND

GNDGND

10k

1k

220 F

220 F10

10

220 F 10

10

220 F 220 F

Vibration  Signal

USB  Port

GND

Right  ChannelLeft  Channel

GND

Left  Channel

GND

Right  Channel

Left  Channel

GND

Transmitter

Receiver

Rx  Controller

Tx Controller10k

100nF

6 5

33 F

Line-­‐in

Line-­‐in

Analog  Audio  Out

Back-­‐EMF  Monitor

FlybackDiode

10k

ReferenceSignal

Stylus

Vibration  Motor

GND

+5V

5V

Voltage  Converter

10 F

3.3V

Power  Out

Figure 16: The complete hardware internals of Ripple II.

5.2 Performance Results

We present end to end results first, followed by zoomedin results from acoustic noise cancellation (SANF) andproactive symbol retransmission (PSR). Our final resultsare drawn from 100+ sessions of experiments, each ses-sion either 1− 3 min. long, and entails vibratory trans-mission against diverse ambient sounds, ambient vibra-tions, modulations, etc. We collected 800 samples ofambient sound (e.g., supermarket ambience, in class-room noise, music nearby, etc.) and 15 ambient vibra-tions (e.g., walking, moving in a car, tapping on table).Half of sessions were against the natural lab sound con-ditions; for the other half, we played external ambiencesounds through a speaker and generated vibrational noisethrough an external vibra-motor placed on the table. Asa baseline we use the basic OFDM microphone receiverrunning on our hardware platform (including the coveredsound hole). We compare this baseline against (1) base-line + coding, (2) baseline + coding + SANF, and (3)baseline + coding + SANF + PSR.

Ripple II Results:Figure 17(a) shows the CDF of throughput gain com-puted from all the experimentation data, across all pos-sible noise environments. The communication link op-erates in a high bit error rate (BER) regime and codingschemes perform worse than expected. The median gainwith SANF is around 10%, with a small fraction of casesleading to negative gain. However, PSR brings apprecia-ble benefits, mainly from retransmitting erroneous sym-bols and bringing the errors below the tolerable thresh-old. Median throughput gain with PSR is 26.6%. Figure17(b) reports the breakup of raw throughput under vari-ous ambient sound categories. Under mechanical soundspikes alone, the performances of SANF and PSR areweak – the interpolation in PSR falters, while SANF’ssymbol error detection scheme is not sensitive enough.However, in other categories of noises, throughput im-proves – the median throughput in the “All” noise cate-gory is ≈ 27 Kbps.

−40 −20 0 20 40 600

0.2

0.4

0.6

0.8

1

Throughput Gain (%)

CD

F

Basic+coding+Noise cancel+PSR

Mech. House Human Song Nature All15

20

25

30

35

Noise category M

edia

n Th

roug

hput

(Kbp

s)

Basic+coding+Noise cancel+PSR

Figure 17: (a) Throughput gain across all experiments.(b) Median throughput across different ambient soundcategories.

SANF Results:Figure 18(a) zooms into symbol selective aspect ofSANF, and shows the fraction of symbols corrected overnormal adaptive noise filtering. The correction gain im-proves with higher SNR, but falls beyond 15dB. This isbecause at > 15dB SNR, SANF is unable to detect thesymbol errors correctly since the interference is less pro-nounced – the inability to identify the erroneous symbolsderails adaptive noise filtering. The sensitivity curve cap-tures this behavior, suggesting that the symbol correctionefficacy is both a function of SNR and sensitivity. Figure18(b) shows the gain across each subcarrier – the graphis for the best SNR, 15dB.

0 10 200

20

40

60

80

SNR (dB) Sens

itivi

ty /

Cor

rctn

. Gai

n (%

)

SensitivityCorrection Gain

0 100 200 3000

20

40

60

80

100

Subcarrier#

Cor

rect

ed s

ymbo

ls (%

)

Average

Figure 18: (a) Variation of SANF’s cancellation gain andsensitivity against increasing SNR; sensitivity is the frac-tion of erroneous symbols detected by SANF). (b) Thenoise cancellation gain as the percentage of erroneoussymbol per subcarrier.

10

Page 11: Ripple II: Faster Communication through Physical Vibrationsynrg.csl.illinois.edu/ripple/paperdocs/ripple2_submit.pdf · act application remains an open question (especially in thepresenceofNFC-liketechnologies),

PSR Results:The core design elements in PSR pertains to (1) back-EMF based sensing and extrapolation of the interference,and (2) reducing symbol errors via 2x/4x interleaving(expected to increase energy). To evaluate extrapolation,we first identify the set of truly erroneous symbols thatshould have been retransmitted by the transmitter. Weknow the set of symbols that PSR actually retransmitted.From these two sets, we compute the precision and recallof PSR, reflecting the combined efficacy of back-EMFsensing and interpolation. Figure 19(a) shows the results– the precision is strong but the recall is weak, indicat-ing that PSR is conservative. This is expected/desirablesince we intend to not retransmit excessively, which re-duces inflation of the packet and also allows the decoderto correct for the residual errors. Of course, there is roomto tune the interpolation scheme and the back-EMF sen-sitivity – we leave this to future work.

0 0.5 10

0.2

0.4

0.6

0.8

1

Recall/Precision

CD

F

RecallPrecision

04

812

1

1/2

1/4

0

0.5

1

Frequency (KHz)Used subcarriers

(fraction)

Sym

bol E

rror R

ate

Figure 19: (a) Precision and recall to evaluate the back-EMF sensing and interference extrapolation scheme. (b)The per subcarrier symbol error rates using all, 1/2, and1/4 of the subcarriers, while the noise power is constant.

Figure 19(b) shows the reduction in symbol error ratewhen half and one-forth subcarriers are loaded with data(recall we denoted this as 2x and 4x modes of transmis-sion). Under heavy channel interference, 2x mode sub-stantially reduces symbol errors, offering effects simi-lar to rate control. However, the 2x mode also implic-itly includes a control bit that the receiver can recognize.Measurements show that the control signaling was nearperfect, meaning the receiver almost aways extracted thecorrect data from 2x and 4x transmissions.

5.3 Applications and CapabilitiesWe explore potential applications of Ripple II, namely avibratory ring and watch; tabletop communication; anddevice to device transfers.

(1) Finger Ring for AuthenticationWe envision touch based two-factor authentication – auser wearing a Ripple II ring or watch could touch thesmartphone screen and the vibratory password can beconducted through the bones. The core notion general-izes to other scenarios, including unlocking car doors,

door knobs, etc. While a usable system would need ma-turity in interfaces, energy, etc., this section only dis-cusses the communication aspects of through-bone trans-mission. Figure 20(a) shows the crude finger ring pro-totype, placed on the index finger of the user. For ourprototype, the ring is powered by a battery located out-side the ring and connected via long wires. The cylin-drical vibra-motor is placed horizontally on the finger tomaximize area of contact, however, placement influencescommunication.

0 2 4 6 8 10−100

−80

−60

−40

−20

Frequency (KHz)

Pow

er/F

requ

ency

(dB/

Hz)

0 degree45 degree90 degree

10 12 14 16 18 20−120

−100

−80

−60

−40

Frequency (KHz)

Pow

er/F

requ

ency

(dB/

Hz)

0 degree45 degree90 degree

Figure 20: (a) Finger ring operated at 8KHz. (b) Inci-dence angles affect lower frequencies less. (c) Higherfrequencies in a piston oscillator become directional andhence delivers less energy in unaligned directions.Figure 20(b,c) shows the variation of signal power for 3different incidence angles between the vibra-motor andthe finger – incidence angle defined as the angle betweenthe finger bone and the direction along which the vibratormass oscillates (which is perpendicular to the base of thecylinder). Evidently, at lower frequencies, the incidenceangle does not impact the signal, however, at higher fre-quencies the higher incidence angles reduce SNR. More-over, higher frequencies are also less effective for signalpropagation through the human body. Thus, we decideto operate the ring at 90◦ incidence but focus the powerbudget to within 8KHz.

We also performed similar experiments with a watch– pasting the vibra-motor on the wrist-bone below thewatch. Performance degrades as expected, due to alonger conduction path from the wrist to the microphone.The table below summarizes results. 5 student volun-teers experimented with our prototype and none of themwere able to feel or hear the vibrations at all. Throughputdegraded as they swiped their fingers, or walked whiletouching, but still was above 3Kbps. Everyone expressedenthusiasm at the prospect of touch based authentication,with some questions on health impacts and battery life-time (part of our future work).

11

Page 12: Ripple II: Faster Communication through Physical Vibrationsynrg.csl.illinois.edu/ripple/paperdocs/ripple2_submit.pdf · act application remains an open question (especially in thepresenceofNFC-liketechnologies),

Bandwidth Modu. Code Tput:KbpsRing 8 KHz QPSK 1/2 7.41

Watch 3 KHz QPSK 1/2 2.23

5.4 Tabletop CommunicationMulticast communication is often useful – a group pic-ture at a restaurant needs to be shard with everyone in thegroup; presentation slides need to be shared in a meeting.We envision placing all phones on the table, near eachother, and performing one vibratory multicast. Figure21 shows the outcome of such an experiment – we usedthe stylus to touch different locations on a table, while2 microphone receivers were at fixed locations. Evenat nearly 2 feet away, the throughput is around 4Kbps(the X-axis has duplicate values since there were multi-ple distinct locations at the same distance from the mi-crophone).

6 6 8.5 12 13.4 13.4 16.9 18 19 21.60

1

2

3

4

5

6

7

8

Distance (inch)

Throu

ghpu

t (Kbp

s)

Receiver 1Receiver 1

Figure 21: Throughput against varying tabletop range.

5.5 P2P Money TransferIn developing regions, mobile payments may be viablewith basic phones with vibra-motor and microphones.Perhaps a USB stick can transfer data to phones/tabletson physical contact. Such apps obviously need higherdata rates and some may require real time operation. Thetable below shows possibilities when vibra-motor on sty-lus’ and iPhones are touched to microphones. We havealso built a demonstration of a real time music stream-ing system over vibrations – please see video demo here:http://synrg.csl.illinois.edu/ripple/

Bandwidth Modu. Code Tput:KbpsStylus 12 KHz 16 QAM 2/3 29.19iPhone 12 KHz 16 QAM 2/3 26.13

6 Related WorkVibratory communication: Authors in [35] and [20]were the first to conceive the idea of communicatingthrough physical vibrations. They both encode vibrationsthrough (ON/OFF) morse code, with pulse durations ofaround one second (i.e., 1 bits/s). This is adequate for ap-plications like secure pairing between two smart phones,

or sending a tiny URL over tens of seconds. Our priorwork in NSDI 2015 [32] developed a fuller vibratory ra-dio through multi-frequency modulation, self-jammingbased security, and resonance braking, ultimately trans-lating to 200 bits/s. Ripple II is a push-forward of theRipple project, but with microphone as the receiver, andaugmented with a new PHY/MAC layer (offering 150xthroughput gain). Ripple II still preserves Ripple’s secu-rity properties via self-sound cancellation.

Dhwani [29] is an elegant work on acoustic NFC and ad-dresses conceptually similar problems, although on theacoustic platform; vibra-motors bring about new set ofchallenges and opportunities. Technologies like Bump[1, 26, 34, 8, 18, 16, 24] use accelerometer/vibrator-motor responses to facilitate secure pairing between de-vices. TagTile [3] uses high frequency sound to achieveassociation between phones and point-of-sale devices.However, these techniques are primarily designed forfew bits of exchange; Ripple II aims high bitrate trans-mission with the same ease as Bump and Tagtile. Fur-ther, as indicated by researchers [35, 15], the lack of thedynamic secret message in Bump-like techniques makesthem less secure in the wild. These modes also requireInternet connectivity and trusted third party servers tofunction, none of which is needed in Ripple II.

Vibration generation and sensing: Creative researchin the domain of haptic feedback has investigated thestate-of-the-art in electro-mechanical vibrations [30, 9].Applications in assisted learning, touch-augmented en-vironments, and haptic learning have used vibrations forcommunication to humans [28, 13, 19, 30, 9]. How-ever, the push for high communication data rates be-tween vibrators and microphones/accelerometers is un-explored to the best of our knowledge. Off late, per-sonal/environment sensing on mobile devices has gainedresearch attention. Applications like (sp)iPhone [25] andTapPrints[27] demonstrate the ability to infer keystrokesthrough background motion sensing. While many moreefforts are around activity recognition from vibration sig-natures, this paper aims to modulate vibration for com-munication.

7 ConclusionRipple II is an attempt to enable touch-based vibra-tory communication between a vibra-motor and a micro-phone. We develop a vibratory radio at the PHY andMAC layer, and explore a few possible applications inauthentication, device to device streaming, and table-top communication. While additional work is neededto attain maturity, we believe this paper is a concretestep towards demonstrating an alternative communica-tion mode, that has remained relatively unexplored in thepast.

12

Page 13: Ripple II: Faster Communication through Physical Vibrationsynrg.csl.illinois.edu/ripple/paperdocs/ripple2_submit.pdf · act application remains an open question (especially in thepresenceofNFC-liketechnologies),

References[1] Bump technologies. http://bu.mp.

[2] Ripple webpage. http://synrg.csl.illinois.edu/

ripple/.

[3] Tagtile report. http://www.mybanktracker.com/news/

2011/10/07/tagtile-easier-reward/. Accessed: 24thSeptember, 2015.

[4] ADKINS, J., FLASPOHLER, G., AND DUTTA, P. Ving: Boot-strapping the desktop area network with a vibratory ping. AnnArbor 1001 (2015), 48109.

[5] AKYILDIZ, I. F., POMPILI, D., AND MELODIA, T. Underwateracoustic sensor networks: research challenges. Ad hoc networks3, 3 (2005), 257–279.

[6] BURDIC, W. S. Underwater acoustic system analysis. PrenticeHall, 1991.

[7] CANDES, E. J., LI, X., MA, Y., AND WRIGHT, J. Robust prin-cipal component analysis? Journal of the ACM (JACM) 58, 3(2011), 11.

[8] CASTELLUCCIA, C., AND MUTAF, P. Shake them up!: amovement-based pairing protocol for cpu-constrained devices. InProceedings of the 3rd international conference on Mobile sys-tems, applications, and services (2005), ACM, pp. 51–64.

[9] CHO, Y.-J., YAND, T., AND KWON, D.-S. A new miniaturesmart actuator based on piezoelectric material and solenoid formobile devices. In The 5th International Conference on the Ad-vanced Mechatronics, ICAM (2010), pp. 615–620.

[10] COATES, R. F. Underwater acoustic systems. Halsted Press,1989.

[11] ENGELS, M., AND PETRE, F. Broadband fixed wireless access:a system perspective. Springer Science & Business Media, 2006.

[12] FARINA, A. Simultaneous measurement of impulse response anddistortion with a swept-sine technique. In Audio Engineering So-ciety Convention 108 (2000), Audio Engineering Society.

[13] FEYGIN, D., KEEHNER, M., AND TENDICK, F. Haptic guid-ance: Experimental evaluation of a haptic training method for aperceptual motor skill. In Haptic Interfaces for Virtual Environ-ment and Teleoperator Systems, 2002. HAPTICS 2002. Proceed-ings. 10th Symposium on (2002), IEEE, pp. 40–47.

[14] GALILI, I., KAPLAN, D., AND LEHAVI, Y. Teaching fara-days law of electromagnetic induction in an introductory physicscourse. American journal of physics 74, 4 (2006), 337–343.

[15] HALEVI, T., AND SAXENA, N. On pairing constrained wire-less devices based on secrecy of auxiliary channels: The case ofacoustic eavesdropping. In Proceedings of the 17th ACM confer-ence on Computer and communications security (2010), ACM,pp. 97–108.

[16] HALPERIN, D., HEYDT-BENJAMIN, T. S., RANSFORD, B.,CLARK, S. S., DEFEND, B., MORGAN, W., FU, K., KOHNO,T., AND MAISEL, W. H. Pacemakers and implantable cardiacdefibrillators: Software radio attacks and zero-power defenses.In Security and Privacy, 2008. SP 2008. IEEE Symposium on(2008), IEEE, pp. 129–142.

[17] HAN, B., SCHULMAN, A., GRINGOLI, F., SPRING, N., BHAT-TACHARJEE, B., NAVA, L., JI, L., LEE, S., AND MILLER, R. R.Maranello: Practical partial packet recovery for 802.11. In NSDI(2010), pp. 205–218.

[18] HOLMQUIST, L. E., MATTERN, F., SCHIELE, B., ALAHUHTA,P., BEIGL, M., AND GELLERSEN, H.-W. Smart-its friends: Atechnique for users to easily establish connections between smartartefacts. In Ubicomp 2001: Ubiquitous Computing (2001),Springer, pp. 116–122.

[19] HUANG, K., DO, E.-L., AND STARNER, T. Pianotouch: Awearable haptic piano instruction system for passive learning ofpiano skills. In Wearable Computers, 2008. ISWC 2008. 12thIEEE International Symposium on (2008), IEEE, pp. 41–44.

[20] HWANG, I., CHO, J., AND OH, S. Privacy-aware communica-tion for smartphones using vibration. In Embedded and Real-Time Computing Systems and Applications (RTCSA), 2012 IEEE18th International Conference on (2012), IEEE, pp. 447–452.

[21] JAMIESON, K., AND BALAKRISHNAN, H. Ppr: Partial packet re-covery for wireless networks. ACM SIGCOMM Computer Com-munication Review 37, 4 (2007), 409–420.

[22] KAAJAKARI, V., ET AL. Practical mems: Design of microsys-tems, accelerometers, gyroscopes, rf mems, optical mems, andmicrofluidic systems. Las Vegas, NV: Small Gear Publishing(2009).

[23] KRAWCZYK, M., AND GERKMANN, T. Stft phase recon-struction in voiced speech for an improved single-channelspeech enhancement. Audio, Speech, and Language Processing,IEEE/ACM Transactions on 22, 12 (2014), 1931–1940.

[24] LESTER, J., HANNAFORD, B., AND BORRIELLO, G. are youwith me?–using accelerometers to determine if two devices arecarried by the same person. In Pervasive computing. Springer,2004, pp. 33–50.

[25] MARQUARDT, P., VERMA, A., CARTER, H., AND TRAYNOR,P. (sp) iphone: decoding vibrations from nearby keyboards usingmobile phone accelerometers. In Proceedings of the 18th ACMconference on Computer and communications security (2011),ACM, pp. 551–562.

[26] MAYRHOFER, R., AND GELLERSEN, H. Shake well before use:Intuitive and secure pairing of mobile devices. Mobile Comput-ing, IEEE Transactions on 8, 6 (2009), 792–806.

[27] MILUZZO, E., VARSHAVSKY, A., BALAKRISHNAN, S., ANDCHOUDHURY, R. R. Tapprints: your finger taps have fin-gerprints. In Proceedings of the 10th international conferenceon Mobile systems, applications, and services (2012), ACM,pp. 323–336.

[28] MORRIS, D., TAN, H. Z., BARBAGLI, F., CHANG, T., ANDSALISBURY, K. Haptic feedback enhances force skill learning.In WHC (2007), vol. 7, pp. 21–26.

[29] NANDAKUMAR, R., CHINTALAPUDI, K. K., PADMANABHAN,V., AND VENKATESAN, R. Dhwani: secure peer-to-peer acous-tic nfc. In Proceedings of the ACM SIGCOMM 2013 conferenceon SIGCOMM (2013), ACM, pp. 63–74.

[30] NIWA, M., YANAGIDA, Y., NOMA, H., HOSAKA, K., ANDKUME, Y. Vibrotactile apparent movement by dc motors andvoice-coil tactors. In Proceedings of the 14th InternationalConference on Artificial Reality and Telexistence (ICAT) (2004),pp. 126–131.

[31] ROBERGE, J. K. Operational amplifiers: theory and practice.John Wiley & Sons, 1975.

[32] ROY, N., GOWDA, M., AND CHOUDHURY, R. R. Ripple: Com-municating through physical vibration.

[33] RUMNEY, M., ET AL. LTE and the evolution to 4G wireless:Design and measurement challenges. John Wiley & Sons, 2013.

[34] SAXENA, N., AND WATT, J. H. Authentication technologies forthe blind or visually impaired. In Proceedings of the USENIXWorkshop on Hot Topics in Security (HotSec) (2009), vol. 9,p. 130.

[35] STUDER, A., PASSARO, T., AND BAUER, L. Don’t bump, shakeon it: The exploitation of a popular accelerometer-based smartphone exchange and its secure replacement. In Proceedings of the27th Annual Computer Security Applications Conference (2011),ACM, pp. 333–342.

13

Page 14: Ripple II: Faster Communication through Physical Vibrationsynrg.csl.illinois.edu/ripple/paperdocs/ripple2_submit.pdf · act application remains an open question (especially in thepresenceofNFC-liketechnologies),

[36] TANNER, P., LOEBACH, J., COOK, J., AND HALLEN, H. Apulsed jumping ring apparatus for demonstration of lenzs law.American Journal of Physics 69, 8 (2001), 911–916.

[37] WAITE, A. D., AND WAITE, A. Sonar for practising engineers,vol. 3. Wiley London, 2002.

14