Last year, computer engineers from Northwestern University and Delft University of Technology (TU Delft) introduced the world's first battery-free Game Boy, which harvests both solar energy and the user's kinetic energy from button mashing to power an unlimited lifetime of game play.
The same team now introduces a new platform that enables makers, hobbyists and novice programmers to build their own battery-free electronic devices that run with intermittent, harvested energy.
Called BFree, the system includes energy-harvesting hardware (the BFree Shield) and a power-failure-resistant version of Python, one of the most accessible and most used programming languages. All the user needs is a basic understanding of Python in order to quickly and easily turn any do-it-yourself (DIY) smart device into a battery-free version. With this technology, novice programmers can now turn their DIY battery-powered motion sensor, for example, into a solar-powered sensor with an infinite lifetime.
The researchers presented the work today (Sept. 22), at UbiComp 2021, the premier conference for ubiquitous computing. Users can find instructions for how to use the new technology here.
'Asking the wrong question'
"Right now, it's virtually impossible for hobbyists to develop devices with battery-free hardware, so we wanted to democratize our battery-free platform," said Northwestern's Josiah Hester,who co-led the work. "Makers all over the internet are asking how to extend their devices' battery life. They are asking the wrong question. We want them to forget about the battery and instead think about more sustainable ways to generate energy."
"The maker community is typically more interested in rapidly deploying their devices, and that quickness doesn't always go well with sustainability," said TU Delft's Przemyslaw Pawelczak, who co-led the work with Hester. "We wanted to design a viable product that can connect these two worlds."
Hester is an assistant professor of electrical and computer engineering and computer science at Northwestern's McCormick School of Engineering. He also is the Allen K. and Johnnie Cordell Breed Junior Professor of Design. Pawelczak is an assistant professor in the Embedded and Network Systems Group at TU Delft, where he leads the Sustainable Systems Laboratory. Their team includes Ph.D. candidates Vito Kortbeek, Abu Baker and Stefany Cruz.
The Maker Movement's battery problem
A technology-focused extension of DIY culture, the Maker Movement comprises a diverse group of inventors, designers and computer programmers who build their own hardware and software for electronic devices, including motion sensors, displays, actuators and more. Combined with cloud computing, the ability to develop fast, cheap and connected devices enables the Internet of Things (IoT). These DIYers make everything from home automation devices to weather stations and everything in between.
While the growing number of people who can build and program devices presents an exciting future for technology, Hester, Pawelczak and their team are daunted by the number of batteries that will be used and eventually end up in landfills.
"Many people predict that we're going to have a trillion devices in this IoT," Hester said. "That means a trillion dead batteries or 100 million people replacing a dead battery every few minutes. That presents a terrible ecological cost to the environment. What we're doing, instead, is truly giving power to the people. We want everyone to be able to effortlessly program devices in a more sustainable way."
'Invisible' for the user
But simply forgoing a battery is not as simple as it may sound. When devices bypass the battery and instead rely on energy harvesting, the power supply is no longer constant. If the sun goes behind a cloud, for example, then solar power might be temporarily disrupted.
With BFree, the researchers have solved this issue. The technology enables devices to run perpetually with intermittent energy. When power is interrupted, BFree pauses calculations. When power returns, it automatically resumes where it left off without losing memory or needing to run through a long list of operations before restarting. Not only does this save energy, the technology also is more intuitive for the user than traditional programs, which lose all memory of what happened immediately before a power failure and need to restart from the very beginning.
To make the process user friendly, the researchers coded BFree with software to interpret Python programs for battery-free devices. A user only needs to attach the BFree Shield onto the Adafruit Metro M0 maker platform (or slightly modify it to work with other CircuitPython-based platforms) and then program the device as they typically would. The BFree software takes care of the rest, allowing the program to run without batteries—purely from harvested energy—and operate perpetually through power failures.
"We wanted to make it totally invisible for the final user," said Kortbeek, who is a Ph.D. candidate in Pawelczak's group. "So, we tried to keep the original experience of the device the same without the user seeing how we changed the software to interpret the Python files for battery-free technology."
"Now everyone can build and program smart, sustainable devices," Hester said. "This makes the future vision of ubiquitous computing more sustainable, useful and environmentally responsible."