The bell that rings in the kitchen at IDEO London sounds rather more sophisticated than the analogue clang you might expect to hear when meals and snacks are ready. Our bell prefers to send articulate email messages, like this recent missive: “I summon you all to the kitchen table for a Beer-n-Nuts with [Arduino co-founder] Massimo Banzi. Come join us. Cheers, your Kitchen Bell.”
Our bell’s impressive literacy is the result of an experiment in creating cheap, simple, and easy-to-use networks of wireless sensors.
Miha Feus, the interaction designer at the helm of the project, points out that Internet-connected things are set to reshape our lives in ways we can’t even imagine. But while the technology isn’t particularly complicated, setting up and connecting the necessary sensors and receivers is difficult and expensive with the solutions currently available, and the battery life in these systems is terrible. Because of this, Miha says, experimentation by would-be makers is being stymied.
Miha’s solution is a system called Beachsand that aims to make wireless sensor networks, in his words, “as numerous, cheap, disposable, and user-friendly as grains of sand on a beach.” Beachsand is made up of a postage-stamp-sized smart transmitter called a SenseGrain and an Arduino-based receiver he’s dubbed the SandCastle.
You can plug any analogue sensor, button, or switch into a SenseGrain, measuring light, temperature, motion… anything you like. The SenseGrain then gathers data from those sensors and sends it to the SandCastle, and from there, you can use the information as you choose.
Miha explains that Beachsand isn’t really a product in and of itself, but rather a tool to help people cheaply and easily prototype new products, services, and data experiments. He and fellow interaction designer Siri Johansson have already prototyped one use case: the studio’s kitchen bell.
I caught up with Miha and Siri to find out more.
What exactly is a SenseGrain, and how does it work?
Miha: A SenseGrain is an ATtiny85 microcontroller, which is basically a very stripped-down version of an Arduino, plus a transmitter circuit and a coin cell battery.
You plug in any analogue sensor or switch and set how often you want it to send data. The device then goes to sleep and waits until it receives whatever type of input you’re measuring (in this case, until someone rings the bell). The SenseGrain sends data from the sensor to a receiver, which, at the moment, is an Arduino, where you can access, use, and manipulate the data.
What’s so good about it?
Miha: It doesn’t require any soldering or programming, so it’s easy to set up and requires no maintenance at all. I programmed the microcontroller so that it’s very energy-efficient—on standby, it can last up to 30 years on a single coin cell battery (theoretically, at least). And it’s cheap! Each SenseGrain costs $2-3 to make.
Because they’re so inexpensive, you could put them anywhere—in a trash can, for example, to monitor when it’s being opened. Or if you don’t want to check your mailbox, you could put a SenseGrain in there and Beachsand could just let you know when you have post.
Currently, anyone with an RF receiver on the same frequency is able to receive data the sensor is sending, and I would like to keep it that way. Keeping sensor data open gives more people the opportunity to build something with that data.
Can you explain your experiment with the bell?
Miha: It’s our Kitchen Bell 2.0. It brings an ordinary object into the age of the Internet of Things, where every physical object has a digital layer.
Beachsand makes our bell more than a static object, limited by its location and the reach of its sound, and gives it the ability to transcend space and time to be “heard” anywhere in the world.
How did you build it?
Miha: First we had to pick the right sensor to detect when the bell is being rung. The simplest one in this case was a tilt switch. We plugged the switch into the RF transmitter and taped everything on the clapper of the bell.
The second part was about receiving the message from the sensor and sending out an email. For that, we used an Arduino and an RF receiver connected to a laptop, which talks to a program called Processing. In Processing, we used some existing code for sending out emails, which we modified for our needs.
What did you learn building the Kitchen Bell?
Siri: It makes you think about what the right tone of voice and personality is for a specific object. We wrote a few drafts of the bell’s email to the studio. It should be light and funny, but also demanding—it’s a bell, after all.
What inspired you from outside IDEO?
Siri: There’s an interesting ongoing discussion on the narratives told by smart objects. Hello Lamp Post is a really nice example of giving a voice and personality to inanimate objects, and a lot of effort was spent to define the right tone of voice.
This way of working with sensors and actuators has interesting potential applications in both directions: physical to digital or vice versa. A couple of examples that work in the digital-to-physical direction are the UID cookie box, which rewards tweets with cookies, and Tableau, which quietly prints stuff it “sees” in its Twitter feed.
What are you planning next?
Miha: Our colleague Alistair Norris is working on another application for the front door, to measure traffic in and out of the studio. We plugged a roller switch into a SenseGrain, which triggers every time the door opens, and added an Ethernet shield to the Arduino.
Beachsand is really still a work in progress. The next step is getting PCBs (printed circuit boards) done, so that I won’t have to build every sensor transmitter by hand, which can take anywhere from one to four hours. With a PCB it will take just two to three minutes. PCBs are also less prone to malfunction.
Hopefully I’ll make a version with everything on board, including a littleBits connector. Then I’d like to build actuators, or “ActGrains,” to work with the SenseGrains and the SandCastle.
We’ll let you know more about Beachsand as we prototype more applications for it in the studio—or you might just get an update directly from our trash can, our front door, or the kitchen bell itself! You can find the code here in the meantime.