Enabling Low-power Computation, Sensing, and Communication on Internet-of-Things

In recent years, we have seen a massive number of IoT devices shipped to the market. The vision is that we are going to embrace a world where IoT devices are ubiquitously deployed. However, this vision is limited by problems arise in three areas — wireless connectivity, energy-efficient computing and IoT data analytics. The wireless radio on an IoT device consumes lots of power such that we have to judiciously determine each bit transmitted or received over the radio. The efficiency of running computation is low. As a result, we cannot support complicated applications on resource-constrained IoT platforms. To make matters worse, lots of data captured and processed by IoT devices are redundant and do not provide useful information.

In this talk, I will first present our work on building low-power wireless connectivity using commodity WiFi and Bluetooth radios. An existing wireless radio consumes lots of power during data communication because the radio itself is the device which generates the wireless signal. Our key observation here is that we have been surrounded by lots of wireless signals, such as WiFi. Why not reflect existing wireless signals and embed our own information? We design and build practical systems to show that this is feasible and promising. The technology we invented is named codeword translation. Our system transforms the codeword used by existing wireless signals to embed our own information. More importantly, the transformed codeword is still a valid codeword that can be received and decoded by a commodity receiver. We demonstrate that our system works with commodity WiFi and Bluetooth radios even when these radios are transmitting their own unknown data. We also demonstrate that we can embed ECG and camera sensor data on top of existing unknown WiFi traffics. We achieved around 300 kbps data rate at close distance (~10m) and the maximum communication distance of our system is 42m in line-of-sight deployment.

In the second part of my talk, I will present a runtime system that supports software and hardware task execution on intermittently powered computing systems. Running tasks on such systems is very challenging because task execution could fail due to unexpected energy outage. Debugging such energy bugs is very challenging due to the unpredictable nature of energy harvesting. We address this problem by building a runtime system that takes arbitrarily sized tasks and dynamically fragments a task into microtasks in a way such that we have sufficient energy to run each microtask. We demonstrate that our runtime system can maximize the task execution rate while minimizing the energy outage rate. We have successfully deployed our system to run a camera sensing system even when the whole system is powered by a 3cm by 3cm solar panel in indoor light condition.

Speaker Details

Pengyu Zhang is a postdoc researcher at Stanford University. He received his Ph.D. from UMass Amherst and his bachelor from Tsinghua University. His research focuses on designing and implementing low-power embedded systems and wireless systems. He invented innovative backscatter communication technologies that provide low-power wireless connectivity, leveraged software-hardware co-design to support dedicated applications, designed runtime systems for intermittently powered computing systems, and improved the security and privacy of IoT devices. He received the ACM SIGMOBILE Doctoral Dissertation award and his papers were nominated for best paper awards at MobiSys 2017, SenSys 2016, UbiComp 2016 and MobiCom 2014.

Date:
Speakers:
Pengyu Zhang
Affiliation:
Stanford University