Hack Your Own Wireless Leash

Turn a Nike + iPod sensor and Arduino into an inexpensive system to track belongings

All my life, I’ve misplaced things. I’ve stopped counting the number of umbrellas and jackets I’ve lost. So it’s comforting that technology has finally caught up with this common human foible. Owners of recent-generation iPhones can now purchase a variety of low-power radio beacons that they can attach to their clothing, bags, wallets, or whatever they fear leaving behind. When the item gets out of range, their phones will alert them. But there are places where cellphone use is forbidden, such as schools and locker rooms. And the beacons are a little problematic for keeping track of multiple items, because each one can cost US $50 or more. Then there are people like me, who don’t have an iPhone and don’t plan to have one anytime soon. So I decided to build a phoneless loss-prevention system.

Not wanting to start completely from scratch, I decided to see if I could press the Nike + iPod system into service. This uses a $19 wireless transmitter, designed to be inserted in certain Nike shoes to keep track of your running.

The Nike + iPod system has been around since 2006, and as a consequence talented hackers have had lots of opportunities to learn how it works. A sensor registers your footsteps and transmits that information to a receiver dongle that you plug into an iPod. You can buy the dongle bundled with a sensor for $30. (If you have an iPhone 4S or 5, or a fifth-generation iPod Touch, you can dispense with the dongle entirely and receive reports directly from the transmitter in your shoe.)

The Nike + iPod transmitter, it seemed to me, would be the perfect basis for a home-brew radio beacon. But I soon discovered a complication: It is designed to stop transmitting 10 seconds after it ceases detecting movement. Another issue is that the transmitter, like many Apple products, doesn’t have a replaceable battery. Once that goes, the thing is toast.

But just maybe there’d be ways around those issues, I thought, as I sawed open the plastic case of the sensor to expose the circuit board inside. It wasn’t obvious from first inspection, though, how to keep the board’s one-second-interval transmissions repeating indefinitely.

A search online revealed a teardown by EE Times that identified one of the ICs on the board as an analog voltage comparator—a Microchip MCP6541. It struck me that this component was surely being used as part of the motion-detection circuitry. Probing that IC’s output pin confirmed that the voltage went from about 3 volts (the supply voltage) to zilch whenever the unit was shaken. So I severed the output pin on the comparator IC and connected the pad to which it had been attached to ground. This was easy enough to do despite the tiny size of the IC, as it required only a solder bridge to the next pad over.

Alas, this bit of hacking didn’t accomplish my goal. In desperation, I started experimenting with how the solder bridge I’d just made affected the transmitter’s one button. Normally this button is used to prevent the circuit from entering its transmit mode—say, if you’re carrying it on a train or plane and don’t want the ongoing motion to run down the battery. To my delight, I discovered that depressing the button now kept the unit transmitting. So it was straightforward to add two jumpers to permanently short the contacts on this button.

Now I had a beacon that would continue to transmit once a second for as long as the battery held out. According to the Nike + iPod instructions, that should be something like 1000 hours, which works out to a little over a month. So I’d be going through a lot of batteries if I left it on all the time. And changing batteries by opening the case and soldering wires to coin cells promised to get old quickly. This got me looking for a better solution than just packaging things back up in the original plastic shell.

The perfect answer appeared in Adafruit Industries’ online catalog: a $2.50 plastic enclosure that holds two coin cells and also houses a switch. I easily modified it to hold just one coin cell and the transmitter circuit board in a neat little package, making for a low-power radio beacon that I could just switch on and off.

I also sent away to Sparkfun Electronics in Boulder, Colo., for a $25 adapter board designed to allow you to monitor the output of the Nike + iPod dongle. For a portable receiver, I initially combined this adapter and a dongle with an Arduino Pro Mini microcontroller ($10), also from Sparkfun. But then I discovered that a programmer named Dmitry Grinberg had done some very clever reverse engineering of this system, which allowed me to monitor the beacon’s transmissions in a much cheaper way.

To receive the signals without the dongle, I connected the Arduino Pro Mini to an inexpensive breakout board hosting the Nordic nRF24L01 radio chip ($6 from Sainsmart.com). After I’d followed the general instructions accompanying the Arduino RF24 software library, I found comments posted on the library developer’s website that revealed how to hack the library to receive signals from a Nike + iPod transmitter. So in no time I had a beacon talking to a pocket-size receiver for about $45 in parts. This was less than one of the commercial beacons alone would cost—and it saved me the expense of an iPhone or fifth-generation iPod Touch.

This article originally appeared in print as “Forget-Me-Not Beacons.”

Advertisement
Advertisement