Page 1 of 1
Charlie's RFID Teddy Bear
From MAKE Magazine
This project first appeared on the pages of MAKE magazine.
Make a plush toy that talks to other objects — and you.
- Author: David Harris
- Time required: 1 day
- Difficulty: Easy
This location-aware teddy bear reads RFID tags and plays different customizable sounds depending on where it is or what object it’s near — other toys, books, CDs, anything.
Charlie’s Bear helps children explore the world around them by producing sounds in reaction to other toys or objects nearby. It can play any sound files you upload to the memory card inside — for example, the voice of the bear, a noise that another toy might make, a theme song prompted by a toy from a TV show, or a reading of a favorite book.
I created the toy for my nephew Charlie, who was born with cerebral palsy. Charlie’s vision is poor, but he’s very tactile and auditory. This toy takes advantage of his excellent hearing and the joy he derives from music and sounds. And for all young children, this toy is an easy and safe way for them to pick their own music. Just bring a CD case (or other tagged item) near, and the bear plays it — no complicated CD player or computer.
At the heart of Charlie’s Bear, an Arduino microcontroller uses a radio frequency identification (RFID) reader to recognize nearby RFID tags, then uses an audio shield attachment to play corresponding audio files stored on an SD memory card. The SD card stores about a minute of audio content per megabyte, so a cheapo 4GB card will hold more than 60 hours.
Sections
- Assemble the electronics.
- Determine the RFID tags' IDs.
- Encode the audio.
- Configure and test the code.
- Perform the plush toy surgical implant.
Tools
- Computer, with internet connection
- Marking pen, permanent
- Phillips screwdriver
- SD memory card adapter if your computer doesn’t have a built-in SD slot
- Scissors, or X-Acto knife
- Sewing needle
- Solder

- Soldering rion
- Tape, electrical
- USB programming cable, for Arduino
- Wire cutter/stripper
Relevant parts
- Charlie Bear Project Bundle

- Stuffed toy Choose something quite soft that can accommodate the electronics easily and also provide some padding for them.
Relevant parts (continued)
- Arduino microcontroller

- Wave Shield an audio shield for Arduino

- Parallax RFID Reader, serial aka RFID antenna

- RFID tags, 125kHz, one for each object you have audio files for Parallax offers several different shapes/sizes.

- Speaker, 3"

- Connector header, female, 4-pin, 0.1" spacing, with 4 jumper wires
- Wire, 22 gauge, solid multiple colors

- Velcro that matches toy color
- Thread that matches toy color
- Barrel connector, size M (5.5mm outer × 2.1mm inner) power plug for Arduino
- Battery holder, 6xAA

- Batteries, AA (6)

- SD memory card

- Battery clip, for 9V battery (optional) if battery holder has 9V connector rather than wire leads

- View:
- Paginated
- Full width

Edit Step 1
— Assemble the electronics.
¶
Solder the Wave Shield together, following the instructions at http://ladyada.net/make/waveshield. At the step where you screw the plastic volume dial onto the housing, just insert the screw without the plastic dial, and turn it to maximum volume level.
Cut and strip 4 wires about 6"–8" long, and solder them to the 4-pin connector, leaving the other ends bare. Mark the connector positions Vcc, Enable, SOut, and GND, to match the RFID reader’s serial header, and connect red and black wires to voltage and ground, respectively.
If your battery holder has wire leads, solder its red wire to the inner terminal of the barrel connector (power plug) and its black wire to the outer terminal. (If it has a 9V connector, solder the wires from a 9V battery snap.)
Screw the housing onto the plug and wrap the wires with electrical tape if needed to hold things firm. Solder the wires to the 9V battery clip and insulate with more tape.
The length of the wires isn’t critical, but leave enough room to place the RFID sensor in the bear’s chest and have the wires come out the back to reach the rest of the electronics.

