Fabryq: Using phones as smart proxies to control wearable devices from the Web

Mozziyar Etemadi, Will McGrath, Shuvo Roy and Björn Hartmann

EECS Department
University of California, Berkeley
Technical Report No. UCB/EECS-2014-134
June 12, 2014

http://www.eecs.berkeley.edu/Pubs/TechRpts/2014/EECS-2014-134.pdf

Wearable ubiquitous computing devices are often size- and power-constrained, which prevents them from directly connecting to the Internet. A common pattern is therefore to interpose a smart phone as a router and to deliver graphical user interfaces for such hardware. However, implementing the entire pipeline from embedded device through a phone to the Internet and back requires a disjoint set of languages and APIs accessible only to experts. In this paper, we present Fabryq, a new platform that handles the complexities of creating such applications. Fabryq is especially aimed at supporting field deployments of prototype ubicomp hardware, e.g., for new interactive health devices. Fabryq turns a smartphone into a bridge that connects the short range wireless technology of Bluetooth Low Energy (BLE) with our cloud service via the Internet.

We introduce a protocol proxy programming model to find and control peripheral devices from Javascript; and describe a UI pushdown technique to render user interfaces on phones within reach of peripheral devices.

To illustrate the utility of our platform, we also implement MicroFabryq, a breadboard prototyping platform similar to Arduino with functionality exposed over a JavaScript API built exclusively with Fabryq.


BibTeX citation:

@techreport{Etemadi:EECS-2014-134,
    Author = {Etemadi, Mozziyar and McGrath, Will and Roy, Shuvo and Hartmann, Björn},
    Title = {Fabryq: Using phones as smart proxies to control wearable devices from the Web},
    Institution = {EECS Department, University of California, Berkeley},
    Year = {2014},
    Month = {Jun},
    URL = {http://www.eecs.berkeley.edu/Pubs/TechRpts/2014/EECS-2014-134.html},
    Number = {UCB/EECS-2014-134},
    Abstract = {Wearable ubiquitous computing devices are often size- and power-constrained, which prevents them from directly connecting to the Internet. A common pattern is therefore to interpose a smart phone as a router and to deliver graphical user interfaces for such hardware. However, implementing the entire pipeline from embedded device through a phone to the Internet and back requires a disjoint set of languages and APIs accessible only to experts. In this paper, we present Fabryq, a new platform that handles the complexities of creating such applications. Fabryq is especially aimed at supporting field deployments of prototype ubicomp hardware, e.g., for new interactive health devices. Fabryq turns a smartphone into a bridge that connects the short range wireless technology of Bluetooth Low Energy (BLE) with our cloud service via the Internet.

We introduce a protocol proxy programming model to find and control peripheral devices from Javascript; and describe a UI pushdown technique to render user interfaces on phones within reach of peripheral devices.

To illustrate the utility of our platform, we also implement MicroFabryq, a breadboard prototyping platform similar to Arduino with functionality exposed over a JavaScript API built exclusively with Fabryq.}
}

EndNote citation:

%0 Report
%A Etemadi, Mozziyar
%A McGrath, Will
%A Roy, Shuvo
%A Hartmann, Björn
%T Fabryq: Using phones as smart proxies to control wearable devices from the Web
%I EECS Department, University of California, Berkeley
%D 2014
%8 June 12
%@ UCB/EECS-2014-134
%U http://www.eecs.berkeley.edu/Pubs/TechRpts/2014/EECS-2014-134.html
%F Etemadi:EECS-2014-134