Intermittent computing to replace trillions of batteries
Few things change as fast as the future of computing. Most experts and large chip manufacturers agree that the world’s ever-increasing appetite for computing will culminate in an omnipresent Internet of Things – trillions of devices taking sensor measurements, performing calculations and communicating with each other. Intermittent computing will not change that, but it may transform how these devices are powered, changing their operation at a fundamental level.
‘Batteries are the biggest threat to a sustainable Internet of Things, or to computing in general,’ says Przemyslaw Pawelczak, assistant professor in the Embedded and Networked Systems Group at TU Delft. ‘The one big advantage of a battery is that it provides continuous power, allowing for uninterrupted operation of a device. But a battery is hazardous, bulky and it has a chemical impact on the environment. Without regular maintenance or replacement, it also limits the useful lifetime of any wireless device to about a year, perhaps two years.’
His words of concern are echoed by Josiah Hester, assistant professor in the Computer Science department at Northwestern University, in Evanston, Illinois (USA). ‘A trillion battery-powered devices averages to 130 batteries for each person on earth. Do we really want to spend a lot of time replacing them and building these giant warehouses full of dead batteries? Rather than try and change people’s behaviour, we may be able to provide some technological solution to mitigate or delay the environmental impact of computing.’
Obviously, your internet-connected alarm clock or fridge can be plugged into a wall outlet. But when you bury thousands of small sensors into concrete to monitor a skyscraper’s structural integrity over its lifetime, or when you envision the future of preventive medicine to be powered by deep-tissue micro-implants, these devices need to operate, maintenance-free, for decades.
According to Pawelczak ‘it is unrealistic to expect improvements in battery technology to solve this. To allow near-permanent sensing at low cost and at a reduced ecological impact, we have to rethink how we design these systems. We have to let go of the concept of continuous operation. Batteries must be left behind.’
Remember, remember, remem…
Whereas classical programming and hardware architectures for wireless devices assume a continuous power source to be present, a batteryless sensor harvests its energy from the environment – by using a solar cell, scavenging energy from radio waves or by converting thermal or kinetic energy into electricity.
‘These are virtually unlimited energy sources,’ Pawelczak says, ‘but next to providing only weak power they are unpredictable and can only power a device intermittently.’ Removing the battery therefore only works in situations where you are lax about the exact time something is supposed to happen, such as a temperature measurement or computing a moving average. ‘It also introduces a whole spectrum of new problems, threatening proper operation of these devices,’ Hester explains. ‘Buffered energy may be depleted up to a hundred times per second. Such power failures require a reboot, resetting computational progress and deleting any data stored in volatile memory.’ A new approach to computing was needed to ensure proper computational operation under these circumstances. It has led to the paradigm of (batteryless) intermittent computing.
In intermittent computing, sensing, computation and communication tasks proceed when enough energy has been harvested to turn on the processor. Program execution will continue until the stored energy is exhausted again and the device abruptly fails. ‘The paradigm of intermittent computing is to frequently save the program state into non-volatile memory,’ Hester explains. ‘But the more often you do that, the less time you have for local computations and the less memory you have available to store local sensor data. Writing to memory also drains the device’s stored energy.’
Most contributions in the field of batteryless intermittent computing are about how to implement this strategy on existing computer hardware. ‘It is about how to write the code in such a way that it will sustain computation regardless of frequent power interruptions, while also introducing the minimum amount of overhead,’ Pawelczak says.
Having met at multiple conferences, Pawelczak and Hester discovered their shared interest in proving the feasibility of a sustainable Internet of Things; energy-neutral, low maintenance and with a low ecological impact. They decided to join forces rather than compete. Together, and with their group members, they have now addressed two major challenges in intermittent computing – how to reliably keep track of time and how to ease the burden of programming these devices.
The researchers integrated their new method of time registration into a custom software and hardware platform called Botoks
It’s about time
Timeouts and timestamps are the backbone of any computing application, in particular those designed for sensing and communication. Therefore, reliable timekeeping is one of the core challenges in intermittently operating batteryless sensors.
‘Knowing how much time has elapsed also allows a device to decide on the validity of any stored data,’ Hester says. ‘A device may experience a prolonged power failure right after taking a measurement. When it comes back online, should it transmit these stored data or first take a new and more representative measurement?’ Existing solutions for tracking time, such as ultra-low-power real-time clocks, have start-up times of up to seconds and require a substantial energy boost after each power outage. They are therefore unfit for intermittent computing.
The researchers instead focussed on the use of so-called remanence timekeepers (see frame). ‘The major advantages of a remanence timekeeper are that it can be miniaturised and that its components cost less than a penny,’ Pawelczak says. ‘Combining various remanence timekeepers, we were able to design a solution that allows batteryless timekeeping with millisecond resolution for power outages lasting up to seconds. It also has a very low start-up time of only milliseconds and a low energy demand.’
The researchers integrated their timekeeping solution into a custom-build hardware and software platform, called Botoks. Aside of the new timekeeper, it consists of a sensor, solar panel, micro controller, radio platform and an antenna. ‘We don’t want to just do a simulation and write a scientific paper,’ Hester says. ‘We have to show that it actually works. We therefore benchmarked Botoks for computational speed, energy efficiency and memory overhead under various energy harvesting conditions.’
Just an extra piece of code
At the moment, batteryless intermittent computing is still a niche topic within the field of computer science. ‘There may be about ten groups involved worldwide, but these are all based at preeminent universities,’ Pawelczak says. The topic is, however, rapidly gaining traction.
For the first time ever, one of the major computer systems conferences (ASPLOS) has featured a session dedicated to intermittent computing. ‘The research community is starting to recognize this as a very interesting and solvable problem, that promises to have a huge impact,’ Hester says. ‘We see that in the increase in scientific publications on this topic. With the community convinced, funding agencies will follow.’
For a sustainable Internet of Things to become a reality, however, batteryless intermittent computing has to become much more widely adopted by both consumers and businesses. ‘It is about perception and people using these devices,’ Hester emphasizes. ‘Basically, grandma herself should be able to build an Internet of Things device to monitor her pills.’ The researchers took a large step in that direction by developing and releasing TICS (Time-sensitive Intermittent Computing System). ‘There are millions of existing computer programs out there, designed for continuously-powered systems,’ Pawelczak explains. ‘To run these programs successfully on intermittent devices, under frequent power failures, would normally require massive re-engineering.
TICS allows these old legacy codes to run as is, handling such important aspects as memory management, the passing of time and data-validity.’ TICS also brings batteryless computing right up to the doorstep of computer hobbyists. ‘They can continue to use their classical programming skills, including all advanced features of the programming language,’ Pawelczak continues. ‘They just have to rely on an extra piece of code that they have to upload to the system.’
Batteryless devices open up whole new application domains, way beyond an Apple watch that you never need to plug in, should that have been the first thing to come to your mind. Think of wildlife tracking, massive-scale agriculture via augmented insects and satellites the size of postage stamps that collect atmospheric data and orbit for years. So, not even the sky is the limit. And the impact of batteryless computing may go well beyond tiny devices. ‘From a scientific point of view, we design things that are the ultimate of resilience,’ Hester says. ‘What is harder than making a computer work while experiencing a hundred power failures per second? We therefore expect developments in batteryless computing to show up in other fields of computer science as well. After all, people in large-scale computing, in space systems and security systems, are also continuously wondering how to make their systems more robust to failures.’
Although it is hard to predict its arrival, we can all look forward to a future with batteries not included. ‘But for now,’ Pawelczak says, ‘for our work to really become generally known, we may have to prove that batteryless computing is not limited to tiny sensors for scientific use, and that it also works for larger devices such as consumer electronics. We are working on that.’
Working on battery-free energy-harvesting systems is self-evident, given the environmental impactPrzemyslaw Pawelczak, TU Delft