Edit Step 2 ¶
Solder two 6" wires to the speaker if it doesn’t already have leads connected.
Solder the speaker wires to the 2 holes on the Wave Shield right next to capacitor C9, behind the headphone jack. Either wire can go in either hole.
From your 4-wire RFID connector cable, attach the red and black wires to the Wave Shield’s +5V and GND holes, respectively, and solder the SOut wire to digital I/O pin 0 and Enable wire to pin 7.
Vin -> +5v
Gnd -> Gnd
Enable -> Pin7
SOut -> pin0
To complete the electronics, just plug the Wave Shield onto the Arduino, connect the 4-wire cable to the RFID reader (make sure it goes the right way around), and plug the battery power plug into the Arduino.

Edit Step 3
— Determine the RFID tags' IDs.
¶
Install the Arduino environment (http://arduino.cc) if you haven’t already, and download the Charlie Bear software CharlieBear.pde, RFID tag identifier RFIDread.pde, and the Wave Shield Library http://code.google.com/p/wavehc/download.... Unplug the RFID reader. Open RFIDread.pde and upload to the Arduino using a USB cable.
Open the Serial Monitor to see what the RFID reader is seeing, then plug the RFID reader back in. Bring each one of your RFID tags close to the reader. The 10-digit hexadecimal tag IDs should print out in the Serial Monitor.
Use a permanent marker to label each tag with its tag ID. You won’t need to do this again until you get a new batch of tags.

Edit Step 4
— Encode the audio.
¶
For each tag, record your audio or otherwise obtain a sound file you want to use.
Download and install Audacity (http://audacity.sourceforge.net) — free, open source software for recording and editing sounds. Following the Wave Shield’s “Converting audio to the proper format” tutorial, use Audacity to convert your audio files into the correct format: 16-bit sample size, PCM encoding, and a sample rate of 22kHz or less.These conversions might be the trickiest part of the whole project.
Name each sound file with the first 8 hexadecimal digits of the RFID tag you want to associate with it. (It’s extremely unlikely that you’ll have duplicates.)
Copy the sound files in the root directory of the SD memory card.
Since these filenames don’t say anything about the sounds they contain, be sure to note somewhere which sound goes with which tag.

Edit Step 5
— Configure and test the code.
¶
Unplug the RFID reader and load the CharlieBear.pde sketch into the Arduino.
Plug the RFID reader back in, and see if bringing a tag near starts a sound playing.
Troubleshoot your code: If there is no sound, check:
the power connections
that the RFID connector is oriented the right way
that your sound files are named correctly and are in the correct format.
If you still experience problems, debug them by running the electronics while the Arduino is cabled to your computer, and watch the Serial Monitor for what the RFID reader sees and sends. For more help, see the comments at the top of the code.

Edit Step 6
— Perform the plush toy surgical implant.
¶
Make a spinal incision in your bear or other plush toy large enough to get your electronics inside. How you perform this operation will depend on how the toy is made. For mine, I unstitched the bear along its backbone seam from just below the neck down to the waist.
Attach a closure mechanism. I sewed velcro of a matching color inside one side of the incision and on the outside of the other. There was enough play in the bear’s “skin” to allow the sides of the seam to overlap and the velcro to shut.
There are many ways to reclose your bear, but you’ll want to be able to get back inside, so don’t just stitch it up. I recommend using velcro (not the adhesive kind). The main thing is to come up with something that a child can’t open easily or by accident.
Embed the electronics. Put the speaker behind the bear’s mouth and nose. The RFID reader should go against the chest, and the rest of the electronics can go anywhere inside the middle of the bear. Take some stuffing out if it’s hard to close the bear.
If you know the stuffing isn’t conductive (which it shouldn’t be), you can just put the electronics straight in. But you may get fluff everywhere, so be careful when taking the memory card in and out. I’ve never encountered stuffing that conducts electricity, but if yours does, try enclosing your components in the anti-static bags they probably shipped in.
Your toy is ready to play with!
This guide has been completed 10 times.
Page 1 of 1
Comments 
Comments are onturn off
I am a novice at soldering electronics, but I managed to put this kit together without any show-stopping problems. Thanks very much for the clear instructions and photos.
Awesome, Charles! Thanks so much for the feedback!

This really inspires me to socialize other objects I encounter every day!